From cf993e4e2e98ff06014b9317a8e6f99faedc3d2f Mon Sep 17 00:00:00 2001 From: Dolunay Date: Sat, 7 Dec 2024 16:47:19 +0300 Subject: [PATCH] Abp 9.0.0, AntDesign 1.0.1 and some required packs upgraded --- Directory.Packages.props | 381 +- lsw.Abp.AntDesignUI.slnLaunch | 15 + ...re.Components.Server.AntDesignTheme.csproj | 2 +- ...tCore.Components.Web.AntDesignTheme.csproj | 2 +- ...mponents.WebAssembly.AntDesignTheme.csproj | 2 +- ...eatureManagement.Blazor.AntDesignUI.csproj | 2 +- ...anagement.Blazor.Server.AntDesignUI.csproj | 2 +- ...ment.Blazor.WebAssembly.AntDesignUI.csproj | 2 +- ...entityManagement.Blazor.AntDesignUI.csproj | 2 +- ...anagement.Blazor.Server.AntDesignUI.csproj | 2 +- ...ment.Blazor.WebAssembly.AntDesignUI.csproj | 2 +- ...issionManagement.Blazor.AntDesignUI.csproj | 2 +- ...anagement.Blazor.Server.AntDesignUI.csproj | 2 +- ...ment.Blazor.WebAssembly.AntDesignUI.csproj | 2 +- ...ettingManagement.Blazor.AntDesignUI.csproj | 2 +- ...anagement.Blazor.Server.AntDesignUI.csproj | 2 +- ...ment.Blazor.WebAssembly.AntDesignUI.csproj | 2 +- ...TenantManagement.Blazor.AntDesignUI.csproj | 2 +- ...anagement.Blazor.Server.AntDesignUI.csproj | 2 +- ...ment.Blazor.WebAssembly.AntDesignUI.csproj | 2 +- .../BookStore.Application.Contracts.csproj | 2 +- .../BookStore.Application.csproj | 2 +- .../BookStore.Blazor/BookStore.Blazor.csproj | 2 +- .../src/BookStore.Blazor/wwwroot/global.css | 34 + .../src/BookStore.Blazor/wwwroot/global.js | 54 +- .../src/BookStore.Blazor/wwwroot/index.html | 4 +- .../BookStore.BlazorServer.csproj | 6 +- .../BookStore.BlazorServer/appsettings.json | 2 +- .../BookStore.BlazorServer/package-lock.json | 252 +- .../src/BookStore.BlazorServer/package.json | 4 +- .../src/BookStore.BlazorServer/yarn.lock | 324 +- .../BookStore.DbMigrator.csproj | 96 +- .../src/BookStore.DbMigrator/appsettings.json | 2 +- .../BookStore.Domain.Shared.csproj | 2 +- .../BookStore.Domain/BookStore.Domain.csproj | 2 +- .../BookStore.EntityFrameworkCore.csproj | 2 +- .../BookStore.HttpApi.Client.csproj | 2 +- .../BookStore.HttpApi.Host.csproj | 60 +- .../BookStore.HttpApi.Host/appsettings.json | 2 +- .../BookStore.HttpApi.Host/package-lock.json | 236 +- .../src/BookStore.HttpApi.Host/package.json | 2 +- .../@fortawesome/fontawesome-free/css/all.css | 11945 +++++++++------- .../fontawesome-free/css/v4-shims.css | 1226 +- .../webfonts/fa-brands-400.ttf | Bin 209376 -> 210736 bytes .../webfonts/fa-brands-400.woff2 | Bin 118072 -> 118724 bytes .../webfonts/fa-regular-400.ttf | Bin 67976 -> 68064 bytes .../webfonts/fa-regular-400.woff2 | Bin 25464 -> 25484 bytes .../webfonts/fa-solid-900.ttf | Bin 423676 -> 426112 bytes .../webfonts/fa-solid-900.woff2 | Bin 157192 -> 158224 bytes .../webfonts/fa-v4compatibility.ttf | Bin 10836 -> 10836 bytes .../webfonts/fa-v4compatibility.woff2 | Bin 4800 -> 4788 bytes .../wwwroot/libs/abp/core/abp.js | 6 +- .../daterangepicker.js | 20 +- .../libs/sweetalert2/sweetalert2.all.js | 5215 ++++--- .../libs/sweetalert2/sweetalert2.all.min.js | 8 +- .../wwwroot/libs/sweetalert2/sweetalert2.css | 750 +- .../libs/sweetalert2/sweetalert2.esm.all.js | 4496 ++++++ .../sweetalert2/sweetalert2.esm.all.min.js | 6 + .../libs/sweetalert2/sweetalert2.esm.js | 4495 ++++++ .../libs/sweetalert2/sweetalert2.esm.min.js | 5 + .../wwwroot/libs/sweetalert2/sweetalert2.js | 5208 ++++--- .../libs/sweetalert2/sweetalert2.min.css | 2 +- .../libs/sweetalert2/sweetalert2.min.js | 6 +- .../src/BookStore.HttpApi.Host/yarn.lock | 296 +- .../BookStore.HttpApi.csproj | 2 +- .../Lsw.Abp.AntDesignUI.csproj | 2 +- 66 files changed, 23889 insertions(+), 11323 deletions(-) create mode 100644 lsw.Abp.AntDesignUI.slnLaunch create mode 100644 samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/sweetalert2/sweetalert2.esm.all.js create mode 100644 samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/sweetalert2/sweetalert2.esm.all.min.js create mode 100644 samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/sweetalert2/sweetalert2.esm.js create mode 100644 samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/sweetalert2/sweetalert2.esm.min.js diff --git a/Directory.Packages.props b/Directory.Packages.props index cbb85c5..0f1be7c 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -1,18 +1,16 @@ - 8.2.0 - 8.3.0 - 0.9.6 - 5.5.0 - 8.0.0 - 8.0.4 - 8.0.4 + 9.0.0 + 1.0.1 + 5.5.8 + 9.0.0 + 9.0.0 + 9.0.0 true - - + @@ -214,20 +212,20 @@ - + - + - - + + @@ -237,42 +235,17 @@ - + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -292,160 +265,210 @@ - + - - - - + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + - - - - - + + + + - - - - + + + + \ No newline at end of file diff --git a/lsw.Abp.AntDesignUI.slnLaunch b/lsw.Abp.AntDesignUI.slnLaunch new file mode 100644 index 0000000..515f322 --- /dev/null +++ b/lsw.Abp.AntDesignUI.slnLaunch @@ -0,0 +1,15 @@ +[ + { + "Name": "New Profile", + "Projects": [ + { + "Path": "samples\\BookStore\\src\\BookStore.HttpApi.Host\\BookStore.HttpApi.Host.csproj", + "Action": "Start" + }, + { + "Path": "samples\\BookStore\\src\\BookStore.Blazor\\BookStore.Blazor.csproj", + "Action": "Start" + } + ] + } +] \ No newline at end of file diff --git a/modules/AntDesignTheme/Lsw.Abp.AspnetCore.Components.Server.AntDesignTheme/Lsw.Abp.AspnetCore.Components.Server.AntDesignTheme.csproj b/modules/AntDesignTheme/Lsw.Abp.AspnetCore.Components.Server.AntDesignTheme/Lsw.Abp.AspnetCore.Components.Server.AntDesignTheme.csproj index 8193229..199f6b8 100644 --- a/modules/AntDesignTheme/Lsw.Abp.AspnetCore.Components.Server.AntDesignTheme/Lsw.Abp.AspnetCore.Components.Server.AntDesignTheme.csproj +++ b/modules/AntDesignTheme/Lsw.Abp.AspnetCore.Components.Server.AntDesignTheme/Lsw.Abp.AspnetCore.Components.Server.AntDesignTheme.csproj @@ -5,7 +5,7 @@ - net8.0 + net9.0 diff --git a/modules/AntDesignTheme/Lsw.Abp.AspnetCore.Components.Web.AntDesignTheme/Lsw.Abp.AspnetCore.Components.Web.AntDesignTheme.csproj b/modules/AntDesignTheme/Lsw.Abp.AspnetCore.Components.Web.AntDesignTheme/Lsw.Abp.AspnetCore.Components.Web.AntDesignTheme.csproj index 9a2b178..aa937be 100644 --- a/modules/AntDesignTheme/Lsw.Abp.AspnetCore.Components.Web.AntDesignTheme/Lsw.Abp.AspnetCore.Components.Web.AntDesignTheme.csproj +++ b/modules/AntDesignTheme/Lsw.Abp.AspnetCore.Components.Web.AntDesignTheme/Lsw.Abp.AspnetCore.Components.Web.AntDesignTheme.csproj @@ -5,7 +5,7 @@ - net8.0 + net9.0 diff --git a/modules/AntDesignTheme/Lsw.Abp.AspnetCore.Components.WebAssembly.AntDesignTheme/Lsw.Abp.AspnetCore.Components.WebAssembly.AntDesignTheme.csproj b/modules/AntDesignTheme/Lsw.Abp.AspnetCore.Components.WebAssembly.AntDesignTheme/Lsw.Abp.AspnetCore.Components.WebAssembly.AntDesignTheme.csproj index acb747e..ae91b35 100644 --- a/modules/AntDesignTheme/Lsw.Abp.AspnetCore.Components.WebAssembly.AntDesignTheme/Lsw.Abp.AspnetCore.Components.WebAssembly.AntDesignTheme.csproj +++ b/modules/AntDesignTheme/Lsw.Abp.AspnetCore.Components.WebAssembly.AntDesignTheme/Lsw.Abp.AspnetCore.Components.WebAssembly.AntDesignTheme.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/FeatureManagement/Lsw.Abp.FeatureManagement.Blazor.AntDesignUI/Lsw.Abp.FeatureManagement.Blazor.AntDesignUI.csproj b/modules/FeatureManagement/Lsw.Abp.FeatureManagement.Blazor.AntDesignUI/Lsw.Abp.FeatureManagement.Blazor.AntDesignUI.csproj index 1d34510..863448a 100644 --- a/modules/FeatureManagement/Lsw.Abp.FeatureManagement.Blazor.AntDesignUI/Lsw.Abp.FeatureManagement.Blazor.AntDesignUI.csproj +++ b/modules/FeatureManagement/Lsw.Abp.FeatureManagement.Blazor.AntDesignUI/Lsw.Abp.FeatureManagement.Blazor.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/FeatureManagement/Lsw.Abp.FeatureManagement.Blazor.Server.AntDesignUI/Lsw.Abp.FeatureManagement.Blazor.Server.AntDesignUI.csproj b/modules/FeatureManagement/Lsw.Abp.FeatureManagement.Blazor.Server.AntDesignUI/Lsw.Abp.FeatureManagement.Blazor.Server.AntDesignUI.csproj index c976553..de489e2 100644 --- a/modules/FeatureManagement/Lsw.Abp.FeatureManagement.Blazor.Server.AntDesignUI/Lsw.Abp.FeatureManagement.Blazor.Server.AntDesignUI.csproj +++ b/modules/FeatureManagement/Lsw.Abp.FeatureManagement.Blazor.Server.AntDesignUI/Lsw.Abp.FeatureManagement.Blazor.Server.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/FeatureManagement/Lsw.Abp.FeatureManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.FeatureManagement.Blazor.WebAssembly.AntDesignUI.csproj b/modules/FeatureManagement/Lsw.Abp.FeatureManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.FeatureManagement.Blazor.WebAssembly.AntDesignUI.csproj index f72aaa9..131e006 100644 --- a/modules/FeatureManagement/Lsw.Abp.FeatureManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.FeatureManagement.Blazor.WebAssembly.AntDesignUI.csproj +++ b/modules/FeatureManagement/Lsw.Abp.FeatureManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.FeatureManagement.Blazor.WebAssembly.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/IdentityManagement/Lsw.Abp.IdentityManagement.Blazor.AntDesignUI/Lsw.Abp.IdentityManagement.Blazor.AntDesignUI.csproj b/modules/IdentityManagement/Lsw.Abp.IdentityManagement.Blazor.AntDesignUI/Lsw.Abp.IdentityManagement.Blazor.AntDesignUI.csproj index 46430b5..fb76b56 100644 --- a/modules/IdentityManagement/Lsw.Abp.IdentityManagement.Blazor.AntDesignUI/Lsw.Abp.IdentityManagement.Blazor.AntDesignUI.csproj +++ b/modules/IdentityManagement/Lsw.Abp.IdentityManagement.Blazor.AntDesignUI/Lsw.Abp.IdentityManagement.Blazor.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/IdentityManagement/Lsw.Abp.IdentityManagement.Blazor.Server.AntDesignUI/Lsw.Abp.IdentityManagement.Blazor.Server.AntDesignUI.csproj b/modules/IdentityManagement/Lsw.Abp.IdentityManagement.Blazor.Server.AntDesignUI/Lsw.Abp.IdentityManagement.Blazor.Server.AntDesignUI.csproj index 797c5fe..9deceac 100644 --- a/modules/IdentityManagement/Lsw.Abp.IdentityManagement.Blazor.Server.AntDesignUI/Lsw.Abp.IdentityManagement.Blazor.Server.AntDesignUI.csproj +++ b/modules/IdentityManagement/Lsw.Abp.IdentityManagement.Blazor.Server.AntDesignUI/Lsw.Abp.IdentityManagement.Blazor.Server.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/IdentityManagement/Lsw.Abp.IdentityManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.IdentityManagement.Blazor.WebAssembly.AntDesignUI.csproj b/modules/IdentityManagement/Lsw.Abp.IdentityManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.IdentityManagement.Blazor.WebAssembly.AntDesignUI.csproj index 00ab7b8..c350949 100644 --- a/modules/IdentityManagement/Lsw.Abp.IdentityManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.IdentityManagement.Blazor.WebAssembly.AntDesignUI.csproj +++ b/modules/IdentityManagement/Lsw.Abp.IdentityManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.IdentityManagement.Blazor.WebAssembly.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/PermissionManagement/Lsw.Abp.PermissionManagement.Blazor.AntDesignUI/Lsw.Abp.PermissionManagement.Blazor.AntDesignUI.csproj b/modules/PermissionManagement/Lsw.Abp.PermissionManagement.Blazor.AntDesignUI/Lsw.Abp.PermissionManagement.Blazor.AntDesignUI.csproj index 6d25b34..ac1ee46 100644 --- a/modules/PermissionManagement/Lsw.Abp.PermissionManagement.Blazor.AntDesignUI/Lsw.Abp.PermissionManagement.Blazor.AntDesignUI.csproj +++ b/modules/PermissionManagement/Lsw.Abp.PermissionManagement.Blazor.AntDesignUI/Lsw.Abp.PermissionManagement.Blazor.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/PermissionManagement/Lsw.Abp.PermissionManagement.Blazor.Server.AntDesignUI/Lsw.Abp.PermissionManagement.Blazor.Server.AntDesignUI.csproj b/modules/PermissionManagement/Lsw.Abp.PermissionManagement.Blazor.Server.AntDesignUI/Lsw.Abp.PermissionManagement.Blazor.Server.AntDesignUI.csproj index 499bb84..ff468dc 100644 --- a/modules/PermissionManagement/Lsw.Abp.PermissionManagement.Blazor.Server.AntDesignUI/Lsw.Abp.PermissionManagement.Blazor.Server.AntDesignUI.csproj +++ b/modules/PermissionManagement/Lsw.Abp.PermissionManagement.Blazor.Server.AntDesignUI/Lsw.Abp.PermissionManagement.Blazor.Server.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/PermissionManagement/Lsw.Abp.PermissionManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.PermissionManagement.Blazor.WebAssembly.AntDesignUI.csproj b/modules/PermissionManagement/Lsw.Abp.PermissionManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.PermissionManagement.Blazor.WebAssembly.AntDesignUI.csproj index 0b5598f..438f7b2 100644 --- a/modules/PermissionManagement/Lsw.Abp.PermissionManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.PermissionManagement.Blazor.WebAssembly.AntDesignUI.csproj +++ b/modules/PermissionManagement/Lsw.Abp.PermissionManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.PermissionManagement.Blazor.WebAssembly.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/SettingManagement/Lsw.Abp.SettingManagement.Blazor.AntDesignUI/Lsw.Abp.SettingManagement.Blazor.AntDesignUI.csproj b/modules/SettingManagement/Lsw.Abp.SettingManagement.Blazor.AntDesignUI/Lsw.Abp.SettingManagement.Blazor.AntDesignUI.csproj index b02a788..af63450 100644 --- a/modules/SettingManagement/Lsw.Abp.SettingManagement.Blazor.AntDesignUI/Lsw.Abp.SettingManagement.Blazor.AntDesignUI.csproj +++ b/modules/SettingManagement/Lsw.Abp.SettingManagement.Blazor.AntDesignUI/Lsw.Abp.SettingManagement.Blazor.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/SettingManagement/Lsw.Abp.SettingManagement.Blazor.Server.AntDesignUI/Lsw.Abp.SettingManagement.Blazor.Server.AntDesignUI.csproj b/modules/SettingManagement/Lsw.Abp.SettingManagement.Blazor.Server.AntDesignUI/Lsw.Abp.SettingManagement.Blazor.Server.AntDesignUI.csproj index 93fe43e..842ff73 100644 --- a/modules/SettingManagement/Lsw.Abp.SettingManagement.Blazor.Server.AntDesignUI/Lsw.Abp.SettingManagement.Blazor.Server.AntDesignUI.csproj +++ b/modules/SettingManagement/Lsw.Abp.SettingManagement.Blazor.Server.AntDesignUI/Lsw.Abp.SettingManagement.Blazor.Server.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/SettingManagement/Lsw.Abp.SettingManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.SettingManagement.Blazor.WebAssembly.AntDesignUI.csproj b/modules/SettingManagement/Lsw.Abp.SettingManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.SettingManagement.Blazor.WebAssembly.AntDesignUI.csproj index df5e745..b6102a1 100644 --- a/modules/SettingManagement/Lsw.Abp.SettingManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.SettingManagement.Blazor.WebAssembly.AntDesignUI.csproj +++ b/modules/SettingManagement/Lsw.Abp.SettingManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.SettingManagement.Blazor.WebAssembly.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/TenantManagement/Lsw.Abp.TenantManagement.Blazor.AntDesignUI/Lsw.Abp.TenantManagement.Blazor.AntDesignUI.csproj b/modules/TenantManagement/Lsw.Abp.TenantManagement.Blazor.AntDesignUI/Lsw.Abp.TenantManagement.Blazor.AntDesignUI.csproj index c880d12..1fba354 100644 --- a/modules/TenantManagement/Lsw.Abp.TenantManagement.Blazor.AntDesignUI/Lsw.Abp.TenantManagement.Blazor.AntDesignUI.csproj +++ b/modules/TenantManagement/Lsw.Abp.TenantManagement.Blazor.AntDesignUI/Lsw.Abp.TenantManagement.Blazor.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/TenantManagement/Lsw.Abp.TenantManagement.Blazor.Server.AntDesignUI/Lsw.Abp.TenantManagement.Blazor.Server.AntDesignUI.csproj b/modules/TenantManagement/Lsw.Abp.TenantManagement.Blazor.Server.AntDesignUI/Lsw.Abp.TenantManagement.Blazor.Server.AntDesignUI.csproj index 5a97e0f..1f167d8 100644 --- a/modules/TenantManagement/Lsw.Abp.TenantManagement.Blazor.Server.AntDesignUI/Lsw.Abp.TenantManagement.Blazor.Server.AntDesignUI.csproj +++ b/modules/TenantManagement/Lsw.Abp.TenantManagement.Blazor.Server.AntDesignUI/Lsw.Abp.TenantManagement.Blazor.Server.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/modules/TenantManagement/Lsw.Abp.TenantManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.TenantManagement.Blazor.WebAssembly.AntDesignUI.csproj b/modules/TenantManagement/Lsw.Abp.TenantManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.TenantManagement.Blazor.WebAssembly.AntDesignUI.csproj index 4d1724d..52a3cec 100644 --- a/modules/TenantManagement/Lsw.Abp.TenantManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.TenantManagement.Blazor.WebAssembly.AntDesignUI.csproj +++ b/modules/TenantManagement/Lsw.Abp.TenantManagement.Blazor.WebAssembly.AntDesignUI/Lsw.Abp.TenantManagement.Blazor.WebAssembly.AntDesignUI.csproj @@ -4,7 +4,7 @@ - net8.0 + net9.0 diff --git a/samples/BookStore/src/BookStore.Application.Contracts/BookStore.Application.Contracts.csproj b/samples/BookStore/src/BookStore.Application.Contracts/BookStore.Application.Contracts.csproj index 6c93373..5baf74d 100644 --- a/samples/BookStore/src/BookStore.Application.Contracts/BookStore.Application.Contracts.csproj +++ b/samples/BookStore/src/BookStore.Application.Contracts/BookStore.Application.Contracts.csproj @@ -3,7 +3,7 @@ - net8.0 + net9.0 BookStore diff --git a/samples/BookStore/src/BookStore.Application/BookStore.Application.csproj b/samples/BookStore/src/BookStore.Application/BookStore.Application.csproj index df953a4..887b2ba 100644 --- a/samples/BookStore/src/BookStore.Application/BookStore.Application.csproj +++ b/samples/BookStore/src/BookStore.Application/BookStore.Application.csproj @@ -3,7 +3,7 @@ - net8.0 + net9.0 BookStore diff --git a/samples/BookStore/src/BookStore.Blazor/BookStore.Blazor.csproj b/samples/BookStore/src/BookStore.Blazor/BookStore.Blazor.csproj index c88b080..f20b7cb 100644 --- a/samples/BookStore/src/BookStore.Blazor/BookStore.Blazor.csproj +++ b/samples/BookStore/src/BookStore.Blazor/BookStore.Blazor.csproj @@ -3,7 +3,7 @@ - net8.0 + net9.0 true diff --git a/samples/BookStore/src/BookStore.Blazor/wwwroot/global.css b/samples/BookStore/src/BookStore.Blazor/wwwroot/global.css index 3e589f5..ef5f692 100644 --- a/samples/BookStore/src/BookStore.Blazor/wwwroot/global.css +++ b/samples/BookStore/src/BookStore.Blazor/wwwroot/global.css @@ -7028,6 +7028,10 @@ _:-ms-fullscreen .ant-picker-range-wrapper .ant-picker-year-panel .ant-picker-ce margin-right: 0; margin-left: 12px; } +body:has(.ant-drawer-open .ant-drawer-mask) { + overflow: hidden; + padding-right: var(--ant-scrollbar-width); +} .ant-dropdown-menu-item.ant-dropdown-menu-item-danger { color: #ff4d4f; } @@ -17267,6 +17271,19 @@ textarea.ant-mentions .rc-textarea { color: rgba(0, 0, 0, 0.75); text-decoration: none; } +.ant-modal-resizable .ant-modal-footer { + position: absolute; + bottom: 0; + right: 0; + width: 100%; +} +.ant-modal-wrap-rtl .ant-modal-resizable .ant-modal-footer { + left: 0; +} +body:has(.ant-modal-open .ant-modal-mask) { + overflow: hidden; + padding-right: var(--ant-scrollbar-width); +} .ant-notification { box-sizing: border-box; margin: 0; @@ -22561,6 +22578,13 @@ tr.ant-table-expanded-row .ant-descriptions-view table { border-right: 2px dashed #096dd9; z-index: 99; } +tr.ant-table-grouping-footer > td { + padding: 0; + line-height: inherit; +} +tr.ant-table-row-grouping > td { + padding: 8px 8px; +} .ant-tabs-small > .ant-tabs-nav .ant-tabs-tab { padding: 8px 0; font-size: 14px; @@ -23202,6 +23226,9 @@ a[antblazor-tab-link]::before { a[antblazor-tab-link] ~ * { position: relative; } +.ant-tabs > .ant-tabs-nav .ant-tabs-nav-operations + .ant-tabs-nav-add { + background: transparent; +} .antblazor-tabs-dropdown.ant-dropdown .ant-dropdown-menu { max-height: 200px; margin: 0; @@ -26134,6 +26161,9 @@ div.ant-typography-edit-content.ant-typography-rtl { .ant-tree-child-tree { overflow: hidden; } +.ant-tree-indent { + font-size: 0; +} .ant-select-tree-checkbox { box-sizing: border-box; margin: 0; @@ -27099,6 +27129,10 @@ div.ant-typography-edit-content.ant-typography-rtl { .ant-image-preview-switch-right { right: 8px; } +body:has(.ant-image-preview-open .ant-image-preview-mask) { + overflow: hidden; + padding-right: var(--ant-scrollbar-width); +} .ant-flex { display: flex; } diff --git a/samples/BookStore/src/BookStore.Blazor/wwwroot/global.js b/samples/BookStore/src/BookStore.Blazor/wwwroot/global.js index 959d118..5ae7a22 100644 --- a/samples/BookStore/src/BookStore.Blazor/wwwroot/global.js +++ b/samples/BookStore/src/BookStore.Blazor/wwwroot/global.js @@ -1,13 +1,59 @@ -(()=>{"use strict";var e,t,n;!function(e){const t=[],n="__jsObjectId",r="__dotNetObject",o="__byte[]",i="__dotNetStream",s="__jsStreamReferenceLength";let a,c;class l{constructor(e){this._jsObject=e,this._cachedFunctions=new Map}findFunction(e){const t=this._cachedFunctions.get(e);if(t)return t;let n,r=this._jsObject;if(e.split(".").forEach((t=>{if(!(t in r))throw new Error(`Could not find '${e}' ('${t}' was undefined).`);n=r,r=r[t]})),r instanceof Function)return r=r.bind(n),this._cachedFunctions.set(e,r),r;throw new Error(`The value '${e}' is not a function.`)}getWrappedObject(){return this._jsObject}}const u={0:new l(window)};u[0]._cachedFunctions.set("import",(e=>("string"==typeof e&&e.startsWith("./")&&(e=new URL(e.substr(2),document.baseURI).toString()),import(e))));let d,f=1;function m(e){t.push(e)}function h(e){if(e&&"object"==typeof e){u[f]=new l(e);const t={[n]:f};return f++,t}throw new Error(`Cannot create a JSObjectReference from the value '${e}'.`)}function p(e){let t=-1;if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),e instanceof Blob)t=e.size;else{if(!(e.buffer instanceof ArrayBuffer))throw new Error("Supplied value is not a typed array or blob.");if(void 0===e.byteLength)throw new Error(`Cannot create a JSStreamReference from the value '${e}' as it doesn't have a byteLength.`);t=e.byteLength}const r={[s]:t};try{const t=h(e);r[n]=t[n]}catch(t){throw new Error(`Cannot create a JSStreamReference from the value '${e}'.`)}return r}function v(e,n){c=e;const r=n?JSON.parse(n,((e,n)=>t.reduce(((t,n)=>n(e,t)),n))):null;return c=void 0,r}function g(){if(void 0===a)throw new Error("No call dispatcher has been set.");if(null===a)throw new Error("There are multiple .NET runtimes present, so a default dispatcher could not be resolved. Use DotNetObject to invoke .NET instance methods.");return a}e.attachDispatcher=function(e){const t=new b(e);return void 0===a?a=t:a&&(a=null),t},e.attachReviver=m,e.invokeMethod=function(e,t,...n){return g().invokeDotNetStaticMethod(e,t,...n)},e.invokeMethodAsync=function(e,t,...n){return g().invokeDotNetStaticMethodAsync(e,t,...n)},e.createJSObjectReference=h,e.createJSStreamReference=p,e.disposeJSObjectReference=function(e){const t=e&&e[n];"number"==typeof t&&E(t)},function(e){e[e.Default=0]="Default",e[e.JSObjectReference=1]="JSObjectReference",e[e.JSStreamReference=2]="JSStreamReference",e[e.JSVoidResult=3]="JSVoidResult"}(d=e.JSCallResultType||(e.JSCallResultType={}));class b{constructor(e){this._dotNetCallDispatcher=e,this._byteArraysToBeRevived=new Map,this._pendingDotNetToJSStreams=new Map,this._pendingAsyncCalls={},this._nextAsyncCallId=1}getDotNetCallDispatcher(){return this._dotNetCallDispatcher}invokeJSFromDotNet(e,t,n,r){const o=v(this,t),i=I(w(e,r)(...o||[]),n);return null==i?null:_(this,i)}beginInvokeJSFromDotNet(e,t,n,r,o){const i=new Promise((e=>{const r=v(this,n);e(w(t,o)(...r||[]))}));e&&i.then((t=>_(this,[e,!0,I(t,r)]))).then((t=>this._dotNetCallDispatcher.endInvokeJSFromDotNet(e,!0,t)),(t=>this._dotNetCallDispatcher.endInvokeJSFromDotNet(e,!1,JSON.stringify([e,!1,y(t)]))))}endInvokeDotNetFromJS(e,t,n){const r=t?v(this,n):new Error(n);this.completePendingCall(parseInt(e,10),t,r)}invokeDotNetStaticMethod(e,t,...n){return this.invokeDotNetMethod(e,t,null,n)}invokeDotNetStaticMethodAsync(e,t,...n){return this.invokeDotNetMethodAsync(e,t,null,n)}invokeDotNetMethod(e,t,n,r){if(this._dotNetCallDispatcher.invokeDotNetFromJS){const o=_(this,r),i=this._dotNetCallDispatcher.invokeDotNetFromJS(e,t,n,o);return i?v(this,i):null}throw new Error("The current dispatcher does not support synchronous calls from JS to .NET. Use invokeDotNetMethodAsync instead.")}invokeDotNetMethodAsync(e,t,n,r){if(e&&n)throw new Error(`For instance method calls, assemblyName should be null. Received '${e}'.`);const o=this._nextAsyncCallId++,i=new Promise(((e,t)=>{this._pendingAsyncCalls[o]={resolve:e,reject:t}}));try{const i=_(this,r);this._dotNetCallDispatcher.beginInvokeDotNetFromJS(o,e,t,n,i)}catch(e){this.completePendingCall(o,!1,e)}return i}receiveByteArray(e,t){this._byteArraysToBeRevived.set(e,t)}processByteArray(e){const t=this._byteArraysToBeRevived.get(e);return t?(this._byteArraysToBeRevived.delete(e),t):null}supplyDotNetStream(e,t){if(this._pendingDotNetToJSStreams.has(e)){const n=this._pendingDotNetToJSStreams.get(e);this._pendingDotNetToJSStreams.delete(e),n.resolve(t)}else{const n=new C;n.resolve(t),this._pendingDotNetToJSStreams.set(e,n)}}getDotNetStreamPromise(e){let t;if(this._pendingDotNetToJSStreams.has(e))t=this._pendingDotNetToJSStreams.get(e).streamPromise,this._pendingDotNetToJSStreams.delete(e);else{const n=new C;this._pendingDotNetToJSStreams.set(e,n),t=n.streamPromise}return t}completePendingCall(e,t,n){if(!this._pendingAsyncCalls.hasOwnProperty(e))throw new Error(`There is no pending async call with ID ${e}.`);const r=this._pendingAsyncCalls[e];delete this._pendingAsyncCalls[e],t?r.resolve(n):r.reject(n)}}function y(e){return e instanceof Error?`${e.message}\n${e.stack}`:e?e.toString():"null"}function w(e,t){const n=u[t];if(n)return n.findFunction(e);throw new Error(`JS object instance with ID ${t} does not exist (has it been disposed?).`)}function E(e){delete u[e]}e.findJSFunction=w,e.disposeJSObjectReferenceById=E;class S{constructor(e,t){this._id=e,this._callDispatcher=t}invokeMethod(e,...t){return this._callDispatcher.invokeDotNetMethod(null,e,this._id,t)}invokeMethodAsync(e,...t){return this._callDispatcher.invokeDotNetMethodAsync(null,e,this._id,t)}dispose(){this._callDispatcher.invokeDotNetMethodAsync(null,"__Dispose",this._id,null).catch((e=>console.error(e)))}serializeAsArg(){return{[r]:this._id}}}e.DotNetObject=S,m((function(e,t){if(t&&"object"==typeof t){if(t.hasOwnProperty(r))return new S(t[r],c);if(t.hasOwnProperty(n)){const e=t[n],r=u[e];if(r)return r.getWrappedObject();throw new Error(`JS object instance with Id '${e}' does not exist. It may have been disposed.`)}if(t.hasOwnProperty(o)){const e=t[o],n=c.processByteArray(e);if(void 0===n)throw new Error(`Byte array index '${e}' does not exist.`);return n}if(t.hasOwnProperty(i)){const e=t[i],n=c.getDotNetStreamPromise(e);return new A(n)}}return t}));class A{constructor(e){this._streamPromise=e}stream(){return this._streamPromise}async arrayBuffer(){return new Response(await this.stream()).arrayBuffer()}}class C{constructor(){this.streamPromise=new Promise(((e,t)=>{this.resolve=e,this.reject=t}))}}function I(e,t){switch(t){case d.Default:return e;case d.JSObjectReference:return h(e);case d.JSStreamReference:return p(e);case d.JSVoidResult:return null;default:throw new Error(`Invalid JS call result type '${t}'.`)}}let N=0;function _(e,t){N=0,c=e;const n=JSON.stringify(t,R);return c=void 0,n}function R(e,t){if(t instanceof S)return t.serializeAsArg();if(t instanceof Uint8Array){c.getDotNetCallDispatcher().sendByteArray(N,t);const e={[o]:N};return N++,e}return t}}(e||(e={})),function(e){e[e.prependFrame=1]="prependFrame",e[e.removeFrame=2]="removeFrame",e[e.setAttribute=3]="setAttribute",e[e.removeAttribute=4]="removeAttribute",e[e.updateText=5]="updateText",e[e.stepIn=6]="stepIn",e[e.stepOut=7]="stepOut",e[e.updateMarkup=8]="updateMarkup",e[e.permutationListEntry=9]="permutationListEntry",e[e.permutationListEnd=10]="permutationListEnd"}(t||(t={})),function(e){e[e.element=1]="element",e[e.text=2]="text",e[e.attribute=3]="attribute",e[e.component=4]="component",e[e.region=5]="region",e[e.elementReferenceCapture=6]="elementReferenceCapture",e[e.markup=8]="markup",e[e.namedEvent=10]="namedEvent"}(n||(n={}));class r{constructor(e,t){this.componentId=e,this.fieldValue=t}static fromEvent(e,t){const n=t.target;if(n instanceof Element){const t=function(e){return e instanceof HTMLInputElement?e.type&&"checkbox"===e.type.toLowerCase()?{value:e.checked}:{value:e.value}:e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement?{value:e.value}:null}(n);if(t)return new r(e,t.value)}return null}}const o=new Map,i=new Map,s=[];function a(e){return o.get(e)}function c(e){const t=o.get(e);return(null==t?void 0:t.browserEventName)||e}function l(e,t){e.forEach((e=>o.set(e,t)))}function u(e){const t=[];for(let n=0;ne.selected)).map((e=>e.value))}}{const e=function(e){return!!e&&"INPUT"===e.tagName&&"checkbox"===e.getAttribute("type")}(t);return{value:e?!!t.checked:t.value}}}}),l(["copy","cut","paste"],{createEventArgs:e=>({type:e.type})}),l(["drag","dragend","dragenter","dragleave","dragover","dragstart","drop"],{createEventArgs:e=>{return{...d(t=e),dataTransfer:t.dataTransfer?{dropEffect:t.dataTransfer.dropEffect,effectAllowed:t.dataTransfer.effectAllowed,files:Array.from(t.dataTransfer.files).map((e=>e.name)),items:Array.from(t.dataTransfer.items).map((e=>({kind:e.kind,type:e.type}))),types:t.dataTransfer.types}:null};var t}}),l(["focus","blur","focusin","focusout"],{createEventArgs:e=>({type:e.type})}),l(["keydown","keyup","keypress"],{createEventArgs:e=>{return{key:(t=e).key,code:t.code,location:t.location,repeat:t.repeat,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey,type:t.type};var t}}),l(["contextmenu","click","mouseover","mouseout","mousemove","mousedown","mouseup","mouseleave","mouseenter","dblclick"],{createEventArgs:e=>d(e)}),l(["error"],{createEventArgs:e=>{return{message:(t=e).message,filename:t.filename,lineno:t.lineno,colno:t.colno,type:t.type};var t}}),l(["loadstart","timeout","abort","load","loadend","progress"],{createEventArgs:e=>{return{lengthComputable:(t=e).lengthComputable,loaded:t.loaded,total:t.total,type:t.type};var t}}),l(["touchcancel","touchend","touchmove","touchenter","touchleave","touchstart"],{createEventArgs:e=>{return{detail:(t=e).detail,touches:u(t.touches),targetTouches:u(t.targetTouches),changedTouches:u(t.changedTouches),ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey,type:t.type};var t}}),l(["gotpointercapture","lostpointercapture","pointercancel","pointerdown","pointerenter","pointerleave","pointermove","pointerout","pointerover","pointerup"],{createEventArgs:e=>{return{...d(t=e),pointerId:t.pointerId,width:t.width,height:t.height,pressure:t.pressure,tiltX:t.tiltX,tiltY:t.tiltY,pointerType:t.pointerType,isPrimary:t.isPrimary};var t}}),l(["wheel","mousewheel"],{createEventArgs:e=>{return{...d(t=e),deltaX:t.deltaX,deltaY:t.deltaY,deltaZ:t.deltaZ,deltaMode:t.deltaMode};var t}}),l(["cancel","close","toggle"],{createEventArgs:()=>({})});const f=["date","datetime-local","month","time","week"],m=new Map;let h,p,v=0;const g={async add(e,t,n){if(!n)throw new Error("initialParameters must be an object, even if empty.");const r="__bl-dynamic-root:"+(++v).toString();m.set(r,e);const o=await w().invokeMethodAsync("AddRootComponent",t,r),i=new y(o,p[t]);return await i.setParameters(n),i}};class b{invoke(e){return this._callback(e)}setCallback(t){this._selfJSObjectReference||(this._selfJSObjectReference=e.createJSObjectReference(this)),this._callback=t}getJSObjectReference(){return this._selfJSObjectReference}dispose(){this._selfJSObjectReference&&e.disposeJSObjectReference(this._selfJSObjectReference)}}class y{constructor(e,t){this._jsEventCallbackWrappers=new Map,this._componentId=e;for(const e of t)"eventcallback"===e.type&&this._jsEventCallbackWrappers.set(e.name.toLowerCase(),new b)}setParameters(e){const t={},n=Object.entries(e||{}),r=n.length;for(const[e,r]of n){const n=this._jsEventCallbackWrappers.get(e.toLowerCase());n&&r?(n.setCallback(r),t[e]=n.getJSObjectReference()):t[e]=r}return w().invokeMethodAsync("SetRootComponentParameters",this._componentId,r,t)}async dispose(){if(null!==this._componentId){await w().invokeMethodAsync("RemoveRootComponent",this._componentId),this._componentId=null;for(const e of this._jsEventCallbackWrappers.values())e.dispose()}}}function w(){if(!h)throw new Error("Dynamic root components have not been enabled in this application.");return h}const E=new Map,S=[],A=new Map;function C(e,t,n){return N(e,t.eventHandlerId,(()=>I(e).invokeMethodAsync("DispatchEventAsync",t,n)))}function I(e){const t=E.get(e);if(!t)throw new Error(`No interop methods are registered for renderer ${e}`);return t}let N=(e,t,n)=>n();const _=O(["abort","blur","cancel","canplay","canplaythrough","change","close","cuechange","durationchange","emptied","ended","error","focus","load","loadeddata","loadedmetadata","loadend","loadstart","mouseenter","mouseleave","pointerenter","pointerleave","pause","play","playing","progress","ratechange","reset","scroll","seeked","seeking","stalled","submit","suspend","timeupdate","toggle","unload","volumechange","waiting","DOMNodeInsertedIntoDocument","DOMNodeRemovedFromDocument"]),R={submit:!0},k=O(["click","dblclick","mousedown","mousemove","mouseup"]);class D{constructor(e){this.browserRendererId=e,this.afterClickCallbacks=[];const t=++D.nextEventDelegatorId;this.eventsCollectionKey=`_blazorEvents_${t}`,this.eventInfoStore=new F(this.onGlobalEvent.bind(this))}setListener(e,t,n,r){const o=this.getEventHandlerInfosForElement(e,!0),i=o.getHandler(t);if(i)this.eventInfoStore.update(i.eventHandlerId,n);else{const i={element:e,eventName:t,eventHandlerId:n,renderingComponentId:r};this.eventInfoStore.add(i),o.setHandler(t,i)}}getHandler(e){return this.eventInfoStore.get(e)}removeListener(e){const t=this.eventInfoStore.remove(e);if(t){const e=t.element,n=this.getEventHandlerInfosForElement(e,!1);n&&n.removeHandler(t.eventName)}}notifyAfterClick(e){this.afterClickCallbacks.push(e),this.eventInfoStore.addGlobalListener("click")}setStopPropagation(e,t,n){this.getEventHandlerInfosForElement(e,!0).stopPropagation(t,n)}setPreventDefault(e,t,n){this.getEventHandlerInfosForElement(e,!0).preventDefault(t,n)}onGlobalEvent(e){if(!(e.target instanceof Element))return;this.dispatchGlobalEventToAllElements(e.type,e);const t=(n=e.type,i.get(n));var n;t&&t.forEach((t=>this.dispatchGlobalEventToAllElements(t,e))),"click"===e.type&&this.afterClickCallbacks.forEach((t=>t(e)))}dispatchGlobalEventToAllElements(e,t){const n=t.composedPath();let o=n.shift(),i=null,s=!1;const c=Object.prototype.hasOwnProperty.call(_,e);let l=!1;for(;o;){const f=o,m=this.getEventHandlerInfosForElement(f,!1);if(m){const n=m.getHandler(e);if(n&&(u=f,d=t.type,!((u instanceof HTMLButtonElement||u instanceof HTMLInputElement||u instanceof HTMLTextAreaElement||u instanceof HTMLSelectElement)&&Object.prototype.hasOwnProperty.call(k,d)&&u.disabled))){if(!s){const n=a(e);i=(null==n?void 0:n.createEventArgs)?n.createEventArgs(t):{},s=!0}Object.prototype.hasOwnProperty.call(R,t.type)&&t.preventDefault(),C(this.browserRendererId,{eventHandlerId:n.eventHandlerId,eventName:e,eventFieldInfo:r.fromEvent(n.renderingComponentId,t)},i)}m.stopPropagation(e)&&(l=!0),m.preventDefault(e)&&t.preventDefault()}o=c||l?void 0:n.shift()}var u,d}getEventHandlerInfosForElement(e,t){return Object.prototype.hasOwnProperty.call(e,this.eventsCollectionKey)?e[this.eventsCollectionKey]:t?e[this.eventsCollectionKey]=new T:null}}D.nextEventDelegatorId=0;class F{constructor(e){this.globalListener=e,this.infosByEventHandlerId={},this.countByEventName={},s.push(this.handleEventNameAliasAdded.bind(this))}add(e){if(this.infosByEventHandlerId[e.eventHandlerId])throw new Error(`Event ${e.eventHandlerId} is already tracked`);this.infosByEventHandlerId[e.eventHandlerId]=e,this.addGlobalListener(e.eventName)}get(e){return this.infosByEventHandlerId[e]}addGlobalListener(e){if(e=c(e),Object.prototype.hasOwnProperty.call(this.countByEventName,e))this.countByEventName[e]++;else{this.countByEventName[e]=1;const t=Object.prototype.hasOwnProperty.call(_,e);document.addEventListener(e,this.globalListener,t)}}update(e,t){if(Object.prototype.hasOwnProperty.call(this.infosByEventHandlerId,t))throw new Error(`Event ${t} is already tracked`);const n=this.infosByEventHandlerId[e];delete this.infosByEventHandlerId[e],n.eventHandlerId=t,this.infosByEventHandlerId[t]=n}remove(e){const t=this.infosByEventHandlerId[e];if(t){delete this.infosByEventHandlerId[e];const n=c(t.eventName);0==--this.countByEventName[n]&&(delete this.countByEventName[n],document.removeEventListener(n,this.globalListener))}return t}handleEventNameAliasAdded(e,t){if(Object.prototype.hasOwnProperty.call(this.countByEventName,e)){const n=this.countByEventName[e];delete this.countByEventName[e],document.removeEventListener(e,this.globalListener),this.addGlobalListener(t),this.countByEventName[t]+=n-1}}}class T{constructor(){this.handlers={},this.preventDefaultFlags=null,this.stopPropagationFlags=null}getHandler(e){return Object.prototype.hasOwnProperty.call(this.handlers,e)?this.handlers[e]:null}setHandler(e,t){this.handlers[e]=t}removeHandler(e){delete this.handlers[e]}preventDefault(e,t){return void 0!==t&&(this.preventDefaultFlags=this.preventDefaultFlags||{},this.preventDefaultFlags[e]=t),!!this.preventDefaultFlags&&this.preventDefaultFlags[e]}stopPropagation(e,t){return void 0!==t&&(this.stopPropagationFlags=this.stopPropagationFlags||{},this.stopPropagationFlags[e]=t),!!this.stopPropagationFlags&&this.stopPropagationFlags[e]}}function O(e){const t={};return e.forEach((e=>{t[e]=!0})),t}const L=Symbol(),M=Symbol(),x=Symbol();function P(e,t){if(L in e)return e;const n=[];if(e.childNodes.length>0){if(!t)throw new Error("New logical elements must start empty, or allowExistingContents must be true");e.childNodes.forEach((t=>{const r=P(t,!0);r[M]=e,n.push(r)}))}return e[L]=n,e}function B(e){const t=U(e);for(;t.length;)H(e,0)}function J(e,t){const n=document.createComment("!");return j(n,e,t),n}function j(e,t,n){const r=e;let o=e;if(e instanceof Comment){const t=U(r);if((null==t?void 0:t.length)>0){const t=G(r),n=new Range;n.setStartBefore(e),n.setEndAfter(t),o=n.extractContents()}}const i=$(r);if(i){const e=U(i),t=Array.prototype.indexOf.call(e,r);e.splice(t,1),delete r[M]}const s=U(t);if(n0;)H(n,0)}const r=n;r.parentNode.removeChild(r)}function $(e){return e[M]||null}function z(e,t){return U(e)[t]}function W(e){const t=X(e);return"http://www.w3.org/2000/svg"===t.namespaceURI&&"foreignObject"!==t.tagName}function U(e){return e[L]}function K(e){const t=U($(e));return t[Array.prototype.indexOf.call(t,e)+1]||null}function V(e,t){const n=U(e);t.forEach((e=>{e.moveRangeStart=n[e.fromSiblingIndex],e.moveRangeEnd=G(e.moveRangeStart)})),t.forEach((t=>{const r=document.createComment("marker");t.moveToBeforeMarker=r;const o=n[t.toSiblingIndex+1];o?o.parentNode.insertBefore(r,o):Y(r,e)})),t.forEach((e=>{const t=e.moveToBeforeMarker,n=t.parentNode,r=e.moveRangeStart,o=e.moveRangeEnd;let i=r;for(;i;){const e=i.nextSibling;if(n.insertBefore(i,t),i===o)break;i=e}n.removeChild(t)})),t.forEach((e=>{n[e.toSiblingIndex]=e.moveRangeStart}))}function X(e){if(e instanceof Element||e instanceof DocumentFragment)return e;if(e instanceof Comment)return e.parentNode;throw new Error("Not a valid logical element")}function Y(e,t){if(t instanceof Element||t instanceof DocumentFragment)t.appendChild(e);else{if(!(t instanceof Comment))throw new Error(`Cannot append node because the parent is not a valid logical element. Parent: ${t}`);{const n=K(t);n?n.parentNode.insertBefore(e,n):Y(e,$(t))}}}function G(e){if(e instanceof Element||e instanceof DocumentFragment)return e;const t=K(e);if(t)return t.previousSibling;{const t=$(e);return t instanceof Element||t instanceof DocumentFragment?t.lastChild:G(t)}}function q(e){return`_bl_${e}`}const Z="__internalId";e.attachReviver(((e,t)=>t&&"object"==typeof t&&Object.prototype.hasOwnProperty.call(t,Z)&&"string"==typeof t[Z]?function(e){const t=`[${q(e)}]`;return document.querySelector(t)}(t[Z]):t));const Q="_blazorDeferredValue";function ee(e){return"select-multiple"===e.type}function te(e,t){e.value=t||""}function ne(e,t){e instanceof HTMLSelectElement?ee(e)?function(e,t){t||(t=[]);for(let n=0;n{Ie()&&function(e,t){if(0!==e.button||function(e){return e.ctrlKey||e.shiftKey||e.altKey||e.metaKey}(e))return;if(e.defaultPrevented)return;const n=function(e){const t=e.composedPath&&e.composedPath();if(t)for(let e=0;e{const t=document.createElement("script");t.textContent=e.textContent,e.getAttributeNames().forEach((n=>{t.setAttribute(n,e.getAttribute(n))})),e.parentNode.replaceChild(t,e)})),oe.content));var s;let a=0;for(;i.firstChild;)j(i.firstChild,o,a++)}applyAttribute(e,t,n,r){const o=e.frameReader,i=o.attributeName(r),s=o.attributeEventHandlerId(r);if(s){const e=fe(i);return void this.eventDelegator.setListener(n,e,s,t)}const a=o.attributeValue(r);this.setOrRemoveAttributeOrProperty(n,i,a)}insertFrameRange(e,t,n,r,o,i,s){const a=r;for(let a=i;a{je(t,e)})},enableNavigationInterception:function(e){if(void 0!==he&&he!==e)throw new Error("Only one interactive runtime may enable navigation interception at a time.");he=e},setHasLocationChangingListeners:function(e,t){const n=De.get(e);if(!n)throw new Error(`Renderer with ID '${e}' is not listening for navigation events`);n.hasLocationChangingEventListeners=t},endLocationChanging:function(e,t){Te&&e===ke&&(Te(t),Te=null)},navigateTo:function(e,t){Le(e,t,!0)},refresh:function(e){!e&&Se()?Ae(location.href,!0):location.reload()},getBaseURI:()=>document.baseURI,getLocationHref:()=>location.href,scrollToElement:Ee};function Le(e,t,n=!1){const r=Ce(e),o=ze();if(t.forceLoad||!we(r)||"serverside-fullpageload"===o)!function(e,t){if(location.href===e){const t=e+"?";history.replaceState(null,"",t),location.replace(e)}else t?location.replace(e):location.href=e}(e,t.replaceHistoryEntry);else if("clientside-router"===o)Me(r,!1,t.replaceHistoryEntry,t.historyEntryState,n);else{if("serverside-enhanced"!==o)throw new Error(`Unsupported page load mechanism: ${o}`);Ae(r,t.replaceHistoryEntry)}}async function Me(e,t,n,r=void 0,o=!1){if(Be(),function(e){const t=new URL(e);return""!==t.hash&&location.origin===t.origin&&location.pathname===t.pathname&&location.search===t.search}(e))return xe(e,n,r),void function(e){const t=e.indexOf("#");t!==e.length-1&&Ee(e.substring(t+1))}(e);const i=$e();(o||!(null==i?void 0:i.hasLocationChangingEventListeners)||await Je(e,r,t,i))&&(be=!0,xe(e,n,r),await je(t))}function xe(e,t,n=void 0){t?history.replaceState({userState:n,_index:Re},"",e):(Re++,history.pushState({userState:n,_index:Re},"",e))}function Pe(e){return new Promise((t=>{const n=Fe;Fe=()=>{Fe=n,t()},history.go(e)}))}function Be(){Te&&(Te(!1),Te=null)}function Je(e,t,n,r){return new Promise((o=>{Be(),ke++,Te=o,r.locationChanging(ke,e,t,n)}))}async function je(e,t){const n=null!=t?t:location.href;await Promise.all(Array.from(De,(async([t,r])=>{var o,i;i=t,E.has(i)&&await r.locationChanged(n,null===(o=history.state)||void 0===o?void 0:o.userState,e)})))}async function He(e){var t,n;Fe&&"serverside-enhanced"!==ze()&&await Fe(e),Re=null!==(n=null===(t=history.state)||void 0===t?void 0:t._index)&&void 0!==n?n:0}function $e(){const e=Ne();if(void 0!==e)return De.get(e)}function ze(){return Ie()?"clientside-router":Se()?"serverside-enhanced":window.Blazor._internal.isBlazorWeb?"serverside-fullpageload":"clientside-router"}const We={focus:function(e,t){if(e instanceof HTMLElement)e.focus({preventScroll:t});else{if(!(e instanceof SVGElement))throw new Error("Unable to focus an invalid element.");if(!e.hasAttribute("tabindex"))throw new Error("Unable to focus an SVG element that does not have a tabindex.");e.focus({preventScroll:t})}},focusBySelector:function(e,t){const n=document.querySelector(e);n&&(n.hasAttribute("tabindex")||(n.tabIndex=-1),n.focus({preventScroll:!0}))}},Ue={init:function(e,t,n,r=50){const o=Ve(t);(o||document.documentElement).style.overflowAnchor="none";const i=document.createRange();f(n.parentElement)&&(t.style.display="table-row",n.style.display="table-row");const s=new IntersectionObserver((function(r){r.forEach((r=>{var o;if(!r.isIntersecting)return;i.setStartAfter(t),i.setEndBefore(n);const s=i.getBoundingClientRect().height,a=null===(o=r.rootBounds)||void 0===o?void 0:o.height;r.target===t?e.invokeMethodAsync("OnSpacerBeforeVisible",r.intersectionRect.top-r.boundingClientRect.top,s,a):r.target===n&&n.offsetHeight>0&&e.invokeMethodAsync("OnSpacerAfterVisible",r.boundingClientRect.bottom-r.intersectionRect.bottom,s,a)}))}),{root:o,rootMargin:`${r}px`});s.observe(t),s.observe(n);const a=d(t),c=d(n),{observersByDotNetObjectId:l,id:u}=Xe(e);function d(e){const t={attributes:!0},n=new MutationObserver(((n,r)=>{f(e.parentElement)&&(r.disconnect(),e.style.display="table-row",r.observe(e,t)),s.unobserve(e),s.observe(e)}));return n.observe(e,t),n}function f(e){return null!==e&&(e instanceof HTMLTableElement&&""===e.style.display||"table"===e.style.display||e instanceof HTMLTableSectionElement&&""===e.style.display||"table-row-group"===e.style.display)}l[u]={intersectionObserver:s,mutationObserverBefore:a,mutationObserverAfter:c}},dispose:function(e){const{observersByDotNetObjectId:t,id:n}=Xe(e),r=t[n];r&&(r.intersectionObserver.disconnect(),r.mutationObserverBefore.disconnect(),r.mutationObserverAfter.disconnect(),e.dispose(),delete t[n])}},Ke=Symbol();function Ve(e){return e&&e!==document.body&&e!==document.documentElement?"visible"!==getComputedStyle(e).overflowY?e:Ve(e.parentElement):null}function Xe(e){var t;const n=e._callDispatcher,r=e._id;return null!==(t=n[Ke])&&void 0!==t||(n[Ke]={}),{observersByDotNetObjectId:n[Ke],id:r}}const Ye={getAndRemoveExistingTitle:function(){var e;const t=document.head?document.head.getElementsByTagName("title"):[];if(0===t.length)return null;let n=null;for(let r=t.length-1;r>=0;r--){const o=t[r],i=o.previousSibling;i instanceof Comment&&null!==$(i)||(null===n&&(n=o.textContent),null===(e=o.parentNode)||void 0===e||e.removeChild(o))}return n}},Ge={init:function(e,t){t._blazorInputFileNextFileId=0,t.addEventListener("click",(function(){t.value=""})),t.addEventListener("change",(function(){t._blazorFilesById={};const n=Array.prototype.map.call(t.files,(function(e){const n={id:++t._blazorInputFileNextFileId,lastModified:new Date(e.lastModified).toISOString(),name:e.name,size:e.size,contentType:e.type,readPromise:void 0,arrayBuffer:void 0,blob:e};return t._blazorFilesById[n.id]=n,n}));e.invokeMethodAsync("NotifyChange",n)}))},toImageFile:async function(e,t,n,r,o){const i=qe(e,t),s=await new Promise((function(e){const t=new Image;t.onload=function(){URL.revokeObjectURL(t.src),e(t)},t.onerror=function(){t.onerror=null,URL.revokeObjectURL(t.src)},t.src=URL.createObjectURL(i.blob)})),a=await new Promise((function(e){var t;const i=Math.min(1,r/s.width),a=Math.min(1,o/s.height),c=Math.min(i,a),l=document.createElement("canvas");l.width=Math.round(s.width*c),l.height=Math.round(s.height*c),null===(t=l.getContext("2d"))||void 0===t||t.drawImage(s,0,0,l.width,l.height),l.toBlob(e,n)})),c={id:++e._blazorInputFileNextFileId,lastModified:i.lastModified,name:i.name,size:(null==a?void 0:a.size)||0,contentType:n,blob:a||i.blob};return e._blazorFilesById[c.id]=c,c},readFileData:async function(e,t){return qe(e,t).blob}};function qe(e,t){const n=e._blazorFilesById[t];if(!n)throw new Error(`There is no file with ID ${t}. The file list may have changed. See https://aka.ms/aspnet/blazor-input-file-multiple-selections.`);return n}const Ze=new Set,Qe={enableNavigationPrompt:function(e){0===Ze.size&&window.addEventListener("beforeunload",et),Ze.add(e)},disableNavigationPrompt:function(e){Ze.delete(e),0===Ze.size&&window.removeEventListener("beforeunload",et)}};function et(e){e.preventDefault(),e.returnValue=!0}const tt=new Map,nt={navigateTo:function(e,t,n=!1){Le(e,t instanceof Object?t:{forceLoad:t,replaceHistoryEntry:n})},registerCustomEventType:function(e,t){if(!t)throw new Error("The options parameter is required.");if(o.has(e))throw new Error(`The event '${e}' is already registered.`);if(t.browserEventName){const n=i.get(t.browserEventName);n?n.push(e):i.set(t.browserEventName,[e]),s.forEach((n=>n(e,t.browserEventName)))}o.set(e,t)},rootComponents:g,runtime:{},_internal:{navigationManager:Oe,domWrapper:We,Virtualize:Ue,PageTitle:Ye,InputFile:Ge,NavigationLock:Qe,getJSDataStreamChunk:async function(e,t,n){return e instanceof Blob?await async function(e,t,n){const r=e.slice(t,t+n),o=await r.arrayBuffer();return new Uint8Array(o)}(e,t,n):function(e,t,n){return new Uint8Array(e.buffer,e.byteOffset+t,n)}(e,t,n)},attachWebRendererInterop:function(t,n,r,o){var i,s;if(E.has(t))throw new Error(`Interop methods are already registered for renderer ${t}`);E.set(t,n),r&&o&&Object.keys(r).length>0&&function(t,n,r){if(h)throw new Error("Dynamic root components have already been enabled.");h=t,p=n;for(const[t,o]of Object.entries(r)){const r=e.findJSFunction(t,0);for(const e of o)r(e,n[e])}}(I(t),r,o),null===(s=null===(i=A.get(t))||void 0===i?void 0:i[0])||void 0===s||s.call(i),function(e){for(const t of S)t(e)}(t)}}};var rt,ot;window.Blazor=nt;const it=navigator,st=it.userAgentData&&it.userAgentData.brands,at=st&&st.length>0?st.some((e=>"Google Chrome"===e.brand||"Microsoft Edge"===e.brand||"Chromium"===e.brand)):window.chrome,ct=null!==(ot=null===(rt=it.userAgentData)||void 0===rt?void 0:rt.platform)&&void 0!==ot?ot:navigator.platform;function lt(e){return 0!==e.debugLevel&&(at||navigator.userAgent.includes("Firefox"))}let ut=!1;function dt(){const e=document.querySelector("#blazor-error-ui");e&&(e.style.display="block"),ut||(ut=!0,document.querySelectorAll("#blazor-error-ui .reload").forEach((e=>{e.onclick=function(e){location.reload(),e.preventDefault()}})),document.querySelectorAll("#blazor-error-ui .dismiss").forEach((e=>{e.onclick=function(e){const t=document.querySelector("#blazor-error-ui");t&&(t.style.display="none"),e.preventDefault()}})))}var ft,mt;!function(e){e[e.Default=0]="Default",e[e.Server=1]="Server",e[e.WebAssembly=2]="WebAssembly",e[e.WebView=3]="WebView"}(ft||(ft={})),function(e){e[e.Trace=0]="Trace",e[e.Debug=1]="Debug",e[e.Information=2]="Information",e[e.Warning=3]="Warning",e[e.Error=4]="Error",e[e.Critical=5]="Critical",e[e.None=6]="None"}(mt||(mt={}));class ht{constructor(e=!0,t,n,r=0){this.singleRuntime=e,this.logger=t,this.webRendererId=r,this.afterStartedCallbacks=[],n&&this.afterStartedCallbacks.push(...n)}async importInitializersAsync(e,t){await Promise.all(e.map((e=>async function(e,n){const r=function(e){const t=document.baseURI;return t.endsWith("/")?`${t}${e}`:`${t}/${e}`}(n),o=await import(r);if(void 0!==o){if(e.singleRuntime){const{beforeStart:n,afterStarted:r,beforeWebAssemblyStart:s,afterWebAssemblyStarted:a,beforeServerStart:c,afterServerStarted:l}=o;let u=n;e.webRendererId===ft.Server&&c&&(u=c),e.webRendererId===ft.WebAssembly&&s&&(u=s);let d=r;return e.webRendererId===ft.Server&&l&&(d=l),e.webRendererId===ft.WebAssembly&&a&&(d=a),i(e,u,d,t)}return function(e,t,n){var o;const s=n[0],{beforeStart:a,afterStarted:c,beforeWebStart:l,afterWebStarted:u,beforeWebAssemblyStart:d,afterWebAssemblyStarted:f,beforeServerStart:m,afterServerStarted:h}=t,p=!(l||u||d||f||m||h||!a&&!c),v=p&&s.enableClassicInitializers;if(p&&!s.enableClassicInitializers)null===(o=e.logger)||void 0===o||o.log(mt.Warning,`Initializer '${r}' will be ignored because multiple runtimes are available. use 'before(web|webAssembly|server)Start' and 'after(web|webAssembly|server)Started?' instead.)`);else if(v)return i(e,a,c,n);if(function(e){e.webAssembly?e.webAssembly.initializers||(e.webAssembly.initializers={beforeStart:[],afterStarted:[]}):e.webAssembly={initializers:{beforeStart:[],afterStarted:[]}},e.circuit?e.circuit.initializers||(e.circuit.initializers={beforeStart:[],afterStarted:[]}):e.circuit={initializers:{beforeStart:[],afterStarted:[]}}}(s),d&&s.webAssembly.initializers.beforeStart.push(d),f&&s.webAssembly.initializers.afterStarted.push(f),m&&s.circuit.initializers.beforeStart.push(m),h&&s.circuit.initializers.afterStarted.push(h),u&&e.afterStartedCallbacks.push(u),l)return l(s)}(e,o,t)}function i(e,t,n,r){if(n&&e.afterStartedCallbacks.push(n),t)return t(...r)}}(this,e))))}async invokeAfterStartedCallbacks(e){const t=function(e){var t;return null===(t=A.get(e))||void 0===t?void 0:t[1]}(this.webRendererId);t&&await t,await Promise.all(this.afterStartedCallbacks.map((t=>t(e))))}}let pt,vt,gt,bt,yt,wt,Et;const St=Math.pow(2,32),At=Math.pow(2,21)-1;let Ct=null;function It(e){return vt.getI32(e)}const Nt={load:function(e,t){return async function(e,t){const{dotnet:n}=await async function(e){if("undefined"==typeof WebAssembly||!WebAssembly.validate)throw new Error("This browser does not support WebAssembly.");let t="_framework/dotnet.js";if(e.loadBootResource){const n="dotnetjs",r=e.loadBootResource(n,"dotnet.js",t,"","js-module-dotnet");if("string"==typeof r)t=r;else if(r)throw new Error(`For a ${n} resource, custom loaders must supply a URI string.`)}const n=new URL(t,document.baseURI).toString();return await import(n)}(e),r=function(e,t){const n={maxParallelDownloads:1e6,enableDownloadRetry:!1,applicationEnvironment:e.environment},r={...window.Module||{},onConfigLoaded:async n=>{n.environmentVariables||(n.environmentVariables={}),"sharded"===n.globalizationMode&&(n.environmentVariables.__BLAZOR_SHARDED_ICU="1"),nt._internal.getApplicationEnvironment=()=>n.applicationEnvironment,null==t||t(n),Et=await async function(e,t){var n,r,o;if(e.initializers)return await Promise.all(e.initializers.beforeStart.map((t=>t(e)))),new ht(!1,void 0,e.initializers.afterStarted,ft.WebAssembly);{const i=[e,null!==(r=null===(n=t.resources)||void 0===n?void 0:n.extensions)&&void 0!==r?r:{}],s=new ht(!0,void 0,void 0,ft.WebAssembly),a=Object.keys((null===(o=null==t?void 0:t.resources)||void 0===o?void 0:o.libraryInitializers)||{});return await s.importInitializersAsync(a,i),s}}(e,n)},onDownloadResourceProgress:_t,config:n,disableDotnet6Compatibility:!1,out:kt,err:Dt};return r}(e,t);e.applicationCulture&&n.withApplicationCulture(e.applicationCulture),e.environment&&n.withApplicationEnvironment(e.environment),e.loadBootResource&&n.withResourceLoader(e.loadBootResource),n.withModuleConfig(r),e.configureRuntime&&e.configureRuntime(n),wt=await n.create()}(e,t)},start:function(){return async function(){if(!wt)throw new Error("The runtime must be loaded it gets configured.");const{MONO:t,BINDING:n,Module:r,setModuleImports:o,INTERNAL:i,getConfig:s,invokeLibraryInitializers:a}=wt;gt=r,pt=n,vt=t,yt=i,function(e){const t=ct.match(/^Mac/i)?"Cmd":"Alt";lt(e)&&console.info(`Debugging hotkey: Shift+${t}+D (when application has focus)`),document.addEventListener("keydown",(t=>{t.shiftKey&&(t.metaKey||t.altKey)&&"KeyD"===t.code&&(lt(e)?navigator.userAgent.includes("Firefox")?async function(){const e=await fetch(`_framework/debug?url=${encodeURIComponent(location.href)}&isFirefox=true`);200!==e.status&&console.warn(await e.text())}():at?function(){const e=document.createElement("a");e.href=`_framework/debug?url=${encodeURIComponent(location.href)}`,e.target="_blank",e.rel="noopener noreferrer",e.click()}():console.error("Currently, only Microsoft Edge (80+), Google Chrome, or Chromium, are supported for debugging."):console.error("Cannot start debugging, because the application was not compiled with debugging enabled."))}))}(s()),nt.runtime=wt,nt._internal.dotNetCriticalError=Dt,o("blazor-internal",{Blazor:{_internal:nt._internal}});const c=await wt.getAssemblyExports("Microsoft.AspNetCore.Components.WebAssembly");return Object.assign(nt._internal,{dotNetExports:{...c.Microsoft.AspNetCore.Components.WebAssembly.Services.DefaultWebAssemblyJSRuntime}}),bt=e.attachDispatcher({beginInvokeDotNetFromJS:(e,t,n,r,o)=>{if(Tt(),!r&&!t)throw new Error("Either assemblyName or dotNetObjectId must have a non null value.");const i=r?r.toString():t;nt._internal.dotNetExports.BeginInvokeDotNet(e?e.toString():null,i,n,o)},endInvokeJSFromDotNet:(e,t,n)=>{nt._internal.dotNetExports.EndInvokeJS(n)},sendByteArray:(e,t)=>{nt._internal.dotNetExports.ReceiveByteArrayFromJS(e,t)},invokeDotNetFromJS:(e,t,n,r)=>(Tt(),nt._internal.dotNetExports.InvokeDotNet(e||null,t,null!=n?n:0,r))}),{invokeLibraryInitializers:a}}()},callEntryPoint:async function(){try{await wt.runMain(wt.getConfig().mainAssemblyName,[])}catch(e){console.error(e),dt()}},toUint8Array:function(e){const t=Ft(e),n=It(t),r=new Uint8Array(n);return r.set(gt.HEAPU8.subarray(t+4,t+4+n)),r},getArrayLength:function(e){return It(Ft(e))},getArrayEntryPtr:function(e,t,n){return Ft(e)+4+t*n},getObjectFieldsBaseAddress:function(e){return e+8},readInt16Field:function(e,t){return n=e+(t||0),vt.getI16(n);var n},readInt32Field:function(e,t){return It(e+(t||0))},readUint64Field:function(e,t){return function(e){const t=e>>2,n=gt.HEAPU32[t+1];if(n>At)throw new Error(`Cannot read uint64 with high order part ${n}, because the result would exceed Number.MAX_SAFE_INTEGER.`);return n*St+gt.HEAPU32[t]}(e+(t||0))},readFloatField:function(e,t){return n=e+(t||0),vt.getF32(n);var n},readObjectField:function(e,t){return It(e+(t||0))},readStringField:function(e,t,n){const r=It(e+(t||0));if(0===r)return null;if(n){const e=pt.unbox_mono_obj(r);return"boolean"==typeof e?e?"":null:e}return pt.conv_string(r)},readStructField:function(e,t){return e+(t||0)},beginHeapLock:function(){return Tt(),Ct=Ot.create(),Ct},invokeWhenHeapUnlocked:function(e){Ct?Ct.enqueuePostReleaseAction(e):e()}};function _t(e,t){const n=e/t*100;document.documentElement.style.setProperty("--blazor-load-percentage",`${n}%`),document.documentElement.style.setProperty("--blazor-load-percentage-text",`"${Math.floor(n)}%"`)}const Rt=["DEBUGGING ENABLED"],kt=e=>Rt.indexOf(e)<0&&console.log(e),Dt=e=>{console.error(e||"(null)"),dt()};function Ft(e){return e+12}function Tt(){if(Ct)throw new Error("Assertion failed - heap is currently locked")}class Ot{enqueuePostReleaseAction(e){this.postReleaseActions||(this.postReleaseActions=[]),this.postReleaseActions.push(e)}release(){var e;if(Ct!==this)throw new Error("Trying to release a lock which isn't current");for(yt.mono_wasm_gc_unlock(),Ct=null;null===(e=this.postReleaseActions)||void 0===e?void 0:e.length;)this.postReleaseActions.shift()(),Tt()}static create(){return yt.mono_wasm_gc_lock(),new Ot}}let Lt;class Mt{constructor(e){this.batchAddress=e,this.arrayRangeReader=xt,this.arrayBuilderSegmentReader=Pt,this.diffReader=Bt,this.editReader=Jt,this.frameReader=jt}updatedComponents(){return Lt.readStructField(this.batchAddress,0)}referenceFrames(){return Lt.readStructField(this.batchAddress,xt.structLength)}disposedComponentIds(){return Lt.readStructField(this.batchAddress,2*xt.structLength)}disposedEventHandlerIds(){return Lt.readStructField(this.batchAddress,3*xt.structLength)}updatedComponentsEntry(e,t){return Ht(e,t,Bt.structLength)}referenceFramesEntry(e,t){return Ht(e,t,jt.structLength)}disposedComponentIdsEntry(e,t){const n=Ht(e,t,4);return Lt.readInt32Field(n)}disposedEventHandlerIdsEntry(e,t){const n=Ht(e,t,8);return Lt.readUint64Field(n)}}const xt={structLength:8,values:e=>Lt.readObjectField(e,0),count:e=>Lt.readInt32Field(e,4)},Pt={structLength:12,values:e=>{const t=Lt.readObjectField(e,0),n=Lt.getObjectFieldsBaseAddress(t);return Lt.readObjectField(n,0)},offset:e=>Lt.readInt32Field(e,4),count:e=>Lt.readInt32Field(e,8)},Bt={structLength:4+Pt.structLength,componentId:e=>Lt.readInt32Field(e,0),edits:e=>Lt.readStructField(e,4),editsEntry:(e,t)=>Ht(e,t,Jt.structLength)},Jt={structLength:20,editType:e=>Lt.readInt32Field(e,0),siblingIndex:e=>Lt.readInt32Field(e,4),newTreeIndex:e=>Lt.readInt32Field(e,8),moveToSiblingIndex:e=>Lt.readInt32Field(e,8),removedAttributeName:e=>Lt.readStringField(e,16)},jt={structLength:36,frameType:e=>Lt.readInt16Field(e,4),subtreeLength:e=>Lt.readInt32Field(e,8),elementReferenceCaptureId:e=>Lt.readStringField(e,16),componentId:e=>Lt.readInt32Field(e,12),elementName:e=>Lt.readStringField(e,16),textContent:e=>Lt.readStringField(e,16),markupContent:e=>Lt.readStringField(e,16),attributeName:e=>Lt.readStringField(e,16),attributeValue:e=>Lt.readStringField(e,24,!0),attributeEventHandlerId:e=>Lt.readUint64Field(e,8)};function Ht(e,t,n){return Lt.getArrayEntryPtr(e,t,n)}const $t=/^\s*Blazor-WebAssembly-Component-State:(?[a-zA-Z0-9+/=]+)$/;function zt(e,t,n="state"){var r;if(e.nodeType===Node.COMMENT_NODE){const o=e.textContent||"",i=t.exec(o),s=i&&i.groups&&i.groups[n];return s&&(null===(r=e.parentNode)||void 0===r||r.removeChild(e)),s}if(!e.hasChildNodes())return;const o=e.childNodes;for(let e=0;e.*)$/);function Kt(e,t){const n=e.currentElement;var r,o,i;if(n&&n.nodeType===Node.COMMENT_NODE&&n.textContent){const s=Ut.exec(n.textContent),a=s&&s.groups&&s.groups.descriptor;if(!a)return;!function(e){if(e.parentNode instanceof Document)throw new Error("Root components cannot be marked as interactive. The element must be rendered statically so that scripts are not evaluated multiple times.")}(n);try{const s=function(e){const t=JSON.parse(e),{type:n}=t;if("server"!==n&&"webassembly"!==n&&"auto"!==n)throw new Error(`Invalid component type '${n}'.`);return t}(a),c=function(e,t,n){const{prerenderId:r}=e;if(r){for(;n.next()&&n.currentElement;){const e=n.currentElement;if(e.nodeType!==Node.COMMENT_NODE)continue;if(!e.textContent)continue;const t=Ut.exec(e.textContent),o=t&&t[1];if(o)return Qt(o,r),e}throw new Error(`Could not find an end component comment for '${t}'.`)}}(s,n,e);if(t!==s.type)return;switch(s.type){case"webassembly":return o=n,i=c,Zt(r=s),{...r,uniqueId:Gt++,start:o,end:i};case"server":return function(e,t,n){return qt(e),{...e,uniqueId:Gt++,start:t,end:n}}(s,n,c);case"auto":return function(e,t,n){return qt(e),Zt(e),{...e,uniqueId:Gt++,start:t,end:n}}(s,n,c)}}catch(e){throw new Error(`Found malformed component comment at ${n.textContent}`)}}}let Vt,Xt,Yt,Gt=0;function qt(e){const{descriptor:t,sequence:n}=e;if(!t)throw new Error("descriptor must be defined when using a descriptor.");if(void 0===n)throw new Error("sequence must be defined when using a descriptor.");if(!Number.isInteger(n))throw new Error(`Error parsing the sequence '${n}' for component '${JSON.stringify(e)}'`)}function Zt(e){const{assembly:t,typeName:n}=e;if(!t)throw new Error("assembly must be defined when using a descriptor.");if(!n)throw new Error("typeName must be defined when using a descriptor.");e.parameterDefinitions=e.parameterDefinitions&&atob(e.parameterDefinitions),e.parameterValues=e.parameterValues&&atob(e.parameterValues)}function Qt(e,t){const n=JSON.parse(e);if(1!==Object.keys(n).length)throw new Error(`Invalid end of component comment: '${e}'`);const r=n.prerenderId;if(!r)throw new Error(`End of component comment must have a value for the prerendered property: '${e}'`);if(r!==t)throw new Error(`End of component comment prerendered property must match the start comment prerender id: '${t}', '${r}'`)}class en{constructor(e){this.childNodes=e,this.currentIndex=-1,this.length=e.length}next(){return this.currentIndex++,this.currentIndex{rn=e}));const ln=new Promise((e=>{on=e}));let un;function dn(e){if(Vt)throw new Error("WebAssembly options have already been configured.");!async function(e){const t=await e;Vt=t,un()}(e)}function fn(e){if(void 0!==nn)throw new Error("Blazor WebAssembly has already started.");return nn=new Promise(mn.bind(null,e)),nn}async function mn(e,t,n){(function(){if(window.parent!==window&&!window.opener&&window.frameElement){const e=window.sessionStorage&&window.sessionStorage["Microsoft.AspNetCore.Components.WebAssembly.Authentication.CachedAuthSettings"],t=e&&JSON.parse(e);return t&&t.redirect_uri&&location.href.startsWith(t.redirect_uri)}return!1})()&&await new Promise((()=>{}));const r=hn();!function(e){const t=N;N=(e,n,r)=>{((e,t,n)=>{const r=function(e){return me[e]}(e);(null==r?void 0:r.eventDelegator.getHandler(t))&&Nt.invokeWhenHeapUnlocked(n)})(e,n,(()=>t(e,n,r)))}}(),nt._internal.applyHotReload=(e,t,n,r)=>{bt.invokeDotNetStaticMethod("Microsoft.AspNetCore.Components.WebAssembly","ApplyHotReloadDelta",e,t,n,r)},nt._internal.getApplyUpdateCapabilities=()=>bt.invokeDotNetStaticMethod("Microsoft.AspNetCore.Components.WebAssembly","GetApplyUpdateCapabilities"),nt._internal.invokeJSFromDotNet=pn,nt._internal.invokeJSJson=vn,nt._internal.endInvokeDotNetFromJS=gn,nt._internal.receiveWebAssemblyDotNetDataStream=bn,nt._internal.receiveByteArray=yn;const o=(Lt=Nt,Lt);nt.platform=o,nt._internal.renderBatch=(e,t)=>{const n=Nt.beginHeapLock();try{!function(e,t){const n=me[e];if(!n)throw new Error(`There is no browser renderer with ID ${e}.`);const r=t.arrayRangeReader,o=t.updatedComponents(),i=r.values(o),s=r.count(o),a=t.referenceFrames(),c=r.values(a),l=t.diffReader;for(let e=0;e{await bt.invokeDotNetStaticMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","NotifyLocationChanged",e,t,n)}),(async(e,t,n,r)=>{const o=await bt.invokeDotNetStaticMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","NotifyLocationChangingAsync",t,n,r);nt._internal.navigationManager.endLocationChanging(e,o)}));const i=new tn(e);let s;nt._internal.registeredComponents={getRegisteredComponentsCount:()=>i.getCount(),getAssembly:e=>i.getAssembly(e),getTypeName:e=>i.getTypeName(e),getParameterDefinitions:e=>i.getParameterDefinitions(e)||"",getParameterValues:e=>i.getParameterValues(e)||""},nt._internal.getPersistedState=()=>zt(document,$t)||"",nt._internal.getInitialComponentsUpdate=()=>ln,nt._internal.updateRootComponents=e=>{var t;return null===(t=nt._internal.dotNetExports)||void 0===t?void 0:t.UpdateRootComponentsCore(e)},nt._internal.endUpdateRootComponents=t=>{var n;return null===(n=e.onAfterUpdateRootComponents)||void 0===n?void 0:n.call(e,t)},nt._internal.attachRootComponentToElement=(e,t,n)=>{const r=i.resolveRegisteredElement(e);r?ye(n,r,t,!1):function(e,t,n){const r="::before";let o=!1;if(e.endsWith("::after"))e=e.slice(0,-7),o=!0;else if(e.endsWith(r))throw new Error(`The '${r}' selector is not supported.`);const i=function(e){const t=m.get(e);if(t)return m.delete(e),t}(e)||document.querySelector(e);if(!i)throw new Error(`Could not find any element matching selector '${e}'.`);ye(n,P(i,!0),t,o)}(e,t,n)};try{await r,s=await o.start()}catch(e){throw new Error(`Failed to start platform. Reason: ${e}`)}o.callEntryPoint(),Et.invokeAfterStartedCallbacks(nt),an=!0,t()}function hn(){return null!=Yt||(Yt=(async()=>{await Xt;const e=null!=Vt?Vt:{},t=null==Vt?void 0:Vt.configureRuntime;e.configureRuntime=e=>{null==t||t(e),cn&&e.withEnvironmentVariable("__BLAZOR_WEBASSEMBLY_WAIT_FOR_ROOT_COMPONENTS","true")},await Nt.load(e,rn),sn=!0})()),Yt}function pn(t,n,r,o){const i=Nt.readStringField(t,0),s=Nt.readInt32Field(t,4),a=Nt.readStringField(t,8),c=Nt.readUint64Field(t,20);if(null!==a){const e=Nt.readUint64Field(t,12);if(0!==e)return bt.beginInvokeJSFromDotNet(e,i,a,s,c),0;{const e=bt.invokeJSFromDotNet(i,a,s,c);return null===e?0:pt.js_string_to_mono_string(e)}}{const t=e.findJSFunction(i,c).call(null,n,r,o);switch(s){case e.JSCallResultType.Default:return t;case e.JSCallResultType.JSObjectReference:return e.createJSObjectReference(t).__jsObjectId;case e.JSCallResultType.JSStreamReference:{const n=e.createJSStreamReference(t),r=JSON.stringify(n);return pt.js_string_to_mono_string(r)}case e.JSCallResultType.JSVoidResult:return null;default:throw new Error(`Invalid JS call result type '${s}'.`)}}}function vn(e,t,n,r,o){return 0!==o?(bt.beginInvokeJSFromDotNet(o,e,r,n,t),null):bt.invokeJSFromDotNet(e,r,n,t)}function gn(e,t,n){bt.endInvokeDotNetFromJS(e,t,n)}function bn(e,t,n,r){!function(e,t,n,r,o){let i=tt.get(t);if(!i){const n=new ReadableStream({start(e){tt.set(t,e),i=e}});e.supplyDotNetStream(t,n)}o?(i.error(o),tt.delete(t)):0===r?(i.close(),tt.delete(t)):i.enqueue(n.length===r?n:n.subarray(0,r))}(bt,e,t,n,r)}function yn(e,t){bt.receiveByteArray(e,t)}Xt=new Promise((e=>{un=e}));class wn{constructor(e){this.initialComponents=e}resolveRootComponent(e){return this.initialComponents[e]}}class En{constructor(){this._eventListeners=new Map}static create(e){const t=new En;return e.addEventListener=t.addEventListener.bind(t),e.removeEventListener=t.removeEventListener.bind(t),t}addEventListener(e,t){let n=this._eventListeners.get(e);n||(n=new Set,this._eventListeners.set(e,n)),n.add(t)}removeEventListener(e,t){var n;null===(n=this._eventListeners.get(e))||void 0===n||n.delete(t)}dispatchEvent(e,t){const n=this._eventListeners.get(e);if(!n)return;const r={...t,type:e};for(const e of n)e(r)}}let Sn=!1;async function An(e){if(Sn)throw new Error("Blazor has already started.");Sn=!0,dn(Promise.resolve(e||{})),En.create(nt);const t=Wt(document,"webassembly"),n=new wn(t);await fn(n)}nt.start=An,window.DotNet=e,document&&document.currentScript&&"false"!==document.currentScript.getAttribute("autostart")&&An().catch((e=>{void 0!==gt&>.err?gt.err(e):console.error(e)}))})(); +!function(){"use strict";var e;let t;var n,r;!function(e){const t=[],n="__jsObjectId",r="__dotNetObject",o="__byte[]",i="__dotNetStream",s="__jsStreamReferenceLength";let a,c;class l{constructor(e){this._jsObject=e,this._cachedFunctions=new Map}findFunction(e){const t=this._cachedFunctions.get(e);if(t)return t;let n,r=this._jsObject;if(e.split(".").forEach((t=>{if(!(t in r))throw new Error(`Could not find '${e}' ('${t}' was undefined).`);n=r,r=r[t]})),r instanceof Function)return r=r.bind(n),this._cachedFunctions.set(e,r),r;throw new Error(`The value '${e}' is not a function.`)}getWrappedObject(){return this._jsObject}}const u=0,d={[u]:new l(window)};d[0]._cachedFunctions.set("import",(e=>("string"==typeof e&&e.startsWith("./")&&(e=new URL(e.substr(2),document.baseURI).toString()),import(e))));let f,m=1;function h(e){t.push(e)}function p(e){if(e&&"object"==typeof e){d[m]=new l(e);const t={[n]:m};return m++,t}throw new Error(`Cannot create a JSObjectReference from the value '${e}'.`)}function g(e){let t=-1;if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),e instanceof Blob)t=e.size;else{if(!(e.buffer instanceof ArrayBuffer))throw new Error("Supplied value is not a typed array or blob.");if(void 0===e.byteLength)throw new Error(`Cannot create a JSStreamReference from the value '${e}' as it doesn't have a byteLength.`);t=e.byteLength}const r={[s]:t};try{const t=p(e);r[n]=t[n]}catch(t){throw new Error(`Cannot create a JSStreamReference from the value '${e}'.`)}return r}function b(e,n){c=e;const r=n?JSON.parse(n,((e,n)=>t.reduce(((t,n)=>n(e,t)),n))):null;return c=void 0,r}function y(){if(void 0===a)throw new Error("No call dispatcher has been set.");if(null===a)throw new Error("There are multiple .NET runtimes present, so a default dispatcher could not be resolved. Use DotNetObject to invoke .NET instance methods.");return a}e.attachDispatcher=function(e){const t=new v(e);return void 0===a?a=t:a&&(a=null),t},e.attachReviver=h,e.invokeMethod=function(e,t,...n){return y().invokeDotNetStaticMethod(e,t,...n)},e.invokeMethodAsync=function(e,t,...n){return y().invokeDotNetStaticMethodAsync(e,t,...n)},e.createJSObjectReference=p,e.createJSStreamReference=g,e.disposeJSObjectReference=function(e){const t=e&&e[n];"number"==typeof t&&S(t)},function(e){e[e.Default=0]="Default",e[e.JSObjectReference=1]="JSObjectReference",e[e.JSStreamReference=2]="JSStreamReference",e[e.JSVoidResult=3]="JSVoidResult"}(f=e.JSCallResultType||(e.JSCallResultType={}));class v{constructor(e){this._dotNetCallDispatcher=e,this._byteArraysToBeRevived=new Map,this._pendingDotNetToJSStreams=new Map,this._pendingAsyncCalls={},this._nextAsyncCallId=1}getDotNetCallDispatcher(){return this._dotNetCallDispatcher}invokeJSFromDotNet(e,t,n,r){const o=b(this,t),i=N(E(e,r)(...o||[]),n);return null==i?null:k(this,i)}beginInvokeJSFromDotNet(e,t,n,r,o){const i=new Promise((e=>{const r=b(this,n);e(E(t,o)(...r||[]))}));e&&i.then((t=>k(this,[e,!0,N(t,r)]))).then((t=>this._dotNetCallDispatcher.endInvokeJSFromDotNet(e,!0,t)),(t=>this._dotNetCallDispatcher.endInvokeJSFromDotNet(e,!1,JSON.stringify([e,!1,w(t)]))))}endInvokeDotNetFromJS(e,t,n){const r=t?b(this,n):new Error(n);this.completePendingCall(parseInt(e,10),t,r)}invokeDotNetStaticMethod(e,t,...n){return this.invokeDotNetMethod(e,t,null,n)}invokeDotNetStaticMethodAsync(e,t,...n){return this.invokeDotNetMethodAsync(e,t,null,n)}invokeDotNetMethod(e,t,n,r){if(this._dotNetCallDispatcher.invokeDotNetFromJS){const o=k(this,r),i=this._dotNetCallDispatcher.invokeDotNetFromJS(e,t,n,o);return i?b(this,i):null}throw new Error("The current dispatcher does not support synchronous calls from JS to .NET. Use invokeDotNetMethodAsync instead.")}invokeDotNetMethodAsync(e,t,n,r){if(e&&n)throw new Error(`For instance method calls, assemblyName should be null. Received '${e}'.`);const o=this._nextAsyncCallId++,i=new Promise(((e,t)=>{this._pendingAsyncCalls[o]={resolve:e,reject:t}}));try{const i=k(this,r);this._dotNetCallDispatcher.beginInvokeDotNetFromJS(o,e,t,n,i)}catch(e){this.completePendingCall(o,!1,e)}return i}receiveByteArray(e,t){this._byteArraysToBeRevived.set(e,t)}processByteArray(e){const t=this._byteArraysToBeRevived.get(e);return t?(this._byteArraysToBeRevived.delete(e),t):null}supplyDotNetStream(e,t){if(this._pendingDotNetToJSStreams.has(e)){const n=this._pendingDotNetToJSStreams.get(e);this._pendingDotNetToJSStreams.delete(e),n.resolve(t)}else{const n=new I;n.resolve(t),this._pendingDotNetToJSStreams.set(e,n)}}getDotNetStreamPromise(e){let t;if(this._pendingDotNetToJSStreams.has(e))t=this._pendingDotNetToJSStreams.get(e).streamPromise,this._pendingDotNetToJSStreams.delete(e);else{const n=new I;this._pendingDotNetToJSStreams.set(e,n),t=n.streamPromise}return t}completePendingCall(e,t,n){if(!this._pendingAsyncCalls.hasOwnProperty(e))throw new Error(`There is no pending async call with ID ${e}.`);const r=this._pendingAsyncCalls[e];delete this._pendingAsyncCalls[e],t?r.resolve(n):r.reject(n)}}function w(e){return e instanceof Error?`${e.message}\n${e.stack}`:e?e.toString():"null"}function E(e,t){const n=d[t];if(n)return n.findFunction(e);throw new Error(`JS object instance with ID ${t} does not exist (has it been disposed?).`)}function S(e){delete d[e]}e.findJSFunction=E,e.disposeJSObjectReferenceById=S;class C{constructor(e,t){this._id=e,this._callDispatcher=t}invokeMethod(e,...t){return this._callDispatcher.invokeDotNetMethod(null,e,this._id,t)}invokeMethodAsync(e,...t){return this._callDispatcher.invokeDotNetMethodAsync(null,e,this._id,t)}dispose(){this._callDispatcher.invokeDotNetMethodAsync(null,"__Dispose",this._id,null).catch((e=>console.error(e)))}serializeAsArg(){return{[r]:this._id}}}e.DotNetObject=C,h((function(e,t){if(t&&"object"==typeof t){if(t.hasOwnProperty(r))return new C(t[r],c);if(t.hasOwnProperty(n)){const e=t[n],r=d[e];if(r)return r.getWrappedObject();throw new Error(`JS object instance with Id '${e}' does not exist. It may have been disposed.`)}if(t.hasOwnProperty(o)){const e=t[o],n=c.processByteArray(e);if(void 0===n)throw new Error(`Byte array index '${e}' does not exist.`);return n}if(t.hasOwnProperty(i)){const e=t[i],n=c.getDotNetStreamPromise(e);return new A(n)}}return t}));class A{constructor(e){this._streamPromise=e}stream(){return this._streamPromise}async arrayBuffer(){return new Response(await this.stream()).arrayBuffer()}}class I{constructor(){this.streamPromise=new Promise(((e,t)=>{this.resolve=e,this.reject=t}))}}function N(e,t){switch(t){case f.Default:return e;case f.JSObjectReference:return p(e);case f.JSStreamReference:return g(e);case f.JSVoidResult:return null;default:throw new Error(`Invalid JS call result type '${t}'.`)}}let R=0;function k(e,t){R=0,c=e;const n=JSON.stringify(t,D);return c=void 0,n}function D(e,t){if(t instanceof C)return t.serializeAsArg();if(t instanceof Uint8Array){c.getDotNetCallDispatcher().sendByteArray(R,t);const e={[o]:R};return R++,e}return t}}(e||(e={})),function(e){e[e.prependFrame=1]="prependFrame",e[e.removeFrame=2]="removeFrame",e[e.setAttribute=3]="setAttribute",e[e.removeAttribute=4]="removeAttribute",e[e.updateText=5]="updateText",e[e.stepIn=6]="stepIn",e[e.stepOut=7]="stepOut",e[e.updateMarkup=8]="updateMarkup",e[e.permutationListEntry=9]="permutationListEntry",e[e.permutationListEnd=10]="permutationListEnd"}(n||(n={})),function(e){e[e.element=1]="element",e[e.text=2]="text",e[e.attribute=3]="attribute",e[e.component=4]="component",e[e.region=5]="region",e[e.elementReferenceCapture=6]="elementReferenceCapture",e[e.markup=8]="markup",e[e.namedEvent=10]="namedEvent"}(r||(r={}));class o{constructor(e,t){this.componentId=e,this.fieldValue=t}static fromEvent(e,t){const n=t.target;if(n instanceof Element){const t=function(e){return e instanceof HTMLInputElement?e.type&&"checkbox"===e.type.toLowerCase()?{value:e.checked}:{value:e.value}:e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement?{value:e.value}:null}(n);if(t)return new o(e,t.value)}return null}}const i=new Map,s=new Map,a=[];function c(e){return i.get(e)}function l(e){const t=i.get(e);return t?.browserEventName||e}function u(e,t){e.forEach((e=>i.set(e,t)))}function d(e){const t=[];for(let n=0;ne.selected)).map((e=>e.value))}}{const e=function(e){return!!e&&"INPUT"===e.tagName&&"checkbox"===e.getAttribute("type")}(t);return{value:e?!!t.checked:t.value}}}}),u(["copy","cut","paste"],{createEventArgs:e=>({type:e.type})}),u(["drag","dragend","dragenter","dragleave","dragover","dragstart","drop"],{createEventArgs:e=>{return{...f(t=e),dataTransfer:t.dataTransfer?{dropEffect:t.dataTransfer.dropEffect,effectAllowed:t.dataTransfer.effectAllowed,files:Array.from(t.dataTransfer.files).map((e=>e.name)),items:Array.from(t.dataTransfer.items).map((e=>({kind:e.kind,type:e.type}))),types:t.dataTransfer.types}:null};var t}}),u(["focus","blur","focusin","focusout"],{createEventArgs:e=>({type:e.type})}),u(["keydown","keyup","keypress"],{createEventArgs:e=>{return{key:(t=e).key,code:t.code,location:t.location,repeat:t.repeat,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey,type:t.type,isComposing:t.isComposing};var t}}),u(["contextmenu","click","mouseover","mouseout","mousemove","mousedown","mouseup","mouseleave","mouseenter","dblclick"],{createEventArgs:e=>f(e)}),u(["error"],{createEventArgs:e=>{return{message:(t=e).message,filename:t.filename,lineno:t.lineno,colno:t.colno,type:t.type};var t}}),u(["loadstart","timeout","abort","load","loadend","progress"],{createEventArgs:e=>{return{lengthComputable:(t=e).lengthComputable,loaded:t.loaded,total:t.total,type:t.type};var t}}),u(["touchcancel","touchend","touchmove","touchenter","touchleave","touchstart"],{createEventArgs:e=>{return{detail:(t=e).detail,touches:d(t.touches),targetTouches:d(t.targetTouches),changedTouches:d(t.changedTouches),ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey,type:t.type};var t}}),u(["gotpointercapture","lostpointercapture","pointercancel","pointerdown","pointerenter","pointerleave","pointermove","pointerout","pointerover","pointerup"],{createEventArgs:e=>{return{...f(t=e),pointerId:t.pointerId,width:t.width,height:t.height,pressure:t.pressure,tiltX:t.tiltX,tiltY:t.tiltY,pointerType:t.pointerType,isPrimary:t.isPrimary};var t}}),u(["wheel","mousewheel"],{createEventArgs:e=>{return{...f(t=e),deltaX:t.deltaX,deltaY:t.deltaY,deltaZ:t.deltaZ,deltaMode:t.deltaMode};var t}}),u(["cancel","close","toggle"],{createEventArgs:()=>({})});const m=["date","datetime-local","month","time","week"],h=new Map;let p,g,b=0;const y={async add(e,t,n){if(!n)throw new Error("initialParameters must be an object, even if empty.");const r="__bl-dynamic-root:"+(++b).toString();h.set(r,e);const o=await E().invokeMethodAsync("AddRootComponent",t,r),i=new w(o,g[t]);return await i.setParameters(n),i}};class v{invoke(e){return this._callback(e)}setCallback(t){this._selfJSObjectReference||(this._selfJSObjectReference=e.createJSObjectReference(this)),this._callback=t}getJSObjectReference(){return this._selfJSObjectReference}dispose(){this._selfJSObjectReference&&e.disposeJSObjectReference(this._selfJSObjectReference)}}class w{constructor(e,t){this._jsEventCallbackWrappers=new Map,this._componentId=e;for(const e of t)"eventcallback"===e.type&&this._jsEventCallbackWrappers.set(e.name.toLowerCase(),new v)}setParameters(e){const t={},n=Object.entries(e||{}),r=n.length;for(const[e,r]of n){const n=this._jsEventCallbackWrappers.get(e.toLowerCase());n&&r?(n.setCallback(r),t[e]=n.getJSObjectReference()):t[e]=r}return E().invokeMethodAsync("SetRootComponentParameters",this._componentId,r,t)}async dispose(){if(null!==this._componentId){await E().invokeMethodAsync("RemoveRootComponent",this._componentId),this._componentId=null;for(const e of this._jsEventCallbackWrappers.values())e.dispose()}}}function E(){if(!p)throw new Error("Dynamic root components have not been enabled in this application.");return p}const S=new Map,C=[],A=new Map;function I(e,t,n){return R(e,t.eventHandlerId,(()=>N(e).invokeMethodAsync("DispatchEventAsync",t,n)))}function N(e){const t=S.get(e);if(!t)throw new Error(`No interop methods are registered for renderer ${e}`);return t}let R=(e,t,n)=>n();const k=O(["abort","blur","cancel","canplay","canplaythrough","change","close","cuechange","durationchange","emptied","ended","error","focus","load","loadeddata","loadedmetadata","loadend","loadstart","mouseenter","mouseleave","pointerenter","pointerleave","pause","play","playing","progress","ratechange","reset","scroll","seeked","seeking","stalled","submit","suspend","timeupdate","toggle","unload","volumechange","waiting","DOMNodeInsertedIntoDocument","DOMNodeRemovedFromDocument"]),D={submit:!0},_=O(["click","dblclick","mousedown","mousemove","mouseup"]);class T{static{this.nextEventDelegatorId=0}constructor(e){this.browserRendererId=e,this.afterClickCallbacks=[];const t=++T.nextEventDelegatorId;this.eventsCollectionKey=`_blazorEvents_${t}`,this.eventInfoStore=new F(this.onGlobalEvent.bind(this))}setListener(e,t,n,r){const o=this.getEventHandlerInfosForElement(e,!0),i=o.getHandler(t);if(i)this.eventInfoStore.update(i.eventHandlerId,n);else{const i={element:e,eventName:t,eventHandlerId:n,renderingComponentId:r};this.eventInfoStore.add(i),o.setHandler(t,i)}}getHandler(e){return this.eventInfoStore.get(e)}removeListener(e){const t=this.eventInfoStore.remove(e);if(t){const e=t.element,n=this.getEventHandlerInfosForElement(e,!1);n&&n.removeHandler(t.eventName)}}notifyAfterClick(e){this.afterClickCallbacks.push(e),this.eventInfoStore.addGlobalListener("click")}setStopPropagation(e,t,n){this.getEventHandlerInfosForElement(e,!0).stopPropagation(t,n)}setPreventDefault(e,t,n){this.getEventHandlerInfosForElement(e,!0).preventDefault(t,n)}onGlobalEvent(e){if(!(e.target instanceof Element))return;this.dispatchGlobalEventToAllElements(e.type,e);const t=(n=e.type,s.get(n));var n;t&&t.forEach((t=>this.dispatchGlobalEventToAllElements(t,e))),"click"===e.type&&this.afterClickCallbacks.forEach((t=>t(e)))}dispatchGlobalEventToAllElements(e,t){const n=t.composedPath();let r=n.shift(),i=null,s=!1;const a=Object.prototype.hasOwnProperty.call(k,e);let l=!1;for(;r;){const f=r,m=this.getEventHandlerInfosForElement(f,!1);if(m){const n=m.getHandler(e);if(n&&(u=f,d=t.type,!((u instanceof HTMLButtonElement||u instanceof HTMLInputElement||u instanceof HTMLTextAreaElement||u instanceof HTMLSelectElement)&&Object.prototype.hasOwnProperty.call(_,d)&&u.disabled))){if(!s){const n=c(e);i=n?.createEventArgs?n.createEventArgs(t):{},s=!0}Object.prototype.hasOwnProperty.call(D,t.type)&&t.preventDefault(),I(this.browserRendererId,{eventHandlerId:n.eventHandlerId,eventName:e,eventFieldInfo:o.fromEvent(n.renderingComponentId,t)},i)}m.stopPropagation(e)&&(l=!0),m.preventDefault(e)&&t.preventDefault()}r=a||l?void 0:n.shift()}var u,d}getEventHandlerInfosForElement(e,t){return Object.prototype.hasOwnProperty.call(e,this.eventsCollectionKey)?e[this.eventsCollectionKey]:t?e[this.eventsCollectionKey]=new L:null}}class F{constructor(e){this.globalListener=e,this.infosByEventHandlerId={},this.countByEventName={},a.push(this.handleEventNameAliasAdded.bind(this))}add(e){if(this.infosByEventHandlerId[e.eventHandlerId])throw new Error(`Event ${e.eventHandlerId} is already tracked`);this.infosByEventHandlerId[e.eventHandlerId]=e,this.addGlobalListener(e.eventName)}get(e){return this.infosByEventHandlerId[e]}addGlobalListener(e){if(e=l(e),Object.prototype.hasOwnProperty.call(this.countByEventName,e))this.countByEventName[e]++;else{this.countByEventName[e]=1;const t=Object.prototype.hasOwnProperty.call(k,e);document.addEventListener(e,this.globalListener,t)}}update(e,t){if(Object.prototype.hasOwnProperty.call(this.infosByEventHandlerId,t))throw new Error(`Event ${t} is already tracked`);const n=this.infosByEventHandlerId[e];delete this.infosByEventHandlerId[e],n.eventHandlerId=t,this.infosByEventHandlerId[t]=n}remove(e){const t=this.infosByEventHandlerId[e];if(t){delete this.infosByEventHandlerId[e];const n=l(t.eventName);0==--this.countByEventName[n]&&(delete this.countByEventName[n],document.removeEventListener(n,this.globalListener))}return t}handleEventNameAliasAdded(e,t){if(Object.prototype.hasOwnProperty.call(this.countByEventName,e)){const n=this.countByEventName[e];delete this.countByEventName[e],document.removeEventListener(e,this.globalListener),this.addGlobalListener(t),this.countByEventName[t]+=n-1}}}class L{constructor(){this.handlers={},this.preventDefaultFlags=null,this.stopPropagationFlags=null}getHandler(e){return Object.prototype.hasOwnProperty.call(this.handlers,e)?this.handlers[e]:null}setHandler(e,t){this.handlers[e]=t}removeHandler(e){delete this.handlers[e]}preventDefault(e,t){return void 0!==t&&(this.preventDefaultFlags=this.preventDefaultFlags||{},this.preventDefaultFlags[e]=t),!!this.preventDefaultFlags&&this.preventDefaultFlags[e]}stopPropagation(e,t){return void 0!==t&&(this.stopPropagationFlags=this.stopPropagationFlags||{},this.stopPropagationFlags[e]=t),!!this.stopPropagationFlags&&this.stopPropagationFlags[e]}}function O(e){const t={};return e.forEach((e=>{t[e]=!0})),t}const M=Symbol(),x=Symbol(),P=Symbol();function B(e,t){if(M in e)return e;const n=[];if(e.childNodes.length>0){if(!t)throw new Error("New logical elements must start empty, or allowExistingContents must be true");e.childNodes.forEach((t=>{const r=B(t,!0);r[x]=e,n.push(r)}))}return e[M]=n,e}function j(e){const t=K(e);for(;t.length;)z(e,0)}function H(e,t){const n=document.createComment("!");return J(n,e,t),n}function J(e,t,n){const r=e;let o=e;if(e instanceof Comment){const t=K(r);if(t?.length>0){const t=G(r),n=new Range;n.setStartBefore(e),n.setEndAfter(t),o=n.extractContents()}}const i=$(r);if(i){const e=K(i),t=Array.prototype.indexOf.call(e,r);e.splice(t,1),delete r[x]}const s=K(t);if(n0;)z(n,0)}const r=n;r.parentNode.removeChild(r)}function $(e){return e[x]||null}function W(e,t){return K(e)[t]}function U(e){const t=Y(e);return"http://www.w3.org/2000/svg"===t.namespaceURI&&"foreignObject"!==t.tagName}function K(e){return e[M]}function V(e){const t=K($(e));return t[Array.prototype.indexOf.call(t,e)+1]||null}function X(e,t){const n=K(e);t.forEach((e=>{e.moveRangeStart=n[e.fromSiblingIndex],e.moveRangeEnd=G(e.moveRangeStart)})),t.forEach((t=>{const r=document.createComment("marker");t.moveToBeforeMarker=r;const o=n[t.toSiblingIndex+1];o?o.parentNode.insertBefore(r,o):q(r,e)})),t.forEach((e=>{const t=e.moveToBeforeMarker,n=t.parentNode,r=e.moveRangeStart,o=e.moveRangeEnd;let i=r;for(;i;){const e=i.nextSibling;if(n.insertBefore(i,t),i===o)break;i=e}n.removeChild(t)})),t.forEach((e=>{n[e.toSiblingIndex]=e.moveRangeStart}))}function Y(e){if(e instanceof Element||e instanceof DocumentFragment)return e;if(e instanceof Comment)return e.parentNode;throw new Error("Not a valid logical element")}function q(e,t){if(t instanceof Element||t instanceof DocumentFragment)t.appendChild(e);else{if(!(t instanceof Comment))throw new Error(`Cannot append node because the parent is not a valid logical element. Parent: ${t}`);{const n=V(t);n?n.parentNode.insertBefore(e,n):q(e,$(t))}}}function G(e){if(e instanceof Element||e instanceof DocumentFragment)return e;const t=V(e);if(t)return t.previousSibling;{const t=$(e);return t instanceof Element||t instanceof DocumentFragment?t.lastChild:G(t)}}function Z(e){return`_bl_${e}`}const Q="__internalId";e.attachReviver(((e,t)=>t&&"object"==typeof t&&Object.prototype.hasOwnProperty.call(t,Q)&&"string"==typeof t[Q]?function(e){const t=`[${Z(e)}]`;return document.querySelector(t)}(t[Q]):t));const ee="_blazorDeferredValue";function te(e){return"select-multiple"===e.type}function ne(e,t){e.value=t||""}function re(e,t){e instanceof HTMLSelectElement?te(e)?function(e,t){t||=[];for(let n=0;n{Se()&&function(e){if(0!==e.button||function(e){return e.ctrlKey||e.shiftKey||e.altKey||e.metaKey}(e))return;if(e.defaultPrevented)return;const t=function(e){const t=e.composedPath&&e.composedPath();if(t)for(let e=0;e{const t=document.createElement("script");t.textContent=e.textContent,e.getAttributeNames().forEach((n=>{t.setAttribute(n,e.getAttribute(n))})),e.parentNode.replaceChild(t,e)})),ie.content));var s;let a=0;for(;i.firstChild;)J(i.firstChild,o,a++)}applyAttribute(e,t,n,r){const o=e.frameReader,i=o.attributeName(r),s=o.attributeEventHandlerId(r);if(s){const e=me(i);return void this.eventDelegator.setListener(n,e,s,t)}const a=o.attributeValue(r);this.setOrRemoveAttributeOrProperty(n,i,a)}insertFrameRange(e,t,n,r,o,i,s){const a=r;for(let a=i;adocument.baseURI,getLocationHref:()=>location.href,scrollToElement:we};function Te(e,t,n=!1){const r=Ee(e);!t.forceLoad&&ve(r)?He()?Fe(r,!1,t.replaceHistoryEntry,t.historyEntryState,n):function(){throw new Error("No enhanced programmatic navigation handler has been attached")}():function(e,t){if(location.href===e){const t=e+"?";history.replaceState(null,"",t),location.replace(e)}else t?location.replace(e):location.href=e}(e,t.replaceHistoryEntry)}async function Fe(e,t,n,r=void 0,o=!1){if(Me(),function(e){const t=new URL(e);return""!==t.hash&&location.origin===t.origin&&location.pathname===t.pathname&&location.search===t.search}(e))return Le(e,n,r),void function(e){const t=e.indexOf("#");t!==e.length-1&&we(e.substring(t+1))}(e);const i=je();(o||!i?.hasLocationChangingEventListeners||await xe(e,r,t,i))&&(be=!0,Le(e,n,r),await Pe(t))}function Le(e,t,n=void 0){t?history.replaceState({userState:n,_index:Ie},"",e):(Ie++,history.pushState({userState:n,_index:Ie},"",e))}function Oe(e){return new Promise((t=>{const n=ke;ke=()=>{ke=n,t()},history.go(e)}))}function Me(){De&&(De(!1),De=null)}function xe(e,t,n,r){return new Promise((o=>{Me(),Ne++,De=o,r.locationChanging(Ne,e,t,n)}))}async function Pe(e,t){const n=location.href;await Promise.all(Array.from(Re,(async([t,r])=>{var o;o=t,S.has(o)&&await r.locationChanged(n,history.state?.userState,e)})))}async function Be(e){ke&&He()&&await ke(e),Ie=history.state?._index??0}function je(){const e=Ce();if(void 0!==e)return Re.get(e)}function He(){return Se()||!0}const Je={focus:function(e,t){if(e instanceof HTMLElement)e.focus({preventScroll:t});else{if(!(e instanceof SVGElement))throw new Error("Unable to focus an invalid element.");if(!e.hasAttribute("tabindex"))throw new Error("Unable to focus an SVG element that does not have a tabindex.");e.focus({preventScroll:t})}},focusBySelector:function(e){const t=document.querySelector(e);t&&(t.hasAttribute("tabindex")||(t.tabIndex=-1),t.focus({preventScroll:!0}))}},ze={init:function(e,t,n,r=50){const o=We(t);(o||document.documentElement).style.overflowAnchor="none";const i=document.createRange();f(n.parentElement)&&(t.style.display="table-row",n.style.display="table-row");const s=new IntersectionObserver((function(r){r.forEach((r=>{if(!r.isIntersecting)return;i.setStartAfter(t),i.setEndBefore(n);const o=i.getBoundingClientRect().height,s=r.rootBounds?.height;r.target===t?e.invokeMethodAsync("OnSpacerBeforeVisible",r.intersectionRect.top-r.boundingClientRect.top,o,s):r.target===n&&n.offsetHeight>0&&e.invokeMethodAsync("OnSpacerAfterVisible",r.boundingClientRect.bottom-r.intersectionRect.bottom,o,s)}))}),{root:o,rootMargin:`${r}px`});s.observe(t),s.observe(n);const a=d(t),c=d(n),{observersByDotNetObjectId:l,id:u}=Ue(e);function d(e){const t={attributes:!0},n=new MutationObserver(((n,r)=>{f(e.parentElement)&&(r.disconnect(),e.style.display="table-row",r.observe(e,t)),s.unobserve(e),s.observe(e)}));return n.observe(e,t),n}function f(e){return null!==e&&(e instanceof HTMLTableElement&&""===e.style.display||"table"===e.style.display||e instanceof HTMLTableSectionElement&&""===e.style.display||"table-row-group"===e.style.display)}l[u]={intersectionObserver:s,mutationObserverBefore:a,mutationObserverAfter:c}},dispose:function(e){const{observersByDotNetObjectId:t,id:n}=Ue(e),r=t[n];r&&(r.intersectionObserver.disconnect(),r.mutationObserverBefore.disconnect(),r.mutationObserverAfter.disconnect(),e.dispose(),delete t[n])}},$e=Symbol();function We(e){return e&&e!==document.body&&e!==document.documentElement?"visible"!==getComputedStyle(e).overflowY?e:We(e.parentElement):null}function Ue(e){const t=e._callDispatcher,n=e._id;return t[$e]??={},{observersByDotNetObjectId:t[$e],id:n}}const Ke={getAndRemoveExistingTitle:function(){const e=document.head?document.head.getElementsByTagName("title"):[];if(0===e.length)return null;let t=null;for(let n=e.length-1;n>=0;n--){const r=e[n],o=r.previousSibling;o instanceof Comment&&null!==$(o)||(null===t&&(t=r.textContent),r.parentNode?.removeChild(r))}return t}},Ve={init:function(e,t){t._blazorInputFileNextFileId=0,t.addEventListener("click",(function(){t.value=""})),t.addEventListener("change",(function(){t._blazorFilesById={};const n=Array.prototype.map.call(t.files,(function(e){const n={id:++t._blazorInputFileNextFileId,lastModified:new Date(e.lastModified).toISOString(),name:e.name,size:e.size,contentType:e.type,readPromise:void 0,arrayBuffer:void 0,blob:e};return t._blazorFilesById[n.id]=n,n}));e.invokeMethodAsync("NotifyChange",n)}))},toImageFile:async function(e,t,n,r,o){const i=Xe(e,t),s=await new Promise((function(e){const t=new Image;t.onload=function(){URL.revokeObjectURL(t.src),e(t)},t.onerror=function(){t.onerror=null,URL.revokeObjectURL(t.src)},t.src=URL.createObjectURL(i.blob)})),a=await new Promise((function(e){const t=Math.min(1,r/s.width),i=Math.min(1,o/s.height),a=Math.min(t,i),c=document.createElement("canvas");c.width=Math.round(s.width*a),c.height=Math.round(s.height*a),c.getContext("2d")?.drawImage(s,0,0,c.width,c.height),c.toBlob(e,n)})),c={id:++e._blazorInputFileNextFileId,lastModified:i.lastModified,name:i.name,size:a?.size||0,contentType:n,blob:a||i.blob};return e._blazorFilesById[c.id]=c,c},readFileData:async function(e,t){return Xe(e,t).blob}};function Xe(e,t){const n=e._blazorFilesById[t];if(!n)throw new Error(`There is no file with ID ${t}. The file list may have changed. See https://aka.ms/aspnet/blazor-input-file-multiple-selections.`);return n}const Ye=new Set,qe={enableNavigationPrompt:function(e){0===Ye.size&&window.addEventListener("beforeunload",Ge),Ye.add(e)},disableNavigationPrompt:function(e){Ye.delete(e),0===Ye.size&&window.removeEventListener("beforeunload",Ge)}};function Ge(e){e.preventDefault(),e.returnValue=!0}const Ze=new Map,Qe={navigateTo:function(e,t,n=!1){Te(e,t instanceof Object?t:{forceLoad:t,replaceHistoryEntry:n})},registerCustomEventType:function(e,t){if(!t)throw new Error("The options parameter is required.");if(i.has(e))throw new Error(`The event '${e}' is already registered.`);if(t.browserEventName){const n=s.get(t.browserEventName);n?n.push(e):s.set(t.browserEventName,[e]),a.forEach((n=>n(e,t.browserEventName)))}i.set(e,t)},rootComponents:y,runtime:{},_internal:{navigationManager:_e,domWrapper:Je,Virtualize:ze,PageTitle:Ke,InputFile:Ve,NavigationLock:qe,getJSDataStreamChunk:async function(e,t,n){return e instanceof Blob?await async function(e,t,n){const r=e.slice(t,t+n),o=await r.arrayBuffer();return new Uint8Array(o)}(e,t,n):function(e,t,n){return new Uint8Array(e.buffer,e.byteOffset+t,n)}(e,t,n)},attachWebRendererInterop:function(t,n,r,o){if(S.has(t))throw new Error(`Interop methods are already registered for renderer ${t}`);S.set(t,n),r&&o&&Object.keys(r).length>0&&function(t,n,r){if(p)throw new Error("Dynamic root components have already been enabled.");p=t,g=n;for(const[t,o]of Object.entries(r)){const r=e.findJSFunction(t,0);for(const e of o)r(e,n[e])}}(N(t),r,o),A.get(t)?.[0]?.(),function(e){for(const t of C)t(e)}(t)}}};window.Blazor=Qe;const et=navigator,tt=et.userAgentData&&et.userAgentData.brands,nt=tt&&tt.length>0?tt.some((e=>"Google Chrome"===e.brand||"Microsoft Edge"===e.brand||"Chromium"===e.brand)):window.chrome,rt=et.userAgentData?.platform??navigator.platform;function ot(e){return 0!==e.debugLevel&&(nt||navigator.userAgent.includes("Firefox"))}let it=!1;function st(){const e=document.querySelector("#blazor-error-ui");e&&(e.style.display="block"),it||(it=!0,document.querySelectorAll("#blazor-error-ui .reload").forEach((e=>{e.onclick=function(e){location.reload(),e.preventDefault()}})),document.querySelectorAll("#blazor-error-ui .dismiss").forEach((e=>{e.onclick=function(e){const t=document.querySelector("#blazor-error-ui");t&&(t.style.display="none"),e.preventDefault()}})))}var at,ct;!function(e){e[e.Default=0]="Default",e[e.Server=1]="Server",e[e.WebAssembly=2]="WebAssembly",e[e.WebView=3]="WebView"}(at||(at={})),function(e){e[e.Trace=0]="Trace",e[e.Debug=1]="Debug",e[e.Information=2]="Information",e[e.Warning=3]="Warning",e[e.Error=4]="Error",e[e.Critical=5]="Critical",e[e.None=6]="None"}(ct||(ct={}));class lt{constructor(e=!0,t,n,r=0){this.singleRuntime=e,this.logger=t,this.webRendererId=r,this.afterStartedCallbacks=[],n&&this.afterStartedCallbacks.push(...n)}async importInitializersAsync(e,t){await Promise.all(e.map((e=>async function(e,n){const r=function(e){const t=document.baseURI;return t.endsWith("/")?`${t}${e}`:`${t}/${e}`}(n),o=await import(r);if(void 0!==o){if(e.singleRuntime){const{beforeStart:n,afterStarted:r,beforeWebAssemblyStart:s,afterWebAssemblyStarted:a,beforeServerStart:c,afterServerStarted:l}=o;let u=n;e.webRendererId===at.Server&&c&&(u=c),e.webRendererId===at.WebAssembly&&s&&(u=s);let d=r;return e.webRendererId===at.Server&&l&&(d=l),e.webRendererId===at.WebAssembly&&a&&(d=a),i(e,u,d,t)}return function(e,t,n){const o=n[0],{beforeStart:s,afterStarted:a,beforeWebStart:c,afterWebStarted:l,beforeWebAssemblyStart:u,afterWebAssemblyStarted:d,beforeServerStart:f,afterServerStarted:m}=t,h=!(c||l||u||d||f||m||!s&&!a),p=h&&o.enableClassicInitializers;if(h&&!o.enableClassicInitializers)e.logger?.log(ct.Warning,`Initializer '${r}' will be ignored because multiple runtimes are available. Use 'before(Web|WebAssembly|Server)Start' and 'after(Web|WebAssembly|Server)Started' instead.`);else if(p)return i(e,s,a,n);if(function(e){e.webAssembly?e.webAssembly.initializers||(e.webAssembly.initializers={beforeStart:[],afterStarted:[]}):e.webAssembly={initializers:{beforeStart:[],afterStarted:[]}},e.circuit?e.circuit.initializers||(e.circuit.initializers={beforeStart:[],afterStarted:[]}):e.circuit={initializers:{beforeStart:[],afterStarted:[]}}}(o),u&&o.webAssembly.initializers.beforeStart.push(u),d&&o.webAssembly.initializers.afterStarted.push(d),f&&o.circuit.initializers.beforeStart.push(f),m&&o.circuit.initializers.afterStarted.push(m),l&&e.afterStartedCallbacks.push(l),c)return c(o)}(e,o,t)}function i(e,t,n,r){if(n&&e.afterStartedCallbacks.push(n),t)return t(...r)}}(this,e))))}async invokeAfterStartedCallbacks(e){const t=(n=this.webRendererId,A.get(n)?.[1]);var n;t&&await t,await Promise.all(this.afterStartedCallbacks.map((t=>t(e))))}}let ut,dt,ft,mt,ht=null;const pt={load:function(e,t){return async function(e,t){const{dotnet:n}=await async function(e){if("undefined"==typeof WebAssembly||!WebAssembly.validate)throw new Error("This browser does not support WebAssembly.");let t="_framework/dotnet.js";if(e.loadBootResource){const n="dotnetjs",r=e.loadBootResource(n,"dotnet.js",t,"","js-module-dotnet");if("string"==typeof r)t=r;else if(r)throw new Error(`For a ${n} resource, custom loaders must supply a URI string.`)}const n=new URL(t,document.baseURI).toString();return await import(n)}(e),r=function(e,t){const n={maxParallelDownloads:1e6,enableDownloadRetry:!1,applicationEnvironment:e.environment},r={...window.Module||{},onConfigLoaded:async n=>{n.environmentVariables||(n.environmentVariables={}),"sharded"===n.globalizationMode&&(n.environmentVariables.__BLAZOR_SHARDED_ICU="1"),Qe._internal.getApplicationEnvironment=()=>n.applicationEnvironment,t?.(n),mt=await async function(e,t){if(e.initializers)return await Promise.all(e.initializers.beforeStart.map((t=>t(e)))),new lt(!1,void 0,e.initializers.afterStarted,at.WebAssembly);{const n=[e,t.resources?.extensions??{}],r=new lt(!0,void 0,void 0,at.WebAssembly),o=Object.keys(t?.resources?.libraryInitializers||{});return await r.importInitializersAsync(o,n),r}}(e,n)},onDownloadResourceProgress:gt,config:n,out:yt,err:vt};return r}(e,t);e.applicationCulture&&n.withApplicationCulture(e.applicationCulture),e.environment&&n.withApplicationEnvironment(e.environment),e.loadBootResource&&n.withResourceLoader(e.loadBootResource),n.withModuleConfig(r),e.configureRuntime&&e.configureRuntime(n),ft=await n.create()}(e,t)},start:function(){return async function(){if(!ft)throw new Error("The runtime must be loaded it gets configured.");const{setModuleImports:t,INTERNAL:n,getConfig:r,invokeLibraryInitializers:o}=ft;dt=n,function(e){const t=rt.match(/^Mac/i)?"Cmd":"Alt";ot(e)&&console.info(`Debugging hotkey: Shift+${t}+D (when application has focus)`),document.addEventListener("keydown",(t=>{t.shiftKey&&(t.metaKey||t.altKey)&&"KeyD"===t.code&&(ot(e)?navigator.userAgent.includes("Firefox")?async function(){const e=await fetch(`_framework/debug?url=${encodeURIComponent(location.href)}&isFirefox=true`);200!==e.status&&console.warn(await e.text())}():nt?function(){const e=document.createElement("a");e.href=`_framework/debug?url=${encodeURIComponent(location.href)}`,e.target="_blank",e.rel="noopener noreferrer",e.click()}():console.error("Currently, only Microsoft Edge (80+), Google Chrome, or Chromium, are supported for debugging."):console.error("Cannot start debugging, because the application was not compiled with debugging enabled."))}))}(r()),Qe.runtime=ft,Qe._internal.dotNetCriticalError=vt,t("blazor-internal",{Blazor:{_internal:Qe._internal}});const i=await ft.getAssemblyExports("Microsoft.AspNetCore.Components.WebAssembly");return Object.assign(Qe._internal,{dotNetExports:{...i.Microsoft.AspNetCore.Components.WebAssembly.Services.DefaultWebAssemblyJSRuntime}}),ut=e.attachDispatcher({beginInvokeDotNetFromJS:(e,t,n,r,o)=>{if(wt(),!r&&!t)throw new Error("Either assemblyName or dotNetObjectId must have a non null value.");const i=r?r.toString():t;Qe._internal.dotNetExports.BeginInvokeDotNet(e?e.toString():null,i,n,o)},endInvokeJSFromDotNet:(e,t,n)=>{Qe._internal.dotNetExports.EndInvokeJS(n)},sendByteArray:(e,t)=>{Qe._internal.dotNetExports.ReceiveByteArrayFromJS(e,t)},invokeDotNetFromJS:(e,t,n,r)=>(wt(),Qe._internal.dotNetExports.InvokeDotNet(e||null,t,n??0,r))}),{invokeLibraryInitializers:o}}()},callEntryPoint:async function(){try{await ft.runMain(ft.getConfig().mainAssemblyName,[])}catch(e){console.error(e),st()}},getArrayEntryPtr:function(e,t,n){const r=function(e){return e+12}(e)+4+t*n;return r},getObjectFieldsBaseAddress:function(e){return e+8},readInt16Field:function(e,t){return ft.getHeapI16(e+(t||0))},readInt32Field:function(e,t){return ft.getHeapI32(e+(t||0))},readUint64Field:function(e,t){return ft.getHeapU52(e+(t||0))},readObjectField:function(e,t){return ft.getHeapU32(e+(t||0))},readStringField:function(e,t,n){const r=ft.getHeapU32(e+(t||0));if(0===r)return null;if(n){const e=dt.monoObjectAsBoolOrNullUnsafe(r);if("boolean"==typeof e)return e?"":null}return dt.monoStringToStringUnsafe(r)},readStructField:function(e,t){return e+(t||0)},beginHeapLock:function(){return wt(),ht=Et.create(),ht},invokeWhenHeapUnlocked:function(e){ht?ht.enqueuePostReleaseAction(e):e()}};function gt(e,t){const n=e/t*100;document.documentElement.style.setProperty("--blazor-load-percentage",`${n}%`),document.documentElement.style.setProperty("--blazor-load-percentage-text",`"${Math.floor(n)}%"`)}const bt=["DEBUGGING ENABLED"],yt=e=>bt.indexOf(e)<0&&console.log(e),vt=e=>{console.error(e||"(null)"),st()};function wt(){if(ht)throw new Error("Assertion failed - heap is currently locked")}class Et{enqueuePostReleaseAction(e){this.postReleaseActions||(this.postReleaseActions=[]),this.postReleaseActions.push(e)}release(){if(ht!==this)throw new Error("Trying to release a lock which isn't current");for(dt.mono_wasm_gc_unlock(),ht=null;this.postReleaseActions?.length;)this.postReleaseActions.shift()(),wt()}static create(){return dt.mono_wasm_gc_lock(),new Et}}class St{constructor(e){this.batchAddress=e,this.arrayRangeReader=Ct,this.arrayBuilderSegmentReader=At,this.diffReader=It,this.editReader=Nt,this.frameReader=Rt}updatedComponents(){return t.readStructField(this.batchAddress,0)}referenceFrames(){return t.readStructField(this.batchAddress,Ct.structLength)}disposedComponentIds(){return t.readStructField(this.batchAddress,2*Ct.structLength)}disposedEventHandlerIds(){return t.readStructField(this.batchAddress,3*Ct.structLength)}updatedComponentsEntry(e,t){return kt(e,t,It.structLength)}referenceFramesEntry(e,t){return kt(e,t,Rt.structLength)}disposedComponentIdsEntry(e,n){const r=kt(e,n,4);return t.readInt32Field(r)}disposedEventHandlerIdsEntry(e,n){const r=kt(e,n,8);return t.readUint64Field(r)}}const Ct={structLength:8,values:e=>t.readObjectField(e,0),count:e=>t.readInt32Field(e,4)},At={structLength:12,values:e=>{const n=t.readObjectField(e,0),r=t.getObjectFieldsBaseAddress(n);return t.readObjectField(r,0)},offset:e=>t.readInt32Field(e,4),count:e=>t.readInt32Field(e,8)},It={structLength:4+At.structLength,componentId:e=>t.readInt32Field(e,0),edits:e=>t.readStructField(e,4),editsEntry:(e,t)=>kt(e,t,Nt.structLength)},Nt={structLength:20,editType:e=>t.readInt32Field(e,0),siblingIndex:e=>t.readInt32Field(e,4),newTreeIndex:e=>t.readInt32Field(e,8),moveToSiblingIndex:e=>t.readInt32Field(e,8),removedAttributeName:e=>t.readStringField(e,16)},Rt={structLength:36,frameType:e=>t.readInt16Field(e,4),subtreeLength:e=>t.readInt32Field(e,8),elementReferenceCaptureId:e=>t.readStringField(e,16),componentId:e=>t.readInt32Field(e,12),elementName:e=>t.readStringField(e,16),textContent:e=>t.readStringField(e,16),markupContent:e=>t.readStringField(e,16),attributeName:e=>t.readStringField(e,16),attributeValue:e=>t.readStringField(e,24,!0),attributeEventHandlerId:e=>t.readUint64Field(e,8)};function kt(e,n,r){return t.getArrayEntryPtr(e,n,r)}const Dt=/^\s*Blazor-WebAssembly-Component-State:(?[a-zA-Z0-9+/=]+)$/;function _t(e){return Tt(e,Dt)}function Tt(e,t,n="state"){if(e.nodeType===Node.COMMENT_NODE){const r=e.textContent||"",o=t.exec(r),i=o&&o.groups&&o.groups[n];return i&&e.parentNode?.removeChild(e),i}if(!e.hasChildNodes())return;const r=e.childNodes;for(let e=0;e.*)$/);function Ot(e,t){const n=e.currentElement;var r,o,i;if(n&&n.nodeType===Node.COMMENT_NODE&&n.textContent){const s=Lt.exec(n.textContent),a=s&&s.groups&&s.groups.descriptor;if(!a)return;!function(e){if(e.parentNode instanceof Document)throw new Error("Root components cannot be marked as interactive. The element must be rendered statically so that scripts are not evaluated multiple times.")}(n);try{const s=function(e){const t=JSON.parse(e),{type:n}=t;if("server"!==n&&"webassembly"!==n&&"auto"!==n)throw new Error(`Invalid component type '${n}'.`);return t}(a),c=function(e,t,n){const{prerenderId:r}=e;if(r){for(;n.next()&&n.currentElement;){const e=n.currentElement;if(e.nodeType!==Node.COMMENT_NODE)continue;if(!e.textContent)continue;const t=Lt.exec(e.textContent),o=t&&t[1];if(o)return zt(o,r),e}throw new Error(`Could not find an end component comment for '${t}'.`)}}(s,n,e);if(t!==s.type)return;switch(s.type){case"webassembly":return o=n,i=c,Jt(r=s),{...r,uniqueId:jt++,start:o,end:i};case"server":return function(e,t,n){return Ht(e),{...e,uniqueId:jt++,start:t,end:n}}(s,n,c);case"auto":return function(e,t,n){return Ht(e),Jt(e),{...e,uniqueId:jt++,start:t,end:n}}(s,n,c)}}catch(e){throw new Error(`Found malformed component comment at ${n.textContent}`)}}}let Mt,xt,Pt,Bt,jt=0;function Ht(e){const{descriptor:t,sequence:n}=e;if(!t)throw new Error("descriptor must be defined when using a descriptor.");if(void 0===n)throw new Error("sequence must be defined when using a descriptor.");if(!Number.isInteger(n))throw new Error(`Error parsing the sequence '${n}' for component '${JSON.stringify(e)}'`)}function Jt(e){const{assembly:t,typeName:n}=e;if(!t)throw new Error("assembly must be defined when using a descriptor.");if(!n)throw new Error("typeName must be defined when using a descriptor.");e.parameterDefinitions=e.parameterDefinitions&&atob(e.parameterDefinitions),e.parameterValues=e.parameterValues&&atob(e.parameterValues)}function zt(e,t){const n=JSON.parse(e);if(1!==Object.keys(n).length)throw new Error(`Invalid end of component comment: '${e}'`);const r=n.prerenderId;if(!r)throw new Error(`End of component comment must have a value for the prerendered property: '${e}'`);if(r!==t)throw new Error(`End of component comment prerendered property must match the start comment prerender id: '${t}', '${r}'`)}class $t{constructor(e){this.childNodes=e,this.currentIndex=-1,this.length=e.length}next(){return this.currentIndex++,this.currentIndex{Bt=e}));const Ut=new Promise((e=>{}));let Kt;const Vt=new Promise((e=>{Kt=e}));function Xt(e){if(Mt)throw new Error("WebAssembly options have already been configured.");!async function(e){const t=await e;Mt=t,Kt()}(e)}function Yt(e){if(void 0!==Pt)throw new Error("Blazor WebAssembly has already started.");return Pt=new Promise(qt.bind(null,e)),Pt}async function qt(e,n,r){(function(){if(window.parent!==window&&!window.opener&&window.frameElement){const e=window.sessionStorage&&window.sessionStorage["Microsoft.AspNetCore.Components.WebAssembly.Authentication.CachedAuthSettings"],t=e&&JSON.parse(e);return t&&t.redirect_uri&&location.href.startsWith(t.redirect_uri)}return!1})()&&await new Promise((()=>{}));const o=Gt();!function(){const e=R;R=(t,n,r)=>{((e,t,n)=>{const r=function(e){return he[e]}(e);r?.eventDelegator.getHandler(t)&&pt.invokeWhenHeapUnlocked(n)})(t,n,(()=>e(t,n,r)))}}(),Qe._internal.applyHotReload=(e,t,n,r,o)=>{ut.invokeDotNetStaticMethod("Microsoft.AspNetCore.Components.WebAssembly","ApplyHotReloadDelta",e,t,n,r,o??null)},Qe._internal.getApplyUpdateCapabilities=()=>ut.invokeDotNetStaticMethod("Microsoft.AspNetCore.Components.WebAssembly","GetApplyUpdateCapabilities"),Qe._internal.invokeJSJson=Zt,Qe._internal.endInvokeDotNetFromJS=Qt,Qe._internal.receiveWebAssemblyDotNetDataStream=en,Qe._internal.receiveByteArray=tn;const i=(t=pt,t);Qe.platform=i,Qe._internal.renderBatch=(e,t)=>{const n=pt.beginHeapLock();try{!function(e,t){const n=he[e];if(!n)throw new Error(`There is no browser renderer with ID ${e}.`);const r=t.arrayRangeReader,o=t.updatedComponents(),i=r.values(o),s=r.count(o),a=t.referenceFrames(),c=r.values(a),l=t.diffReader;for(let e=0;e{await ut.invokeDotNetStaticMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","NotifyLocationChanged",e,t,n)}),(async(e,t,n,r)=>{const o=await ut.invokeDotNetStaticMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","NotifyLocationChangingAsync",t,n,r);Qe._internal.navigationManager.endLocationChanging(e,o)}));const s=new Wt(e);Qe._internal.registeredComponents={getRegisteredComponentsCount:()=>s.getCount(),getAssembly:e=>s.getAssembly(e),getTypeName:e=>s.getTypeName(e),getParameterDefinitions:e=>s.getParameterDefinitions(e)||"",getParameterValues:e=>s.getParameterValues(e)||""},Qe._internal.getPersistedState=()=>_t(document)||"",Qe._internal.getInitialComponentsUpdate=()=>Ut,Qe._internal.updateRootComponents=e=>Qe._internal.dotNetExports?.UpdateRootComponentsCore(e),Qe._internal.endUpdateRootComponents=t=>e.onAfterUpdateRootComponents?.(t),Qe._internal.attachRootComponentToElement=(e,t,n)=>{const r=s.resolveRegisteredElement(e);r?ye(n,r,t,!1):function(e,t,n){const r="::before";let o=!1;if(e.endsWith("::after"))e=e.slice(0,-7),o=!0;else if(e.endsWith(r))throw new Error(`The '${r}' selector is not supported.`);const i=function(e){const t=h.get(e);if(t)return h.delete(e),t}(e)||document.querySelector(e);if(!i)throw new Error(`Could not find any element matching selector '${e}'.`);ye(n,B(i,!0),t,o)}(e,t,n)};try{await o,await i.start()}catch(e){throw new Error(`Failed to start platform. Reason: ${e}`)}i.callEntryPoint(),mt.invokeAfterStartedCallbacks(Qe),n()}function Gt(){return xt??=(async()=>{await Vt;const e=Mt??{},t=Mt?.configureRuntime;e.configureRuntime=e=>{t?.(e)},await pt.load(e,Bt)})(),xt}function Zt(e,t,n,r,o){return 0!==o?(ut.beginInvokeJSFromDotNet(o,e,r,n,t),null):ut.invokeJSFromDotNet(e,r,n,t)}function Qt(e,t,n){ut.endInvokeDotNetFromJS(e,t,n)}function en(e,t,n,r){!function(e,t,n,r,o){let i=Ze.get(t);if(!i){const n=new ReadableStream({start(e){Ze.set(t,e),i=e}});e.supplyDotNetStream(t,n)}o?(i.error(o),Ze.delete(t)):0===r?(i.close(),Ze.delete(t)):i.enqueue(n.length===r?n:n.subarray(0,r))}(ut,e,t,n,r)}function tn(e,t){ut.receiveByteArray(e,t)}class nn{constructor(e){this.initialComponents=e}resolveRootComponent(e){return this.initialComponents[e]}}class rn{constructor(){this._eventListeners=new Map}static create(e){const t=new rn;return e.addEventListener=t.addEventListener.bind(t),e.removeEventListener=t.removeEventListener.bind(t),t}addEventListener(e,t){let n=this._eventListeners.get(e);n||(n=new Set,this._eventListeners.set(e,n)),n.add(t)}removeEventListener(e,t){this._eventListeners.get(e)?.delete(t)}dispatchEvent(e,t){const n=this._eventListeners.get(e);if(!n)return;const r={...t,type:e};for(const e of n)e(r)}}let on=!1;async function sn(e){if(on)throw new Error("Blazor has already started.");on=!0,Xt(Promise.resolve(e||{})),rn.create(Qe);const t=Ft(document,"webassembly"),n=new nn(t);await Yt(n)}Qe.start=sn,window.DotNet=e,document&&document.currentScript&&"false"!==document.currentScript.getAttribute("autostart")&&sn().catch(vt)}(); +; -/*! For license information please see AuthenticationService.js.LICENSE.txt */ -var t,e;t={671:function(t){var e;e=function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=t,r.c=e,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)r.d(n,i,function(e){return t[e]}.bind(null,i));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=22)}([function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var r=0;r=4){for(var t=arguments.length,e=Array(t),r=0;r=3){for(var t=arguments.length,e=Array(t),r=0;r=2){for(var t=arguments.length,e=Array(t),r=0;r=1){for(var t=arguments.length,e=Array(t),r=0;r1&&void 0!==arguments[1]?arguments[1]:o.JsonService;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!e)throw i.Log.error("MetadataService: No settings passed to MetadataService"),new Error("settings");this._settings=e,this._jsonService=new r(["application/jwk-set+json"])}return t.prototype.resetSigningKeys=function(){this._settings=this._settings||{},this._settings.signingKeys=void 0},t.prototype.getMetadata=function(){var t=this;return this._settings.metadata?(i.Log.debug("MetadataService.getMetadata: Returning metadata from settings"),Promise.resolve(this._settings.metadata)):this.metadataUrl?(i.Log.debug("MetadataService.getMetadata: getting metadata from",this.metadataUrl),this._jsonService.getJson(this.metadataUrl).then((function(e){i.Log.debug("MetadataService.getMetadata: json received");var r=t._settings.metadataSeed||{};return t._settings.metadata=Object.assign({},r,e),t._settings.metadata}))):(i.Log.error("MetadataService.getMetadata: No authority or metadataUrl configured on settings"),Promise.reject(new Error("No authority or metadataUrl configured on settings")))},t.prototype.getIssuer=function(){return this._getMetadataProperty("issuer")},t.prototype.getAuthorizationEndpoint=function(){return this._getMetadataProperty("authorization_endpoint")},t.prototype.getUserInfoEndpoint=function(){return this._getMetadataProperty("userinfo_endpoint")},t.prototype.getTokenEndpoint=function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._getMetadataProperty("token_endpoint",t)},t.prototype.getCheckSessionIframe=function(){return this._getMetadataProperty("check_session_iframe",!0)},t.prototype.getEndSessionEndpoint=function(){return this._getMetadataProperty("end_session_endpoint",!0)},t.prototype.getRevocationEndpoint=function(){return this._getMetadataProperty("revocation_endpoint",!0)},t.prototype.getKeysEndpoint=function(){return this._getMetadataProperty("jwks_uri",!0)},t.prototype._getMetadataProperty=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return i.Log.debug("MetadataService.getMetadataProperty for: "+t),this.getMetadata().then((function(r){if(i.Log.debug("MetadataService.getMetadataProperty: metadata recieved"),void 0===r[t]){if(!0===e)return void i.Log.warn("MetadataService.getMetadataProperty: Metadata does not contain optional property "+t);throw i.Log.error("MetadataService.getMetadataProperty: Metadata does not contain property "+t),new Error("Metadata does not contain property "+t)}return r[t]}))},t.prototype.getSigningKeys=function(){var t=this;return this._settings.signingKeys?(i.Log.debug("MetadataService.getSigningKeys: Returning signingKeys from settings"),Promise.resolve(this._settings.signingKeys)):this._getMetadataProperty("jwks_uri").then((function(e){return i.Log.debug("MetadataService.getSigningKeys: jwks_uri received",e),t._jsonService.getJson(e).then((function(e){if(i.Log.debug("MetadataService.getSigningKeys: key set received",e),!e.keys)throw i.Log.error("MetadataService.getSigningKeys: Missing keys on keyset"),new Error("Missing keys on keyset");return t._settings.signingKeys=e.keys,t._settings.signingKeys}))}))},n(t,[{key:"metadataUrl",get:function(){return this._metadataUrl||(this._settings.metadataUrl?this._metadataUrl=this._settings.metadataUrl:(this._metadataUrl=this._settings.authority,this._metadataUrl&&this._metadataUrl.indexOf(s)<0&&("/"!==this._metadataUrl[this._metadataUrl.length-1]&&(this._metadataUrl+="/"),this._metadataUrl+=s))),this._metadataUrl}}]),t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.UrlUtility=void 0;var n=r(0),i=r(1);e.UrlUtility=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t)}return t.addQueryParam=function(t,e,r){return t.indexOf("?")<0&&(t+="?"),"?"!==t[t.length-1]&&(t+="&"),t+=encodeURIComponent(e),(t+="=")+encodeURIComponent(r)},t.parseUrlFragment=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.Global;"string"!=typeof t&&(t=r.location.href);var o=t.lastIndexOf(e);o>=0&&(t=t.substr(o+1)),"?"===e&&(o=t.indexOf("#"))>=0&&(t=t.substr(0,o));for(var s,a={},u=/([^&=]+)=([^&]*)/g,c=0;s=u.exec(t);)if(a[decodeURIComponent(s[1])]=decodeURIComponent(s[2].replace(/\+/g," ")),c++>50)return n.Log.error("UrlUtility.parseUrlFragment: response exceeded expected number of parameters",t),{error:"Response exceeded expected number of parameters"};for(var h in a)return a;return{}},t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.JoseUtil=void 0;var n=r(26),i=function(t){return t&&t.__esModule?t:{default:t}}(r(33));e.JoseUtil=(0,i.default)({jws:n.jws,KeyUtil:n.KeyUtil,X509:n.X509,crypto:n.crypto,hextob64u:n.hextob64u,b64tohex:n.b64tohex,AllowedSigningAlgs:n.AllowedSigningAlgs})},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.OidcClientSettings=void 0;var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i=function(){function t(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},r=e.authority,i=e.metadataUrl,o=e.metadata,h=e.signingKeys,l=e.metadataSeed,f=e.client_id,g=e.client_secret,d=e.response_type,p=void 0===d?"id_token":d,v=e.scope,y=void 0===v?"openid":v,m=e.redirect_uri,_=e.post_logout_redirect_uri,S=e.client_authentication,w=void 0===S?"client_secret_post":S,b=e.prompt,F=e.display,E=e.max_age,x=e.ui_locales,A=e.acr_values,k=e.resource,P=e.response_mode,C=e.filterProtocolClaims,T=void 0===C||C,R=e.loadUserInfo,I=void 0===R||R,D=e.staleStateAge,L=void 0===D?900:D,N=e.clockSkew,U=void 0===N?300:N,O=e.clockService,B=void 0===O?new s.ClockService:O,M=e.userInfoJwtIssuer,j=void 0===M?"OP":M,H=e.mergeClaims,K=void 0!==H&&H,V=e.stateStore,q=void 0===V?new a.WebStorageStateStore:V,J=e.ResponseValidatorCtor,W=void 0===J?u.ResponseValidator:J,z=e.MetadataServiceCtor,Y=void 0===z?c.MetadataService:z,G=e.extraQueryParams,$=void 0===G?{}:G,X=e.extraTokenParams,Q=void 0===X?{}:X;(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),this._authority=r,this._metadataUrl=i,this._metadata=o,this._metadataSeed=l,this._signingKeys=h,this._client_id=f,this._client_secret=g,this._response_type=p,this._scope=y,this._redirect_uri=m,this._post_logout_redirect_uri=_,this._client_authentication=w,this._prompt=b,this._display=F,this._max_age=E,this._ui_locales=x,this._acr_values=A,this._resource=k,this._response_mode=P,this._filterProtocolClaims=!!T,this._loadUserInfo=!!I,this._staleStateAge=L,this._clockSkew=U,this._clockService=B,this._userInfoJwtIssuer=j,this._mergeClaims=!!K,this._stateStore=q,this._validator=new W(this),this._metadataService=new Y(this),this._extraQueryParams="object"===(void 0===$?"undefined":n($))?$:{},this._extraTokenParams="object"===(void 0===Q?"undefined":n(Q))?Q:{}}return t.prototype.getEpochTime=function(){return this._clockService.getEpochTime()},i(t,[{key:"client_id",get:function(){return this._client_id},set:function(t){if(this._client_id)throw o.Log.error("OidcClientSettings.set_client_id: client_id has already been assigned."),new Error("client_id has already been assigned.");this._client_id=t}},{key:"client_secret",get:function(){return this._client_secret}},{key:"response_type",get:function(){return this._response_type}},{key:"scope",get:function(){return this._scope}},{key:"redirect_uri",get:function(){return this._redirect_uri}},{key:"post_logout_redirect_uri",get:function(){return this._post_logout_redirect_uri}},{key:"client_authentication",get:function(){return this._client_authentication}},{key:"prompt",get:function(){return this._prompt}},{key:"display",get:function(){return this._display}},{key:"max_age",get:function(){return this._max_age}},{key:"ui_locales",get:function(){return this._ui_locales}},{key:"acr_values",get:function(){return this._acr_values}},{key:"resource",get:function(){return this._resource}},{key:"response_mode",get:function(){return this._response_mode}},{key:"authority",get:function(){return this._authority},set:function(t){if(this._authority)throw o.Log.error("OidcClientSettings.set_authority: authority has already been assigned."),new Error("authority has already been assigned.");this._authority=t}},{key:"metadataUrl",get:function(){return this._metadataUrl||(this._metadataUrl=this.authority,this._metadataUrl&&this._metadataUrl.indexOf(h)<0&&("/"!==this._metadataUrl[this._metadataUrl.length-1]&&(this._metadataUrl+="/"),this._metadataUrl+=h)),this._metadataUrl}},{key:"metadata",get:function(){return this._metadata},set:function(t){this._metadata=t}},{key:"metadataSeed",get:function(){return this._metadataSeed},set:function(t){this._metadataSeed=t}},{key:"signingKeys",get:function(){return this._signingKeys},set:function(t){this._signingKeys=t}},{key:"filterProtocolClaims",get:function(){return this._filterProtocolClaims}},{key:"loadUserInfo",get:function(){return this._loadUserInfo}},{key:"staleStateAge",get:function(){return this._staleStateAge}},{key:"clockSkew",get:function(){return this._clockSkew}},{key:"userInfoJwtIssuer",get:function(){return this._userInfoJwtIssuer}},{key:"mergeClaims",get:function(){return this._mergeClaims}},{key:"stateStore",get:function(){return this._stateStore}},{key:"validator",get:function(){return this._validator}},{key:"metadataService",get:function(){return this._metadataService}},{key:"extraQueryParams",get:function(){return this._extraQueryParams},set:function(t){"object"===(void 0===t?"undefined":n(t))?this._extraQueryParams=t:this._extraQueryParams={}}},{key:"extraTokenParams",get:function(){return this._extraTokenParams},set:function(t){"object"===(void 0===t?"undefined":n(t))?this._extraTokenParams=t:this._extraTokenParams={}}}]),t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.WebStorageStateStore=void 0;var n=r(0),i=r(1);e.WebStorageStateStore=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.prefix,n=void 0===r?"oidc.":r,o=e.store,s=void 0===o?i.Global.localStorage:o;(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),this._store=s,this._prefix=n}return t.prototype.set=function(t,e){return n.Log.debug("WebStorageStateStore.set",t),t=this._prefix+t,this._store.setItem(t,e),Promise.resolve()},t.prototype.get=function(t){n.Log.debug("WebStorageStateStore.get",t),t=this._prefix+t;var e=this._store.getItem(t);return Promise.resolve(e)},t.prototype.remove=function(t){n.Log.debug("WebStorageStateStore.remove",t),t=this._prefix+t;var e=this._store.getItem(t);return this._store.removeItem(t),Promise.resolve(e)},t.prototype.getAllKeys=function(){n.Log.debug("WebStorageStateStore.getAllKeys");for(var t=[],e=0;e0&&void 0!==arguments[0]?arguments[0]:null,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.Global.XMLHttpRequest,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),e&&Array.isArray(e)?this._contentTypes=e.slice():this._contentTypes=[],this._contentTypes.push("application/json"),n&&this._contentTypes.push("application/jwt"),this._XMLHttpRequest=r,this._jwtHandler=n}return t.prototype.getJson=function(t,e){var r=this;if(!t)throw n.Log.error("JsonService.getJson: No url passed"),new Error("url");return n.Log.debug("JsonService.getJson, url: ",t),new Promise((function(i,o){var s=new r._XMLHttpRequest;s.open("GET",t);var a=r._contentTypes,u=r._jwtHandler;s.onload=function(){if(n.Log.debug("JsonService.getJson: HTTP response received, status",s.status),200===s.status){var e=s.getResponseHeader("Content-Type");if(e){var r=a.find((function(t){if(e.startsWith(t))return!0}));if("application/jwt"==r)return void u(s).then(i,o);if(r)try{return void i(JSON.parse(s.responseText))}catch(t){return n.Log.error("JsonService.getJson: Error parsing JSON response",t.message),void o(t)}}o(Error("Invalid response Content-Type: "+e+", from URL: "+t))}else o(Error(s.statusText+" ("+s.status+")"))},s.onerror=function(){n.Log.error("JsonService.getJson: network error"),o(Error("Network Error"))},e&&(n.Log.debug("JsonService.getJson: token passed, setting Authorization header"),s.setRequestHeader("Authorization","Bearer "+e)),s.send()}))},t.prototype.postForm=function(t,e,r){var i=this;if(!t)throw n.Log.error("JsonService.postForm: No url passed"),new Error("url");return n.Log.debug("JsonService.postForm, url: ",t),new Promise((function(o,s){var a=new i._XMLHttpRequest;a.open("POST",t);var u=i._contentTypes;a.onload=function(){if(n.Log.debug("JsonService.postForm: HTTP response received, status",a.status),200!==a.status){if(400===a.status&&(r=a.getResponseHeader("Content-Type"))&&u.find((function(t){if(r.startsWith(t))return!0})))try{var e=JSON.parse(a.responseText);if(e&&e.error)return n.Log.error("JsonService.postForm: Error from server: ",e.error),void s(new Error(e.error))}catch(t){return n.Log.error("JsonService.postForm: Error parsing JSON response",t.message),void s(t)}s(Error(a.statusText+" ("+a.status+")"))}else{var r;if((r=a.getResponseHeader("Content-Type"))&&u.find((function(t){if(r.startsWith(t))return!0})))try{return void o(JSON.parse(a.responseText))}catch(t){return n.Log.error("JsonService.postForm: Error parsing JSON response",t.message),void s(t)}s(Error("Invalid response Content-Type: "+r+", from URL: "+t))}},a.onerror=function(){n.Log.error("JsonService.postForm: network error"),s(Error("Network Error"))};var c="";for(var h in e){var l=e[h];l&&(c.length>0&&(c+="&"),c+=encodeURIComponent(h),c+="=",c+=encodeURIComponent(l))}a.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),void 0!==r&&a.setRequestHeader("Authorization","Basic "+btoa(r)),a.send(c)}))},t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SigninRequest=void 0;var n=r(0),i=r(3),o=r(13);e.SigninRequest=function(){function t(e){var r=e.url,s=e.client_id,a=e.redirect_uri,u=e.response_type,c=e.scope,h=e.authority,l=e.data,f=e.prompt,g=e.display,d=e.max_age,p=e.ui_locales,v=e.id_token_hint,y=e.login_hint,m=e.acr_values,_=e.resource,S=e.response_mode,w=e.request,b=e.request_uri,F=e.extraQueryParams,E=e.request_type,x=e.client_secret,A=e.extraTokenParams,k=e.skipUserInfo;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!r)throw n.Log.error("SigninRequest.ctor: No url passed"),new Error("url");if(!s)throw n.Log.error("SigninRequest.ctor: No client_id passed"),new Error("client_id");if(!a)throw n.Log.error("SigninRequest.ctor: No redirect_uri passed"),new Error("redirect_uri");if(!u)throw n.Log.error("SigninRequest.ctor: No response_type passed"),new Error("response_type");if(!c)throw n.Log.error("SigninRequest.ctor: No scope passed"),new Error("scope");if(!h)throw n.Log.error("SigninRequest.ctor: No authority passed"),new Error("authority");var P=t.isOidc(u),C=t.isCode(u);S||(S=t.isCode(u)?"query":null),this.state=new o.SigninState({nonce:P,data:l,client_id:s,authority:h,redirect_uri:a,code_verifier:C,request_type:E,response_mode:S,client_secret:x,scope:c,extraTokenParams:A,skipUserInfo:k}),r=i.UrlUtility.addQueryParam(r,"client_id",s),r=i.UrlUtility.addQueryParam(r,"redirect_uri",a),r=i.UrlUtility.addQueryParam(r,"response_type",u),r=i.UrlUtility.addQueryParam(r,"scope",c),r=i.UrlUtility.addQueryParam(r,"state",this.state.id),P&&(r=i.UrlUtility.addQueryParam(r,"nonce",this.state.nonce)),C&&(r=i.UrlUtility.addQueryParam(r,"code_challenge",this.state.code_challenge),r=i.UrlUtility.addQueryParam(r,"code_challenge_method","S256"));var T={prompt:f,display:g,max_age:d,ui_locales:p,id_token_hint:v,login_hint:y,acr_values:m,resource:_,request:w,request_uri:b,response_mode:S};for(var R in T)T[R]&&(r=i.UrlUtility.addQueryParam(r,R,T[R]));for(var I in F)r=i.UrlUtility.addQueryParam(r,I,F[I]);this.url=r}return t.isOidc=function(t){return!!t.split(/\s+/g).filter((function(t){return"id_token"===t}))[0]},t.isOAuth=function(t){return!!t.split(/\s+/g).filter((function(t){return"token"===t}))[0]},t.isCode=function(t){return!!t.split(/\s+/g).filter((function(t){return"code"===t}))[0]},t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.State=void 0;var n=function(){function t(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},r=e.id,n=e.data,i=e.created,s=e.request_type;(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),this._id=r||(0,o.default)(),this._data=n,this._created="number"==typeof i&&i>0?i:parseInt(Date.now()/1e3),this._request_type=s}return t.prototype.toStorageString=function(){return i.Log.debug("State.toStorageString"),JSON.stringify({id:this.id,data:this.data,created:this.created,request_type:this.request_type})},t.fromStorageString=function(e){return i.Log.debug("State.fromStorageString"),new t(JSON.parse(e))},t.clearStaleState=function(e,r){var n=Date.now()/1e3-r;return e.getAllKeys().then((function(r){i.Log.debug("State.clearStaleState: got keys",r);for(var o=[],s=function(s){var a=r[s];u=e.get(a).then((function(r){var o=!1;if(r)try{var s=t.fromStorageString(r);i.Log.debug("State.clearStaleState: got item from key: ",a,s.created),s.created<=n&&(o=!0)}catch(t){i.Log.error("State.clearStaleState: Error parsing state for key",a,t.message),o=!0}else i.Log.debug("State.clearStaleState: no item in storage for key: ",a),o=!0;if(o)return i.Log.debug("State.clearStaleState: removed item for key: ",a),e.remove(a)})),o.push(u)},a=0;a0&&void 0!==arguments[0]?arguments[0]:{};(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),e instanceof o.OidcClientSettings?this._settings=e:this._settings=new o.OidcClientSettings(e)}return t.prototype.createSigninRequest=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.response_type,n=e.scope,o=e.redirect_uri,s=e.data,u=e.state,c=e.prompt,h=e.display,l=e.max_age,f=e.ui_locales,g=e.id_token_hint,d=e.login_hint,p=e.acr_values,v=e.resource,y=e.request,m=e.request_uri,_=e.response_mode,S=e.extraQueryParams,w=e.extraTokenParams,b=e.request_type,F=e.skipUserInfo,E=arguments[1];i.Log.debug("OidcClient.createSigninRequest");var x=this._settings.client_id;r=r||this._settings.response_type,n=n||this._settings.scope,o=o||this._settings.redirect_uri,c=c||this._settings.prompt,h=h||this._settings.display,l=l||this._settings.max_age,f=f||this._settings.ui_locales,p=p||this._settings.acr_values,v=v||this._settings.resource,_=_||this._settings.response_mode,S=S||this._settings.extraQueryParams,w=w||this._settings.extraTokenParams;var A=this._settings.authority;return a.SigninRequest.isCode(r)&&"code"!==r?Promise.reject(new Error("OpenID Connect hybrid flow is not supported")):this._metadataService.getAuthorizationEndpoint().then((function(e){i.Log.debug("OidcClient.createSigninRequest: Received authorization endpoint",e);var k=new a.SigninRequest({url:e,client_id:x,redirect_uri:o,response_type:r,scope:n,data:s||u,authority:A,prompt:c,display:h,max_age:l,ui_locales:f,id_token_hint:g,login_hint:d,acr_values:p,resource:v,request:y,request_uri:m,extraQueryParams:S,extraTokenParams:w,request_type:b,response_mode:_,client_secret:t._settings.client_secret,skipUserInfo:F}),P=k.state;return(E=E||t._stateStore).set(P.id,P.toStorageString()).then((function(){return k}))}))},t.prototype.readSigninResponseState=function(t,e){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];i.Log.debug("OidcClient.readSigninResponseState");var n="query"===this._settings.response_mode||!this._settings.response_mode&&a.SigninRequest.isCode(this._settings.response_type)?"?":"#",o=new u.SigninResponse(t,n);return o.state?(e=e||this._stateStore,(r?e.remove.bind(e):e.get.bind(e))(o.state).then((function(t){if(!t)throw i.Log.error("OidcClient.readSigninResponseState: No matching state found in storage"),new Error("No matching state found in storage");return{state:l.SigninState.fromStorageString(t),response:o}}))):(i.Log.error("OidcClient.readSigninResponseState: No state in response"),Promise.reject(new Error("No state in response")))},t.prototype.processSigninResponse=function(t,e){var r=this;return i.Log.debug("OidcClient.processSigninResponse"),this.readSigninResponseState(t,e,!0).then((function(t){var e=t.state,n=t.response;return i.Log.debug("OidcClient.processSigninResponse: Received state from storage; validating response"),r._validator.validateSigninResponse(e,n)}))},t.prototype.createSignoutRequest=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.id_token_hint,n=e.data,o=e.state,s=e.post_logout_redirect_uri,a=e.extraQueryParams,u=e.request_type,h=arguments[1];return i.Log.debug("OidcClient.createSignoutRequest"),s=s||this._settings.post_logout_redirect_uri,a=a||this._settings.extraQueryParams,this._metadataService.getEndSessionEndpoint().then((function(e){if(!e)throw i.Log.error("OidcClient.createSignoutRequest: No end session endpoint url returned"),new Error("no end session endpoint");i.Log.debug("OidcClient.createSignoutRequest: Received end session endpoint",e);var l=new c.SignoutRequest({url:e,id_token_hint:r,post_logout_redirect_uri:s,data:n||o,extraQueryParams:a,request_type:u}),f=l.state;return f&&(i.Log.debug("OidcClient.createSignoutRequest: Signout request has state to persist"),(h=h||t._stateStore).set(f.id,f.toStorageString())),l}))},t.prototype.readSignoutResponseState=function(t,e){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];i.Log.debug("OidcClient.readSignoutResponseState");var n=new h.SignoutResponse(t);if(!n.state)return i.Log.debug("OidcClient.readSignoutResponseState: No state in response"),n.error?(i.Log.warn("OidcClient.readSignoutResponseState: Response was error: ",n.error),Promise.reject(new s.ErrorResponse(n))):Promise.resolve({state:void 0,response:n});var o=n.state;return e=e||this._stateStore,(r?e.remove.bind(e):e.get.bind(e))(o).then((function(t){if(!t)throw i.Log.error("OidcClient.readSignoutResponseState: No matching state found in storage"),new Error("No matching state found in storage");return{state:f.State.fromStorageString(t),response:n}}))},t.prototype.processSignoutResponse=function(t,e){var r=this;return i.Log.debug("OidcClient.processSignoutResponse"),this.readSignoutResponseState(t,e,!0).then((function(t){var e=t.state,n=t.response;return e?(i.Log.debug("OidcClient.processSignoutResponse: Received state from storage; validating response"),r._validator.validateSignoutResponse(e,n)):(i.Log.debug("OidcClient.processSignoutResponse: No state from storage; skipping validating response"),n)}))},t.prototype.clearStaleState=function(t){return i.Log.debug("OidcClient.clearStaleState"),t=t||this._stateStore,f.State.clearStaleState(t,this.settings.staleStateAge)},n(t,[{key:"_stateStore",get:function(){return this.settings.stateStore}},{key:"_validator",get:function(){return this.settings.validator}},{key:"_metadataService",get:function(){return this.settings.metadataService}},{key:"settings",get:function(){return this._settings}},{key:"metadataService",get:function(){return this._metadataService}}]),t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TokenClient=void 0;var n=r(7),i=r(2),o=r(0);e.TokenClient=function(){function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.JsonService,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.MetadataService;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!e)throw o.Log.error("TokenClient.ctor: No settings passed"),new Error("settings");this._settings=e,this._jsonService=new r,this._metadataService=new s(this._settings)}return t.prototype.exchangeCode=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(e=Object.assign({},e)).grant_type=e.grant_type||"authorization_code",e.client_id=e.client_id||this._settings.client_id,e.client_secret=e.client_secret||this._settings.client_secret,e.redirect_uri=e.redirect_uri||this._settings.redirect_uri;var r=void 0,n=e._client_authentication||this._settings._client_authentication;return delete e._client_authentication,e.code?e.redirect_uri?e.code_verifier?e.client_id?e.client_secret||"client_secret_basic"!=n?("client_secret_basic"==n&&(r=e.client_id+":"+e.client_secret,delete e.client_id,delete e.client_secret),this._metadataService.getTokenEndpoint(!1).then((function(n){return o.Log.debug("TokenClient.exchangeCode: Received token endpoint"),t._jsonService.postForm(n,e,r).then((function(t){return o.Log.debug("TokenClient.exchangeCode: response received"),t}))}))):(o.Log.error("TokenClient.exchangeCode: No client_secret passed"),Promise.reject(new Error("A client_secret is required"))):(o.Log.error("TokenClient.exchangeCode: No client_id passed"),Promise.reject(new Error("A client_id is required"))):(o.Log.error("TokenClient.exchangeCode: No code_verifier passed"),Promise.reject(new Error("A code_verifier is required"))):(o.Log.error("TokenClient.exchangeCode: No redirect_uri passed"),Promise.reject(new Error("A redirect_uri is required"))):(o.Log.error("TokenClient.exchangeCode: No code passed"),Promise.reject(new Error("A code is required")))},t.prototype.exchangeRefreshToken=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(e=Object.assign({},e)).grant_type=e.grant_type||"refresh_token",e.client_id=e.client_id||this._settings.client_id,e.client_secret=e.client_secret||this._settings.client_secret;var r=void 0,n=e._client_authentication||this._settings._client_authentication;return delete e._client_authentication,e.refresh_token?e.client_id?("client_secret_basic"==n&&(r=e.client_id+":"+e.client_secret,delete e.client_id,delete e.client_secret),this._metadataService.getTokenEndpoint(!1).then((function(n){return o.Log.debug("TokenClient.exchangeRefreshToken: Received token endpoint"),t._jsonService.postForm(n,e,r).then((function(t){return o.Log.debug("TokenClient.exchangeRefreshToken: response received"),t}))}))):(o.Log.error("TokenClient.exchangeRefreshToken: No client_id passed"),Promise.reject(new Error("A client_id is required"))):(o.Log.error("TokenClient.exchangeRefreshToken: No refresh_token passed"),Promise.reject(new Error("A refresh_token is required")))},t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ErrorResponse=void 0;var n=r(0);e.ErrorResponse=function(t){function e(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=r.error,o=r.error_description,s=r.error_uri,a=r.state,u=r.session_state;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),!i)throw n.Log.error("No error passed to ErrorResponse"),new Error("error");var c=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,t.call(this,o||i));return c.name="ErrorResponse",c.error=i,c.error_description=o,c.error_uri=s,c.state=a,c.session_state=u,c}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,t),e}(Error)},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SigninState=void 0;var n=function(){function t(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},n=r.nonce,i=r.authority,o=r.client_id,u=r.redirect_uri,c=r.code_verifier,h=r.response_mode,l=r.client_secret,f=r.scope,g=r.extraTokenParams,d=r.skipUserInfo;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e);var p=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,t.call(this,arguments[0]));if(!0===n?p._nonce=(0,a.default)():n&&(p._nonce=n),!0===c?p._code_verifier=(0,a.default)()+(0,a.default)()+(0,a.default)():c&&(p._code_verifier=c),p.code_verifier){var v=s.JoseUtil.hashString(p.code_verifier,"SHA256");p._code_challenge=s.JoseUtil.hexToBase64Url(v)}return p._redirect_uri=u,p._authority=i,p._client_id=o,p._response_mode=h,p._client_secret=l,p._scope=f,p._extraTokenParams=g,p._skipUserInfo=d,p}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,t),e.prototype.toStorageString=function(){return i.Log.debug("SigninState.toStorageString"),JSON.stringify({id:this.id,data:this.data,created:this.created,request_type:this.request_type,nonce:this.nonce,code_verifier:this.code_verifier,redirect_uri:this.redirect_uri,authority:this.authority,client_id:this.client_id,response_mode:this.response_mode,client_secret:this.client_secret,scope:this.scope,extraTokenParams:this.extraTokenParams,skipUserInfo:this.skipUserInfo})},e.fromStorageString=function(t){return i.Log.debug("SigninState.fromStorageString"),new e(JSON.parse(t))},n(e,[{key:"nonce",get:function(){return this._nonce}},{key:"authority",get:function(){return this._authority}},{key:"client_id",get:function(){return this._client_id}},{key:"redirect_uri",get:function(){return this._redirect_uri}},{key:"code_verifier",get:function(){return this._code_verifier}},{key:"code_challenge",get:function(){return this._code_challenge}},{key:"response_mode",get:function(){return this._response_mode}},{key:"client_secret",get:function(){return this._client_secret}},{key:"scope",get:function(){return this._scope}},{key:"extraTokenParams",get:function(){return this._extraTokenParams}},{key:"skipUserInfo",get:function(){return this._skipUserInfo}}]),e}(o.State)},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){return("undefined"!=n&&null!==n&&void 0!==n.getRandomValues?i:o)().replace(/-/g,"")};var n="undefined"!=typeof window?window.crypto||window.msCrypto:null;function i(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(function(t){return(t^n.getRandomValues(new Uint8Array(1))[0]&15>>t/4).toString(16)}))}function o(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(function(t){return(t^16*Math.random()>>t/4).toString(16)}))}t.exports=e.default},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.User=void 0;var n=function(){function t(t,e){for(var r=0;r0){var r=parseInt(Date.now()/1e3);this.expires_at=r+e}}},{key:"expired",get:function(){var t=this.expires_in;if(void 0!==t)return t<=0}},{key:"scopes",get:function(){return(this.scope||"").split(" ")}}]),t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AccessTokenEvents=void 0;var n=r(0),i=r(46);e.AccessTokenEvents=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.accessTokenExpiringNotificationTime,n=void 0===r?60:r,o=e.accessTokenExpiringTimer,s=void 0===o?new i.Timer("Access token expiring"):o,a=e.accessTokenExpiredTimer,u=void 0===a?new i.Timer("Access token expired"):a;(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),this._accessTokenExpiringNotificationTime=n,this._accessTokenExpiring=s,this._accessTokenExpired=u}return t.prototype.load=function(t){if(t.access_token&&void 0!==t.expires_in){var e=t.expires_in;if(n.Log.debug("AccessTokenEvents.load: access token present, remaining duration:",e),e>0){var r=e-this._accessTokenExpiringNotificationTime;r<=0&&(r=1),n.Log.debug("AccessTokenEvents.load: registering expiring timer in:",r),this._accessTokenExpiring.init(r)}else n.Log.debug("AccessTokenEvents.load: canceling existing expiring timer becase we're past expiration."),this._accessTokenExpiring.cancel();var i=e+1;n.Log.debug("AccessTokenEvents.load: registering expired timer in:",i),this._accessTokenExpired.init(i)}else this._accessTokenExpiring.cancel(),this._accessTokenExpired.cancel()},t.prototype.unload=function(){n.Log.debug("AccessTokenEvents.unload: canceling existing access token timers"),this._accessTokenExpiring.cancel(),this._accessTokenExpired.cancel()},t.prototype.addAccessTokenExpiring=function(t){this._accessTokenExpiring.addHandler(t)},t.prototype.removeAccessTokenExpiring=function(t){this._accessTokenExpiring.removeHandler(t)},t.prototype.addAccessTokenExpired=function(t){this._accessTokenExpired.addHandler(t)},t.prototype.removeAccessTokenExpired=function(t){this._accessTokenExpired.removeHandler(t)},t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Event=void 0;var n=r(0);e.Event=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this._name=e,this._callbacks=[]}return t.prototype.addHandler=function(t){this._callbacks.push(t)},t.prototype.removeHandler=function(t){var e=this._callbacks.findIndex((function(e){return e===t}));e>=0&&this._callbacks.splice(e,1)},t.prototype.raise=function(){n.Log.debug("Event: Raising event: "+this._name);for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:o.CheckSessionIFrame,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:s.Global.timer;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!e)throw i.Log.error("SessionMonitor.ctor: No user manager passed to SessionMonitor"),new Error("userManager");this._userManager=e,this._CheckSessionIFrameCtor=n,this._timer=a,this._userManager.events.addUserLoaded(this._start.bind(this)),this._userManager.events.addUserUnloaded(this._stop.bind(this)),Promise.resolve(this._userManager.getUser().then((function(t){t?r._start(t):r._settings.monitorAnonymousSession&&r._userManager.querySessionStatus().then((function(t){var e={session_state:t.session_state};t.sub&&t.sid&&(e.profile={sub:t.sub,sid:t.sid}),r._start(e)})).catch((function(t){i.Log.error("SessionMonitor ctor: error from querySessionStatus:",t.message)}))})).catch((function(t){i.Log.error("SessionMonitor ctor: error from getUser:",t.message)})))}return t.prototype._start=function(t){var e=this,r=t.session_state;r&&(t.profile?(this._sub=t.profile.sub,this._sid=t.profile.sid,i.Log.debug("SessionMonitor._start: session_state:",r,", sub:",this._sub)):(this._sub=void 0,this._sid=void 0,i.Log.debug("SessionMonitor._start: session_state:",r,", anonymous user")),this._checkSessionIFrame?this._checkSessionIFrame.start(r):this._metadataService.getCheckSessionIframe().then((function(t){if(t){i.Log.debug("SessionMonitor._start: Initializing check session iframe");var n=e._client_id,o=e._checkSessionInterval,s=e._stopCheckSessionOnError;e._checkSessionIFrame=new e._CheckSessionIFrameCtor(e._callback.bind(e),n,t,o,s),e._checkSessionIFrame.load().then((function(){e._checkSessionIFrame.start(r)}))}else i.Log.warn("SessionMonitor._start: No check session iframe found in the metadata")})).catch((function(t){i.Log.error("SessionMonitor._start: Error from getCheckSessionIframe:",t.message)})))},t.prototype._stop=function(){var t=this;if(this._sub=void 0,this._sid=void 0,this._checkSessionIFrame&&(i.Log.debug("SessionMonitor._stop"),this._checkSessionIFrame.stop()),this._settings.monitorAnonymousSession)var e=this._timer.setInterval((function(){t._timer.clearInterval(e),t._userManager.querySessionStatus().then((function(e){var r={session_state:e.session_state};e.sub&&e.sid&&(r.profile={sub:e.sub,sid:e.sid}),t._start(r)})).catch((function(t){i.Log.error("SessionMonitor: error from querySessionStatus:",t.message)}))}),1e3)},t.prototype._callback=function(){var t=this;this._userManager.querySessionStatus().then((function(e){var r=!0;e?e.sub===t._sub?(r=!1,t._checkSessionIFrame.start(e.session_state),e.sid===t._sid?i.Log.debug("SessionMonitor._callback: Same sub still logged in at OP, restarting check session iframe; session_state:",e.session_state):(i.Log.debug("SessionMonitor._callback: Same sub still logged in at OP, session state has changed, restarting check session iframe; session_state:",e.session_state),t._userManager.events._raiseUserSessionChanged())):i.Log.debug("SessionMonitor._callback: Different subject signed into OP:",e.sub):i.Log.debug("SessionMonitor._callback: Subject no longer signed into OP"),r&&(t._sub?(i.Log.debug("SessionMonitor._callback: SessionMonitor._callback; raising signed out event"),t._userManager.events._raiseUserSignedOut()):(i.Log.debug("SessionMonitor._callback: SessionMonitor._callback; raising signed in event"),t._userManager.events._raiseUserSignedIn()))})).catch((function(e){t._sub&&(i.Log.debug("SessionMonitor._callback: Error calling queryCurrentSigninSession; raising signed out event",e.message),t._userManager.events._raiseUserSignedOut())}))},n(t,[{key:"_settings",get:function(){return this._userManager.settings}},{key:"_metadataService",get:function(){return this._userManager.metadataService}},{key:"_client_id",get:function(){return this._settings.client_id}},{key:"_checkSessionInterval",get:function(){return this._settings.checkSessionInterval}},{key:"_stopCheckSessionOnError",get:function(){return this._settings.stopCheckSessionOnError}}]),t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CheckSessionIFrame=void 0;var n=r(0);e.CheckSessionIFrame=function(){function t(e,r,n,i){var o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4];(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),this._callback=e,this._client_id=r,this._url=n,this._interval=i||2e3,this._stopOnError=o;var s=n.indexOf("/",n.indexOf("//")+2);this._frame_origin=n.substr(0,s),this._frame=window.document.createElement("iframe"),this._frame.style.visibility="hidden",this._frame.style.position="absolute",this._frame.style.display="none",this._frame.width=0,this._frame.height=0,this._frame.src=n}return t.prototype.load=function(){var t=this;return new Promise((function(e){t._frame.onload=function(){e()},window.document.body.appendChild(t._frame),t._boundMessageEvent=t._message.bind(t),window.addEventListener("message",t._boundMessageEvent,!1)}))},t.prototype._message=function(t){t.origin===this._frame_origin&&t.source===this._frame.contentWindow&&("error"===t.data?(n.Log.error("CheckSessionIFrame: error message from check session op iframe"),this._stopOnError&&this.stop()):"changed"===t.data?(n.Log.debug("CheckSessionIFrame: changed message from check session op iframe"),this.stop(),this._callback()):n.Log.debug("CheckSessionIFrame: "+t.data+" message from check session op iframe"))},t.prototype.start=function(t){var e=this;if(this._session_state!==t){n.Log.debug("CheckSessionIFrame.start"),this.stop(),this._session_state=t;var r=function(){e._frame.contentWindow.postMessage(e._client_id+" "+e._session_state,e._frame_origin)};r(),this._timer=window.setInterval(r,this._interval)}},t.prototype.stop=function(){this._session_state=null,this._timer&&(n.Log.debug("CheckSessionIFrame.stop"),window.clearInterval(this._timer),this._timer=null)},t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TokenRevocationClient=void 0;var n=r(0),i=r(2),o=r(1);e.TokenRevocationClient=function(){function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o.Global.XMLHttpRequest,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.MetadataService;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!e)throw n.Log.error("TokenRevocationClient.ctor: No settings provided"),new Error("No settings provided.");this._settings=e,this._XMLHttpRequestCtor=r,this._metadataService=new s(this._settings)}return t.prototype.revoke=function(t,e){var r=this,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"access_token";if(!t)throw n.Log.error("TokenRevocationClient.revoke: No token provided"),new Error("No token provided.");if("access_token"!==i&&"refresh_token"!=i)throw n.Log.error("TokenRevocationClient.revoke: Invalid token type"),new Error("Invalid token type.");return this._metadataService.getRevocationEndpoint().then((function(o){if(o){n.Log.debug("TokenRevocationClient.revoke: Revoking "+i);var s=r._settings.client_id,a=r._settings.client_secret;return r._revoke(o,s,a,t,i)}if(e)throw n.Log.error("TokenRevocationClient.revoke: Revocation not supported"),new Error("Revocation not supported")}))},t.prototype._revoke=function(t,e,r,i,o){var s=this;return new Promise((function(a,u){var c=new s._XMLHttpRequestCtor;c.open("POST",t),c.onload=function(){n.Log.debug("TokenRevocationClient.revoke: HTTP response received, status",c.status),200===c.status?a():u(Error(c.statusText+" ("+c.status+")"))},c.onerror=function(){n.Log.debug("TokenRevocationClient.revoke: Network Error."),u("Network Error")};var h="client_id="+encodeURIComponent(e);r&&(h+="&client_secret="+encodeURIComponent(r)),h+="&token_type_hint="+encodeURIComponent(o),h+="&token="+encodeURIComponent(i),c.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),c.send(h)}))},t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CordovaPopupWindow=void 0;var n=function(){function t(t,e){for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:o.MetadataService,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:s.UserInfoService,u=arguments.length>3&&void 0!==arguments[3]?arguments[3]:c.JoseUtil,h=arguments.length>4&&void 0!==arguments[4]?arguments[4]:a.TokenClient;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!e)throw i.Log.error("ResponseValidator.ctor: No settings passed to ResponseValidator"),new Error("settings");this._settings=e,this._metadataService=new r(this._settings),this._userInfoService=new n(this._settings),this._joseUtil=u,this._tokenClient=new h(this._settings)}return t.prototype.validateSigninResponse=function(t,e){var r=this;return i.Log.debug("ResponseValidator.validateSigninResponse"),this._processSigninParams(t,e).then((function(e){return i.Log.debug("ResponseValidator.validateSigninResponse: state processed"),r._validateTokens(t,e).then((function(e){return i.Log.debug("ResponseValidator.validateSigninResponse: tokens validated"),r._processClaims(t,e).then((function(t){return i.Log.debug("ResponseValidator.validateSigninResponse: claims processed"),t}))}))}))},t.prototype.validateSignoutResponse=function(t,e){return t.id!==e.state?(i.Log.error("ResponseValidator.validateSignoutResponse: State does not match"),Promise.reject(new Error("State does not match"))):(i.Log.debug("ResponseValidator.validateSignoutResponse: state validated"),e.state=t.data,e.error?(i.Log.warn("ResponseValidator.validateSignoutResponse: Response was error",e.error),Promise.reject(new u.ErrorResponse(e))):Promise.resolve(e))},t.prototype._processSigninParams=function(t,e){if(t.id!==e.state)return i.Log.error("ResponseValidator._processSigninParams: State does not match"),Promise.reject(new Error("State does not match"));if(!t.client_id)return i.Log.error("ResponseValidator._processSigninParams: No client_id on state"),Promise.reject(new Error("No client_id on state"));if(!t.authority)return i.Log.error("ResponseValidator._processSigninParams: No authority on state"),Promise.reject(new Error("No authority on state"));if(this._settings.authority){if(this._settings.authority&&this._settings.authority!==t.authority)return i.Log.error("ResponseValidator._processSigninParams: authority mismatch on settings vs. signin state"),Promise.reject(new Error("authority mismatch on settings vs. signin state"))}else this._settings.authority=t.authority;if(this._settings.client_id){if(this._settings.client_id&&this._settings.client_id!==t.client_id)return i.Log.error("ResponseValidator._processSigninParams: client_id mismatch on settings vs. signin state"),Promise.reject(new Error("client_id mismatch on settings vs. signin state"))}else this._settings.client_id=t.client_id;return i.Log.debug("ResponseValidator._processSigninParams: state validated"),e.state=t.data,e.error?(i.Log.warn("ResponseValidator._processSigninParams: Response was error",e.error),Promise.reject(new u.ErrorResponse(e))):t.nonce&&!e.id_token?(i.Log.error("ResponseValidator._processSigninParams: Expecting id_token in response"),Promise.reject(new Error("No id_token in response"))):!t.nonce&&e.id_token?(i.Log.error("ResponseValidator._processSigninParams: Not expecting id_token in response"),Promise.reject(new Error("Unexpected id_token in response"))):t.code_verifier&&!e.code?(i.Log.error("ResponseValidator._processSigninParams: Expecting code in response"),Promise.reject(new Error("No code in response"))):!t.code_verifier&&e.code?(i.Log.error("ResponseValidator._processSigninParams: Not expecting code in response"),Promise.reject(new Error("Unexpected code in response"))):(e.scope||(e.scope=t.scope),Promise.resolve(e))},t.prototype._processClaims=function(t,e){var r=this;if(e.isOpenIdConnect){if(i.Log.debug("ResponseValidator._processClaims: response is OIDC, processing claims"),e.profile=this._filterProtocolClaims(e.profile),!0!==t.skipUserInfo&&this._settings.loadUserInfo&&e.access_token)return i.Log.debug("ResponseValidator._processClaims: loading user info"),this._userInfoService.getClaims(e.access_token).then((function(t){return i.Log.debug("ResponseValidator._processClaims: user info claims received from user info endpoint"),t.sub!==e.profile.sub?(i.Log.error("ResponseValidator._processClaims: sub from user info endpoint does not match sub in id_token"),Promise.reject(new Error("sub from user info endpoint does not match sub in id_token"))):(e.profile=r._mergeClaims(e.profile,t),i.Log.debug("ResponseValidator._processClaims: user info claims received, updated profile:",e.profile),e)}));i.Log.debug("ResponseValidator._processClaims: not loading user info")}else i.Log.debug("ResponseValidator._processClaims: response is not OIDC, not processing claims");return Promise.resolve(e)},t.prototype._mergeClaims=function(t,e){var r=Object.assign({},t);for(var i in e){var o=e[i];Array.isArray(o)||(o=[o]);for(var s=0;s1)return i.Log.error("ResponseValidator._validateIdToken: No kid found in id_token and more than one key found in metadata"),Promise.reject(new Error("No kid found in id_token and more than one key found in metadata"));o=r[0]}return Promise.resolve(o)}))},t.prototype._getSigningKeyForJwtWithSingleRetry=function(t){var e=this;return this._getSigningKeyForJwt(t).then((function(r){return r?Promise.resolve(r):(e._metadataService.resetSigningKeys(),e._getSigningKeyForJwt(t))}))},t.prototype._validateIdToken=function(t,e){var r=this;if(!t.nonce)return i.Log.error("ResponseValidator._validateIdToken: No nonce on state"),Promise.reject(new Error("No nonce on state"));var n=this._joseUtil.parseJwt(e.id_token);return n&&n.header&&n.payload?t.nonce!==n.payload.nonce?(i.Log.error("ResponseValidator._validateIdToken: Invalid nonce in id_token"),Promise.reject(new Error("Invalid nonce in id_token"))):this._metadataService.getIssuer().then((function(o){return i.Log.debug("ResponseValidator._validateIdToken: Received issuer"),r._getSigningKeyForJwtWithSingleRetry(n).then((function(s){if(!s)return i.Log.error("ResponseValidator._validateIdToken: No key matching kid or alg found in signing keys"),Promise.reject(new Error("No key matching kid or alg found in signing keys"));var a=t.client_id,u=r._settings.clockSkew;return i.Log.debug("ResponseValidator._validateIdToken: Validaing JWT; using clock skew (in seconds) of: ",u),r._joseUtil.validateJwt(e.id_token,s,o,a,u).then((function(){return i.Log.debug("ResponseValidator._validateIdToken: JWT validation successful"),n.payload.sub?(e.profile=n.payload,e):(i.Log.error("ResponseValidator._validateIdToken: No sub present in id_token"),Promise.reject(new Error("No sub present in id_token")))}))}))})):(i.Log.error("ResponseValidator._validateIdToken: Failed to parse id_token",n),Promise.reject(new Error("Failed to parse id_token")))},t.prototype._filterByAlg=function(t,e){var r=null;if(e.startsWith("RS"))r="RSA";else if(e.startsWith("PS"))r="PS";else{if(!e.startsWith("ES"))return i.Log.debug("ResponseValidator._filterByAlg: alg not supported: ",e),[];r="EC"}return i.Log.debug("ResponseValidator._filterByAlg: Looking for keys that match kty: ",r),t=t.filter((function(t){return t.kty===r})),i.Log.debug("ResponseValidator._filterByAlg: Number of keys that match kty: ",r,t.length),t},t.prototype._validateAccessToken=function(t){if(!t.profile)return i.Log.error("ResponseValidator._validateAccessToken: No profile loaded from id_token"),Promise.reject(new Error("No profile loaded from id_token"));if(!t.profile.at_hash)return i.Log.error("ResponseValidator._validateAccessToken: No at_hash in id_token"),Promise.reject(new Error("No at_hash in id_token"));if(!t.id_token)return i.Log.error("ResponseValidator._validateAccessToken: No id_token"),Promise.reject(new Error("No id_token"));var e=this._joseUtil.parseJwt(t.id_token);if(!e||!e.header)return i.Log.error("ResponseValidator._validateAccessToken: Failed to parse id_token",e),Promise.reject(new Error("Failed to parse id_token"));var r=e.header.alg;if(!r||5!==r.length)return i.Log.error("ResponseValidator._validateAccessToken: Unsupported alg:",r),Promise.reject(new Error("Unsupported alg: "+r));var n=r.substr(2,3);if(!n)return i.Log.error("ResponseValidator._validateAccessToken: Unsupported alg:",r,n),Promise.reject(new Error("Unsupported alg: "+r));if(256!==(n=parseInt(n))&&384!==n&&512!==n)return i.Log.error("ResponseValidator._validateAccessToken: Unsupported alg:",r,n),Promise.reject(new Error("Unsupported alg: "+r));var o="sha"+n,s=this._joseUtil.hashString(t.access_token,o);if(!s)return i.Log.error("ResponseValidator._validateAccessToken: access_token hash failed:",o),Promise.reject(new Error("Failed to validate at_hash"));var a=s.substr(0,s.length/2),u=this._joseUtil.hexToBase64Url(a);return u!==t.profile.at_hash?(i.Log.error("ResponseValidator._validateAccessToken: Failed to validate at_hash",u,t.profile.at_hash),Promise.reject(new Error("Failed to validate at_hash"))):(i.Log.debug("ResponseValidator._validateAccessToken: success"),Promise.resolve(t))},t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.UserInfoService=void 0;var n=r(7),i=r(2),o=r(0),s=r(4);e.UserInfoService=function(){function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.JsonService,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.MetadataService,u=arguments.length>3&&void 0!==arguments[3]?arguments[3]:s.JoseUtil;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!e)throw o.Log.error("UserInfoService.ctor: No settings passed"),new Error("settings");this._settings=e,this._jsonService=new r(void 0,void 0,this._getClaimsFromJwt.bind(this)),this._metadataService=new a(this._settings),this._joseUtil=u}return t.prototype.getClaims=function(t){var e=this;return t?this._metadataService.getUserInfoEndpoint().then((function(r){return o.Log.debug("UserInfoService.getClaims: received userinfo url",r),e._jsonService.getJson(r,t).then((function(t){return o.Log.debug("UserInfoService.getClaims: claims received",t),t}))})):(o.Log.error("UserInfoService.getClaims: No token passed"),Promise.reject(new Error("A token is required")))},t.prototype._getClaimsFromJwt=function t(e){var r=this;try{var n=this._joseUtil.parseJwt(e.responseText);if(!n||!n.header||!n.payload)return o.Log.error("UserInfoService._getClaimsFromJwt: Failed to parse JWT",n),Promise.reject(new Error("Failed to parse id_token"));var i=n.header.kid,s=void 0;switch(this._settings.userInfoJwtIssuer){case"OP":s=this._metadataService.getIssuer();break;case"ANY":s=Promise.resolve(n.payload.iss);break;default:s=Promise.resolve(this._settings.userInfoJwtIssuer)}return s.then((function(t){return o.Log.debug("UserInfoService._getClaimsFromJwt: Received issuer:"+t),r._metadataService.getSigningKeys().then((function(s){if(!s)return o.Log.error("UserInfoService._getClaimsFromJwt: No signing keys from metadata"),Promise.reject(new Error("No signing keys from metadata"));o.Log.debug("UserInfoService._getClaimsFromJwt: Received signing keys");var a=void 0;if(i)a=s.filter((function(t){return t.kid===i}))[0];else{if((s=r._filterByAlg(s,n.header.alg)).length>1)return o.Log.error("UserInfoService._getClaimsFromJwt: No kid found in id_token and more than one key found in metadata"),Promise.reject(new Error("No kid found in id_token and more than one key found in metadata"));a=s[0]}if(!a)return o.Log.error("UserInfoService._getClaimsFromJwt: No key matching kid or alg found in signing keys"),Promise.reject(new Error("No key matching kid or alg found in signing keys"));var u=r._settings.client_id,c=r._settings.clockSkew;return o.Log.debug("UserInfoService._getClaimsFromJwt: Validaing JWT; using clock skew (in seconds) of: ",c),r._joseUtil.validateJwt(e.responseText,a,t,u,c,void 0,!0).then((function(){return o.Log.debug("UserInfoService._getClaimsFromJwt: JWT validation successful"),n.payload}))}))}))}catch(t){return o.Log.error("UserInfoService._getClaimsFromJwt: Error parsing JWT response",t.message),void reject(t)}},t.prototype._filterByAlg=function(t,e){var r=null;if(e.startsWith("RS"))r="RSA";else if(e.startsWith("PS"))r="PS";else{if(!e.startsWith("ES"))return o.Log.debug("UserInfoService._filterByAlg: alg not supported: ",e),[];r="EC"}return o.Log.debug("UserInfoService._filterByAlg: Looking for keys that match kty: ",r),t=t.filter((function(t){return t.kty===r})),o.Log.debug("UserInfoService._filterByAlg: Number of keys that match kty: ",r,t.length),t},t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AllowedSigningAlgs=e.b64tohex=e.hextob64u=e.crypto=e.X509=e.KeyUtil=e.jws=void 0;var n=r(27);e.jws=n.jws,e.KeyUtil=n.KEYUTIL,e.X509=n.X509,e.crypto=n.crypto,e.hextob64u=n.hextob64u,e.b64tohex=n.b64tohex,e.AllowedSigningAlgs=["RS256","RS384","RS512","PS256","PS384","PS512","ES256","ES384","ES512"]},function(t,e,r){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n={userAgent:!1},i={};if(void 0===o)var o={};o.lang={extend:function(t,e,r){if(!e||!t)throw new Error("YAHOO.lang.extend failed, please check that all dependencies are included.");var i=function(){};if(i.prototype=e.prototype,t.prototype=new i,t.prototype.constructor=t,t.superclass=e.prototype,e.prototype.constructor==Object.prototype.constructor&&(e.prototype.constructor=e),r){var o;for(o in r)t.prototype[o]=r[o];var s=function(){},a=["toString","valueOf"];try{/MSIE/.test(n.userAgent)&&(s=function(t,e){for(o=0;o>>2]>>>24-o%4*8&255;e[n+o>>>2]|=s<<24-(n+o)%4*8}else for(o=0;o>>2]=r[o>>>2];return this.sigBytes+=i,this},clamp:function(){var t=this.words,e=this.sigBytes;t[e>>>2]&=4294967295<<32-e%4*8,t.length=s.ceil(e/4)},clone:function(){var t=c.clone.call(this);return t.words=this.words.slice(0),t},random:function(t){for(var e=[],r=0;r>>2]>>>24-i%4*8&255;n.push((o>>>4).toString(16)),n.push((15&o).toString(16))}return n.join("")},parse:function(t){for(var e=t.length,r=[],n=0;n>>3]|=parseInt(t.substr(n,2),16)<<24-n%8*4;return new h.init(r,e/2)}},g=l.Latin1={stringify:function(t){for(var e=t.words,r=t.sigBytes,n=[],i=0;i>>2]>>>24-i%4*8&255;n.push(String.fromCharCode(o))}return n.join("")},parse:function(t){for(var e=t.length,r=[],n=0;n>>2]|=(255&t.charCodeAt(n))<<24-n%4*8;return new h.init(r,e)}},d=l.Utf8={stringify:function(t){try{return decodeURIComponent(escape(g.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:function(t){return g.parse(unescape(encodeURIComponent(t)))}},p=u.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new h.init,this._nDataBytes=0},_append:function(t){"string"==typeof t&&(t=d.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes},_process:function(t){var e=this._data,r=e.words,n=e.sigBytes,i=this.blockSize,o=n/(4*i),a=(o=t?s.ceil(o):s.max((0|o)-this._minBufferSize,0))*i,u=s.min(4*a,n);if(a){for(var c=0;c>>2]>>>24-i%4*8&255)<<16|(e[i+1>>>2]>>>24-(i+1)%4*8&255)<<8|e[i+2>>>2]>>>24-(i+2)%4*8&255,s=0;4>s&&i+.75*s>>6*(3-s)&63));if(e=n.charAt(64))for(;t.length%4;)t.push(e);return t.join("")},parse:function(t){var r=t.length,n=this._map;(i=n.charAt(64))&&-1!=(i=t.indexOf(i))&&(r=i);for(var i=[],o=0,s=0;s>>6-s%4*2;i[o>>>2]|=(a|u)<<24-o%4*8,o++}return e.create(i,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}}(),function(t){for(var e=y,r=(i=e.lib).WordArray,n=i.Hasher,i=e.algo,o=[],s=[],a=function(t){return 4294967296*(t-(0|t))|0},u=2,c=0;64>c;){var h;t:{h=u;for(var l=t.sqrt(h),f=2;f<=l;f++)if(!(h%f)){h=!1;break t}h=!0}h&&(8>c&&(o[c]=a(t.pow(u,.5))),s[c]=a(t.pow(u,1/3)),c++),u++}var g=[];i=i.SHA256=n.extend({_doReset:function(){this._hash=new r.init(o.slice(0))},_doProcessBlock:function(t,e){for(var r=this._hash.words,n=r[0],i=r[1],o=r[2],a=r[3],u=r[4],c=r[5],h=r[6],l=r[7],f=0;64>f;f++){if(16>f)g[f]=0|t[e+f];else{var d=g[f-15],p=g[f-2];g[f]=((d<<25|d>>>7)^(d<<14|d>>>18)^d>>>3)+g[f-7]+((p<<15|p>>>17)^(p<<13|p>>>19)^p>>>10)+g[f-16]}d=l+((u<<26|u>>>6)^(u<<21|u>>>11)^(u<<7|u>>>25))+(u&c^~u&h)+s[f]+g[f],p=((n<<30|n>>>2)^(n<<19|n>>>13)^(n<<10|n>>>22))+(n&i^n&o^i&o),l=h,h=c,c=u,u=a+d|0,a=o,o=i,i=n,n=d+p|0}r[0]=r[0]+n|0,r[1]=r[1]+i|0,r[2]=r[2]+o|0,r[3]=r[3]+a|0,r[4]=r[4]+u|0,r[5]=r[5]+c|0,r[6]=r[6]+h|0,r[7]=r[7]+l|0},_doFinalize:function(){var e=this._data,r=e.words,n=8*this._nDataBytes,i=8*e.sigBytes;return r[i>>>5]|=128<<24-i%32,r[14+(i+64>>>9<<4)]=t.floor(n/4294967296),r[15+(i+64>>>9<<4)]=n,e.sigBytes=4*r.length,this._process(),this._hash},clone:function(){var t=n.clone.call(this);return t._hash=this._hash.clone(),t}}),e.SHA256=n._createHelper(i),e.HmacSHA256=n._createHmacHelper(i)}(Math),function(){function t(){return n.create.apply(n,arguments)}for(var e=y,r=e.lib.Hasher,n=(o=e.x64).Word,i=o.WordArray,o=e.algo,s=[t(1116352408,3609767458),t(1899447441,602891725),t(3049323471,3964484399),t(3921009573,2173295548),t(961987163,4081628472),t(1508970993,3053834265),t(2453635748,2937671579),t(2870763221,3664609560),t(3624381080,2734883394),t(310598401,1164996542),t(607225278,1323610764),t(1426881987,3590304994),t(1925078388,4068182383),t(2162078206,991336113),t(2614888103,633803317),t(3248222580,3479774868),t(3835390401,2666613458),t(4022224774,944711139),t(264347078,2341262773),t(604807628,2007800933),t(770255983,1495990901),t(1249150122,1856431235),t(1555081692,3175218132),t(1996064986,2198950837),t(2554220882,3999719339),t(2821834349,766784016),t(2952996808,2566594879),t(3210313671,3203337956),t(3336571891,1034457026),t(3584528711,2466948901),t(113926993,3758326383),t(338241895,168717936),t(666307205,1188179964),t(773529912,1546045734),t(1294757372,1522805485),t(1396182291,2643833823),t(1695183700,2343527390),t(1986661051,1014477480),t(2177026350,1206759142),t(2456956037,344077627),t(2730485921,1290863460),t(2820302411,3158454273),t(3259730800,3505952657),t(3345764771,106217008),t(3516065817,3606008344),t(3600352804,1432725776),t(4094571909,1467031594),t(275423344,851169720),t(430227734,3100823752),t(506948616,1363258195),t(659060556,3750685593),t(883997877,3785050280),t(958139571,3318307427),t(1322822218,3812723403),t(1537002063,2003034995),t(1747873779,3602036899),t(1955562222,1575990012),t(2024104815,1125592928),t(2227730452,2716904306),t(2361852424,442776044),t(2428436474,593698344),t(2756734187,3733110249),t(3204031479,2999351573),t(3329325298,3815920427),t(3391569614,3928383900),t(3515267271,566280711),t(3940187606,3454069534),t(4118630271,4000239992),t(116418474,1914138554),t(174292421,2731055270),t(289380356,3203993006),t(460393269,320620315),t(685471733,587496836),t(852142971,1086792851),t(1017036298,365543100),t(1126000580,2618297676),t(1288033470,3409855158),t(1501505948,4234509866),t(1607167915,987167468),t(1816402316,1246189591)],a=[],u=0;80>u;u++)a[u]=t();o=o.SHA512=r.extend({_doReset:function(){this._hash=new i.init([new n.init(1779033703,4089235720),new n.init(3144134277,2227873595),new n.init(1013904242,4271175723),new n.init(2773480762,1595750129),new n.init(1359893119,2917565137),new n.init(2600822924,725511199),new n.init(528734635,4215389547),new n.init(1541459225,327033209)])},_doProcessBlock:function(t,e){for(var r=(l=this._hash.words)[0],n=l[1],i=l[2],o=l[3],u=l[4],c=l[5],h=l[6],l=l[7],f=r.high,g=r.low,d=n.high,p=n.low,v=i.high,y=i.low,m=o.high,_=o.low,S=u.high,w=u.low,b=c.high,F=c.low,E=h.high,x=h.low,A=l.high,k=l.low,P=f,C=g,T=d,R=p,I=v,D=y,L=m,N=_,U=S,O=w,B=b,M=F,j=E,H=x,K=A,V=k,q=0;80>q;q++){var J=a[q];if(16>q)var W=J.high=0|t[e+2*q],z=J.low=0|t[e+2*q+1];else{W=((z=(W=a[q-15]).high)>>>1|(Y=W.low)<<31)^(z>>>8|Y<<24)^z>>>7;var Y=(Y>>>1|z<<31)^(Y>>>8|z<<24)^(Y>>>7|z<<25),G=((z=(G=a[q-2]).high)>>>19|($=G.low)<<13)^(z<<3|$>>>29)^z>>>6,$=($>>>19|z<<13)^($<<3|z>>>29)^($>>>6|z<<26),X=(z=a[q-7]).high,Q=(Z=a[q-16]).high,Z=Z.low;W=(W=(W=W+X+((z=Y+z.low)>>>0>>0?1:0))+G+((z+=$)>>>0<$>>>0?1:0))+Q+((z+=Z)>>>0>>0?1:0),J.high=W,J.low=z}X=U&B^~U&j,Z=O&M^~O&H,J=P&T^P&I^T&I;var tt=C&R^C&D^R&D,et=(Y=(P>>>28|C<<4)^(P<<30|C>>>2)^(P<<25|C>>>7),G=(C>>>28|P<<4)^(C<<30|P>>>2)^(C<<25|P>>>7),($=s[q]).high),rt=$.low;Q=K+((U>>>14|O<<18)^(U>>>18|O<<14)^(U<<23|O>>>9))+(($=V+((O>>>14|U<<18)^(O>>>18|U<<14)^(O<<23|U>>>9)))>>>0>>0?1:0),K=j,V=H,j=B,H=M,B=U,M=O,U=L+(Q=(Q=(Q=Q+X+(($+=Z)>>>0>>0?1:0))+et+(($+=rt)>>>0>>0?1:0))+W+(($+=z)>>>0>>0?1:0))+((O=N+$|0)>>>0>>0?1:0)|0,L=I,N=D,I=T,D=R,T=P,R=C,P=Q+(J=Y+J+((z=G+tt)>>>0>>0?1:0))+((C=$+z|0)>>>0<$>>>0?1:0)|0}g=r.low=g+C,r.high=f+P+(g>>>0>>0?1:0),p=n.low=p+R,n.high=d+T+(p>>>0>>0?1:0),y=i.low=y+D,i.high=v+I+(y>>>0>>0?1:0),_=o.low=_+N,o.high=m+L+(_>>>0>>0?1:0),w=u.low=w+O,u.high=S+U+(w>>>0>>0?1:0),F=c.low=F+M,c.high=b+B+(F>>>0>>0?1:0),x=h.low=x+H,h.high=E+j+(x>>>0>>0?1:0),k=l.low=k+V,l.high=A+K+(k>>>0>>0?1:0)},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[30+(n+128>>>10<<5)]=Math.floor(r/4294967296),e[31+(n+128>>>10<<5)]=r,t.sigBytes=4*e.length,this._process(),this._hash.toX32()},clone:function(){var t=r.clone.call(this);return t._hash=this._hash.clone(),t},blockSize:32}),e.SHA512=r._createHelper(o),e.HmacSHA512=r._createHmacHelper(o)}(),function(){var t=y,e=(i=t.x64).Word,r=i.WordArray,n=(i=t.algo).SHA512,i=i.SHA384=n.extend({_doReset:function(){this._hash=new r.init([new e.init(3418070365,3238371032),new e.init(1654270250,914150663),new e.init(2438529370,812702999),new e.init(355462360,4144912697),new e.init(1731405415,4290775857),new e.init(2394180231,1750603025),new e.init(3675008525,1694076839),new e.init(1203062813,3204075428)])},_doFinalize:function(){var t=n._doFinalize.call(this);return t.sigBytes-=16,t}});t.SHA384=n._createHelper(i),t.HmacSHA384=n._createHmacHelper(i)}();var m,_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function S(t){var e,r,n="";for(e=0;e+3<=t.length;e+=3)r=parseInt(t.substring(e,e+3),16),n+=_.charAt(r>>6)+_.charAt(63&r);for(e+1==t.length?(r=parseInt(t.substring(e,e+1),16),n+=_.charAt(r<<2)):e+2==t.length&&(r=parseInt(t.substring(e,e+2),16),n+=_.charAt(r>>2)+_.charAt((3&r)<<4));(3&n.length)>0;)n+="=";return n}function w(t){var e,r,n,i="",o=0;for(e=0;e>2),r=3&n,o=1):1==o?(i+=P(r<<2|n>>4),r=15&n,o=2):2==o?(i+=P(r),i+=P(n>>2),r=3&n,o=3):(i+=P(r<<2|n>>4),i+=P(15&n),o=0));return 1==o&&(i+=P(r<<2)),i}function b(t){var e,r=w(t),n=new Array;for(e=0;2*e>15;--o>=0;){var u=32767&this[t],c=this[t++]>>15,h=a*u+c*s;i=((u=s*u+((32767&h)<<15)+r[n]+(1073741823&i))>>>30)+(h>>>15)+a*c+(i>>>30),r[n++]=1073741823&u}return i},m=30):"Netscape"!=n.appName?(F.prototype.am=function(t,e,r,n,i,o){for(;--o>=0;){var s=e*this[t++]+r[n]+i;i=Math.floor(s/67108864),r[n++]=67108863&s}return i},m=26):(F.prototype.am=function(t,e,r,n,i,o){for(var s=16383&e,a=e>>14;--o>=0;){var u=16383&this[t],c=this[t++]>>14,h=a*u+c*s;i=((u=s*u+((16383&h)<<14)+r[n]+i)>>28)+(h>>14)+a*c,r[n++]=268435455&u}return i},m=28),F.prototype.DB=m,F.prototype.DM=(1<>>16)&&(t=e,r+=16),0!=(e=t>>8)&&(t=e,r+=8),0!=(e=t>>4)&&(t=e,r+=4),0!=(e=t>>2)&&(t=e,r+=2),0!=(e=t>>1)&&(t=e,r+=1),r}function I(t){this.m=t}function D(t){this.m=t,this.mp=t.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<>=16,e+=16),0==(255&t)&&(t>>=8,e+=8),0==(15&t)&&(t>>=4,e+=4),0==(3&t)&&(t>>=2,e+=2),0==(1&t)&&++e,e}function M(t){for(var e=0;0!=t;)t&=t-1,++e;return e}function j(){}function H(t){return t}function K(t){this.r2=E(),this.q3=E(),F.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}I.prototype.convert=function(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t},I.prototype.revert=function(t){return t},I.prototype.reduce=function(t){t.divRemTo(this.m,null,t)},I.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},I.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},D.prototype.convert=function(t){var e=E();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(F.ZERO)>0&&this.m.subTo(e,e),e},D.prototype.revert=function(t){var e=E();return t.copyTo(e),this.reduce(e),e},D.prototype.reduce=function(t){for(;t.t<=this.mt2;)t[t.t++]=0;for(var e=0;e>15)*this.mpl&this.um)<<15)&t.DM;for(t[r=e+this.m.t]+=this.m.am(0,n,t,e,0,this.m.t);t[r]>=t.DV;)t[r]-=t.DV,t[++r]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)},D.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},D.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},F.prototype.copyTo=function(t){for(var e=this.t-1;e>=0;--e)t[e]=this[e];t.t=this.t,t.s=this.s},F.prototype.fromInt=function(t){this.t=1,this.s=t<0?-1:0,t>0?this[0]=t:t<-1?this[0]=t+this.DV:this.t=0},F.prototype.fromString=function(t,e){var r;if(16==e)r=4;else if(8==e)r=3;else if(256==e)r=8;else if(2==e)r=1;else if(32==e)r=5;else{if(4!=e)return void this.fromRadix(t,e);r=2}this.t=0,this.s=0;for(var n=t.length,i=!1,o=0;--n>=0;){var s=8==r?255&t[n]:C(t,n);s<0?"-"==t.charAt(n)&&(i=!0):(i=!1,0==o?this[this.t++]=s:o+r>this.DB?(this[this.t-1]|=(s&(1<>this.DB-o):this[this.t-1]|=s<=this.DB&&(o-=this.DB))}8==r&&0!=(128&t[0])&&(this.s=-1,o>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==t;)--this.t},F.prototype.dlShiftTo=function(t,e){var r;for(r=this.t-1;r>=0;--r)e[r+t]=this[r];for(r=t-1;r>=0;--r)e[r]=0;e.t=this.t+t,e.s=this.s},F.prototype.drShiftTo=function(t,e){for(var r=t;r=0;--r)e[r+s+1]=this[r]>>i|a,a=(this[r]&o)<=0;--r)e[r]=0;e[s]=a,e.t=this.t+s+1,e.s=this.s,e.clamp()},F.prototype.rShiftTo=function(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t)e.t=0;else{var n=t%this.DB,i=this.DB-n,o=(1<>n;for(var s=r+1;s>n;n>0&&(e[this.t-r-1]|=(this.s&o)<>=this.DB;if(t.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e[r++]=this.DV+n:n>0&&(e[r++]=n),e.t=r,e.clamp()},F.prototype.multiplyTo=function(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e[i]=0;for(i=0;i=0;)t[r]=0;for(r=0;r=e.DV&&(t[r+e.t]-=e.DV,t[r+e.t+1]=1)}t.t>0&&(t[t.t-1]+=e.am(r,e[r],t,2*r,0,1)),t.s=0,t.clamp()},F.prototype.divRemTo=function(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t0?(n.lShiftTo(u,o),i.lShiftTo(u,r)):(n.copyTo(o),i.copyTo(r));var c=o.t,h=o[c-1];if(0!=h){var l=h*(1<1?o[c-2]>>this.F2:0),f=this.FV/l,g=(1<=0&&(r[r.t++]=1,r.subTo(y,r)),F.ONE.dlShiftTo(c,y),y.subTo(o,o);o.t=0;){var m=r[--p]==h?this.DM:Math.floor(r[p]*f+(r[p-1]+d)*g);if((r[p]+=o.am(0,m,r,v,0,c))0&&r.rShiftTo(u,r),s<0&&F.ZERO.subTo(r,r)}}},F.prototype.invDigit=function(){if(this.t<1)return 0;var t=this[0];if(0==(1&t))return 0;var e=3&t;return(e=(e=(e=(e=e*(2-(15&t)*e)&15)*(2-(255&t)*e)&255)*(2-((65535&t)*e&65535))&65535)*(2-t*e%this.DV)%this.DV)>0?this.DV-e:-e},F.prototype.isEven=function(){return 0==(this.t>0?1&this[0]:this.s)},F.prototype.exp=function(t,e){if(t>4294967295||t<1)return F.ONE;var r=E(),n=E(),i=e.convert(this),o=R(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<0)e.mulTo(n,i,r);else{var s=r;r=n,n=s}return e.revert(r)},F.prototype.toString=function(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(16==t)e=4;else if(8==t)e=3;else if(2==t)e=1;else if(32==t)e=5;else{if(4!=t)return this.toRadix(t);e=2}var r,n=(1<0)for(a>a)>0&&(i=!0,o=P(r));s>=0;)a>(a+=this.DB-e)):(r=this[s]>>(a-=e)&n,a<=0&&(a+=this.DB,--s)),r>0&&(i=!0),i&&(o+=P(r));return i?o:"0"},F.prototype.negate=function(){var t=E();return F.ZERO.subTo(this,t),t},F.prototype.abs=function(){return this.s<0?this.negate():this},F.prototype.compareTo=function(t){var e=this.s-t.s;if(0!=e)return e;var r=this.t;if(0!=(e=r-t.t))return this.s<0?-e:e;for(;--r>=0;)if(0!=(e=this[r]-t[r]))return e;return 0},F.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+R(this[this.t-1]^this.s&this.DM)},F.prototype.mod=function(t){var e=E();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(F.ZERO)>0&&t.subTo(e,e),e},F.prototype.modPowInt=function(t,e){var r;return r=t<256||e.isEven()?new I(e):new D(e),this.exp(t,r)},F.ZERO=T(0),F.ONE=T(1),j.prototype.convert=H,j.prototype.revert=H,j.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r)},j.prototype.sqrTo=function(t,e){t.squareTo(e)},K.prototype.convert=function(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=E();return t.copyTo(e),this.reduce(e),e},K.prototype.revert=function(t){return t},K.prototype.reduce=function(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);t.compareTo(this.m)>=0;)t.subTo(this.m,t)},K.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},K.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)};var V,q,J,W=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],z=(1<<26)/W[W.length-1];function Y(){this.i=0,this.j=0,this.S=new Array}function G(){!function(t){q[J++]^=255&t,q[J++]^=t>>8&255,q[J++]^=t>>16&255,q[J++]^=t>>24&255,J>=256&&(J-=256)}((new Date).getTime())}if(F.prototype.chunkSize=function(t){return Math.floor(Math.LN2*this.DB/Math.log(t))},F.prototype.toRadix=function(t){if(null==t&&(t=10),0==this.signum()||t<2||t>36)return"0";var e=this.chunkSize(t),r=Math.pow(t,e),n=T(r),i=E(),o=E(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s},F.prototype.fromRadix=function(t,e){this.fromInt(0),null==e&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,s=0,a=0;a=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0))}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(s,0)),i&&F.ZERO.subTo(this,this)},F.prototype.fromNumber=function(t,e,r){if("number"==typeof e)if(t<2)this.fromInt(1);else for(this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(F.ONE.shiftLeft(t-1),N,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(F.ONE.shiftLeft(t-1),this);else{var n=new Array,i=7&t;n.length=1+(t>>3),e.nextBytes(n),i>0?n[0]&=(1<>=this.DB;if(t.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e[r++]=n:n<-1&&(e[r++]=this.DV+n),e.t=r,e.clamp()},F.prototype.dMultiply=function(t){this[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()},F.prototype.dAddOffset=function(t,e){if(0!=t){for(;this.t<=e;)this[this.t++]=0;for(this[e]+=t;this[e]>=this.DV;)this[e]-=this.DV,++e>=this.t&&(this[this.t++]=0),++this[e]}},F.prototype.multiplyLowerTo=function(t,e,r){var n,i=Math.min(this.t+t.t,e);for(r.s=0,r.t=i;i>0;)r[--i]=0;for(n=r.t-this.t;i=0;)r[n]=0;for(n=Math.max(e-this.t,0);n0)if(0==e)r=this[0]%t;else for(var n=this.t-1;n>=0;--n)r=(e*r+this[n])%t;return r},F.prototype.millerRabin=function(t){var e=this.subtract(F.ONE),r=e.getLowestSetBit();if(r<=0)return!1;var n=e.shiftRight(r);(t=t+1>>1)>W.length&&(t=W.length);for(var i=E(),o=0;o>24},F.prototype.shortValue=function(){return 0==this.t?this.s:this[0]<<16>>16},F.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this[0]<=0?0:1},F.prototype.toByteArray=function(){var t=this.t,e=new Array;e[0]=this.s;var r,n=this.DB-t*this.DB%8,i=0;if(t-- >0)for(n>n)!=(this.s&this.DM)>>n&&(e[i++]=r|this.s<=0;)n<8?(r=(this[t]&(1<>(n+=this.DB-8)):(r=this[t]>>(n-=8)&255,n<=0&&(n+=this.DB,--t)),0!=(128&r)&&(r|=-256),0==i&&(128&this.s)!=(128&r)&&++i,(i>0||r!=this.s)&&(e[i++]=r);return e},F.prototype.equals=function(t){return 0==this.compareTo(t)},F.prototype.min=function(t){return this.compareTo(t)<0?this:t},F.prototype.max=function(t){return this.compareTo(t)>0?this:t},F.prototype.and=function(t){var e=E();return this.bitwiseTo(t,L,e),e},F.prototype.or=function(t){var e=E();return this.bitwiseTo(t,N,e),e},F.prototype.xor=function(t){var e=E();return this.bitwiseTo(t,U,e),e},F.prototype.andNot=function(t){var e=E();return this.bitwiseTo(t,O,e),e},F.prototype.not=function(){for(var t=E(),e=0;e=this.t?0!=this.s:0!=(this[e]&1<1){var h=E();for(n.sqrTo(s[1],h);a<=c;)s[a]=E(),n.mulTo(h,s[a-2],s[a]),a+=2}var l,f,g=t.t-1,d=!0,p=E();for(i=R(t[g])-1;g>=0;){for(i>=u?l=t[g]>>i-u&c:(l=(t[g]&(1<0&&(l|=t[g-1]>>this.DB+i-u)),a=r;0==(1&l);)l>>=1,--a;if((i-=a)<0&&(i+=this.DB,--g),d)s[l].copyTo(o),d=!1;else{for(;a>1;)n.sqrTo(o,p),n.sqrTo(p,o),a-=2;a>0?n.sqrTo(o,p):(f=o,o=p,p=f),n.mulTo(p,s[l],o)}for(;g>=0&&0==(t[g]&1<=0?(r.subTo(n,r),e&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),e&&s.subTo(i,s),a.subTo(o,a))}return 0!=n.compareTo(F.ONE)?F.ZERO:a.compareTo(t)>=0?a.subtract(t):a.signum()<0?(a.addTo(t,a),a.signum()<0?a.add(t):a):a},F.prototype.pow=function(t){return this.exp(t,new j)},F.prototype.gcd=function(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return e;for(i0&&(e.rShiftTo(o,e),r.rShiftTo(o,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r},F.prototype.isProbablePrime=function(t){var e,r=this.abs();if(1==r.t&&r[0]<=W[W.length-1]){for(e=0;e>>8,q[J++]=255&$;J=0,G()}function tt(){if(null==V){for(G(),(V=new Y).init(q),J=0;J>24,(16711680&i)>>16,(65280&i)>>8,255&i]))),i+=1;return n}function it(){this.n=null,this.e=0,this.d=null,this.p=null,this.q=null,this.dmp1=null,this.dmq1=null,this.coeff=null}function ot(t,e){this.x=e,this.q=t}function st(t,e,r,n){this.curve=t,this.x=e,this.y=r,this.z=null==n?F.ONE:n,this.zinv=null}function at(t,e,r){this.q=t,this.a=this.fromBigInteger(e),this.b=this.fromBigInteger(r),this.infinity=new st(this,null,null)}et.prototype.nextBytes=function(t){var e;for(e=0;e0&&e.length>0))throw"Invalid RSA public key";this.n=rt(t,16),this.e=parseInt(e,16)}},it.prototype.encrypt=function(t){var e=function(t,e){if(e=0&&e>0;){var i=t.charCodeAt(n--);i<128?r[--e]=i:i>127&&i<2048?(r[--e]=63&i|128,r[--e]=i>>6|192):(r[--e]=63&i|128,r[--e]=i>>6&63|128,r[--e]=i>>12|224)}r[--e]=0;for(var o=new et,s=new Array;e>2;){for(s[0]=0;0==s[0];)o.nextBytes(s);r[--e]=s[0]}return r[--e]=2,r[--e]=0,new F(r)}(t,this.n.bitLength()+7>>3);if(null==e)return null;var r=this.doPublic(e);if(null==r)return null;var n=r.toString(16);return 0==(1&n.length)?n:"0"+n},it.prototype.encryptOAEP=function(t,e,r){var n=function(t,e,r,n){var i=ct.crypto.MessageDigest,o=ct.crypto.Util,s=null;if(r||(r="sha1"),"string"==typeof r&&(s=i.getCanonicalAlgName(r),n=i.getHashLength(s),r=function(t){return Ft(o.hashHex(Et(t),s))}),t.length+2*n+2>e)throw"Message too long for RSA";var a,u="";for(a=0;a>3,e,r);if(null==n)return null;var i=this.doPublic(n);if(null==i)return null;var o=i.toString(16);return 0==(1&o.length)?o:"0"+o},it.prototype.type="RSA",ot.prototype.equals=function(t){return t==this||this.q.equals(t.q)&&this.x.equals(t.x)},ot.prototype.toBigInteger=function(){return this.x},ot.prototype.negate=function(){return new ot(this.q,this.x.negate().mod(this.q))},ot.prototype.add=function(t){return new ot(this.q,this.x.add(t.toBigInteger()).mod(this.q))},ot.prototype.subtract=function(t){return new ot(this.q,this.x.subtract(t.toBigInteger()).mod(this.q))},ot.prototype.multiply=function(t){return new ot(this.q,this.x.multiply(t.toBigInteger()).mod(this.q))},ot.prototype.square=function(){return new ot(this.q,this.x.square().mod(this.q))},ot.prototype.divide=function(t){return new ot(this.q,this.x.multiply(t.toBigInteger().modInverse(this.q)).mod(this.q))},st.prototype.getX=function(){return null==this.zinv&&(this.zinv=this.z.modInverse(this.curve.q)),this.curve.fromBigInteger(this.x.toBigInteger().multiply(this.zinv).mod(this.curve.q))},st.prototype.getY=function(){return null==this.zinv&&(this.zinv=this.z.modInverse(this.curve.q)),this.curve.fromBigInteger(this.y.toBigInteger().multiply(this.zinv).mod(this.curve.q))},st.prototype.equals=function(t){return t==this||(this.isInfinity()?t.isInfinity():t.isInfinity()?this.isInfinity():!!t.y.toBigInteger().multiply(this.z).subtract(this.y.toBigInteger().multiply(t.z)).mod(this.curve.q).equals(F.ZERO)&&t.x.toBigInteger().multiply(this.z).subtract(this.x.toBigInteger().multiply(t.z)).mod(this.curve.q).equals(F.ZERO))},st.prototype.isInfinity=function(){return null==this.x&&null==this.y||this.z.equals(F.ZERO)&&!this.y.toBigInteger().equals(F.ZERO)},st.prototype.negate=function(){return new st(this.curve,this.x,this.y.negate(),this.z)},st.prototype.add=function(t){if(this.isInfinity())return t;if(t.isInfinity())return this;var e=t.y.toBigInteger().multiply(this.z).subtract(this.y.toBigInteger().multiply(t.z)).mod(this.curve.q),r=t.x.toBigInteger().multiply(this.z).subtract(this.x.toBigInteger().multiply(t.z)).mod(this.curve.q);if(F.ZERO.equals(r))return F.ZERO.equals(e)?this.twice():this.curve.getInfinity();var n=new F("3"),i=this.x.toBigInteger(),o=this.y.toBigInteger(),s=(t.x.toBigInteger(),t.y.toBigInteger(),r.square()),a=s.multiply(r),u=i.multiply(s),c=e.square().multiply(this.z),h=c.subtract(u.shiftLeft(1)).multiply(t.z).subtract(a).multiply(r).mod(this.curve.q),l=u.multiply(n).multiply(e).subtract(o.multiply(a)).subtract(c.multiply(e)).multiply(t.z).add(e.multiply(a)).mod(this.curve.q),f=a.multiply(this.z).multiply(t.z).mod(this.curve.q);return new st(this.curve,this.curve.fromBigInteger(h),this.curve.fromBigInteger(l),f)},st.prototype.twice=function(){if(this.isInfinity())return this;if(0==this.y.toBigInteger().signum())return this.curve.getInfinity();var t=new F("3"),e=this.x.toBigInteger(),r=this.y.toBigInteger(),n=r.multiply(this.z),i=n.multiply(r).mod(this.curve.q),o=this.curve.a.toBigInteger(),s=e.square().multiply(t);F.ZERO.equals(o)||(s=s.add(this.z.square().multiply(o)));var a=(s=s.mod(this.curve.q)).square().subtract(e.shiftLeft(3).multiply(i)).shiftLeft(1).multiply(n).mod(this.curve.q),u=s.multiply(t).multiply(e).subtract(i.shiftLeft(1)).shiftLeft(2).multiply(i).subtract(s.square().multiply(s)).mod(this.curve.q),c=n.square().multiply(n).shiftLeft(3).mod(this.curve.q);return new st(this.curve,this.curve.fromBigInteger(a),this.curve.fromBigInteger(u),c)},st.prototype.multiply=function(t){if(this.isInfinity())return this;if(0==t.signum())return this.curve.getInfinity();var e,r=t,n=r.multiply(new F("3")),i=this.negate(),o=this,s=this.curve.q.subtract(t),a=s.multiply(new F("3")),u=new st(this.curve,this.x,this.y),c=u.negate();for(e=n.bitLength()-2;e>0;--e){o=o.twice();var h=n.testBit(e);h!=r.testBit(e)&&(o=o.add(h?this:i))}for(e=a.bitLength()-2;e>0;--e){u=u.twice();var l=a.testBit(e);l!=s.testBit(e)&&(u=u.add(l?u:c))}return o},st.prototype.multiplyTwo=function(t,e,r){var n;n=t.bitLength()>r.bitLength()?t.bitLength()-1:r.bitLength()-1;for(var i=this.curve.getInfinity(),o=this.add(e);n>=0;)i=i.twice(),t.testBit(n)?i=r.testBit(n)?i.add(o):i.add(this):r.testBit(n)&&(i=i.add(e)),--n;return i},at.prototype.getQ=function(){return this.q},at.prototype.getA=function(){return this.a},at.prototype.getB=function(){return this.b},at.prototype.equals=function(t){return t==this||this.q.equals(t.q)&&this.a.equals(t.a)&&this.b.equals(t.b)},at.prototype.getInfinity=function(){return this.infinity},at.prototype.fromBigInteger=function(t){return new ot(this.q,t)},at.prototype.decodePointHex=function(t){switch(parseInt(t.substr(0,2),16)){case 0:return this.infinity;case 2:case 3:default:return null;case 4:case 6:case 7:var e=(t.length-2)/2,r=t.substr(2,e),n=t.substr(e+2,e);return new st(this,this.fromBigInteger(new F(r,16)),this.fromBigInteger(new F(n,16)))}},ot.prototype.getByteLength=function(){return Math.floor((this.toBigInteger().bitLength()+7)/8)},st.prototype.getEncoded=function(t){var e=function(t,e){var r=t.toByteArrayUnsigned();if(er.length;)r.unshift(0);return r},r=this.getX().toBigInteger(),n=this.getY().toBigInteger(),i=e(r,32);return t?n.isEven()?i.unshift(2):i.unshift(3):(i.unshift(4),i=i.concat(e(n,32))),i},st.decodeFrom=function(t,e){e[0];var r=e.length-1,n=e.slice(1,1+r/2),i=e.slice(1+r/2,1+r);n.unshift(0),i.unshift(0);var o=new F(n),s=new F(i);return new st(t,t.fromBigInteger(o),t.fromBigInteger(s))},st.decodeFromHex=function(t,e){e.substr(0,2);var r=e.length-2,n=e.substr(2,r/2),i=e.substr(2+r/2,r/2),o=new F(n,16),s=new F(i,16);return new st(t,t.fromBigInteger(o),t.fromBigInteger(s))},st.prototype.add2D=function(t){if(this.isInfinity())return t;if(t.isInfinity())return this;if(this.x.equals(t.x))return this.y.equals(t.y)?this.twice():this.curve.getInfinity();var e=t.x.subtract(this.x),r=t.y.subtract(this.y).divide(e),n=r.square().subtract(this.x).subtract(t.x),i=r.multiply(this.x.subtract(n)).subtract(this.y);return new st(this.curve,n,i)},st.prototype.twice2D=function(){if(this.isInfinity())return this;if(0==this.y.toBigInteger().signum())return this.curve.getInfinity();var t=this.curve.fromBigInteger(F.valueOf(2)),e=this.curve.fromBigInteger(F.valueOf(3)),r=this.x.square().multiply(e).add(this.curve.a).divide(this.y.multiply(t)),n=r.square().subtract(this.x.multiply(t)),i=r.multiply(this.x.subtract(n)).subtract(this.y);return new st(this.curve,n,i)},st.prototype.multiply2D=function(t){if(this.isInfinity())return this;if(0==t.signum())return this.curve.getInfinity();var e,r=t,n=r.multiply(new F("3")),i=this.negate(),o=this;for(e=n.bitLength()-2;e>0;--e){o=o.twice();var s=n.testBit(e);s!=r.testBit(e)&&(o=o.add2D(s?this:i))}return o},st.prototype.isOnCurve=function(){var t=this.getX().toBigInteger(),e=this.getY().toBigInteger(),r=this.curve.getA().toBigInteger(),n=this.curve.getB().toBigInteger(),i=this.curve.getQ(),o=e.multiply(e).mod(i),s=t.multiply(t).multiply(t).add(r.multiply(t)).add(n).mod(i);return o.equals(s)},st.prototype.toString=function(){return"("+this.getX().toBigInteger().toString()+","+this.getY().toBigInteger().toString()+")"},st.prototype.validate=function(){var t=this.curve.getQ();if(this.isInfinity())throw new Error("Point is at infinity.");var e=this.getX().toBigInteger(),r=this.getY().toBigInteger();if(e.compareTo(F.ONE)<0||e.compareTo(t.subtract(F.ONE))>0)throw new Error("x coordinate out of bounds");if(r.compareTo(F.ONE)<0||r.compareTo(t.subtract(F.ONE))>0)throw new Error("y coordinate out of bounds");if(!this.isOnCurve())throw new Error("Point is not on the curve.");if(this.multiply(t).isInfinity())throw new Error("Point is not a scalar multiple of G.");return!0};var ut=function(){var t=new RegExp('(?:false|true|null|[\\{\\}\\[\\]]|(?:-?\\b(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?(?:[eE][+-]?[0-9]+)?\\b)|(?:"(?:[^\\0-\\x08\\x0a-\\x1f"\\\\]|\\\\(?:["/\\\\bfnrt]|u[0-9A-Fa-f]{4}))*"))',"g"),e=new RegExp("\\\\(?:([^u])|u(.{4}))","g"),n={'"':'"',"/":"/","\\":"\\",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"};function i(t,e,r){return e?n[e]:String.fromCharCode(parseInt(r,16))}var o=new String(""),s=Object.hasOwnProperty;return function(n,a){var u,c,h=n.match(t),l=h[0],f=!1;"{"===l?u={}:"["===l?u=[]:(u=[],f=!0);for(var g=[u],d=1-f,p=h.length;d=0;)delete i[o[h]]}return a.call(e,n,i)}({"":u},"")),u}}();void 0!==ct&&ct||(e.KJUR=ct={}),void 0!==ct.asn1&&ct.asn1||(ct.asn1={}),ct.asn1.ASN1Util=new function(){this.integerToByteHex=function(t){var e=t.toString(16);return e.length%2==1&&(e="0"+e),e},this.bigIntToMinTwosComplementsHex=function(t){var e=t.toString(16);if("-"!=e.substr(0,1))e.length%2==1?e="0"+e:e.match(/^[0-7]/)||(e="00"+e);else{var r=e.substr(1).length;r%2==1?r+=1:e.match(/^[0-7]/)||(r+=2);for(var n="",i=0;i15)throw"ASN.1 length too long to represent by 8x: n = "+t.toString(16);return(128+r).toString(16)+e},this.getEncodedHex=function(){return(null==this.hTLV||this.isModified)&&(this.hV=this.getFreshValueHex(),this.hL=this.getLengthHexFromValue(),this.hTLV=this.hT+this.hL+this.hV,this.isModified=!1),this.hTLV},this.getValueHex=function(){return this.getEncodedHex(),this.hV},this.getFreshValueHex=function(){return""},this.setByParam=function(t){this.params=t},null!=t&&null!=t.tlv&&(this.hTLV=t.tlv,this.isModified=!1)},ct.asn1.DERAbstractString=function(t){ct.asn1.DERAbstractString.superclass.constructor.call(this),this.getString=function(){return this.s},this.setString=function(t){this.hTLV=null,this.isModified=!0,this.s=t,this.hV=wt(this.s).toLowerCase()},this.setStringHex=function(t){this.hTLV=null,this.isModified=!0,this.s=null,this.hV=t},this.getFreshValueHex=function(){return this.hV},void 0!==t&&("string"==typeof t?this.setString(t):void 0!==t.str?this.setString(t.str):void 0!==t.hex&&this.setStringHex(t.hex))},o.lang.extend(ct.asn1.DERAbstractString,ct.asn1.ASN1Object),ct.asn1.DERAbstractTime=function(t){ct.asn1.DERAbstractTime.superclass.constructor.call(this),this.localDateToUTC=function(t){var e=t.getTime()+6e4*t.getTimezoneOffset();return new Date(e)},this.formatDate=function(t,e,r){var n=this.zeroPadding,i=this.localDateToUTC(t),o=String(i.getFullYear());"utc"==e&&(o=o.substr(2,2));var s=o+n(String(i.getMonth()+1),2)+n(String(i.getDate()),2)+n(String(i.getHours()),2)+n(String(i.getMinutes()),2)+n(String(i.getSeconds()),2);if(!0===r){var a=i.getMilliseconds();if(0!=a){var u=n(String(a),3);s=s+"."+(u=u.replace(/[0]+$/,""))}}return s+"Z"},this.zeroPadding=function(t,e){return t.length>=e?t:new Array(e-t.length+1).join("0")+t},this.getString=function(){return this.s},this.setString=function(t){this.hTLV=null,this.isModified=!0,this.s=t,this.hV=vt(t)},this.setByDateValue=function(t,e,r,n,i,o){var s=new Date(Date.UTC(t,e-1,r,n,i,o,0));this.setByDate(s)},this.getFreshValueHex=function(){return this.hV}},o.lang.extend(ct.asn1.DERAbstractTime,ct.asn1.ASN1Object),ct.asn1.DERAbstractStructured=function(t){ct.asn1.DERAbstractString.superclass.constructor.call(this),this.setByASN1ObjectArray=function(t){this.hTLV=null,this.isModified=!0,this.asn1Array=t},this.appendASN1Object=function(t){this.hTLV=null,this.isModified=!0,this.asn1Array.push(t)},this.asn1Array=new Array,void 0!==t&&void 0!==t.array&&(this.asn1Array=t.array)},o.lang.extend(ct.asn1.DERAbstractStructured,ct.asn1.ASN1Object),ct.asn1.DERBoolean=function(t){ct.asn1.DERBoolean.superclass.constructor.call(this),this.hT="01",this.hTLV=0==t?"010100":"0101ff"},o.lang.extend(ct.asn1.DERBoolean,ct.asn1.ASN1Object),ct.asn1.DERInteger=function(t){ct.asn1.DERInteger.superclass.constructor.call(this),this.hT="02",this.setByBigInteger=function(t){this.hTLV=null,this.isModified=!0,this.hV=ct.asn1.ASN1Util.bigIntToMinTwosComplementsHex(t)},this.setByInteger=function(t){var e=new F(String(t),10);this.setByBigInteger(e)},this.setValueHex=function(t){this.hV=t},this.getFreshValueHex=function(){return this.hV},void 0!==t&&(void 0!==t.bigint?this.setByBigInteger(t.bigint):void 0!==t.int?this.setByInteger(t.int):"number"==typeof t?this.setByInteger(t):void 0!==t.hex&&this.setValueHex(t.hex))},o.lang.extend(ct.asn1.DERInteger,ct.asn1.ASN1Object),ct.asn1.DERBitString=function(t){if(void 0!==t&&void 0!==t.obj){var e=ct.asn1.ASN1Util.newObject(t.obj);t.hex="00"+e.getEncodedHex()}ct.asn1.DERBitString.superclass.constructor.call(this),this.hT="03",this.setHexValueIncludingUnusedBits=function(t){this.hTLV=null,this.isModified=!0,this.hV=t},this.setUnusedBitsAndHexValue=function(t,e){if(t<0||7i.length&&(i=n[r]);return(t=t.replace(i,"::")).slice(1,-1)}function Ut(t){var e="malformed hex value";if(!t.match(/^([0-9A-Fa-f][0-9A-Fa-f]){1,}$/))throw e;if(8!=t.length)return 32==t.length?Nt(t):t;try{return parseInt(t.substr(0,2),16)+"."+parseInt(t.substr(2,2),16)+"."+parseInt(t.substr(4,2),16)+"."+parseInt(t.substr(6,2),16)}catch(t){throw e}}function Ot(t){for(var e=encodeURIComponent(t),r="",n=0;n"7"?"00"+t:t}ft.getLblen=function(t,e){if("8"!=t.substr(e+2,1))return 1;var r=parseInt(t.substr(e+3,1));return 0==r?-1:0=n)break}return s},ft.getNthChildIdx=function(t,e,r){return ft.getChildIdx(t,e)[r]},ft.getIdxbyList=function(t,e,r,n){var i,o,s=ft;return 0==r.length?void 0!==n&&t.substr(e,2)!==n?-1:e:(i=r.shift())>=(o=s.getChildIdx(t,e)).length?-1:s.getIdxbyList(t,o[i],r,n)},ft.getIdxbyListEx=function(t,e,r,n){var i,o,s=ft;if(0==r.length)return void 0!==n&&t.substr(e,2)!==n?-1:e;i=r.shift(),o=s.getChildIdx(t,e);for(var a=0,u=0;u=t.length?null:i.getTLV(t,o)},ft.getTLVbyListEx=function(t,e,r,n){var i=ft,o=i.getIdxbyListEx(t,e,r,n);return-1==o?null:i.getTLV(t,o)},ft.getVbyList=function(t,e,r,n,i){var o,s,a=ft;return-1==(o=a.getIdxbyList(t,e,r,n))||o>=t.length?null:(s=a.getV(t,o),!0===i&&(s=s.substr(2)),s)},ft.getVbyListEx=function(t,e,r,n,i){var o,s,a=ft;return-1==(o=a.getIdxbyListEx(t,e,r,n))?null:(s=a.getV(t,o),"03"==t.substr(o,2)&&!1!==i&&(s=s.substr(2)),s)},ft.getInt=function(t,e,r){null==r&&(r=-1);try{var n=t.substr(e,2);if("02"!=n&&"03"!=n)return r;var i=ft.getV(t,e);return"02"==n?parseInt(i,16):function(t){try{var e=t.substr(0,2);if("00"==e)return parseInt(t.substr(2),16);var r=parseInt(e,16),n=t.substr(2),i=parseInt(n,16).toString(2);return"0"==i&&(i="00000000"),i=i.slice(0,0-r),parseInt(i,2)}catch(t){return-1}}(i)}catch(t){return r}},ft.getOID=function(t,e,r){null==r&&(r=null);try{return"06"!=t.substr(e,2)?r:function(t){if(!Bt(t))return null;try{var e=[],r=t.substr(0,2),n=parseInt(r,16);e[0]=new String(Math.floor(n/40)),e[1]=new String(n%40);for(var i=t.substr(2),o=[],s=0;s0&&(c=c+"."+a.join(".")),c}catch(t){return null}}(ft.getV(t,e))}catch(t){return r}},ft.getOIDName=function(t,e,r){null==r&&(r=null);try{var n=ft.getOID(t,e,r);if(n==r)return r;var i=ct.asn1.x509.OID.oid2name(n);return""==i?n:i}catch(t){return r}},ft.getString=function(t,e,r){null==r&&(r=null);try{return Ft(ft.getV(t,e))}catch(t){return r}},ft.hextooidstr=function(t){var e=function(t,e){return t.length>=e?t:new Array(e-t.length+1).join("0")+t},r=[],n=t.substr(0,2),i=parseInt(n,16);r[0]=new String(Math.floor(i/40)),r[1]=new String(i%40);for(var o=t.substr(2),s=[],a=0;a0&&(h=h+"."+u.join(".")),h},ft.dump=function(t,e,r,n){var i=ft,o=i.getV,s=i.dump,a=i.getChildIdx,u=t;t instanceof ct.asn1.ASN1Object&&(u=t.getEncodedHex());var c=function(t,e){return t.length<=2*e?t:t.substr(0,e)+"..(total "+t.length/2+"bytes).."+t.substr(t.length-e,e)};void 0===e&&(e={ommit_long_octet:32}),void 0===r&&(r=0),void 0===n&&(n="");var h,l=e.ommit_long_octet;if("01"==(h=u.substr(r,2)))return"00"==(f=o(u,r))?n+"BOOLEAN FALSE\n":n+"BOOLEAN TRUE\n";if("02"==h)return n+"INTEGER "+c(f=o(u,r),l)+"\n";if("03"==h){var f=o(u,r);return i.isASN1HEX(f.substr(2))?(w=n+"BITSTRING, encapsulates\n")+s(f.substr(2),e,0,n+" "):n+"BITSTRING "+c(f,l)+"\n"}if("04"==h)return f=o(u,r),i.isASN1HEX(f)?(w=n+"OCTETSTRING, encapsulates\n")+s(f,e,0,n+" "):n+"OCTETSTRING "+c(f,l)+"\n";if("05"==h)return n+"NULL\n";if("06"==h){var g=o(u,r),d=ct.asn1.ASN1Util.oidHexToInt(g),p=ct.asn1.x509.OID.oid2name(d),v=d.replace(/\./g," ");return""!=p?n+"ObjectIdentifier "+p+" ("+v+")\n":n+"ObjectIdentifier ("+v+")\n"}if("0a"==h)return n+"ENUMERATED "+parseInt(o(u,r))+"\n";if("0c"==h)return n+"UTF8String '"+bt(o(u,r))+"'\n";if("13"==h)return n+"PrintableString '"+bt(o(u,r))+"'\n";if("14"==h)return n+"TeletexString '"+bt(o(u,r))+"'\n";if("16"==h)return n+"IA5String '"+bt(o(u,r))+"'\n";if("17"==h)return n+"UTCTime "+bt(o(u,r))+"\n";if("18"==h)return n+"GeneralizedTime "+bt(o(u,r))+"\n";if("1a"==h)return n+"VisualString '"+bt(o(u,r))+"'\n";if("1e"==h)return n+"BMPString '"+bt(o(u,r))+"'\n";if("30"==h){if("3000"==u.substr(r,4))return n+"SEQUENCE {}\n";w=n+"SEQUENCE\n";var y=e;if((2==(S=a(u,r)).length||3==S.length)&&"06"==u.substr(S[0],2)&&"04"==u.substr(S[S.length-1],2)){p=i.oidname(o(u,S[0]));var m=JSON.parse(JSON.stringify(e));m.x509ExtName=p,y=m}for(var _=0;_31)&&128==(192&r)&&(31&r)==n}catch(t){return!1}},ft.isASN1HEX=function(t){var e=ft;if(t.length%2==1)return!1;var r=e.getVblen(t,0),n=t.substr(0,2),i=e.getL(t,0);return t.length-n.length-i.length==2*r},ft.checkStrictDER=function(t,e,r,n,i){var o=ft;if(void 0===r){if("string"!=typeof t)throw new Error("not hex string");if(t=t.toLowerCase(),!ct.lang.String.isHex(t))throw new Error("not hex string");r=t.length,i=(n=t.length/2)<128?1:Math.ceil(n.toString(16))+1}if(o.getL(t,e).length>2*i)throw new Error("L of TLV too long: idx="+e);var s=o.getVblen(t,e);if(s>n)throw new Error("value of L too long than hex: idx="+e);var a=o.getTLV(t,e),u=a.length-2-o.getL(t,e).length;if(u!==2*s)throw new Error("V string length and L's value not the same:"+u+"/"+2*s);if(0===e&&t.length!=a.length)throw new Error("total length and TLV length unmatch:"+t.length+"!="+a.length);var c=t.substr(e,2);if("02"===c){var h=o.getVidx(t,e);if("00"==t.substr(h,2)&&t.charCodeAt(h+2)<56)throw new Error("not least zeros for DER INTEGER")}if(32&parseInt(c,16)){for(var l=o.getVblen(t,e),f=0,g=o.getChildIdx(t,e),d=0;d=e?t:new Array(e-t.length+1).join(r)+t};void 0!==ct&&ct||(e.KJUR=ct={}),void 0!==ct.crypto&&ct.crypto||(ct.crypto={}),ct.crypto.Util=new function(){this.DIGESTINFOHEAD={sha1:"3021300906052b0e03021a05000414",sha224:"302d300d06096086480165030402040500041c",sha256:"3031300d060960864801650304020105000420",sha384:"3041300d060960864801650304020205000430",sha512:"3051300d060960864801650304020305000440",md2:"3020300c06082a864886f70d020205000410",md5:"3020300c06082a864886f70d020505000410",ripemd160:"3021300906052b2403020105000414"},this.DEFAULTPROVIDER={md5:"cryptojs",sha1:"cryptojs",sha224:"cryptojs",sha256:"cryptojs",sha384:"cryptojs",sha512:"cryptojs",ripemd160:"cryptojs",hmacmd5:"cryptojs",hmacsha1:"cryptojs",hmacsha224:"cryptojs",hmacsha256:"cryptojs",hmacsha384:"cryptojs",hmacsha512:"cryptojs",hmacripemd160:"cryptojs",MD5withRSA:"cryptojs/jsrsa",SHA1withRSA:"cryptojs/jsrsa",SHA224withRSA:"cryptojs/jsrsa",SHA256withRSA:"cryptojs/jsrsa",SHA384withRSA:"cryptojs/jsrsa",SHA512withRSA:"cryptojs/jsrsa",RIPEMD160withRSA:"cryptojs/jsrsa",MD5withECDSA:"cryptojs/jsrsa",SHA1withECDSA:"cryptojs/jsrsa",SHA224withECDSA:"cryptojs/jsrsa",SHA256withECDSA:"cryptojs/jsrsa",SHA384withECDSA:"cryptojs/jsrsa",SHA512withECDSA:"cryptojs/jsrsa",RIPEMD160withECDSA:"cryptojs/jsrsa",SHA1withDSA:"cryptojs/jsrsa",SHA224withDSA:"cryptojs/jsrsa",SHA256withDSA:"cryptojs/jsrsa",MD5withRSAandMGF1:"cryptojs/jsrsa",SHAwithRSAandMGF1:"cryptojs/jsrsa",SHA1withRSAandMGF1:"cryptojs/jsrsa",SHA224withRSAandMGF1:"cryptojs/jsrsa",SHA256withRSAandMGF1:"cryptojs/jsrsa",SHA384withRSAandMGF1:"cryptojs/jsrsa",SHA512withRSAandMGF1:"cryptojs/jsrsa",RIPEMD160withRSAandMGF1:"cryptojs/jsrsa"},this.CRYPTOJSMESSAGEDIGESTNAME={md5:y.algo.MD5,sha1:y.algo.SHA1,sha224:y.algo.SHA224,sha256:y.algo.SHA256,sha384:y.algo.SHA384,sha512:y.algo.SHA512,ripemd160:y.algo.RIPEMD160},this.getDigestInfoHex=function(t,e){if(void 0===this.DIGESTINFOHEAD[e])throw"alg not supported in Util.DIGESTINFOHEAD: "+e;return this.DIGESTINFOHEAD[e]+t},this.getPaddedDigestInfoHex=function(t,e,r){var n=this.getDigestInfoHex(t,e),i=r/4;if(n.length+22>i)throw"key is too short for SigAlg: keylen="+r+","+e;for(var o="00"+n,s="",a=i-4-o.length,u=0;u=0)return!1;if(r.compareTo(n.ONE)<0||r.compareTo(o)>=0)return!1;var a=r.modInverse(o),u=t.multiply(a).mod(o),c=e.multiply(a).mod(o);return s.multiply(u).add(i.multiply(c)).getX().toBigInteger().mod(o).equals(e)},this.serializeSig=function(t,e){var r=t.toByteArraySigned(),n=e.toByteArraySigned(),i=[];return i.push(2),i.push(r.length),(i=i.concat(r)).push(2),i.push(n.length),(i=i.concat(n)).unshift(i.length),i.unshift(48),i},this.parseSig=function(t){var e;if(48!=t[0])throw new Error("Signature not a valid DERSequence");if(2!=t[e=2])throw new Error("First element in signature must be a DERInteger");var r=t.slice(e+2,e+2+t[e+1]);if(2!=t[e+=2+t[e+1]])throw new Error("Second element in signature must be a DERInteger");var i=t.slice(e+2,e+2+t[e+1]);return e+=2+t[e+1],{r:n.fromByteArrayUnsigned(r),s:n.fromByteArrayUnsigned(i)}},this.parseSigCompact=function(t){if(65!==t.length)throw"Signature has the wrong length";var e=t[0]-27;if(e<0||e>7)throw"Invalid signature type";var r=this.ecparams.n;return{r:n.fromByteArrayUnsigned(t.slice(1,33)).mod(r),s:n.fromByteArrayUnsigned(t.slice(33,65)).mod(r),i:e}},this.readPKCS5PrvKeyHex=function(t){if(!1===h(t))throw new Error("not ASN.1 hex string");var e,r,n;try{e=c(t,0,["[0]",0],"06"),r=c(t,0,[1],"04");try{n=c(t,0,["[1]",0],"03")}catch(t){}}catch(t){throw new Error("malformed PKCS#1/5 plain ECC private key")}if(this.curveName=a(e),void 0===this.curveName)throw"unsupported curve name";this.setNamedCurve(this.curveName),this.setPublicKeyHex(n),this.setPrivateKeyHex(r),this.isPublic=!1},this.readPKCS8PrvKeyHex=function(t){if(!1===h(t))throw new e("not ASN.1 hex string");var r,n,i;try{c(t,0,[1,0],"06"),r=c(t,0,[1,1],"06"),n=c(t,0,[2,0,1],"04");try{i=c(t,0,[2,0,"[1]",0],"03")}catch(t){}}catch(t){throw new e("malformed PKCS#8 plain ECC private key")}if(this.curveName=a(r),void 0===this.curveName)throw new e("unsupported curve name");this.setNamedCurve(this.curveName),this.setPublicKeyHex(i),this.setPrivateKeyHex(n),this.isPublic=!1},this.readPKCS8PubKeyHex=function(t){if(!1===h(t))throw new e("not ASN.1 hex string");var r,n;try{c(t,0,[0,0],"06"),r=c(t,0,[0,1],"06"),n=c(t,0,[1],"03")}catch(t){throw new e("malformed PKCS#8 ECC public key")}if(this.curveName=a(r),null===this.curveName)throw new e("unsupported curve name");this.setNamedCurve(this.curveName),this.setPublicKeyHex(n)},this.readCertPubKeyHex=function(t,r){if(!1===h(t))throw new e("not ASN.1 hex string");var n,i;try{n=c(t,0,[0,5,0,1],"06"),i=c(t,0,[0,5,1],"03")}catch(t){throw new e("malformed X.509 certificate ECC public key")}if(this.curveName=a(n),null===this.curveName)throw new e("unsupported curve name");this.setNamedCurve(this.curveName),this.setPublicKeyHex(i)},void 0!==t&&void 0!==t.curve&&(this.curveName=t.curve),void 0===this.curveName&&(this.curveName="secp256r1"),this.setNamedCurve(this.curveName),void 0!==t&&(void 0!==t.prv&&this.setPrivateKeyHex(t.prv),void 0!==t.pub&&this.setPublicKeyHex(t.pub))},ct.crypto.ECDSA.parseSigHex=function(t){var e=ct.crypto.ECDSA.parseSigHexInHexRS(t);return{r:new F(e.r,16),s:new F(e.s,16)}},ct.crypto.ECDSA.parseSigHexInHexRS=function(t){var e=ft,r=e.getChildIdx,n=e.getV;if(e.checkStrictDER(t,0),"30"!=t.substr(0,2))throw new Error("signature is not a ASN.1 sequence");var i=r(t,0);if(2!=i.length)throw new Error("signature shall have two elements");var o=i[0],s=i[1];if("02"!=t.substr(o,2))throw new Error("1st item not ASN.1 integer");if("02"!=t.substr(s,2))throw new Error("2nd item not ASN.1 integer");return{r:n(t,o),s:n(t,s)}},ct.crypto.ECDSA.asn1SigToConcatSig=function(t){var e=ct.crypto.ECDSA.parseSigHexInHexRS(t),r=e.r,n=e.s;if("00"==r.substr(0,2)&&r.length%32==2&&(r=r.substr(2)),"00"==n.substr(0,2)&&n.length%32==2&&(n=n.substr(2)),r.length%32==30&&(r="00"+r),n.length%32==30&&(n="00"+n),r.length%32!=0)throw"unknown ECDSA sig r length error";if(n.length%32!=0)throw"unknown ECDSA sig s length error";return r+n},ct.crypto.ECDSA.concatSigToASN1Sig=function(t){if(t.length/2*8%128!=0)throw"unknown ECDSA concatinated r-s sig length error";var e=t.substr(0,t.length/2),r=t.substr(t.length/2);return ct.crypto.ECDSA.hexRSSigToASN1Sig(e,r)},ct.crypto.ECDSA.hexRSSigToASN1Sig=function(t,e){var r=new F(t,16),n=new F(e,16);return ct.crypto.ECDSA.biRSSigToASN1Sig(r,n)},ct.crypto.ECDSA.biRSSigToASN1Sig=function(t,e){var r=ct.asn1,n=new r.DERInteger({bigint:t}),i=new r.DERInteger({bigint:e});return new r.DERSequence({array:[n,i]}).getEncodedHex()},ct.crypto.ECDSA.getName=function(t){return"2b8104001f"===t?"secp192k1":"2a8648ce3d030107"===t?"secp256r1":"2b8104000a"===t?"secp256k1":"2b81040021"===t?"secp224r1":"2b81040022"===t?"secp384r1":-1!=="|secp256r1|NIST P-256|P-256|prime256v1|".indexOf(t)?"secp256r1":-1!=="|secp256k1|".indexOf(t)?"secp256k1":-1!=="|secp224r1|NIST P-224|P-224|".indexOf(t)?"secp224r1":-1!=="|secp384r1|NIST P-384|P-384|".indexOf(t)?"secp384r1":null},void 0!==ct&&ct||(e.KJUR=ct={}),void 0!==ct.crypto&&ct.crypto||(ct.crypto={}),ct.crypto.ECParameterDB=new function(){var t={},e={};function r(t){return new F(t,16)}this.getByName=function(r){var n=r;if(void 0!==e[n]&&(n=e[r]),void 0!==t[n])return t[n];throw"unregistered EC curve name: "+n},this.regist=function(n,i,o,s,a,u,c,h,l,f,g,d){t[n]={};var p=r(o),v=r(s),y=r(a),m=r(u),_=r(c),S=new at(p,v,y),w=S.decodePointHex("04"+h+l);t[n].name=n,t[n].keylen=i,t[n].curve=S,t[n].G=w,t[n].n=m,t[n].h=_,t[n].oid=g,t[n].info=d;for(var b=0;b=2*a)break}var l={};return l.keyhex=u.substr(0,2*i[t].keylen),l.ivhex=u.substr(2*i[t].keylen,2*i[t].ivlen),l},a=function(t,e,r,n){var o=y.enc.Base64.parse(t),s=y.enc.Hex.stringify(o);return(0,i[e].proc)(s,r,n)};return{version:"1.0.0",parsePKCS5PEM:function(t){return o(t)},getKeyAndUnusedIvByPasscodeAndIvsalt:function(t,e,r){return s(t,e,r)},decryptKeyB64:function(t,e,r,n){return a(t,e,r,n)},getDecryptedKeyHex:function(t,e){var r=o(t),n=(r.type,r.cipher),i=r.ivsalt,u=r.data,c=s(n,e,i).keyhex;return a(u,n,c,i)},getEncryptedPKCS5PEMFromPrvKeyHex:function(t,e,r,n,o){var a="";if(void 0!==n&&null!=n||(n="AES-256-CBC"),void 0===i[n])throw"KEYUTIL unsupported algorithm: "+n;void 0!==o&&null!=o||(o=function(t){var e=y.lib.WordArray.random(t);return y.enc.Hex.stringify(e)}(i[n].ivlen).toUpperCase());var u=function(t,e,r,n){return(0,i[e].eproc)(t,r,n)}(e,n,s(n,r,o).keyhex,o);return a="-----BEGIN "+t+" PRIVATE KEY-----\r\n",a+="Proc-Type: 4,ENCRYPTED\r\n",a+="DEK-Info: "+n+","+o+"\r\n",a+="\r\n",(a+=u.replace(/(.{64})/g,"$1\r\n"))+"\r\n-----END "+t+" PRIVATE KEY-----\r\n"},parseHexOfEncryptedPKCS8:function(t){var e=ft,r=e.getChildIdx,n=e.getV,i={},o=r(t,0);if(2!=o.length)throw"malformed format: SEQUENCE(0).items != 2: "+o.length;i.ciphertext=n(t,o[1]);var s=r(t,o[0]);if(2!=s.length)throw"malformed format: SEQUENCE(0.0).items != 2: "+s.length;if("2a864886f70d01050d"!=n(t,s[0]))throw"this only supports pkcs5PBES2";var a=r(t,s[1]);if(2!=s.length)throw"malformed format: SEQUENCE(0.0.1).items != 2: "+a.length;var u=r(t,a[1]);if(2!=u.length)throw"malformed format: SEQUENCE(0.0.1.1).items != 2: "+u.length;if("2a864886f70d0307"!=n(t,u[0]))throw"this only supports TripleDES";i.encryptionSchemeAlg="TripleDES",i.encryptionSchemeIV=n(t,u[1]);var c=r(t,a[0]);if(2!=c.length)throw"malformed format: SEQUENCE(0.0.1.0).items != 2: "+c.length;if("2a864886f70d01050c"!=n(t,c[0]))throw"this only supports pkcs5PBKDF2";var h=r(t,c[1]);if(h.length<2)throw"malformed format: SEQUENCE(0.0.1.0.1).items < 2: "+h.length;i.pbkdf2Salt=n(t,h[0]);var l=n(t,h[1]);try{i.pbkdf2Iter=parseInt(l,16)}catch(t){throw"malformed format pbkdf2Iter: "+l}return i},getPBKDF2KeyHexFromParam:function(t,e){var r=y.enc.Hex.parse(t.pbkdf2Salt),n=t.pbkdf2Iter,i=y.PBKDF2(e,r,{keySize:6,iterations:n});return y.enc.Hex.stringify(i)},_getPlainPKCS8HexFromEncryptedPKCS8PEM:function(t,e){var r=Ct(t,"ENCRYPTED PRIVATE KEY"),n=this.parseHexOfEncryptedPKCS8(r),i=Ht.getPBKDF2KeyHexFromParam(n,e),o={};o.ciphertext=y.enc.Hex.parse(n.ciphertext);var s=y.enc.Hex.parse(i),a=y.enc.Hex.parse(n.encryptionSchemeIV),u=y.TripleDES.decrypt(o,s,{iv:a});return y.enc.Hex.stringify(u)},getKeyFromEncryptedPKCS8PEM:function(t,e){var r=this._getPlainPKCS8HexFromEncryptedPKCS8PEM(t,e);return this.getKeyFromPlainPrivatePKCS8Hex(r)},parsePlainPrivatePKCS8Hex:function(t){var e=ft,r=e.getChildIdx,n=e.getV,i={algparam:null};if("30"!=t.substr(0,2))throw"malformed plain PKCS8 private key(code:001)";var o=r(t,0);if(3!=o.length)throw"malformed plain PKCS8 private key(code:002)";if("30"!=t.substr(o[1],2))throw"malformed PKCS8 private key(code:003)";var s=r(t,o[1]);if(2!=s.length)throw"malformed PKCS8 private key(code:004)";if("06"!=t.substr(s[0],2))throw"malformed PKCS8 private key(code:005)";if(i.algoid=n(t,s[0]),"06"==t.substr(s[1],2)&&(i.algparam=n(t,s[1])),"04"!=t.substr(o[2],2))throw"malformed PKCS8 private key(code:006)";return i.keyidx=e.getVidx(t,o[2]),i},getKeyFromPlainPrivatePKCS8PEM:function(t){var e=Ct(t,"PRIVATE KEY");return this.getKeyFromPlainPrivatePKCS8Hex(e)},getKeyFromPlainPrivatePKCS8Hex:function(t){var e,r=this.parsePlainPrivatePKCS8Hex(t);if("2a864886f70d010101"==r.algoid)e=new it;else if("2a8648ce380401"==r.algoid)e=new ct.crypto.DSA;else{if("2a8648ce3d0201"!=r.algoid)throw"unsupported private key algorithm";e=new ct.crypto.ECDSA}return e.readPKCS8PrvKeyHex(t),e},_getKeyFromPublicPKCS8Hex:function(t){var e,r=ft.getVbyList(t,0,[0,0],"06");if("2a864886f70d010101"===r)e=new it;else if("2a8648ce380401"===r)e=new ct.crypto.DSA;else{if("2a8648ce3d0201"!==r)throw"unsupported PKCS#8 public key hex";e=new ct.crypto.ECDSA}return e.readPKCS8PubKeyHex(t),e},parsePublicRawRSAKeyHex:function(t){var e=ft,r=e.getChildIdx,n=e.getV,i={};if("30"!=t.substr(0,2))throw"malformed RSA key(code:001)";var o=r(t,0);if(2!=o.length)throw"malformed RSA key(code:002)";if("02"!=t.substr(o[0],2))throw"malformed RSA key(code:003)";if(i.n=n(t,o[0]),"02"!=t.substr(o[1],2))throw"malformed RSA key(code:004)";return i.e=n(t,o[1]),i},parsePublicPKCS8Hex:function(t){var e=ft,r=e.getChildIdx,n=e.getV,i={algparam:null},o=r(t,0);if(2!=o.length)throw"outer DERSequence shall have 2 elements: "+o.length;var s=o[0];if("30"!=t.substr(s,2))throw"malformed PKCS8 public key(code:001)";var a=r(t,s);if(2!=a.length)throw"malformed PKCS8 public key(code:002)";if("06"!=t.substr(a[0],2))throw"malformed PKCS8 public key(code:003)";if(i.algoid=n(t,a[0]),"06"==t.substr(a[1],2)?i.algparam=n(t,a[1]):"30"==t.substr(a[1],2)&&(i.algparam={},i.algparam.p=e.getVbyList(t,a[1],[0],"02"),i.algparam.q=e.getVbyList(t,a[1],[1],"02"),i.algparam.g=e.getVbyList(t,a[1],[2],"02")),"03"!=t.substr(o[1],2))throw"malformed PKCS8 public key(code:004)";return i.key=n(t,o[1]).substr(2),i}}}();Ht.getKey=function(t,e,r){var n,i=(y=ft).getChildIdx,o=(y.getV,y.getVbyList),s=ct.crypto,a=s.ECDSA,u=s.DSA,c=it,h=Ct,l=Ht;if(void 0!==c&&t instanceof c)return t;if(void 0!==a&&t instanceof a)return t;if(void 0!==u&&t instanceof u)return t;if(void 0!==t.curve&&void 0!==t.xy&&void 0===t.d)return new a({pub:t.xy,curve:t.curve});if(void 0!==t.curve&&void 0!==t.d)return new a({prv:t.d,curve:t.curve});if(void 0===t.kty&&void 0!==t.n&&void 0!==t.e&&void 0===t.d)return(C=new c).setPublic(t.n,t.e),C;if(void 0===t.kty&&void 0!==t.n&&void 0!==t.e&&void 0!==t.d&&void 0!==t.p&&void 0!==t.q&&void 0!==t.dp&&void 0!==t.dq&&void 0!==t.co&&void 0===t.qi)return(C=new c).setPrivateEx(t.n,t.e,t.d,t.p,t.q,t.dp,t.dq,t.co),C;if(void 0===t.kty&&void 0!==t.n&&void 0!==t.e&&void 0!==t.d&&void 0===t.p)return(C=new c).setPrivate(t.n,t.e,t.d),C;if(void 0!==t.p&&void 0!==t.q&&void 0!==t.g&&void 0!==t.y&&void 0===t.x)return(C=new u).setPublic(t.p,t.q,t.g,t.y),C;if(void 0!==t.p&&void 0!==t.q&&void 0!==t.g&&void 0!==t.y&&void 0!==t.x)return(C=new u).setPrivate(t.p,t.q,t.g,t.y,t.x),C;if("RSA"===t.kty&&void 0!==t.n&&void 0!==t.e&&void 0===t.d)return(C=new c).setPublic(St(t.n),St(t.e)),C;if("RSA"===t.kty&&void 0!==t.n&&void 0!==t.e&&void 0!==t.d&&void 0!==t.p&&void 0!==t.q&&void 0!==t.dp&&void 0!==t.dq&&void 0!==t.qi)return(C=new c).setPrivateEx(St(t.n),St(t.e),St(t.d),St(t.p),St(t.q),St(t.dp),St(t.dq),St(t.qi)),C;if("RSA"===t.kty&&void 0!==t.n&&void 0!==t.e&&void 0!==t.d)return(C=new c).setPrivate(St(t.n),St(t.e),St(t.d)),C;if("EC"===t.kty&&void 0!==t.crv&&void 0!==t.x&&void 0!==t.y&&void 0===t.d){var f=(P=new a({curve:t.crv})).ecparams.keylen/4,g="04"+("0000000000"+St(t.x)).slice(-f)+("0000000000"+St(t.y)).slice(-f);return P.setPublicKeyHex(g),P}if("EC"===t.kty&&void 0!==t.crv&&void 0!==t.x&&void 0!==t.y&&void 0!==t.d){f=(P=new a({curve:t.crv})).ecparams.keylen/4,g="04"+("0000000000"+St(t.x)).slice(-f)+("0000000000"+St(t.y)).slice(-f);var d=("0000000000"+St(t.d)).slice(-f);return P.setPublicKeyHex(g),P.setPrivateKeyHex(d),P}if("pkcs5prv"===r){var p,v=t,y=ft;if(9===(p=i(v,0)).length)(C=new c).readPKCS5PrvKeyHex(v);else if(6===p.length)(C=new u).readPKCS5PrvKeyHex(v);else{if(!(p.length>2&&"04"===v.substr(p[1],2)))throw"unsupported PKCS#1/5 hexadecimal key";(C=new a).readPKCS5PrvKeyHex(v)}return C}if("pkcs8prv"===r)return l.getKeyFromPlainPrivatePKCS8Hex(t);if("pkcs8pub"===r)return l._getKeyFromPublicPKCS8Hex(t);if("x509pub"===r)return Wt.getPublicKeyFromCertHex(t);if(-1!=t.indexOf("-END CERTIFICATE-",0)||-1!=t.indexOf("-END X509 CERTIFICATE-",0)||-1!=t.indexOf("-END TRUSTED CERTIFICATE-",0))return Wt.getPublicKeyFromCertPEM(t);if(-1!=t.indexOf("-END PUBLIC KEY-")){var m=Ct(t,"PUBLIC KEY");return l._getKeyFromPublicPKCS8Hex(m)}if(-1!=t.indexOf("-END RSA PRIVATE KEY-")&&-1==t.indexOf("4,ENCRYPTED")){var _=h(t,"RSA PRIVATE KEY");return l.getKey(_,null,"pkcs5prv")}if(-1!=t.indexOf("-END DSA PRIVATE KEY-")&&-1==t.indexOf("4,ENCRYPTED")){var S=o(n=h(t,"DSA PRIVATE KEY"),0,[1],"02"),w=o(n,0,[2],"02"),b=o(n,0,[3],"02"),E=o(n,0,[4],"02"),x=o(n,0,[5],"02");return(C=new u).setPrivate(new F(S,16),new F(w,16),new F(b,16),new F(E,16),new F(x,16)),C}if(-1!=t.indexOf("-END EC PRIVATE KEY-")&&-1==t.indexOf("4,ENCRYPTED"))return _=h(t,"EC PRIVATE KEY"),l.getKey(_,null,"pkcs5prv");if(-1!=t.indexOf("-END PRIVATE KEY-"))return l.getKeyFromPlainPrivatePKCS8PEM(t);if(-1!=t.indexOf("-END RSA PRIVATE KEY-")&&-1!=t.indexOf("4,ENCRYPTED")){var A=l.getDecryptedKeyHex(t,e),k=new it;return k.readPKCS5PrvKeyHex(A),k}if(-1!=t.indexOf("-END EC PRIVATE KEY-")&&-1!=t.indexOf("4,ENCRYPTED")){var P,C=o(n=l.getDecryptedKeyHex(t,e),0,[1],"04"),T=o(n,0,[2,0],"06"),R=o(n,0,[3,0],"03").substr(2);if(void 0===ct.crypto.OID.oidhex2name[T])throw"undefined OID(hex) in KJUR.crypto.OID: "+T;return(P=new a({curve:ct.crypto.OID.oidhex2name[T]})).setPublicKeyHex(R),P.setPrivateKeyHex(C),P.isPublic=!1,P}if(-1!=t.indexOf("-END DSA PRIVATE KEY-")&&-1!=t.indexOf("4,ENCRYPTED"))return S=o(n=l.getDecryptedKeyHex(t,e),0,[1],"02"),w=o(n,0,[2],"02"),b=o(n,0,[3],"02"),E=o(n,0,[4],"02"),x=o(n,0,[5],"02"),(C=new u).setPrivate(new F(S,16),new F(w,16),new F(b,16),new F(E,16),new F(x,16)),C;if(-1!=t.indexOf("-END ENCRYPTED PRIVATE KEY-"))return l.getKeyFromEncryptedPKCS8PEM(t,e);throw new Error("not supported argument")},Ht.generateKeypair=function(t,e){if("RSA"==t){var r=e;(s=new it).generate(r,"10001"),s.isPrivate=!0,s.isPublic=!0;var n=new it,i=s.n.toString(16),o=s.e.toString(16);return n.setPublic(i,o),n.isPrivate=!1,n.isPublic=!0,(a={}).prvKeyObj=s,a.pubKeyObj=n,a}if("EC"==t){var s,a,u=e,c=new ct.crypto.ECDSA({curve:u}).generateKeyPairHex();return(s=new ct.crypto.ECDSA({curve:u})).setPublicKeyHex(c.ecpubhex),s.setPrivateKeyHex(c.ecprvhex),s.isPrivate=!0,s.isPublic=!1,(n=new ct.crypto.ECDSA({curve:u})).setPublicKeyHex(c.ecpubhex),n.isPrivate=!1,n.isPublic=!0,(a={}).prvKeyObj=s,a.pubKeyObj=n,a}throw"unknown algorithm: "+t},Ht.getPEM=function(t,e,r,n,i,o){var s=ct,a=s.asn1,u=a.DERObjectIdentifier,c=a.DERInteger,h=a.ASN1Util.newObject,l=a.x509.SubjectPublicKeyInfo,f=s.crypto,g=f.DSA,d=f.ECDSA,p=it;function v(t){return h({seq:[{int:0},{int:{bigint:t.n}},{int:t.e},{int:{bigint:t.d}},{int:{bigint:t.p}},{int:{bigint:t.q}},{int:{bigint:t.dmp1}},{int:{bigint:t.dmq1}},{int:{bigint:t.coeff}}]})}function m(t){return h({seq:[{int:1},{octstr:{hex:t.prvKeyHex}},{tag:["a0",!0,{oid:{name:t.curveName}}]},{tag:["a1",!0,{bitstr:{hex:"00"+t.pubKeyHex}}]}]})}function _(t){return h({seq:[{int:0},{int:{bigint:t.p}},{int:{bigint:t.q}},{int:{bigint:t.g}},{int:{bigint:t.y}},{int:{bigint:t.x}}]})}if((void 0!==p&&t instanceof p||void 0!==g&&t instanceof g||void 0!==d&&t instanceof d)&&1==t.isPublic&&(void 0===e||"PKCS8PUB"==e))return Pt(F=new l(t).getEncodedHex(),"PUBLIC KEY");if("PKCS1PRV"==e&&void 0!==p&&t instanceof p&&(void 0===r||null==r)&&1==t.isPrivate)return Pt(F=v(t).getEncodedHex(),"RSA PRIVATE KEY");if("PKCS1PRV"==e&&void 0!==d&&t instanceof d&&(void 0===r||null==r)&&1==t.isPrivate){var S=new u({name:t.curveName}).getEncodedHex(),w=m(t).getEncodedHex(),b="";return(b+=Pt(S,"EC PARAMETERS"))+Pt(w,"EC PRIVATE KEY")}if("PKCS1PRV"==e&&void 0!==g&&t instanceof g&&(void 0===r||null==r)&&1==t.isPrivate)return Pt(F=_(t).getEncodedHex(),"DSA PRIVATE KEY");if("PKCS5PRV"==e&&void 0!==p&&t instanceof p&&void 0!==r&&null!=r&&1==t.isPrivate){var F=v(t).getEncodedHex();return void 0===n&&(n="DES-EDE3-CBC"),this.getEncryptedPKCS5PEMFromPrvKeyHex("RSA",F,r,n,o)}if("PKCS5PRV"==e&&void 0!==d&&t instanceof d&&void 0!==r&&null!=r&&1==t.isPrivate)return F=m(t).getEncodedHex(),void 0===n&&(n="DES-EDE3-CBC"),this.getEncryptedPKCS5PEMFromPrvKeyHex("EC",F,r,n,o);if("PKCS5PRV"==e&&void 0!==g&&t instanceof g&&void 0!==r&&null!=r&&1==t.isPrivate)return F=_(t).getEncodedHex(),void 0===n&&(n="DES-EDE3-CBC"),this.getEncryptedPKCS5PEMFromPrvKeyHex("DSA",F,r,n,o);var E=function(t,e){var r=x(t,e);return new h({seq:[{seq:[{oid:{name:"pkcs5PBES2"}},{seq:[{seq:[{oid:{name:"pkcs5PBKDF2"}},{seq:[{octstr:{hex:r.pbkdf2Salt}},{int:r.pbkdf2Iter}]}]},{seq:[{oid:{name:"des-EDE3-CBC"}},{octstr:{hex:r.encryptionSchemeIV}}]}]}]},{octstr:{hex:r.ciphertext}}]}).getEncodedHex()},x=function(t,e){var r=y.lib.WordArray.random(8),n=y.lib.WordArray.random(8),i=y.PBKDF2(e,r,{keySize:6,iterations:100}),o=y.enc.Hex.parse(t),s=y.TripleDES.encrypt(o,i,{iv:n})+"",a={};return a.ciphertext=s,a.pbkdf2Salt=y.enc.Hex.stringify(r),a.pbkdf2Iter=100,a.encryptionSchemeAlg="DES-EDE3-CBC",a.encryptionSchemeIV=y.enc.Hex.stringify(n),a};if("PKCS8PRV"==e&&null!=p&&t instanceof p&&1==t.isPrivate){var A=v(t).getEncodedHex();return F=h({seq:[{int:0},{seq:[{oid:{name:"rsaEncryption"}},{null:!0}]},{octstr:{hex:A}}]}).getEncodedHex(),void 0===r||null==r?Pt(F,"PRIVATE KEY"):Pt(w=E(F,r),"ENCRYPTED PRIVATE KEY")}if("PKCS8PRV"==e&&void 0!==d&&t instanceof d&&1==t.isPrivate)return A=new h({seq:[{int:1},{octstr:{hex:t.prvKeyHex}},{tag:["a1",!0,{bitstr:{hex:"00"+t.pubKeyHex}}]}]}).getEncodedHex(),F=h({seq:[{int:0},{seq:[{oid:{name:"ecPublicKey"}},{oid:{name:t.curveName}}]},{octstr:{hex:A}}]}).getEncodedHex(),void 0===r||null==r?Pt(F,"PRIVATE KEY"):Pt(w=E(F,r),"ENCRYPTED PRIVATE KEY");if("PKCS8PRV"==e&&void 0!==g&&t instanceof g&&1==t.isPrivate)return A=new c({bigint:t.x}).getEncodedHex(),F=h({seq:[{int:0},{seq:[{oid:{name:"dsa"}},{seq:[{int:{bigint:t.p}},{int:{bigint:t.q}},{int:{bigint:t.g}}]}]},{octstr:{hex:A}}]}).getEncodedHex(),void 0===r||null==r?Pt(F,"PRIVATE KEY"):Pt(w=E(F,r),"ENCRYPTED PRIVATE KEY");throw new Error("unsupported object nor format")},Ht.getKeyFromCSRPEM=function(t){var e=Ct(t,"CERTIFICATE REQUEST");return Ht.getKeyFromCSRHex(e)},Ht.getKeyFromCSRHex=function(t){var e=Ht.parseCSRHex(t);return Ht.getKey(e.p8pubkeyhex,null,"pkcs8pub")},Ht.parseCSRHex=function(t){var e=ft,r=e.getChildIdx,n=e.getTLV,i={},o=t;if("30"!=o.substr(0,2))throw"malformed CSR(code:001)";var s=r(o,0);if(s.length<1)throw"malformed CSR(code:002)";if("30"!=o.substr(s[0],2))throw"malformed CSR(code:003)";var a=r(o,s[0]);if(a.length<3)throw"malformed CSR(code:004)";return i.p8pubkeyhex=n(o,a[2]),i},Ht.getKeyID=function(t){var e=Ht,r=ft;"string"==typeof t&&-1!=t.indexOf("BEGIN ")&&(t=e.getKey(t));var n=Ct(e.getPEM(t)),i=r.getIdxbyList(n,0,[1]),o=r.getV(n,i).substring(2);return ct.crypto.Util.hashHex(o,"sha1")},Ht.getJWKFromKey=function(t){var e={};if(t instanceof it&&t.isPrivate)return e.kty="RSA",e.n=_t(t.n.toString(16)),e.e=_t(t.e.toString(16)),e.d=_t(t.d.toString(16)),e.p=_t(t.p.toString(16)),e.q=_t(t.q.toString(16)),e.dp=_t(t.dmp1.toString(16)),e.dq=_t(t.dmq1.toString(16)),e.qi=_t(t.coeff.toString(16)),e;if(t instanceof it&&t.isPublic)return e.kty="RSA",e.n=_t(t.n.toString(16)),e.e=_t(t.e.toString(16)),e;if(t instanceof ct.crypto.ECDSA&&t.isPrivate){if("P-256"!==(n=t.getShortNISTPCurveName())&&"P-384"!==n)throw"unsupported curve name for JWT: "+n;var r=t.getPublicKeyXYHex();return e.kty="EC",e.crv=n,e.x=_t(r.x),e.y=_t(r.y),e.d=_t(t.prvKeyHex),e}if(t instanceof ct.crypto.ECDSA&&t.isPublic){var n;if("P-256"!==(n=t.getShortNISTPCurveName())&&"P-384"!==n)throw"unsupported curve name for JWT: "+n;return r=t.getPublicKeyXYHex(),e.kty="EC",e.crv=n,e.x=_t(r.x),e.y=_t(r.y),e}throw"not supported key object"},it.getPosArrayOfChildrenFromHex=function(t){return ft.getChildIdx(t,0)},it.getHexValueArrayOfChildrenFromHex=function(t){var e,r=ft.getV,n=r(t,(e=it.getPosArrayOfChildrenFromHex(t))[0]),i=r(t,e[1]),o=r(t,e[2]),s=r(t,e[3]),a=r(t,e[4]),u=r(t,e[5]),c=r(t,e[6]),h=r(t,e[7]),l=r(t,e[8]);return(e=new Array).push(n,i,o,s,a,u,c,h,l),e},it.prototype.readPrivateKeyFromPEMString=function(t){var e=Ct(t),r=it.getHexValueArrayOfChildrenFromHex(e);this.setPrivateEx(r[1],r[2],r[3],r[4],r[5],r[6],r[7],r[8])},it.prototype.readPKCS5PrvKeyHex=function(t){var e=it.getHexValueArrayOfChildrenFromHex(t);this.setPrivateEx(e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8])},it.prototype.readPKCS8PrvKeyHex=function(t){var e,r,n,i,o,s,a,u,c=ft,h=c.getVbyListEx;if(!1===c.isASN1HEX(t))throw new Error("not ASN.1 hex string");try{e=h(t,0,[2,0,1],"02"),r=h(t,0,[2,0,2],"02"),n=h(t,0,[2,0,3],"02"),i=h(t,0,[2,0,4],"02"),o=h(t,0,[2,0,5],"02"),s=h(t,0,[2,0,6],"02"),a=h(t,0,[2,0,7],"02"),u=h(t,0,[2,0,8],"02")}catch(t){throw new Error("malformed PKCS#8 plain RSA private key")}this.setPrivateEx(e,r,n,i,o,s,a,u)},it.prototype.readPKCS5PubKeyHex=function(t){var e=ft,r=e.getV;if(!1===e.isASN1HEX(t))throw new Error("keyHex is not ASN.1 hex string");var n=e.getChildIdx(t,0);if(2!==n.length||"02"!==t.substr(n[0],2)||"02"!==t.substr(n[1],2))throw new Error("wrong hex for PKCS#5 public key");var i=r(t,n[0]),o=r(t,n[1]);this.setPublic(i,o)},it.prototype.readPKCS8PubKeyHex=function(t){var e=ft;if(!1===e.isASN1HEX(t))throw new Error("not ASN.1 hex string");if("06092a864886f70d010101"!==e.getTLVbyListEx(t,0,[0,0]))throw new Error("not PKCS8 RSA public key");var r=e.getTLVbyListEx(t,0,[1,0]);this.readPKCS5PubKeyHex(r)},it.prototype.readCertPubKeyHex=function(t,e){var r,n;(r=new Wt).readCertHex(t),n=r.getPublicKeyHex(),this.readPKCS8PubKeyHex(n)};var Kt=new RegExp("[^0-9a-f]","gi");function Vt(t,e){for(var r="",n=e/4-t.length,i=0;i>24,(16711680&i)>>16,(65280&i)>>8,255&i])))),i+=1;return n}function Jt(t){for(var e in ct.crypto.Util.DIGESTINFOHEAD){var r=ct.crypto.Util.DIGESTINFOHEAD[e],n=r.length;if(t.substring(0,n)==r)return[e,t.substring(n)]}return[]}function Wt(t){var e,r=ft,n=r.getChildIdx,i=r.getV,o=r.getTLV,s=r.getVbyList,a=r.getVbyListEx,u=r.getTLVbyList,c=r.getTLVbyListEx,h=r.getIdxbyList,l=r.getIdxbyListEx,f=r.getVidx,g=r.oidname,d=r.hextooidstr,p=Wt,v=Ct;try{e=ct.asn1.x509.AlgorithmIdentifier.PSSNAME2ASN1TLV}catch(t){}this.HEX2STAG={"0c":"utf8",13:"prn",16:"ia5","1a":"vis","1e":"bmp"},this.hex=null,this.version=0,this.foffset=0,this.aExtInfo=null,this.getVersion=function(){return null===this.hex||0!==this.version?this.version:"a003020102"!==u(this.hex,0,[0,0])?(this.version=1,this.foffset=-1,1):(this.version=3,3)},this.getSerialNumberHex=function(){return a(this.hex,0,[0,0],"02")},this.getSignatureAlgorithmField=function(){var t=c(this.hex,0,[0,1]);return this.getAlgorithmIdentifierName(t)},this.getAlgorithmIdentifierName=function(t){for(var r in e)if(t===e[r])return r;return g(a(t,0,[0],"06"))},this.getIssuer=function(){return this.getX500Name(this.getIssuerHex())},this.getIssuerHex=function(){return u(this.hex,0,[0,3+this.foffset],"30")},this.getIssuerString=function(){return p.hex2dn(this.getIssuerHex())},this.getSubject=function(){return this.getX500Name(this.getSubjectHex())},this.getSubjectHex=function(){return u(this.hex,0,[0,5+this.foffset],"30")},this.getSubjectString=function(){return p.hex2dn(this.getSubjectHex())},this.getNotBefore=function(){var t=s(this.hex,0,[0,4+this.foffset,0]);return t=t.replace(/(..)/g,"%$1"),decodeURIComponent(t)},this.getNotAfter=function(){var t=s(this.hex,0,[0,4+this.foffset,1]);return t=t.replace(/(..)/g,"%$1"),decodeURIComponent(t)},this.getPublicKeyHex=function(){return r.getTLVbyList(this.hex,0,[0,6+this.foffset],"30")},this.getPublicKeyIdx=function(){return h(this.hex,0,[0,6+this.foffset],"30")},this.getPublicKeyContentIdx=function(){var t=this.getPublicKeyIdx();return h(this.hex,t,[1,0],"30")},this.getPublicKey=function(){return Ht.getKey(this.getPublicKeyHex(),null,"pkcs8pub")},this.getSignatureAlgorithmName=function(){var t=u(this.hex,0,[1],"30");return this.getAlgorithmIdentifierName(t)},this.getSignatureValueHex=function(){return s(this.hex,0,[2],"03",!0)},this.verifySignature=function(t){var e=this.getSignatureAlgorithmField(),r=this.getSignatureValueHex(),n=u(this.hex,0,[0],"30"),i=new ct.crypto.Signature({alg:e});return i.init(t),i.updateHex(n),i.verify(r)},this.parseExt=function(t){var e,o,a;if(void 0===t){if(a=this.hex,3!==this.version)return-1;e=h(a,0,[0,7,0],"30"),o=n(a,e)}else{a=Ct(t);var u=h(a,0,[0,3,0,0],"06");if("2a864886f70d01090e"!=i(a,u))return void(this.aExtInfo=new Array);e=h(a,0,[0,3,0,1,0],"30"),o=n(a,e),this.hex=a}this.aExtInfo=new Array;for(var c=0;c1){var a=o(t,s[1]),u=this.getGeneralName(a);null!=u.uri&&(i.uri=u.uri)}if(s.length>2){var c=o(t,s[2]);"0101ff"==c&&(i.reqauth=!0),"010100"==c&&(i.reqauth=!1)}return i},this.getX500NameRule=function(t){for(var e=null,r=[],n=0;n0&&(t.ext=this.getExtParamArray()),t.sighex=this.getSignatureValueHex(),t},this.getExtParamArray=function(t){null==t&&-1!=l(this.hex,0,[0,"[3]"])&&(t=c(this.hex,0,[0,"[3]",0],"30"));for(var e=[],r=n(t,0),i=0;i0&&(c=new Array(r),(new et).nextBytes(c),c=String.fromCharCode.apply(String,c));var h=Ft(u(Et("\0\0\0\0\0\0\0\0"+i+c))),l=[];for(n=0;n>8*a-s&255;for(d[0]&=~p,n=0;nthis.n.bitLength())return 0;var n=Jt(this.doPublic(r).toString(16).replace(/^1f+00/,""));if(0==n.length)return!1;var i=n[0];return n[1]==function(t){return ct.crypto.Util.hashString(t,i)}(t)},it.prototype.verifyWithMessageHash=function(t,e){if(e.length!=Math.ceil(this.n.bitLength()/4))return!1;var r=rt(e,16);if(r.bitLength()>this.n.bitLength())return 0;var n=Jt(this.doPublic(r).toString(16).replace(/^1f+00/,""));return 0!=n.length&&(n[0],n[1]==t)},it.prototype.verifyPSS=function(t,e,r,n){var i=function(t){return ct.crypto.Util.hashHex(t,r)}(Et(t));return void 0===n&&(n=-1),this.verifyWithMessageHashPSS(i,e,r,n)},it.prototype.verifyWithMessageHashPSS=function(t,e,r,n){if(e.length!=Math.ceil(this.n.bitLength()/4))return!1;var i,o=new F(e,16),s=function(t){return ct.crypto.Util.hashHex(t,r)},a=Ft(t),u=a.length,c=this.n.bitLength()-1,h=Math.ceil(c/8);if(-1===n||void 0===n)n=u;else if(-2===n)n=h-u-2;else if(n<-2)throw new Error("invalid salt length");if(h>8*h-c&255;if(0!=(f.charCodeAt(0)&d))throw new Error("bits beyond keysize not zero");var p=qt(g,f.length,s),v=[];for(i=0;i0&&-1==(":"+n.join(":")+":").indexOf(":"+y+":"))throw"algorithm '"+y+"' not accepted in the list";if("none"!=y&&null===e)throw"key shall be specified to verify.";if("string"==typeof e&&-1!=e.indexOf("-----BEGIN ")&&(e=Ht.getKey(e)),!("RS"!=g&&"PS"!=g||e instanceof i))throw"key shall be a RSAKey obj for RS* and PS* algs";if("ES"==g&&!(e instanceof c))throw"key shall be a ECDSA obj for ES* algs";var m=null;if(void 0===s.jwsalg2sigalg[v.alg])throw"unsupported alg name: "+y;if("none"==(m=s.jwsalg2sigalg[y]))throw"not supported";if("Hmac"==m.substr(0,4)){if(void 0===e)throw"hexadecimal key shall be specified for HMAC";var _=new h({alg:m,pass:e});return _.updateString(d),p==_.doFinal()}if(-1!=m.indexOf("withECDSA")){var S,w=null;try{w=c.concatSigToASN1Sig(p)}catch(t){return!1}return(S=new l({alg:m})).init(e),S.updateString(d),S.verify(w)}return(S=new l({alg:m})).init(e),S.updateString(d),S.verify(p)},ct.jws.JWS.parse=function(t){var e,r,n,i=t.split("."),o={};if(2!=i.length&&3!=i.length)throw"malformed sJWS: wrong number of '.' splitted elements";return e=i[0],r=i[1],3==i.length&&(n=i[2]),o.headerObj=ct.jws.JWS.readSafeJSONString(lt(e)),o.payloadObj=ct.jws.JWS.readSafeJSONString(lt(r)),o.headerPP=JSON.stringify(o.headerObj,null," "),null==o.payloadObj?o.payloadPP=lt(r):o.payloadPP=JSON.stringify(o.payloadObj,null," "),void 0!==n&&(o.sigHex=St(n)),o},ct.jws.JWS.verifyJWT=function(t,e,n){var i=ct.jws,o=i.JWS,s=o.readSafeJSONString,a=o.inArray,u=o.includedArray,c=t.split("."),h=c[0],l=c[1],f=(St(c[2]),s(lt(h))),g=s(lt(l));if(void 0===f.alg)return!1;if(void 0===n.alg)throw"acceptField.alg shall be specified";if(!a(f.alg,n.alg))return!1;if(void 0!==g.iss&&"object"===r(n.iss)&&!a(g.iss,n.iss))return!1;if(void 0!==g.sub&&"object"===r(n.sub)&&!a(g.sub,n.sub))return!1;if(void 0!==g.aud&&"object"===r(n.aud))if("string"==typeof g.aud){if(!a(g.aud,n.aud))return!1}else if("object"==r(g.aud)&&!u(g.aud,n.aud))return!1;var d=i.IntDate.getNow();return void 0!==n.verifyAt&&"number"==typeof n.verifyAt&&(d=n.verifyAt),void 0!==n.gracePeriod&&"number"==typeof n.gracePeriod||(n.gracePeriod=0),!(void 0!==g.exp&&"number"==typeof g.exp&&g.exp+n.gracePeriode.length&&(r=e.length);for(var n=0;n=s())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s().toString(16)+" bytes");return 0|t}function d(t,e){if(u.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return H(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return K(t).length;default:if(n)return H(t).length;e=(""+e).toLowerCase(),n=!0}}function p(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return T(this,e,r);case"utf8":case"utf-8":return A(this,e,r);case"ascii":return P(this,e,r);case"latin1":case"binary":return C(this,e,r);case"base64":return x(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return R(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function v(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function y(t,e,r,n,i){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof e&&(e=u.from(e,n)),u.isBuffer(e))return 0===e.length?-1:m(t,e,r,n,i);if("number"==typeof e)return e&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):m(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function m(t,e,r,n,i){var o,s=1,a=t.length,u=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;s=2,a/=2,u/=2,r/=2}function c(t,e){return 1===s?t[e]:t.readUInt16BE(e*s)}if(i){var h=-1;for(o=r;oa&&(r=a-u),o=r;o>=0;o--){for(var l=!0,f=0;fi&&(n=i):n=i;var o=e.length;if(o%2!=0)throw new TypeError("Invalid hex string");n>o/2&&(n=o/2);for(var s=0;s>8,i=r%256,o.push(i),o.push(n);return o}(e,t.length-r),t,r,n)}function x(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function A(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i239?4:c>223?3:c>191?2:1;if(i+l<=r)switch(l){case 1:c<128&&(h=c);break;case 2:128==(192&(o=t[i+1]))&&(u=(31&c)<<6|63&o)>127&&(h=u);break;case 3:o=t[i+1],s=t[i+2],128==(192&o)&&128==(192&s)&&(u=(15&c)<<12|(63&o)<<6|63&s)>2047&&(u<55296||u>57343)&&(h=u);break;case 4:o=t[i+1],s=t[i+2],a=t[i+3],128==(192&o)&&128==(192&s)&&128==(192&a)&&(u=(15&c)<<18|(63&o)<<12|(63&s)<<6|63&a)>65535&&u<1114112&&(h=u)}null===h?(h=65533,l=1):h>65535&&(h-=65536,n.push(h>>>10&1023|55296),h=56320|1023&h),n.push(h),i+=l}return function(t){var e=t.length;if(e<=k)return String.fromCharCode.apply(String,t);for(var r="",n=0;n0&&(t=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(t+=" ... ")),""},u.prototype.compare=function(t,e,r,n,i){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),e<0||r>t.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&e>=r)return 0;if(n>=i)return-1;if(e>=r)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(n>>>=0),s=(r>>>=0)-(e>>>=0),a=Math.min(o,s),c=this.slice(n,i),h=t.slice(e,r),l=0;li)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return _(this,t,e,r);case"utf8":case"utf-8":return S(this,t,e,r);case"ascii":return w(this,t,e,r);case"latin1":case"binary":return b(this,t,e,r);case"base64":return F(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return E(this,t,e,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var k=4096;function P(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;in)&&(r=n);for(var i="",o=e;or)throw new RangeError("Trying to access beyond buffer length")}function D(t,e,r,n,i,o){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function L(t,e,r,n){e<0&&(e=65535+e+1);for(var i=0,o=Math.min(t.length-r,2);i>>8*(n?i:1-i)}function N(t,e,r,n){e<0&&(e=4294967295+e+1);for(var i=0,o=Math.min(t.length-r,4);i>>8*(n?i:3-i)&255}function U(t,e,r,n,i,o){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function O(t,e,r,n,o){return o||U(t,0,r,4),i.write(t,e,r,n,23,4),r+4}function B(t,e,r,n,o){return o||U(t,0,r,8),i.write(t,e,r,n,52,8),r+8}u.prototype.slice=function(t,e){var r,n=this.length;if((t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e0&&(i*=256);)n+=this[t+--e]*i;return n},u.prototype.readUInt8=function(t,e){return e||I(t,1,this.length),this[t]},u.prototype.readUInt16LE=function(t,e){return e||I(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUInt16BE=function(t,e){return e||I(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUInt32LE=function(t,e){return e||I(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUInt32BE=function(t,e){return e||I(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readIntLE=function(t,e,r){t|=0,e|=0,r||I(t,e,this.length);for(var n=this[t],i=1,o=0;++o=(i*=128)&&(n-=Math.pow(2,8*e)),n},u.prototype.readIntBE=function(t,e,r){t|=0,e|=0,r||I(t,e,this.length);for(var n=e,i=1,o=this[t+--n];n>0&&(i*=256);)o+=this[t+--n]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},u.prototype.readInt8=function(t,e){return e||I(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){e||I(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt16BE=function(t,e){e||I(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt32LE=function(t,e){return e||I(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return e||I(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readFloatLE=function(t,e){return e||I(t,4,this.length),i.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return e||I(t,4,this.length),i.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return e||I(t,8,this.length),i.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return e||I(t,8,this.length),i.read(this,t,!1,52,8)},u.prototype.writeUIntLE=function(t,e,r,n){t=+t,e|=0,r|=0,n||D(this,t,e,r,Math.pow(2,8*r)-1,0);var i=1,o=0;for(this[e]=255&t;++o=0&&(o*=256);)this[e+i]=t/o&255;return e+r},u.prototype.writeUInt8=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,1,255,0),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},u.prototype.writeUInt16LE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):L(this,t,e,!0),e+2},u.prototype.writeUInt16BE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):L(this,t,e,!1),e+2},u.prototype.writeUInt32LE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):N(this,t,e,!0),e+4},u.prototype.writeUInt32BE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):N(this,t,e,!1),e+4},u.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e|=0,!n){var i=Math.pow(2,8*r-1);D(this,t,e,r,i-1,-i)}var o=0,s=1,a=0;for(this[e]=255&t;++o>0)-a&255;return e+r},u.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e|=0,!n){var i=Math.pow(2,8*r-1);D(this,t,e,r,i-1,-i)}var o=r-1,s=1,a=0;for(this[e+o]=255&t;--o>=0&&(s*=256);)t<0&&0===a&&0!==this[e+o+1]&&(a=1),this[e+o]=(t/s>>0)-a&255;return e+r},u.prototype.writeInt8=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,1,127,-128),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):L(this,t,e,!0),e+2},u.prototype.writeInt16BE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):L(this,t,e,!1),e+2},u.prototype.writeInt32LE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):N(this,t,e,!0),e+4},u.prototype.writeInt32BE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):N(this,t,e,!1),e+4},u.prototype.writeFloatLE=function(t,e,r){return O(this,t,e,!0,r)},u.prototype.writeFloatBE=function(t,e,r){return O(this,t,e,!1,r)},u.prototype.writeDoubleLE=function(t,e,r){return B(this,t,e,!0,r)},u.prototype.writeDoubleBE=function(t,e,r){return B(this,t,e,!1,r)},u.prototype.copy=function(t,e,r,n){if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e=0;--i)t[i+e]=this[i+r];else if(o<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(o=e;o55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(s+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;o.push(r)}else if(r<2048){if((e-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function K(t){return n.toByteArray(function(t){if((t=function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}(t).replace(M,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function V(t,e,r,n){for(var i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}}).call(this,r(29))},function(t,e){var r;r=function(){return this}();try{r=r||new Function("return this")()}catch(t){"object"==typeof window&&(r=window)}t.exports=r},function(t,e,r){"use strict";e.byteLength=function(t){var e=u(t),r=e[0],n=e[1];return 3*(r+n)/4-n},e.toByteArray=function(t){var e,r,n=u(t),s=n[0],a=n[1],c=new o(function(t,e,r){return 3*(e+r)/4-r}(0,s,a)),h=0,l=a>0?s-4:s;for(r=0;r>16&255,c[h++]=e>>8&255,c[h++]=255&e;return 2===a&&(e=i[t.charCodeAt(r)]<<2|i[t.charCodeAt(r+1)]>>4,c[h++]=255&e),1===a&&(e=i[t.charCodeAt(r)]<<10|i[t.charCodeAt(r+1)]<<4|i[t.charCodeAt(r+2)]>>2,c[h++]=e>>8&255,c[h++]=255&e),c},e.fromByteArray=function(t){for(var e,r=t.length,i=r%3,o=[],s=16383,a=0,u=r-i;au?u:a+s));return 1===i?(e=t[r-1],o.push(n[e>>2]+n[e<<4&63]+"==")):2===i&&(e=(t[r-2]<<8)+t[r-1],o.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"=")),o.join("")};for(var n=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0;a<64;++a)n[a]=s[a],i[s.charCodeAt(a)]=a;function u(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function c(t,e,r){for(var i,o,s=[],a=e;a>18&63]+n[o>>12&63]+n[o>>6&63]+n[63&o]);return s.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(t,e){e.read=function(t,e,r,n,i){var o,s,a=8*i-n-1,u=(1<>1,h=-7,l=r?i-1:0,f=r?-1:1,g=t[e+l];for(l+=f,o=g&(1<<-h)-1,g>>=-h,h+=a;h>0;o=256*o+t[e+l],l+=f,h-=8);for(s=o&(1<<-h)-1,o>>=-h,h+=n;h>0;s=256*s+t[e+l],l+=f,h-=8);if(0===o)o=1-c;else{if(o===u)return s?NaN:1/0*(g?-1:1);s+=Math.pow(2,n),o-=c}return(g?-1:1)*s*Math.pow(2,o-n)},e.write=function(t,e,r,n,i,o){var s,a,u,c=8*o-i-1,h=(1<>1,f=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,g=n?0:o-1,d=n?1:-1,p=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,s=h):(s=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-s))<1&&(s--,u*=2),(e+=s+l>=1?f/u:f*Math.pow(2,1-l))*u>=2&&(s++,u/=2),s+l>=h?(a=0,s=h):s+l>=1?(a=(e*u-1)*Math.pow(2,i),s+=l):(a=e*Math.pow(2,l-1)*Math.pow(2,i),s=0));i>=8;t[r+g]=255&a,g+=d,a/=256,i-=8);for(s=s<0;t[r+g]=255&s,g+=d,s/=256,c-=8);t[r+g-d]|=128*p}},function(t,e){var r={}.toString;t.exports=Array.isArray||function(t){return"[object Array]"==r.call(t)}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){var e=t.jws,r=t.KeyUtil,i=t.X509,o=t.crypto,s=t.hextob64u,a=t.b64tohex,u=t.AllowedSigningAlgs;return function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t)}return t.parseJwt=function t(r){n.Log.debug("JoseUtil.parseJwt");try{var i=e.JWS.parse(r);return{header:i.headerObj,payload:i.payloadObj}}catch(t){n.Log.error(t)}},t.validateJwt=function(e,o,s,u,c,h,l){n.Log.debug("JoseUtil.validateJwt");try{if("RSA"===o.kty)if(o.e&&o.n)o=r.getKey(o);else{if(!o.x5c||!o.x5c.length)return n.Log.error("JoseUtil.validateJwt: RSA key missing key material",o),Promise.reject(new Error("RSA key missing key material"));var f=a(o.x5c[0]);o=i.getPublicKeyFromCertHex(f)}else{if("EC"!==o.kty)return n.Log.error("JoseUtil.validateJwt: Unsupported key type",o&&o.kty),Promise.reject(new Error(o.kty));if(!(o.crv&&o.x&&o.y))return n.Log.error("JoseUtil.validateJwt: EC key missing key material",o),Promise.reject(new Error("EC key missing key material"));o=r.getKey(o)}return t._validateJwt(e,o,s,u,c,h,l)}catch(t){return n.Log.error(t&&t.message||t),Promise.reject("JWT validation failed")}},t.validateJwtAttributes=function(e,r,i,o,s,a){o||(o=0),s||(s=parseInt(Date.now()/1e3));var u=t.parseJwt(e).payload;if(!u.iss)return n.Log.error("JoseUtil._validateJwt: issuer was not provided"),Promise.reject(new Error("issuer was not provided"));if(u.iss!==r)return n.Log.error("JoseUtil._validateJwt: Invalid issuer in token",u.iss),Promise.reject(new Error("Invalid issuer in token: "+u.iss));if(!u.aud)return n.Log.error("JoseUtil._validateJwt: aud was not provided"),Promise.reject(new Error("aud was not provided"));if(!(u.aud===i||Array.isArray(u.aud)&&u.aud.indexOf(i)>=0))return n.Log.error("JoseUtil._validateJwt: Invalid audience in token",u.aud),Promise.reject(new Error("Invalid audience in token: "+u.aud));if(u.azp&&u.azp!==i)return n.Log.error("JoseUtil._validateJwt: Invalid azp in token",u.azp),Promise.reject(new Error("Invalid azp in token: "+u.azp));if(!a){var c=s+o,h=s-o;if(!u.iat)return n.Log.error("JoseUtil._validateJwt: iat was not provided"),Promise.reject(new Error("iat was not provided"));if(c1&&void 0!==arguments[1]?arguments[1]:"#";!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t);var n=i.UrlUtility.parseUrlFragment(e,r);this.error=n.error,this.error_description=n.error_description,this.error_uri=n.error_uri,this.code=n.code,this.state=n.state,this.id_token=n.id_token,this.session_state=n.session_state,this.access_token=n.access_token,this.token_type=n.token_type,this.scope=n.scope,this.profile=void 0,this.expires_in=n.expires_in}return n(t,[{key:"expires_in",get:function(){if(this.expires_at){var t=parseInt(Date.now()/1e3);return this.expires_at-t}},set:function(t){var e=parseInt(t);if("number"==typeof e&&e>0){var r=parseInt(Date.now()/1e3);this.expires_at=r+e}}},{key:"expired",get:function(){var t=this.expires_in;if(void 0!==t)return t<=0}},{key:"scopes",get:function(){return(this.scope||"").split(" ")}},{key:"isOpenIdConnect",get:function(){return this.scopes.indexOf("openid")>=0||!!this.id_token}}]),t}()},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SignoutRequest=void 0;var n=r(0),i=r(3),o=r(9);e.SignoutRequest=function t(e){var r=e.url,s=e.id_token_hint,a=e.post_logout_redirect_uri,u=e.data,c=e.extraQueryParams,h=e.request_type;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!r)throw n.Log.error("SignoutRequest.ctor: No url passed"),new Error("url");for(var l in s&&(r=i.UrlUtility.addQueryParam(r,"id_token_hint",s)),a&&(r=i.UrlUtility.addQueryParam(r,"post_logout_redirect_uri",a),u&&(this.state=new o.State({data:u,request_type:h}),r=i.UrlUtility.addQueryParam(r,"state",this.state.id))),c)r=i.UrlUtility.addQueryParam(r,l,c[l]);this.url=r}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SignoutResponse=void 0;var n=r(3);e.SignoutResponse=function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t);var r=n.UrlUtility.parseUrlFragment(e,"?");this.error=r.error,this.error_description=r.error_description,this.error_uri=r.error_uri,this.state=r.state}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.InMemoryWebStorage=void 0;var n=function(){function t(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:c.SilentRenewService,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:h.SessionMonitor,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:f.TokenRevocationClient,l=arguments.length>4&&void 0!==arguments[4]?arguments[4]:g.TokenClient,p=arguments.length>5&&void 0!==arguments[5]?arguments[5]:d.JoseUtil;(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,e),r instanceof s.UserManagerSettings||(r=new s.UserManagerSettings(r));var v=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,t.call(this,r));return v._events=new u.UserManagerEvents(r),v._silentRenewService=new n(v),v.settings.automaticSilentRenew&&(i.Log.debug("UserManager.ctor: automaticSilentRenew is configured, setting up silent renew"),v.startSilentRenew()),v.settings.monitorSession&&(i.Log.debug("UserManager.ctor: monitorSession is configured, setting up session monitor"),v._sessionMonitor=new o(v)),v._tokenRevocationClient=new a(v._settings),v._tokenClient=new l(v._settings),v._joseUtil=p,v}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,t),e.prototype.getUser=function(){var t=this;return this._loadUser().then((function(e){return e?(i.Log.info("UserManager.getUser: user loaded"),t._events.load(e,!1),e):(i.Log.info("UserManager.getUser: user not found in storage"),null)}))},e.prototype.removeUser=function(){var t=this;return this.storeUser(null).then((function(){i.Log.info("UserManager.removeUser: user removed from storage"),t._events.unload()}))},e.prototype.signinRedirect=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(t=Object.assign({},t)).request_type="si:r";var e={useReplaceToNavigate:t.useReplaceToNavigate};return this._signinStart(t,this._redirectNavigator,e).then((function(){i.Log.info("UserManager.signinRedirect: successful")}))},e.prototype.signinRedirectCallback=function(t){return this._signinEnd(t||this._redirectNavigator.url).then((function(t){return t.profile&&t.profile.sub?i.Log.info("UserManager.signinRedirectCallback: successful, signed in sub: ",t.profile.sub):i.Log.info("UserManager.signinRedirectCallback: no sub"),t}))},e.prototype.signinPopup=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(t=Object.assign({},t)).request_type="si:p";var e=t.redirect_uri||this.settings.popup_redirect_uri||this.settings.redirect_uri;return e?(t.redirect_uri=e,t.display="popup",this._signin(t,this._popupNavigator,{startUrl:e,popupWindowFeatures:t.popupWindowFeatures||this.settings.popupWindowFeatures,popupWindowTarget:t.popupWindowTarget||this.settings.popupWindowTarget}).then((function(t){return t&&(t.profile&&t.profile.sub?i.Log.info("UserManager.signinPopup: signinPopup successful, signed in sub: ",t.profile.sub):i.Log.info("UserManager.signinPopup: no sub")),t}))):(i.Log.error("UserManager.signinPopup: No popup_redirect_uri or redirect_uri configured"),Promise.reject(new Error("No popup_redirect_uri or redirect_uri configured")))},e.prototype.signinPopupCallback=function(t){return this._signinCallback(t,this._popupNavigator).then((function(t){return t&&(t.profile&&t.profile.sub?i.Log.info("UserManager.signinPopupCallback: successful, signed in sub: ",t.profile.sub):i.Log.info("UserManager.signinPopupCallback: no sub")),t})).catch((function(t){i.Log.error(t.message)}))},e.prototype.signinSilent=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e=Object.assign({},e),this._loadUser().then((function(r){return r&&r.refresh_token?(e.refresh_token=r.refresh_token,t._useRefreshToken(e)):(e.request_type="si:s",e.id_token_hint=e.id_token_hint||t.settings.includeIdTokenInSilentRenew&&r&&r.id_token,r&&t._settings.validateSubOnSilentRenew&&(i.Log.debug("UserManager.signinSilent, subject prior to silent renew: ",r.profile.sub),e.current_sub=r.profile.sub),t._signinSilentIframe(e))}))},e.prototype._useRefreshToken=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this._tokenClient.exchangeRefreshToken(e).then((function(e){return e?e.access_token?t._loadUser().then((function(r){if(r){var n=Promise.resolve();return e.id_token&&(n=t._validateIdTokenFromTokenRefreshToken(r.profile,e.id_token)),n.then((function(){return i.Log.debug("UserManager._useRefreshToken: refresh token response success"),r.id_token=e.id_token||r.id_token,r.access_token=e.access_token,r.refresh_token=e.refresh_token||r.refresh_token,r.expires_in=e.expires_in,t.storeUser(r).then((function(){return t._events.load(r),r}))}))}return null})):(i.Log.error("UserManager._useRefreshToken: No access token returned from token endpoint"),Promise.reject("No access token returned from token endpoint")):(i.Log.error("UserManager._useRefreshToken: No response returned from token endpoint"),Promise.reject("No response returned from token endpoint"))}))},e.prototype._validateIdTokenFromTokenRefreshToken=function(t,e){var r=this;return this._metadataService.getIssuer().then((function(n){return r.settings.getEpochTime().then((function(o){return r._joseUtil.validateJwtAttributes(e,n,r._settings.client_id,r._settings.clockSkew,o).then((function(e){return e?e.sub!==t.sub?(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: sub in id_token does not match current sub"),Promise.reject(new Error("sub in id_token does not match current sub"))):e.auth_time&&e.auth_time!==t.auth_time?(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: auth_time in id_token does not match original auth_time"),Promise.reject(new Error("auth_time in id_token does not match original auth_time"))):e.azp&&e.azp!==t.azp?(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: azp in id_token does not match original azp"),Promise.reject(new Error("azp in id_token does not match original azp"))):!e.azp&&t.azp?(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: azp not in id_token, but present in original id_token"),Promise.reject(new Error("azp not in id_token, but present in original id_token"))):void 0:(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: Failed to validate id_token"),Promise.reject(new Error("Failed to validate id_token")))}))}))}))},e.prototype._signinSilentIframe=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.redirect_uri||this.settings.silent_redirect_uri||this.settings.redirect_uri;return e?(t.redirect_uri=e,t.prompt=t.prompt||"none",this._signin(t,this._iframeNavigator,{startUrl:e,silentRequestTimeout:t.silentRequestTimeout||this.settings.silentRequestTimeout}).then((function(t){return t&&(t.profile&&t.profile.sub?i.Log.info("UserManager.signinSilent: successful, signed in sub: ",t.profile.sub):i.Log.info("UserManager.signinSilent: no sub")),t}))):(i.Log.error("UserManager.signinSilent: No silent_redirect_uri configured"),Promise.reject(new Error("No silent_redirect_uri configured")))},e.prototype.signinSilentCallback=function(t){return this._signinCallback(t,this._iframeNavigator).then((function(t){return t&&(t.profile&&t.profile.sub?i.Log.info("UserManager.signinSilentCallback: successful, signed in sub: ",t.profile.sub):i.Log.info("UserManager.signinSilentCallback: no sub")),t}))},e.prototype.signinCallback=function(t){var e=this;return this.readSigninResponseState(t).then((function(r){var n=r.state;return r.response,"si:r"===n.request_type?e.signinRedirectCallback(t):"si:p"===n.request_type?e.signinPopupCallback(t):"si:s"===n.request_type?e.signinSilentCallback(t):Promise.reject(new Error("invalid response_type in state"))}))},e.prototype.signoutCallback=function(t,e){var r=this;return this.readSignoutResponseState(t).then((function(n){var i=n.state,o=n.response;return i?"so:r"===i.request_type?r.signoutRedirectCallback(t):"so:p"===i.request_type?r.signoutPopupCallback(t,e):Promise.reject(new Error("invalid response_type in state")):o}))},e.prototype.querySessionStatus=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(e=Object.assign({},e)).request_type="si:s";var r=e.redirect_uri||this.settings.silent_redirect_uri||this.settings.redirect_uri;return r?(e.redirect_uri=r,e.prompt="none",e.response_type=e.response_type||this.settings.query_status_response_type,e.scope=e.scope||"openid",e.skipUserInfo=!0,this._signinStart(e,this._iframeNavigator,{startUrl:r,silentRequestTimeout:e.silentRequestTimeout||this.settings.silentRequestTimeout}).then((function(e){return t.processSigninResponse(e.url).then((function(t){if(i.Log.debug("UserManager.querySessionStatus: got signin response"),t.session_state&&t.profile.sub)return i.Log.info("UserManager.querySessionStatus: querySessionStatus success for sub: ",t.profile.sub),{session_state:t.session_state,sub:t.profile.sub,sid:t.profile.sid};i.Log.info("querySessionStatus successful, user not authenticated")})).catch((function(e){if(e.session_state&&t.settings.monitorAnonymousSession&&("login_required"==e.message||"consent_required"==e.message||"interaction_required"==e.message||"account_selection_required"==e.message))return i.Log.info("UserManager.querySessionStatus: querySessionStatus success for anonymous user"),{session_state:e.session_state};throw e}))}))):(i.Log.error("UserManager.querySessionStatus: No silent_redirect_uri configured"),Promise.reject(new Error("No silent_redirect_uri configured")))},e.prototype._signin=function(t,e){var r=this,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this._signinStart(t,e,n).then((function(e){return r._signinEnd(e.url,t)}))},e.prototype._signinStart=function(t,e){var r=this,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.prepare(n).then((function(e){return i.Log.debug("UserManager._signinStart: got navigator window handle"),r.createSigninRequest(t).then((function(t){return i.Log.debug("UserManager._signinStart: got signin request"),n.url=t.url,n.id=t.state.id,e.navigate(n)})).catch((function(t){throw e.close&&(i.Log.debug("UserManager._signinStart: Error after preparing navigator, closing navigator window"),e.close()),t}))}))},e.prototype._signinEnd=function(t){var e=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.processSigninResponse(t).then((function(t){i.Log.debug("UserManager._signinEnd: got signin response");var n=new a.User(t);if(r.current_sub){if(r.current_sub!==n.profile.sub)return i.Log.debug("UserManager._signinEnd: current user does not match user returned from signin. sub from signin: ",n.profile.sub),Promise.reject(new Error("login_required"));i.Log.debug("UserManager._signinEnd: current user matches user returned from signin")}return e.storeUser(n).then((function(){return i.Log.debug("UserManager._signinEnd: user stored"),e._events.load(n),n}))}))},e.prototype._signinCallback=function(t,e){i.Log.debug("UserManager._signinCallback");var r="query"===this._settings.response_mode||!this._settings.response_mode&&l.SigninRequest.isCode(this._settings.response_type)?"?":"#";return e.callback(t,void 0,r)},e.prototype.signoutRedirect=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(t=Object.assign({},t)).request_type="so:r";var e=t.post_logout_redirect_uri||this.settings.post_logout_redirect_uri;e&&(t.post_logout_redirect_uri=e);var r={useReplaceToNavigate:t.useReplaceToNavigate};return this._signoutStart(t,this._redirectNavigator,r).then((function(){i.Log.info("UserManager.signoutRedirect: successful")}))},e.prototype.signoutRedirectCallback=function(t){return this._signoutEnd(t||this._redirectNavigator.url).then((function(t){return i.Log.info("UserManager.signoutRedirectCallback: successful"),t}))},e.prototype.signoutPopup=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(t=Object.assign({},t)).request_type="so:p";var e=t.post_logout_redirect_uri||this.settings.popup_post_logout_redirect_uri||this.settings.post_logout_redirect_uri;return t.post_logout_redirect_uri=e,t.display="popup",t.post_logout_redirect_uri&&(t.state=t.state||{}),this._signout(t,this._popupNavigator,{startUrl:e,popupWindowFeatures:t.popupWindowFeatures||this.settings.popupWindowFeatures,popupWindowTarget:t.popupWindowTarget||this.settings.popupWindowTarget}).then((function(){i.Log.info("UserManager.signoutPopup: successful")}))},e.prototype.signoutPopupCallback=function(t,e){return void 0===e&&"boolean"==typeof t&&(e=t,t=null),this._popupNavigator.callback(t,e,"?").then((function(){i.Log.info("UserManager.signoutPopupCallback: successful")}))},e.prototype._signout=function(t,e){var r=this,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this._signoutStart(t,e,n).then((function(t){return r._signoutEnd(t.url)}))},e.prototype._signoutStart=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return arguments[1].prepare(r).then((function(n){return i.Log.debug("UserManager._signoutStart: got navigator window handle"),e._loadUser().then((function(o){return i.Log.debug("UserManager._signoutStart: loaded current user from storage"),(e._settings.revokeAccessTokenOnSignout?e._revokeInternal(o):Promise.resolve()).then((function(){var s=t.id_token_hint||o&&o.id_token;return s&&(i.Log.debug("UserManager._signoutStart: Setting id_token into signout request"),t.id_token_hint=s),e.removeUser().then((function(){return i.Log.debug("UserManager._signoutStart: user removed, creating signout request"),e.createSignoutRequest(t).then((function(t){return i.Log.debug("UserManager._signoutStart: got signout request"),r.url=t.url,t.state&&(r.id=t.state.id),n.navigate(r)}))}))}))})).catch((function(t){throw n.close&&(i.Log.debug("UserManager._signoutStart: Error after preparing navigator, closing navigator window"),n.close()),t}))}))},e.prototype._signoutEnd=function(t){return this.processSignoutResponse(t).then((function(t){return i.Log.debug("UserManager._signoutEnd: got signout response"),t}))},e.prototype.revokeAccessToken=function(){var t=this;return this._loadUser().then((function(e){return t._revokeInternal(e,!0).then((function(r){if(r)return i.Log.debug("UserManager.revokeAccessToken: removing token properties from user and re-storing"),e.access_token=null,e.refresh_token=null,e.expires_at=null,e.token_type=null,t.storeUser(e).then((function(){i.Log.debug("UserManager.revokeAccessToken: user stored"),t._events.load(e)}))}))})).then((function(){i.Log.info("UserManager.revokeAccessToken: access token revoked successfully")}))},e.prototype._revokeInternal=function(t,e){var r=this;if(t){var n=t.access_token,o=t.refresh_token;return this._revokeAccessTokenInternal(n,e).then((function(t){return r._revokeRefreshTokenInternal(o,e).then((function(e){return t||e||i.Log.debug("UserManager.revokeAccessToken: no need to revoke due to no token(s), or JWT format"),t||e}))}))}return Promise.resolve(!1)},e.prototype._revokeAccessTokenInternal=function(t,e){return!t||t.indexOf(".")>=0?Promise.resolve(!1):this._tokenRevocationClient.revoke(t,e).then((function(){return!0}))},e.prototype._revokeRefreshTokenInternal=function(t,e){return t?this._tokenRevocationClient.revoke(t,e,"refresh_token").then((function(){return!0})):Promise.resolve(!1)},e.prototype.startSilentRenew=function(){this._silentRenewService.start()},e.prototype.stopSilentRenew=function(){this._silentRenewService.stop()},e.prototype._loadUser=function(){return this._userStore.get(this._userStoreKey).then((function(t){return t?(i.Log.debug("UserManager._loadUser: user storageString loaded"),a.User.fromStorageString(t)):(i.Log.debug("UserManager._loadUser: no user storageString"),null)}))},e.prototype.storeUser=function(t){if(t){i.Log.debug("UserManager.storeUser: storing user");var e=t.toStorageString();return this._userStore.set(this._userStoreKey,e)}return i.Log.debug("storeUser.storeUser: removing user"),this._userStore.remove(this._userStoreKey)},n(e,[{key:"_redirectNavigator",get:function(){return this.settings.redirectNavigator}},{key:"_popupNavigator",get:function(){return this.settings.popupNavigator}},{key:"_iframeNavigator",get:function(){return this.settings.iframeNavigator}},{key:"_userStore",get:function(){return this.settings.userStore}},{key:"events",get:function(){return this._events}},{key:"_userStoreKey",get:function(){return"user:"+this.settings.authority+":"+this.settings.client_id}}]),e}(o.OidcClient)},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.UserManagerSettings=void 0;var n=function(){function t(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},n=r.popup_redirect_uri,i=r.popup_post_logout_redirect_uri,l=r.popupWindowFeatures,f=r.popupWindowTarget,g=r.silent_redirect_uri,d=r.silentRequestTimeout,p=r.automaticSilentRenew,v=void 0!==p&&p,y=r.validateSubOnSilentRenew,m=void 0!==y&&y,_=r.includeIdTokenInSilentRenew,S=void 0===_||_,w=r.monitorSession,b=void 0===w||w,F=r.monitorAnonymousSession,E=void 0!==F&&F,x=r.checkSessionInterval,A=void 0===x?2e3:x,k=r.stopCheckSessionOnError,P=void 0===k||k,C=r.query_status_response_type,T=r.revokeAccessTokenOnSignout,R=void 0!==T&&T,I=r.accessTokenExpiringNotificationTime,D=void 0===I?60:I,L=r.redirectNavigator,N=void 0===L?new o.RedirectNavigator:L,U=r.popupNavigator,O=void 0===U?new s.PopupNavigator:U,B=r.iframeNavigator,M=void 0===B?new a.IFrameNavigator:B,j=r.userStore,H=void 0===j?new u.WebStorageStateStore({store:c.Global.sessionStorage}):j;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e);var K=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,t.call(this,arguments[0]));return K._popup_redirect_uri=n,K._popup_post_logout_redirect_uri=i,K._popupWindowFeatures=l,K._popupWindowTarget=f,K._silent_redirect_uri=g,K._silentRequestTimeout=d,K._automaticSilentRenew=v,K._validateSubOnSilentRenew=m,K._includeIdTokenInSilentRenew=S,K._accessTokenExpiringNotificationTime=D,K._monitorSession=b,K._monitorAnonymousSession=E,K._checkSessionInterval=A,K._stopCheckSessionOnError=P,C?K._query_status_response_type=C:arguments[0]&&arguments[0].response_type?K._query_status_response_type=h.SigninRequest.isOidc(arguments[0].response_type)?"id_token":"code":K._query_status_response_type="id_token",K._revokeAccessTokenOnSignout=R,K._redirectNavigator=N,K._popupNavigator=O,K._iframeNavigator=M,K._userStore=H,K}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,t),n(e,[{key:"popup_redirect_uri",get:function(){return this._popup_redirect_uri}},{key:"popup_post_logout_redirect_uri",get:function(){return this._popup_post_logout_redirect_uri}},{key:"popupWindowFeatures",get:function(){return this._popupWindowFeatures}},{key:"popupWindowTarget",get:function(){return this._popupWindowTarget}},{key:"silent_redirect_uri",get:function(){return this._silent_redirect_uri}},{key:"silentRequestTimeout",get:function(){return this._silentRequestTimeout}},{key:"automaticSilentRenew",get:function(){return this._automaticSilentRenew}},{key:"validateSubOnSilentRenew",get:function(){return this._validateSubOnSilentRenew}},{key:"includeIdTokenInSilentRenew",get:function(){return this._includeIdTokenInSilentRenew}},{key:"accessTokenExpiringNotificationTime",get:function(){return this._accessTokenExpiringNotificationTime}},{key:"monitorSession",get:function(){return this._monitorSession}},{key:"monitorAnonymousSession",get:function(){return this._monitorAnonymousSession}},{key:"checkSessionInterval",get:function(){return this._checkSessionInterval}},{key:"stopCheckSessionOnError",get:function(){return this._stopCheckSessionOnError}},{key:"query_status_response_type",get:function(){return this._query_status_response_type}},{key:"revokeAccessTokenOnSignout",get:function(){return this._revokeAccessTokenOnSignout}},{key:"redirectNavigator",get:function(){return this._redirectNavigator}},{key:"popupNavigator",get:function(){return this._popupNavigator}},{key:"iframeNavigator",get:function(){return this._iframeNavigator}},{key:"userStore",get:function(){return this._userStore}}]),e}(i.OidcClientSettings)},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.RedirectNavigator=void 0;var n=function(){function t(t,e){for(var r=0;r1&&void 0!==arguments[1])||arguments[1];n.Log.debug("UserManagerEvents.load"),t.prototype.load.call(this,e),r&&this._userLoaded.raise(e)},e.prototype.unload=function(){n.Log.debug("UserManagerEvents.unload"),t.prototype.unload.call(this),this._userUnloaded.raise()},e.prototype.addUserLoaded=function(t){this._userLoaded.addHandler(t)},e.prototype.removeUserLoaded=function(t){this._userLoaded.removeHandler(t)},e.prototype.addUserUnloaded=function(t){this._userUnloaded.addHandler(t)},e.prototype.removeUserUnloaded=function(t){this._userUnloaded.removeHandler(t)},e.prototype.addSilentRenewError=function(t){this._silentRenewError.addHandler(t)},e.prototype.removeSilentRenewError=function(t){this._silentRenewError.removeHandler(t)},e.prototype._raiseSilentRenewError=function(t){n.Log.debug("UserManagerEvents._raiseSilentRenewError",t.message),this._silentRenewError.raise(t)},e.prototype.addUserSignedIn=function(t){this._userSignedIn.addHandler(t)},e.prototype.removeUserSignedIn=function(t){this._userSignedIn.removeHandler(t)},e.prototype._raiseUserSignedIn=function(){n.Log.debug("UserManagerEvents._raiseUserSignedIn"),this._userSignedIn.raise()},e.prototype.addUserSignedOut=function(t){this._userSignedOut.addHandler(t)},e.prototype.removeUserSignedOut=function(t){this._userSignedOut.removeHandler(t)},e.prototype._raiseUserSignedOut=function(){n.Log.debug("UserManagerEvents._raiseUserSignedOut"),this._userSignedOut.raise()},e.prototype.addUserSessionChanged=function(t){this._userSessionChanged.addHandler(t)},e.prototype.removeUserSessionChanged=function(t){this._userSessionChanged.removeHandler(t)},e.prototype._raiseUserSessionChanged=function(){n.Log.debug("UserManagerEvents._raiseUserSessionChanged"),this._userSessionChanged.raise()},e}(i.AccessTokenEvents)},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Timer=void 0;var n=function(){function t(t,e){for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:o.Global.timer,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e);var s=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,t.call(this,r));return s._timer=n,s._nowFunc=i||function(){return Date.now()/1e3},s}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,t),e.prototype.init=function(t){t<=0&&(t=1),t=parseInt(t);var e=this.now+t;if(this.expiration===e&&this._timerHandle)i.Log.debug("Timer.init timer "+this._name+" skipping initialization since already initialized for expiration:",this.expiration);else{this.cancel(),i.Log.debug("Timer.init timer "+this._name+" for duration:",t),this._expiration=e;var r=5;t{"use strict";e.in=e.kO=e.Pd=void 0;const n=r(671);var i,o,s;!function(t){t.Success="Success",t.RequiresRedirect="RequiresRedirect"}(i=e.Pd||(e.Pd={})),function(t){t.Redirect="Redirect",t.Success="Success",t.Failure="Failure",t.OperationCompleted="OperationCompleted"}(o=e.kO||(e.kO={}));class a{constructor(t){this.debug=t.debugEnabled,this.trace=t.traceEnabled}log(t,e){if(t==s.Trace&&this.trace||t==s.Debug&&this.debug){const r=t==s.Trace?"trce":"dbug";console.debug(`${r}: Microsoft.AspNetCore.Components.WebAssembly.Authentication.RemoteAuthenticationService[0]\n ${e}`)}}}!function(t){t[t.Trace=0]="Trace",t[t.Debug=1]="Debug"}(s=e.in||(e.in={}));class u{constructor(t,e){this._userManager=t,this._logger=e}async trySilentSignIn(){return this._intialSilentSignIn||(this._intialSilentSignIn=(async()=>{try{this.debug("Beginning initial silent sign in."),await this._userManager.signinSilent(),this.debug("Initial silent sign in succeeded.")}catch(t){t instanceof Error&&this.debug(`Initial silent sign in failed '${t.message}'`)}})()),this._intialSilentSignIn}async getUser(){window.parent!==window||window.opener||window.frameElement||!this._userManager.settings.redirect_uri||location.href.startsWith(this._userManager.settings.redirect_uri)||await this.trySilentSignIn();const t=await this._userManager.getUser();return t&&t.profile}async getAccessToken(t){this.trace("getAccessToken",t);const e=await this._userManager.getUser();if(function(t){return!(!t||!t.access_token||t.expired||!t.scopes)}(e)&&function(t,e){const r=new Set(e);if(t&&t.scopes)for(const e of t.scopes)if(!r.has(e))return!1;return!0}(t,e.scopes))return this.debug(`Valid access token present expiring at '${r(e.expires_in).toISOString()}'`),{status:i.Success,token:{grantedScopes:e.scopes,expires:r(e.expires_in),value:e.access_token}};try{const e=t&&t.scopes?{scope:t.scopes.join(" ")}:void 0;this.debug(`Provisioning a token silently for scopes '${null==e?void 0:e.scope}'`),this.trace("userManager.signinSilent",e);const n=await this._userManager.signinSilent(e);this.debug(`Provisioned an access token expiring at '${r(n.expires_in).toISOString()}'`);const o={status:i.Success,token:{grantedScopes:n.scopes,expires:r(n.expires_in),value:n.access_token}};return this.trace("getAccessToken-result",o),o}catch(t){return t instanceof Error&&this.debug(`Failed to provision a token silently '${t.message}'`),{status:i.RequiresRedirect}}function r(t){const e=new Date;return e.setTime(e.getTime()+1e3*t),e}}async signIn(t){if(this.trace("signIn",t),t.interactiveRequest)return this.debug("Interactive sign in starting."),this.signInInteractive(t);try{return this.debug("Silent sign in starting"),await this._userManager.clearStaleState(),await this._userManager.signinSilent(this.createArguments(void 0,t.interactiveRequest)),this.debug("Silent sign in succeeded"),this.success(t.state)}catch(e){return e instanceof Error&&this.debug(`Silent sign in failed, redirecting to the identity provider '${e.message}'.`),await this.signInInteractive(t)}}async signInInteractive(t){this.trace("signInInteractive",t);try{return await this._userManager.clearStaleState(),await this._userManager.signinRedirect(this.createArguments(t.state,t.interactiveRequest)),this.debug("Redirect sign in succeeded"),this.redirect()}catch(t){const e=this.getExceptionMessage(t);return this.debug(`Redirect sign in failed '${e}'.`),this.error(e)}}async completeSignIn(t){this.trace("completeSignIn",t);const e=await this.loginRequired(t),r=await this.stateExists(t);try{const e=await this._userManager.signinCallback(t);return window.self!==window.top?this.operationCompleted():(this.trace("completeSignIn-result",e),this.success(e&&e.state))}catch(t){return e||window.self!==window.top||!r?this.operationCompleted():this.error("There was an error signing in.")}}async signOut(t){this.trace("signOut",t);try{return await this._userManager.metadataService.getEndSessionEndpoint()?(await this._userManager.signoutRedirect(this.createArguments(t.state,t.interactiveRequest)),this.redirect()):(await this._userManager.removeUser(),this.success(t.state))}catch(t){const e=this.getExceptionMessage(t);return this.debug(`Sign out error '${e}'.`),this.error(e)}}async completeSignOut(t){this.trace("completeSignOut",t);try{if(await this.stateExists(t)){const e=await this._userManager.signoutCallback(t);return this.success(e&&e.state)}return this.operationCompleted()}catch(t){const e=this.getExceptionMessage(t);return this.debug(`Complete sign out error '${e}'`),this.error(e)}}getExceptionMessage(t){return function(t){return t&&t.error_description}(t)?t.error_description:function(t){return t&&t.message}(t)?t.message:t.toString()}async stateExists(t){const e=new URLSearchParams(new URL(t).search).get("state");return e&&this._userManager.settings.stateStore?await this._userManager.settings.stateStore.get(e):void 0}async loginRequired(t){const e=new URLSearchParams(new URL(t).search).get("error");return!(!e||!this._userManager.settings.stateStore)&&"login_required"===await this._userManager.settings.stateStore.get(e)}createArguments(t,e){return{useReplaceToNavigate:!0,data:t,scope:(null==e?void 0:e.scopes)?e.scopes.join(" "):void 0,...null==e?void 0:e.additionalRequestParameters}}error(t){return{status:o.Failure,errorMessage:t}}success(t){return{status:o.Success,state:t}}redirect(){return{status:o.Redirect}}operationCompleted(){return{status:o.OperationCompleted}}debug(t){var e;null===(e=this._logger)||void 0===e||e.log(s.Debug,t)}trace(t,e){var r;null===(r=this._logger)||void 0===r||r.log(s.Trace,`${t}: ${JSON.stringify(e)}`)}}class c{static init(t,e){return c._initialized||(c._initialized=c.initializeCore(t,new a(e))),c._initialized}static handleCallback(){return c.initializeCore()}static async initializeCore(t,e){const r=t||c.resolveCachedSettings(),n=c.resolveCachedLoggerOptions(),i=e||n&&new a(n);if(!t&&r&&!e&&i){const t=c.createUserManagerCore(r);window.parent!==window&&!window.opener&&window.frameElement&&t.settings.redirect_uri&&location.href.startsWith(t.settings.redirect_uri)&&(c.instance=new u(t,i),c._initialized=(async()=>{await c.instance.completeSignIn(location.href)})())}else if(t&&e){const r=await c.createUserManager(t);c.instance=new u(r,e),window.sessionStorage.setItem(`${c._infrastructureKey}.CachedJSLoggingOptions`,JSON.stringify({debugEnabled:e.debug,traceEnabled:e.trace}))}}static resolveCachedSettings(){const t=window.sessionStorage.getItem(`${c._infrastructureKey}.CachedAuthSettings`);return t?JSON.parse(t):void 0}static resolveCachedLoggerOptions(){const t=window.sessionStorage.getItem(`${c._infrastructureKey}.CachedJSLoggingOptions`);return t?JSON.parse(t):void 0}static getUser(){return c.instance.getUser()}static getAccessToken(t){return c.instance.getAccessToken(t)}static signIn(t){return c.instance.signIn(t)}static async completeSignIn(t){let e=this._pendingOperations[t];return e||(e=c.instance.completeSignIn(t),await e,delete this._pendingOperations[t]),e}static signOut(t){return c.instance.signOut(t)}static async completeSignOut(t){let e=this._pendingOperations[t];return e||(e=c.instance.completeSignOut(t),await e,delete this._pendingOperations[t]),e}static async createUserManager(t){let e;if(function(t){return t.hasOwnProperty("configurationEndpoint")}(t)){const r=await fetch(t.configurationEndpoint);if(!r.ok)throw new Error(`Could not load settings from '${t.configurationEndpoint}'`);e=await r.json()}else t.scope||(t.scope=t.defaultScopes.join(" ")),null===t.response_type&&delete t.response_type,e=t;return window.sessionStorage.setItem(`${c._infrastructureKey}.CachedAuthSettings`,JSON.stringify(e)),c.createUserManagerCore(e)}static createUserManagerCore(t){const e=new n.UserManager(t);return e.events.addUserSignedOut((async()=>{e.removeUser()})),e}}c._infrastructureKey="Microsoft.AspNetCore.Components.WebAssembly.Authentication",c._pendingOperations={},c.handleCallback(),window.AuthenticationService=c}},e={},function r(n){var i=e[n];if(void 0!==i)return i.exports;var o=e[n]={exports:{}};return t[n].call(o.exports,o,o.exports,r),o.exports}(981); +!function(t){"use strict";"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var e,r={exports:{}};e=function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=t,r.c=e,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)r.d(n,i,function(e){return t[e]}.bind(null,i));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=22)}([function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var r=0;r=4){for(var t=arguments.length,e=Array(t),r=0;r=3){for(var t=arguments.length,e=Array(t),r=0;r=2){for(var t=arguments.length,e=Array(t),r=0;r=1){for(var t=arguments.length,e=Array(t),r=0;r1&&void 0!==arguments[1]?arguments[1]:o.JsonService;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!e)throw i.Log.error("MetadataService: No settings passed to MetadataService"),new Error("settings");this._settings=e,this._jsonService=new r(["application/jwk-set+json"])}return t.prototype.resetSigningKeys=function(){this._settings=this._settings||{},this._settings.signingKeys=void 0},t.prototype.getMetadata=function(){var t=this;return this._settings.metadata?(i.Log.debug("MetadataService.getMetadata: Returning metadata from settings"),Promise.resolve(this._settings.metadata)):this.metadataUrl?(i.Log.debug("MetadataService.getMetadata: getting metadata from",this.metadataUrl),this._jsonService.getJson(this.metadataUrl).then((function(e){i.Log.debug("MetadataService.getMetadata: json received");var r=t._settings.metadataSeed||{};return t._settings.metadata=Object.assign({},r,e),t._settings.metadata}))):(i.Log.error("MetadataService.getMetadata: No authority or metadataUrl configured on settings"),Promise.reject(new Error("No authority or metadataUrl configured on settings")))},t.prototype.getIssuer=function(){return this._getMetadataProperty("issuer")},t.prototype.getAuthorizationEndpoint=function(){return this._getMetadataProperty("authorization_endpoint")},t.prototype.getUserInfoEndpoint=function(){return this._getMetadataProperty("userinfo_endpoint")},t.prototype.getTokenEndpoint=function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._getMetadataProperty("token_endpoint",t)},t.prototype.getCheckSessionIframe=function(){return this._getMetadataProperty("check_session_iframe",!0)},t.prototype.getEndSessionEndpoint=function(){return this._getMetadataProperty("end_session_endpoint",!0)},t.prototype.getRevocationEndpoint=function(){return this._getMetadataProperty("revocation_endpoint",!0)},t.prototype.getKeysEndpoint=function(){return this._getMetadataProperty("jwks_uri",!0)},t.prototype._getMetadataProperty=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return i.Log.debug("MetadataService.getMetadataProperty for: "+t),this.getMetadata().then((function(r){if(i.Log.debug("MetadataService.getMetadataProperty: metadata recieved"),void 0===r[t]){if(!0===e)return void i.Log.warn("MetadataService.getMetadataProperty: Metadata does not contain optional property "+t);throw i.Log.error("MetadataService.getMetadataProperty: Metadata does not contain property "+t),new Error("Metadata does not contain property "+t)}return r[t]}))},t.prototype.getSigningKeys=function(){var t=this;return this._settings.signingKeys?(i.Log.debug("MetadataService.getSigningKeys: Returning signingKeys from settings"),Promise.resolve(this._settings.signingKeys)):this._getMetadataProperty("jwks_uri").then((function(e){return i.Log.debug("MetadataService.getSigningKeys: jwks_uri received",e),t._jsonService.getJson(e).then((function(e){if(i.Log.debug("MetadataService.getSigningKeys: key set received",e),!e.keys)throw i.Log.error("MetadataService.getSigningKeys: Missing keys on keyset"),new Error("Missing keys on keyset");return t._settings.signingKeys=e.keys,t._settings.signingKeys}))}))},n(t,[{key:"metadataUrl",get:function(){return this._metadataUrl||(this._settings.metadataUrl?this._metadataUrl=this._settings.metadataUrl:(this._metadataUrl=this._settings.authority,this._metadataUrl&&this._metadataUrl.indexOf(s)<0&&("/"!==this._metadataUrl[this._metadataUrl.length-1]&&(this._metadataUrl+="/"),this._metadataUrl+=s))),this._metadataUrl}}]),t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.UrlUtility=void 0;var n=r(0),i=r(1);e.UrlUtility=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t)}return t.addQueryParam=function(t,e,r){return t.indexOf("?")<0&&(t+="?"),"?"!==t[t.length-1]&&(t+="&"),t+=encodeURIComponent(e),(t+="=")+encodeURIComponent(r)},t.parseUrlFragment=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.Global;"string"!=typeof t&&(t=r.location.href);var o=t.lastIndexOf(e);o>=0&&(t=t.substr(o+1)),"?"===e&&(o=t.indexOf("#"))>=0&&(t=t.substr(0,o));for(var s,a={},u=/([^&=]+)=([^&]*)/g,c=0;s=u.exec(t);)if(a[decodeURIComponent(s[1])]=decodeURIComponent(s[2].replace(/\+/g," ")),c++>50)return n.Log.error("UrlUtility.parseUrlFragment: response exceeded expected number of parameters",t),{error:"Response exceeded expected number of parameters"};for(var h in a)return a;return{}},t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.JoseUtil=void 0;var n=r(26),i=function(t){return t&&t.__esModule?t:{default:t}}(r(33));e.JoseUtil=(0,i.default)({jws:n.jws,KeyUtil:n.KeyUtil,X509:n.X509,crypto:n.crypto,hextob64u:n.hextob64u,b64tohex:n.b64tohex,AllowedSigningAlgs:n.AllowedSigningAlgs})},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.OidcClientSettings=void 0;var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i=function(){function t(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},r=e.authority,i=e.metadataUrl,o=e.metadata,h=e.signingKeys,l=e.metadataSeed,f=e.client_id,g=e.client_secret,d=e.response_type,p=void 0===d?"id_token":d,v=e.scope,y=void 0===v?"openid":v,m=e.redirect_uri,_=e.post_logout_redirect_uri,S=e.client_authentication,w=void 0===S?"client_secret_post":S,b=e.prompt,F=e.display,E=e.max_age,x=e.ui_locales,A=e.acr_values,k=e.resource,P=e.response_mode,C=e.filterProtocolClaims,T=void 0===C||C,R=e.loadUserInfo,I=void 0===R||R,D=e.staleStateAge,L=void 0===D?900:D,N=e.clockSkew,U=void 0===N?300:N,O=e.clockService,B=void 0===O?new s.ClockService:O,M=e.userInfoJwtIssuer,j=void 0===M?"OP":M,H=e.mergeClaims,K=void 0!==H&&H,V=e.stateStore,q=void 0===V?new a.WebStorageStateStore:V,J=e.ResponseValidatorCtor,W=void 0===J?u.ResponseValidator:J,z=e.MetadataServiceCtor,Y=void 0===z?c.MetadataService:z,G=e.extraQueryParams,$=void 0===G?{}:G,X=e.extraTokenParams,Q=void 0===X?{}:X;(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),this._authority=r,this._metadataUrl=i,this._metadata=o,this._metadataSeed=l,this._signingKeys=h,this._client_id=f,this._client_secret=g,this._response_type=p,this._scope=y,this._redirect_uri=m,this._post_logout_redirect_uri=_,this._client_authentication=w,this._prompt=b,this._display=F,this._max_age=E,this._ui_locales=x,this._acr_values=A,this._resource=k,this._response_mode=P,this._filterProtocolClaims=!!T,this._loadUserInfo=!!I,this._staleStateAge=L,this._clockSkew=U,this._clockService=B,this._userInfoJwtIssuer=j,this._mergeClaims=!!K,this._stateStore=q,this._validator=new W(this),this._metadataService=new Y(this),this._extraQueryParams="object"===(void 0===$?"undefined":n($))?$:{},this._extraTokenParams="object"===(void 0===Q?"undefined":n(Q))?Q:{}}return t.prototype.getEpochTime=function(){return this._clockService.getEpochTime()},i(t,[{key:"client_id",get:function(){return this._client_id},set:function(t){if(this._client_id)throw o.Log.error("OidcClientSettings.set_client_id: client_id has already been assigned."),new Error("client_id has already been assigned.");this._client_id=t}},{key:"client_secret",get:function(){return this._client_secret}},{key:"response_type",get:function(){return this._response_type}},{key:"scope",get:function(){return this._scope}},{key:"redirect_uri",get:function(){return this._redirect_uri}},{key:"post_logout_redirect_uri",get:function(){return this._post_logout_redirect_uri}},{key:"client_authentication",get:function(){return this._client_authentication}},{key:"prompt",get:function(){return this._prompt}},{key:"display",get:function(){return this._display}},{key:"max_age",get:function(){return this._max_age}},{key:"ui_locales",get:function(){return this._ui_locales}},{key:"acr_values",get:function(){return this._acr_values}},{key:"resource",get:function(){return this._resource}},{key:"response_mode",get:function(){return this._response_mode}},{key:"authority",get:function(){return this._authority},set:function(t){if(this._authority)throw o.Log.error("OidcClientSettings.set_authority: authority has already been assigned."),new Error("authority has already been assigned.");this._authority=t}},{key:"metadataUrl",get:function(){return this._metadataUrl||(this._metadataUrl=this.authority,this._metadataUrl&&this._metadataUrl.indexOf(h)<0&&("/"!==this._metadataUrl[this._metadataUrl.length-1]&&(this._metadataUrl+="/"),this._metadataUrl+=h)),this._metadataUrl}},{key:"metadata",get:function(){return this._metadata},set:function(t){this._metadata=t}},{key:"metadataSeed",get:function(){return this._metadataSeed},set:function(t){this._metadataSeed=t}},{key:"signingKeys",get:function(){return this._signingKeys},set:function(t){this._signingKeys=t}},{key:"filterProtocolClaims",get:function(){return this._filterProtocolClaims}},{key:"loadUserInfo",get:function(){return this._loadUserInfo}},{key:"staleStateAge",get:function(){return this._staleStateAge}},{key:"clockSkew",get:function(){return this._clockSkew}},{key:"userInfoJwtIssuer",get:function(){return this._userInfoJwtIssuer}},{key:"mergeClaims",get:function(){return this._mergeClaims}},{key:"stateStore",get:function(){return this._stateStore}},{key:"validator",get:function(){return this._validator}},{key:"metadataService",get:function(){return this._metadataService}},{key:"extraQueryParams",get:function(){return this._extraQueryParams},set:function(t){"object"===(void 0===t?"undefined":n(t))?this._extraQueryParams=t:this._extraQueryParams={}}},{key:"extraTokenParams",get:function(){return this._extraTokenParams},set:function(t){"object"===(void 0===t?"undefined":n(t))?this._extraTokenParams=t:this._extraTokenParams={}}}]),t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.WebStorageStateStore=void 0;var n=r(0),i=r(1);e.WebStorageStateStore=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.prefix,n=void 0===r?"oidc.":r,o=e.store,s=void 0===o?i.Global.localStorage:o;(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),this._store=s,this._prefix=n}return t.prototype.set=function(t,e){return n.Log.debug("WebStorageStateStore.set",t),t=this._prefix+t,this._store.setItem(t,e),Promise.resolve()},t.prototype.get=function(t){n.Log.debug("WebStorageStateStore.get",t),t=this._prefix+t;var e=this._store.getItem(t);return Promise.resolve(e)},t.prototype.remove=function(t){n.Log.debug("WebStorageStateStore.remove",t),t=this._prefix+t;var e=this._store.getItem(t);return this._store.removeItem(t),Promise.resolve(e)},t.prototype.getAllKeys=function(){n.Log.debug("WebStorageStateStore.getAllKeys");for(var t=[],e=0;e0&&void 0!==arguments[0]?arguments[0]:null,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.Global.XMLHttpRequest,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),e&&Array.isArray(e)?this._contentTypes=e.slice():this._contentTypes=[],this._contentTypes.push("application/json"),n&&this._contentTypes.push("application/jwt"),this._XMLHttpRequest=r,this._jwtHandler=n}return t.prototype.getJson=function(t,e){var r=this;if(!t)throw n.Log.error("JsonService.getJson: No url passed"),new Error("url");return n.Log.debug("JsonService.getJson, url: ",t),new Promise((function(i,o){var s=new r._XMLHttpRequest;s.open("GET",t);var a=r._contentTypes,u=r._jwtHandler;s.onload=function(){if(n.Log.debug("JsonService.getJson: HTTP response received, status",s.status),200===s.status){var e=s.getResponseHeader("Content-Type");if(e){var r=a.find((function(t){if(e.startsWith(t))return!0}));if("application/jwt"==r)return void u(s).then(i,o);if(r)try{return void i(JSON.parse(s.responseText))}catch(t){return n.Log.error("JsonService.getJson: Error parsing JSON response",t.message),void o(t)}}o(Error("Invalid response Content-Type: "+e+", from URL: "+t))}else o(Error(s.statusText+" ("+s.status+")"))},s.onerror=function(){n.Log.error("JsonService.getJson: network error"),o(Error("Network Error"))},e&&(n.Log.debug("JsonService.getJson: token passed, setting Authorization header"),s.setRequestHeader("Authorization","Bearer "+e)),s.send()}))},t.prototype.postForm=function(t,e,r){var i=this;if(!t)throw n.Log.error("JsonService.postForm: No url passed"),new Error("url");return n.Log.debug("JsonService.postForm, url: ",t),new Promise((function(o,s){var a=new i._XMLHttpRequest;a.open("POST",t);var u=i._contentTypes;a.onload=function(){if(n.Log.debug("JsonService.postForm: HTTP response received, status",a.status),200!==a.status){if(400===a.status&&(r=a.getResponseHeader("Content-Type"))&&u.find((function(t){if(r.startsWith(t))return!0})))try{var e=JSON.parse(a.responseText);if(e&&e.error)return n.Log.error("JsonService.postForm: Error from server: ",e.error),void s(new Error(e.error))}catch(t){return n.Log.error("JsonService.postForm: Error parsing JSON response",t.message),void s(t)}s(Error(a.statusText+" ("+a.status+")"))}else{var r;if((r=a.getResponseHeader("Content-Type"))&&u.find((function(t){if(r.startsWith(t))return!0})))try{return void o(JSON.parse(a.responseText))}catch(t){return n.Log.error("JsonService.postForm: Error parsing JSON response",t.message),void s(t)}s(Error("Invalid response Content-Type: "+r+", from URL: "+t))}},a.onerror=function(){n.Log.error("JsonService.postForm: network error"),s(Error("Network Error"))};var c="";for(var h in e){var l=e[h];l&&(c.length>0&&(c+="&"),c+=encodeURIComponent(h),c+="=",c+=encodeURIComponent(l))}a.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),void 0!==r&&a.setRequestHeader("Authorization","Basic "+btoa(r)),a.send(c)}))},t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.SigninRequest=void 0;var n=r(0),i=r(3),o=r(13);e.SigninRequest=function(){function t(e){var r=e.url,s=e.client_id,a=e.redirect_uri,u=e.response_type,c=e.scope,h=e.authority,l=e.data,f=e.prompt,g=e.display,d=e.max_age,p=e.ui_locales,v=e.id_token_hint,y=e.login_hint,m=e.acr_values,_=e.resource,S=e.response_mode,w=e.request,b=e.request_uri,F=e.extraQueryParams,E=e.request_type,x=e.client_secret,A=e.extraTokenParams,k=e.skipUserInfo;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!r)throw n.Log.error("SigninRequest.ctor: No url passed"),new Error("url");if(!s)throw n.Log.error("SigninRequest.ctor: No client_id passed"),new Error("client_id");if(!a)throw n.Log.error("SigninRequest.ctor: No redirect_uri passed"),new Error("redirect_uri");if(!u)throw n.Log.error("SigninRequest.ctor: No response_type passed"),new Error("response_type");if(!c)throw n.Log.error("SigninRequest.ctor: No scope passed"),new Error("scope");if(!h)throw n.Log.error("SigninRequest.ctor: No authority passed"),new Error("authority");var P=t.isOidc(u),C=t.isCode(u);S||(S=t.isCode(u)?"query":null),this.state=new o.SigninState({nonce:P,data:l,client_id:s,authority:h,redirect_uri:a,code_verifier:C,request_type:E,response_mode:S,client_secret:x,scope:c,extraTokenParams:A,skipUserInfo:k}),r=i.UrlUtility.addQueryParam(r,"client_id",s),r=i.UrlUtility.addQueryParam(r,"redirect_uri",a),r=i.UrlUtility.addQueryParam(r,"response_type",u),r=i.UrlUtility.addQueryParam(r,"scope",c),r=i.UrlUtility.addQueryParam(r,"state",this.state.id),P&&(r=i.UrlUtility.addQueryParam(r,"nonce",this.state.nonce)),C&&(r=i.UrlUtility.addQueryParam(r,"code_challenge",this.state.code_challenge),r=i.UrlUtility.addQueryParam(r,"code_challenge_method","S256"));var T={prompt:f,display:g,max_age:d,ui_locales:p,id_token_hint:v,login_hint:y,acr_values:m,resource:_,request:w,request_uri:b,response_mode:S};for(var R in T)T[R]&&(r=i.UrlUtility.addQueryParam(r,R,T[R]));for(var I in F)r=i.UrlUtility.addQueryParam(r,I,F[I]);this.url=r}return t.isOidc=function(t){return!!t.split(/\s+/g).filter((function(t){return"id_token"===t}))[0]},t.isOAuth=function(t){return!!t.split(/\s+/g).filter((function(t){return"token"===t}))[0]},t.isCode=function(t){return!!t.split(/\s+/g).filter((function(t){return"code"===t}))[0]},t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.State=void 0;var n=function(){function t(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},r=e.id,n=e.data,i=e.created,s=e.request_type;(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),this._id=r||(0,o.default)(),this._data=n,this._created="number"==typeof i&&i>0?i:parseInt(Date.now()/1e3),this._request_type=s}return t.prototype.toStorageString=function(){return i.Log.debug("State.toStorageString"),JSON.stringify({id:this.id,data:this.data,created:this.created,request_type:this.request_type})},t.fromStorageString=function(e){return i.Log.debug("State.fromStorageString"),new t(JSON.parse(e))},t.clearStaleState=function(e,r){var n=Date.now()/1e3-r;return e.getAllKeys().then((function(r){i.Log.debug("State.clearStaleState: got keys",r);for(var o=[],s=function(s){var a=r[s];u=e.get(a).then((function(r){var o=!1;if(r)try{var s=t.fromStorageString(r);i.Log.debug("State.clearStaleState: got item from key: ",a,s.created),s.created<=n&&(o=!0)}catch(t){i.Log.error("State.clearStaleState: Error parsing state for key",a,t.message),o=!0}else i.Log.debug("State.clearStaleState: no item in storage for key: ",a),o=!0;if(o)return i.Log.debug("State.clearStaleState: removed item for key: ",a),e.remove(a)})),o.push(u)},a=0;a0&&void 0!==arguments[0]?arguments[0]:{};(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),e instanceof o.OidcClientSettings?this._settings=e:this._settings=new o.OidcClientSettings(e)}return t.prototype.createSigninRequest=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.response_type,n=e.scope,o=e.redirect_uri,s=e.data,u=e.state,c=e.prompt,h=e.display,l=e.max_age,f=e.ui_locales,g=e.id_token_hint,d=e.login_hint,p=e.acr_values,v=e.resource,y=e.request,m=e.request_uri,_=e.response_mode,S=e.extraQueryParams,w=e.extraTokenParams,b=e.request_type,F=e.skipUserInfo,E=arguments[1];i.Log.debug("OidcClient.createSigninRequest");var x=this._settings.client_id;r=r||this._settings.response_type,n=n||this._settings.scope,o=o||this._settings.redirect_uri,c=c||this._settings.prompt,h=h||this._settings.display,l=l||this._settings.max_age,f=f||this._settings.ui_locales,p=p||this._settings.acr_values,v=v||this._settings.resource,_=_||this._settings.response_mode,S=S||this._settings.extraQueryParams,w=w||this._settings.extraTokenParams;var A=this._settings.authority;return a.SigninRequest.isCode(r)&&"code"!==r?Promise.reject(new Error("OpenID Connect hybrid flow is not supported")):this._metadataService.getAuthorizationEndpoint().then((function(e){i.Log.debug("OidcClient.createSigninRequest: Received authorization endpoint",e);var k=new a.SigninRequest({url:e,client_id:x,redirect_uri:o,response_type:r,scope:n,data:s||u,authority:A,prompt:c,display:h,max_age:l,ui_locales:f,id_token_hint:g,login_hint:d,acr_values:p,resource:v,request:y,request_uri:m,extraQueryParams:S,extraTokenParams:w,request_type:b,response_mode:_,client_secret:t._settings.client_secret,skipUserInfo:F}),P=k.state;return(E=E||t._stateStore).set(P.id,P.toStorageString()).then((function(){return k}))}))},t.prototype.readSigninResponseState=function(t,e){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];i.Log.debug("OidcClient.readSigninResponseState");var n="query"===this._settings.response_mode||!this._settings.response_mode&&a.SigninRequest.isCode(this._settings.response_type)?"?":"#",o=new u.SigninResponse(t,n);return o.state?(e=e||this._stateStore,(r?e.remove.bind(e):e.get.bind(e))(o.state).then((function(t){if(!t)throw i.Log.error("OidcClient.readSigninResponseState: No matching state found in storage"),new Error("No matching state found in storage");return{state:l.SigninState.fromStorageString(t),response:o}}))):(i.Log.error("OidcClient.readSigninResponseState: No state in response"),Promise.reject(new Error("No state in response")))},t.prototype.processSigninResponse=function(t,e){var r=this;return i.Log.debug("OidcClient.processSigninResponse"),this.readSigninResponseState(t,e,!0).then((function(t){var e=t.state,n=t.response;return i.Log.debug("OidcClient.processSigninResponse: Received state from storage; validating response"),r._validator.validateSigninResponse(e,n)}))},t.prototype.createSignoutRequest=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.id_token_hint,n=e.data,o=e.state,s=e.post_logout_redirect_uri,a=e.extraQueryParams,u=e.request_type,h=arguments[1];return i.Log.debug("OidcClient.createSignoutRequest"),s=s||this._settings.post_logout_redirect_uri,a=a||this._settings.extraQueryParams,this._metadataService.getEndSessionEndpoint().then((function(e){if(!e)throw i.Log.error("OidcClient.createSignoutRequest: No end session endpoint url returned"),new Error("no end session endpoint");i.Log.debug("OidcClient.createSignoutRequest: Received end session endpoint",e);var l=new c.SignoutRequest({url:e,id_token_hint:r,post_logout_redirect_uri:s,data:n||o,extraQueryParams:a,request_type:u}),f=l.state;return f&&(i.Log.debug("OidcClient.createSignoutRequest: Signout request has state to persist"),(h=h||t._stateStore).set(f.id,f.toStorageString())),l}))},t.prototype.readSignoutResponseState=function(t,e){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];i.Log.debug("OidcClient.readSignoutResponseState");var n=new h.SignoutResponse(t);if(!n.state)return i.Log.debug("OidcClient.readSignoutResponseState: No state in response"),n.error?(i.Log.warn("OidcClient.readSignoutResponseState: Response was error: ",n.error),Promise.reject(new s.ErrorResponse(n))):Promise.resolve({state:void 0,response:n});var o=n.state;return e=e||this._stateStore,(r?e.remove.bind(e):e.get.bind(e))(o).then((function(t){if(!t)throw i.Log.error("OidcClient.readSignoutResponseState: No matching state found in storage"),new Error("No matching state found in storage");return{state:f.State.fromStorageString(t),response:n}}))},t.prototype.processSignoutResponse=function(t,e){var r=this;return i.Log.debug("OidcClient.processSignoutResponse"),this.readSignoutResponseState(t,e,!0).then((function(t){var e=t.state,n=t.response;return e?(i.Log.debug("OidcClient.processSignoutResponse: Received state from storage; validating response"),r._validator.validateSignoutResponse(e,n)):(i.Log.debug("OidcClient.processSignoutResponse: No state from storage; skipping validating response"),n)}))},t.prototype.clearStaleState=function(t){return i.Log.debug("OidcClient.clearStaleState"),t=t||this._stateStore,f.State.clearStaleState(t,this.settings.staleStateAge)},n(t,[{key:"_stateStore",get:function(){return this.settings.stateStore}},{key:"_validator",get:function(){return this.settings.validator}},{key:"_metadataService",get:function(){return this.settings.metadataService}},{key:"settings",get:function(){return this._settings}},{key:"metadataService",get:function(){return this._metadataService}}]),t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.TokenClient=void 0;var n=r(7),i=r(2),o=r(0);e.TokenClient=function(){function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.JsonService,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.MetadataService;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!e)throw o.Log.error("TokenClient.ctor: No settings passed"),new Error("settings");this._settings=e,this._jsonService=new r,this._metadataService=new s(this._settings)}return t.prototype.exchangeCode=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(e=Object.assign({},e)).grant_type=e.grant_type||"authorization_code",e.client_id=e.client_id||this._settings.client_id,e.client_secret=e.client_secret||this._settings.client_secret,e.redirect_uri=e.redirect_uri||this._settings.redirect_uri;var r=void 0,n=e._client_authentication||this._settings._client_authentication;return delete e._client_authentication,e.code?e.redirect_uri?e.code_verifier?e.client_id?e.client_secret||"client_secret_basic"!=n?("client_secret_basic"==n&&(r=e.client_id+":"+e.client_secret,delete e.client_id,delete e.client_secret),this._metadataService.getTokenEndpoint(!1).then((function(n){return o.Log.debug("TokenClient.exchangeCode: Received token endpoint"),t._jsonService.postForm(n,e,r).then((function(t){return o.Log.debug("TokenClient.exchangeCode: response received"),t}))}))):(o.Log.error("TokenClient.exchangeCode: No client_secret passed"),Promise.reject(new Error("A client_secret is required"))):(o.Log.error("TokenClient.exchangeCode: No client_id passed"),Promise.reject(new Error("A client_id is required"))):(o.Log.error("TokenClient.exchangeCode: No code_verifier passed"),Promise.reject(new Error("A code_verifier is required"))):(o.Log.error("TokenClient.exchangeCode: No redirect_uri passed"),Promise.reject(new Error("A redirect_uri is required"))):(o.Log.error("TokenClient.exchangeCode: No code passed"),Promise.reject(new Error("A code is required")))},t.prototype.exchangeRefreshToken=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(e=Object.assign({},e)).grant_type=e.grant_type||"refresh_token",e.client_id=e.client_id||this._settings.client_id,e.client_secret=e.client_secret||this._settings.client_secret;var r=void 0,n=e._client_authentication||this._settings._client_authentication;return delete e._client_authentication,e.refresh_token?e.client_id?("client_secret_basic"==n&&(r=e.client_id+":"+e.client_secret,delete e.client_id,delete e.client_secret),this._metadataService.getTokenEndpoint(!1).then((function(n){return o.Log.debug("TokenClient.exchangeRefreshToken: Received token endpoint"),t._jsonService.postForm(n,e,r).then((function(t){return o.Log.debug("TokenClient.exchangeRefreshToken: response received"),t}))}))):(o.Log.error("TokenClient.exchangeRefreshToken: No client_id passed"),Promise.reject(new Error("A client_id is required"))):(o.Log.error("TokenClient.exchangeRefreshToken: No refresh_token passed"),Promise.reject(new Error("A refresh_token is required")))},t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.ErrorResponse=void 0;var n=r(0);e.ErrorResponse=function(t){function e(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=r.error,o=r.error_description,s=r.error_uri,a=r.state,u=r.session_state;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),!i)throw n.Log.error("No error passed to ErrorResponse"),new Error("error");var c=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,t.call(this,o||i));return c.name="ErrorResponse",c.error=i,c.error_description=o,c.error_uri=s,c.state=a,c.session_state=u,c}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,t),e}(Error)},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.SigninState=void 0;var n=function(){function t(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},n=r.nonce,i=r.authority,o=r.client_id,u=r.redirect_uri,c=r.code_verifier,h=r.response_mode,l=r.client_secret,f=r.scope,g=r.extraTokenParams,d=r.skipUserInfo;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e);var p=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,t.call(this,arguments[0]));if(!0===n?p._nonce=(0,a.default)():n&&(p._nonce=n),!0===c?p._code_verifier=(0,a.default)()+(0,a.default)()+(0,a.default)():c&&(p._code_verifier=c),p.code_verifier){var v=s.JoseUtil.hashString(p.code_verifier,"SHA256");p._code_challenge=s.JoseUtil.hexToBase64Url(v)}return p._redirect_uri=u,p._authority=i,p._client_id=o,p._response_mode=h,p._client_secret=l,p._scope=f,p._extraTokenParams=g,p._skipUserInfo=d,p}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,t),e.prototype.toStorageString=function(){return i.Log.debug("SigninState.toStorageString"),JSON.stringify({id:this.id,data:this.data,created:this.created,request_type:this.request_type,nonce:this.nonce,code_verifier:this.code_verifier,redirect_uri:this.redirect_uri,authority:this.authority,client_id:this.client_id,response_mode:this.response_mode,client_secret:this.client_secret,scope:this.scope,extraTokenParams:this.extraTokenParams,skipUserInfo:this.skipUserInfo})},e.fromStorageString=function(t){return i.Log.debug("SigninState.fromStorageString"),new e(JSON.parse(t))},n(e,[{key:"nonce",get:function(){return this._nonce}},{key:"authority",get:function(){return this._authority}},{key:"client_id",get:function(){return this._client_id}},{key:"redirect_uri",get:function(){return this._redirect_uri}},{key:"code_verifier",get:function(){return this._code_verifier}},{key:"code_challenge",get:function(){return this._code_challenge}},{key:"response_mode",get:function(){return this._response_mode}},{key:"client_secret",get:function(){return this._client_secret}},{key:"scope",get:function(){return this._scope}},{key:"extraTokenParams",get:function(){return this._extraTokenParams}},{key:"skipUserInfo",get:function(){return this._skipUserInfo}}]),e}(o.State)},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){return("undefined"!=n&&null!==n&&void 0!==n.getRandomValues?i:o)().replace(/-/g,"")};var n="undefined"!=typeof window?window.crypto||window.msCrypto:null;function i(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(function(t){return(t^n.getRandomValues(new Uint8Array(1))[0]&15>>t/4).toString(16)}))}function o(){return([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(function(t){return(t^16*Math.random()>>t/4).toString(16)}))}t.exports=e.default},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.User=void 0;var n=function(){function t(t,e){for(var r=0;r0){var r=parseInt(Date.now()/1e3);this.expires_at=r+e}}},{key:"expired",get:function(){var t=this.expires_in;if(void 0!==t)return t<=0}},{key:"scopes",get:function(){return(this.scope||"").split(" ")}}]),t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.AccessTokenEvents=void 0;var n=r(0),i=r(46);e.AccessTokenEvents=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.accessTokenExpiringNotificationTime,n=void 0===r?60:r,o=e.accessTokenExpiringTimer,s=void 0===o?new i.Timer("Access token expiring"):o,a=e.accessTokenExpiredTimer,u=void 0===a?new i.Timer("Access token expired"):a;(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),this._accessTokenExpiringNotificationTime=n,this._accessTokenExpiring=s,this._accessTokenExpired=u}return t.prototype.load=function(t){if(t.access_token&&void 0!==t.expires_in){var e=t.expires_in;if(n.Log.debug("AccessTokenEvents.load: access token present, remaining duration:",e),e>0){var r=e-this._accessTokenExpiringNotificationTime;r<=0&&(r=1),n.Log.debug("AccessTokenEvents.load: registering expiring timer in:",r),this._accessTokenExpiring.init(r)}else n.Log.debug("AccessTokenEvents.load: canceling existing expiring timer becase we're past expiration."),this._accessTokenExpiring.cancel();var i=e+1;n.Log.debug("AccessTokenEvents.load: registering expired timer in:",i),this._accessTokenExpired.init(i)}else this._accessTokenExpiring.cancel(),this._accessTokenExpired.cancel()},t.prototype.unload=function(){n.Log.debug("AccessTokenEvents.unload: canceling existing access token timers"),this._accessTokenExpiring.cancel(),this._accessTokenExpired.cancel()},t.prototype.addAccessTokenExpiring=function(t){this._accessTokenExpiring.addHandler(t)},t.prototype.removeAccessTokenExpiring=function(t){this._accessTokenExpiring.removeHandler(t)},t.prototype.addAccessTokenExpired=function(t){this._accessTokenExpired.addHandler(t)},t.prototype.removeAccessTokenExpired=function(t){this._accessTokenExpired.removeHandler(t)},t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.Event=void 0;var n=r(0);e.Event=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this._name=e,this._callbacks=[]}return t.prototype.addHandler=function(t){this._callbacks.push(t)},t.prototype.removeHandler=function(t){var e=this._callbacks.findIndex((function(e){return e===t}));e>=0&&this._callbacks.splice(e,1)},t.prototype.raise=function(){n.Log.debug("Event: Raising event: "+this._name);for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:o.CheckSessionIFrame,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:s.Global.timer;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!e)throw i.Log.error("SessionMonitor.ctor: No user manager passed to SessionMonitor"),new Error("userManager");this._userManager=e,this._CheckSessionIFrameCtor=n,this._timer=a,this._userManager.events.addUserLoaded(this._start.bind(this)),this._userManager.events.addUserUnloaded(this._stop.bind(this)),Promise.resolve(this._userManager.getUser().then((function(t){t?r._start(t):r._settings.monitorAnonymousSession&&r._userManager.querySessionStatus().then((function(t){var e={session_state:t.session_state};t.sub&&t.sid&&(e.profile={sub:t.sub,sid:t.sid}),r._start(e)})).catch((function(t){i.Log.error("SessionMonitor ctor: error from querySessionStatus:",t.message)}))})).catch((function(t){i.Log.error("SessionMonitor ctor: error from getUser:",t.message)})))}return t.prototype._start=function(t){var e=this,r=t.session_state;r&&(t.profile?(this._sub=t.profile.sub,this._sid=t.profile.sid,i.Log.debug("SessionMonitor._start: session_state:",r,", sub:",this._sub)):(this._sub=void 0,this._sid=void 0,i.Log.debug("SessionMonitor._start: session_state:",r,", anonymous user")),this._checkSessionIFrame?this._checkSessionIFrame.start(r):this._metadataService.getCheckSessionIframe().then((function(t){if(t){i.Log.debug("SessionMonitor._start: Initializing check session iframe");var n=e._client_id,o=e._checkSessionInterval,s=e._stopCheckSessionOnError;e._checkSessionIFrame=new e._CheckSessionIFrameCtor(e._callback.bind(e),n,t,o,s),e._checkSessionIFrame.load().then((function(){e._checkSessionIFrame.start(r)}))}else i.Log.warn("SessionMonitor._start: No check session iframe found in the metadata")})).catch((function(t){i.Log.error("SessionMonitor._start: Error from getCheckSessionIframe:",t.message)})))},t.prototype._stop=function(){var t=this;if(this._sub=void 0,this._sid=void 0,this._checkSessionIFrame&&(i.Log.debug("SessionMonitor._stop"),this._checkSessionIFrame.stop()),this._settings.monitorAnonymousSession)var e=this._timer.setInterval((function(){t._timer.clearInterval(e),t._userManager.querySessionStatus().then((function(e){var r={session_state:e.session_state};e.sub&&e.sid&&(r.profile={sub:e.sub,sid:e.sid}),t._start(r)})).catch((function(t){i.Log.error("SessionMonitor: error from querySessionStatus:",t.message)}))}),1e3)},t.prototype._callback=function(){var t=this;this._userManager.querySessionStatus().then((function(e){var r=!0;e?e.sub===t._sub?(r=!1,t._checkSessionIFrame.start(e.session_state),e.sid===t._sid?i.Log.debug("SessionMonitor._callback: Same sub still logged in at OP, restarting check session iframe; session_state:",e.session_state):(i.Log.debug("SessionMonitor._callback: Same sub still logged in at OP, session state has changed, restarting check session iframe; session_state:",e.session_state),t._userManager.events._raiseUserSessionChanged())):i.Log.debug("SessionMonitor._callback: Different subject signed into OP:",e.sub):i.Log.debug("SessionMonitor._callback: Subject no longer signed into OP"),r&&(t._sub?(i.Log.debug("SessionMonitor._callback: SessionMonitor._callback; raising signed out event"),t._userManager.events._raiseUserSignedOut()):(i.Log.debug("SessionMonitor._callback: SessionMonitor._callback; raising signed in event"),t._userManager.events._raiseUserSignedIn()))})).catch((function(e){t._sub&&(i.Log.debug("SessionMonitor._callback: Error calling queryCurrentSigninSession; raising signed out event",e.message),t._userManager.events._raiseUserSignedOut())}))},n(t,[{key:"_settings",get:function(){return this._userManager.settings}},{key:"_metadataService",get:function(){return this._userManager.metadataService}},{key:"_client_id",get:function(){return this._settings.client_id}},{key:"_checkSessionInterval",get:function(){return this._settings.checkSessionInterval}},{key:"_stopCheckSessionOnError",get:function(){return this._settings.stopCheckSessionOnError}}]),t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.CheckSessionIFrame=void 0;var n=r(0);e.CheckSessionIFrame=function(){function t(e,r,n,i){var o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4];(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,t),this._callback=e,this._client_id=r,this._url=n,this._interval=i||2e3,this._stopOnError=o;var s=n.indexOf("/",n.indexOf("//")+2);this._frame_origin=n.substr(0,s),this._frame=window.document.createElement("iframe"),this._frame.style.visibility="hidden",this._frame.style.position="absolute",this._frame.style.display="none",this._frame.width=0,this._frame.height=0,this._frame.src=n}return t.prototype.load=function(){var t=this;return new Promise((function(e){t._frame.onload=function(){e()},window.document.body.appendChild(t._frame),t._boundMessageEvent=t._message.bind(t),window.addEventListener("message",t._boundMessageEvent,!1)}))},t.prototype._message=function(t){t.origin===this._frame_origin&&t.source===this._frame.contentWindow&&("error"===t.data?(n.Log.error("CheckSessionIFrame: error message from check session op iframe"),this._stopOnError&&this.stop()):"changed"===t.data?(n.Log.debug("CheckSessionIFrame: changed message from check session op iframe"),this.stop(),this._callback()):n.Log.debug("CheckSessionIFrame: "+t.data+" message from check session op iframe"))},t.prototype.start=function(t){var e=this;if(this._session_state!==t){n.Log.debug("CheckSessionIFrame.start"),this.stop(),this._session_state=t;var r=function(){e._frame.contentWindow.postMessage(e._client_id+" "+e._session_state,e._frame_origin)};r(),this._timer=window.setInterval(r,this._interval)}},t.prototype.stop=function(){this._session_state=null,this._timer&&(n.Log.debug("CheckSessionIFrame.stop"),window.clearInterval(this._timer),this._timer=null)},t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.TokenRevocationClient=void 0;var n=r(0),i=r(2),o=r(1);e.TokenRevocationClient=function(){function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o.Global.XMLHttpRequest,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.MetadataService;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!e)throw n.Log.error("TokenRevocationClient.ctor: No settings provided"),new Error("No settings provided.");this._settings=e,this._XMLHttpRequestCtor=r,this._metadataService=new s(this._settings)}return t.prototype.revoke=function(t,e){var r=this,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"access_token";if(!t)throw n.Log.error("TokenRevocationClient.revoke: No token provided"),new Error("No token provided.");if("access_token"!==i&&"refresh_token"!=i)throw n.Log.error("TokenRevocationClient.revoke: Invalid token type"),new Error("Invalid token type.");return this._metadataService.getRevocationEndpoint().then((function(o){if(o){n.Log.debug("TokenRevocationClient.revoke: Revoking "+i);var s=r._settings.client_id,a=r._settings.client_secret;return r._revoke(o,s,a,t,i)}if(e)throw n.Log.error("TokenRevocationClient.revoke: Revocation not supported"),new Error("Revocation not supported")}))},t.prototype._revoke=function(t,e,r,i,o){var s=this;return new Promise((function(a,u){var c=new s._XMLHttpRequestCtor;c.open("POST",t),c.onload=function(){n.Log.debug("TokenRevocationClient.revoke: HTTP response received, status",c.status),200===c.status?a():u(Error(c.statusText+" ("+c.status+")"))},c.onerror=function(){n.Log.debug("TokenRevocationClient.revoke: Network Error."),u("Network Error")};var h="client_id="+encodeURIComponent(e);r&&(h+="&client_secret="+encodeURIComponent(r)),h+="&token_type_hint="+encodeURIComponent(o),h+="&token="+encodeURIComponent(i),c.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),c.send(h)}))},t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.CordovaPopupWindow=void 0;var n=function(){function t(t,e){for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:o.MetadataService,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:s.UserInfoService,u=arguments.length>3&&void 0!==arguments[3]?arguments[3]:c.JoseUtil,h=arguments.length>4&&void 0!==arguments[4]?arguments[4]:a.TokenClient;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!e)throw i.Log.error("ResponseValidator.ctor: No settings passed to ResponseValidator"),new Error("settings");this._settings=e,this._metadataService=new r(this._settings),this._userInfoService=new n(this._settings),this._joseUtil=u,this._tokenClient=new h(this._settings)}return t.prototype.validateSigninResponse=function(t,e){var r=this;return i.Log.debug("ResponseValidator.validateSigninResponse"),this._processSigninParams(t,e).then((function(e){return i.Log.debug("ResponseValidator.validateSigninResponse: state processed"),r._validateTokens(t,e).then((function(e){return i.Log.debug("ResponseValidator.validateSigninResponse: tokens validated"),r._processClaims(t,e).then((function(t){return i.Log.debug("ResponseValidator.validateSigninResponse: claims processed"),t}))}))}))},t.prototype.validateSignoutResponse=function(t,e){return t.id!==e.state?(i.Log.error("ResponseValidator.validateSignoutResponse: State does not match"),Promise.reject(new Error("State does not match"))):(i.Log.debug("ResponseValidator.validateSignoutResponse: state validated"),e.state=t.data,e.error?(i.Log.warn("ResponseValidator.validateSignoutResponse: Response was error",e.error),Promise.reject(new u.ErrorResponse(e))):Promise.resolve(e))},t.prototype._processSigninParams=function(t,e){if(t.id!==e.state)return i.Log.error("ResponseValidator._processSigninParams: State does not match"),Promise.reject(new Error("State does not match"));if(!t.client_id)return i.Log.error("ResponseValidator._processSigninParams: No client_id on state"),Promise.reject(new Error("No client_id on state"));if(!t.authority)return i.Log.error("ResponseValidator._processSigninParams: No authority on state"),Promise.reject(new Error("No authority on state"));if(this._settings.authority){if(this._settings.authority&&this._settings.authority!==t.authority)return i.Log.error("ResponseValidator._processSigninParams: authority mismatch on settings vs. signin state"),Promise.reject(new Error("authority mismatch on settings vs. signin state"))}else this._settings.authority=t.authority;if(this._settings.client_id){if(this._settings.client_id&&this._settings.client_id!==t.client_id)return i.Log.error("ResponseValidator._processSigninParams: client_id mismatch on settings vs. signin state"),Promise.reject(new Error("client_id mismatch on settings vs. signin state"))}else this._settings.client_id=t.client_id;return i.Log.debug("ResponseValidator._processSigninParams: state validated"),e.state=t.data,e.error?(i.Log.warn("ResponseValidator._processSigninParams: Response was error",e.error),Promise.reject(new u.ErrorResponse(e))):t.nonce&&!e.id_token?(i.Log.error("ResponseValidator._processSigninParams: Expecting id_token in response"),Promise.reject(new Error("No id_token in response"))):!t.nonce&&e.id_token?(i.Log.error("ResponseValidator._processSigninParams: Not expecting id_token in response"),Promise.reject(new Error("Unexpected id_token in response"))):t.code_verifier&&!e.code?(i.Log.error("ResponseValidator._processSigninParams: Expecting code in response"),Promise.reject(new Error("No code in response"))):!t.code_verifier&&e.code?(i.Log.error("ResponseValidator._processSigninParams: Not expecting code in response"),Promise.reject(new Error("Unexpected code in response"))):(e.scope||(e.scope=t.scope),Promise.resolve(e))},t.prototype._processClaims=function(t,e){var r=this;if(e.isOpenIdConnect){if(i.Log.debug("ResponseValidator._processClaims: response is OIDC, processing claims"),e.profile=this._filterProtocolClaims(e.profile),!0!==t.skipUserInfo&&this._settings.loadUserInfo&&e.access_token)return i.Log.debug("ResponseValidator._processClaims: loading user info"),this._userInfoService.getClaims(e.access_token).then((function(t){return i.Log.debug("ResponseValidator._processClaims: user info claims received from user info endpoint"),t.sub!==e.profile.sub?(i.Log.error("ResponseValidator._processClaims: sub from user info endpoint does not match sub in id_token"),Promise.reject(new Error("sub from user info endpoint does not match sub in id_token"))):(e.profile=r._mergeClaims(e.profile,t),i.Log.debug("ResponseValidator._processClaims: user info claims received, updated profile:",e.profile),e)}));i.Log.debug("ResponseValidator._processClaims: not loading user info")}else i.Log.debug("ResponseValidator._processClaims: response is not OIDC, not processing claims");return Promise.resolve(e)},t.prototype._mergeClaims=function(t,e){var r=Object.assign({},t);for(var i in e){var o=e[i];Array.isArray(o)||(o=[o]);for(var s=0;s1)return i.Log.error("ResponseValidator._validateIdToken: No kid found in id_token and more than one key found in metadata"),Promise.reject(new Error("No kid found in id_token and more than one key found in metadata"));o=r[0]}return Promise.resolve(o)}))},t.prototype._getSigningKeyForJwtWithSingleRetry=function(t){var e=this;return this._getSigningKeyForJwt(t).then((function(r){return r?Promise.resolve(r):(e._metadataService.resetSigningKeys(),e._getSigningKeyForJwt(t))}))},t.prototype._validateIdToken=function(t,e){var r=this;if(!t.nonce)return i.Log.error("ResponseValidator._validateIdToken: No nonce on state"),Promise.reject(new Error("No nonce on state"));var n=this._joseUtil.parseJwt(e.id_token);return n&&n.header&&n.payload?t.nonce!==n.payload.nonce?(i.Log.error("ResponseValidator._validateIdToken: Invalid nonce in id_token"),Promise.reject(new Error("Invalid nonce in id_token"))):this._metadataService.getIssuer().then((function(o){return i.Log.debug("ResponseValidator._validateIdToken: Received issuer"),r._getSigningKeyForJwtWithSingleRetry(n).then((function(s){if(!s)return i.Log.error("ResponseValidator._validateIdToken: No key matching kid or alg found in signing keys"),Promise.reject(new Error("No key matching kid or alg found in signing keys"));var a=t.client_id,u=r._settings.clockSkew;return i.Log.debug("ResponseValidator._validateIdToken: Validaing JWT; using clock skew (in seconds) of: ",u),r._joseUtil.validateJwt(e.id_token,s,o,a,u).then((function(){return i.Log.debug("ResponseValidator._validateIdToken: JWT validation successful"),n.payload.sub?(e.profile=n.payload,e):(i.Log.error("ResponseValidator._validateIdToken: No sub present in id_token"),Promise.reject(new Error("No sub present in id_token")))}))}))})):(i.Log.error("ResponseValidator._validateIdToken: Failed to parse id_token",n),Promise.reject(new Error("Failed to parse id_token")))},t.prototype._filterByAlg=function(t,e){var r=null;if(e.startsWith("RS"))r="RSA";else if(e.startsWith("PS"))r="PS";else{if(!e.startsWith("ES"))return i.Log.debug("ResponseValidator._filterByAlg: alg not supported: ",e),[];r="EC"}return i.Log.debug("ResponseValidator._filterByAlg: Looking for keys that match kty: ",r),t=t.filter((function(t){return t.kty===r})),i.Log.debug("ResponseValidator._filterByAlg: Number of keys that match kty: ",r,t.length),t},t.prototype._validateAccessToken=function(t){if(!t.profile)return i.Log.error("ResponseValidator._validateAccessToken: No profile loaded from id_token"),Promise.reject(new Error("No profile loaded from id_token"));if(!t.profile.at_hash)return i.Log.error("ResponseValidator._validateAccessToken: No at_hash in id_token"),Promise.reject(new Error("No at_hash in id_token"));if(!t.id_token)return i.Log.error("ResponseValidator._validateAccessToken: No id_token"),Promise.reject(new Error("No id_token"));var e=this._joseUtil.parseJwt(t.id_token);if(!e||!e.header)return i.Log.error("ResponseValidator._validateAccessToken: Failed to parse id_token",e),Promise.reject(new Error("Failed to parse id_token"));var r=e.header.alg;if(!r||5!==r.length)return i.Log.error("ResponseValidator._validateAccessToken: Unsupported alg:",r),Promise.reject(new Error("Unsupported alg: "+r));var n=r.substr(2,3);if(!n)return i.Log.error("ResponseValidator._validateAccessToken: Unsupported alg:",r,n),Promise.reject(new Error("Unsupported alg: "+r));if(256!==(n=parseInt(n))&&384!==n&&512!==n)return i.Log.error("ResponseValidator._validateAccessToken: Unsupported alg:",r,n),Promise.reject(new Error("Unsupported alg: "+r));var o="sha"+n,s=this._joseUtil.hashString(t.access_token,o);if(!s)return i.Log.error("ResponseValidator._validateAccessToken: access_token hash failed:",o),Promise.reject(new Error("Failed to validate at_hash"));var a=s.substr(0,s.length/2),u=this._joseUtil.hexToBase64Url(a);return u!==t.profile.at_hash?(i.Log.error("ResponseValidator._validateAccessToken: Failed to validate at_hash",u,t.profile.at_hash),Promise.reject(new Error("Failed to validate at_hash"))):(i.Log.debug("ResponseValidator._validateAccessToken: success"),Promise.resolve(t))},t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.UserInfoService=void 0;var n=r(7),i=r(2),o=r(0),s=r(4);e.UserInfoService=function(){function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.JsonService,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.MetadataService,u=arguments.length>3&&void 0!==arguments[3]?arguments[3]:s.JoseUtil;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!e)throw o.Log.error("UserInfoService.ctor: No settings passed"),new Error("settings");this._settings=e,this._jsonService=new r(void 0,void 0,this._getClaimsFromJwt.bind(this)),this._metadataService=new a(this._settings),this._joseUtil=u}return t.prototype.getClaims=function(t){var e=this;return t?this._metadataService.getUserInfoEndpoint().then((function(r){return o.Log.debug("UserInfoService.getClaims: received userinfo url",r),e._jsonService.getJson(r,t).then((function(t){return o.Log.debug("UserInfoService.getClaims: claims received",t),t}))})):(o.Log.error("UserInfoService.getClaims: No token passed"),Promise.reject(new Error("A token is required")))},t.prototype._getClaimsFromJwt=function t(e){var r=this;try{var n=this._joseUtil.parseJwt(e.responseText);if(!n||!n.header||!n.payload)return o.Log.error("UserInfoService._getClaimsFromJwt: Failed to parse JWT",n),Promise.reject(new Error("Failed to parse id_token"));var i=n.header.kid,s=void 0;switch(this._settings.userInfoJwtIssuer){case"OP":s=this._metadataService.getIssuer();break;case"ANY":s=Promise.resolve(n.payload.iss);break;default:s=Promise.resolve(this._settings.userInfoJwtIssuer)}return s.then((function(t){return o.Log.debug("UserInfoService._getClaimsFromJwt: Received issuer:"+t),r._metadataService.getSigningKeys().then((function(s){if(!s)return o.Log.error("UserInfoService._getClaimsFromJwt: No signing keys from metadata"),Promise.reject(new Error("No signing keys from metadata"));o.Log.debug("UserInfoService._getClaimsFromJwt: Received signing keys");var a=void 0;if(i)a=s.filter((function(t){return t.kid===i}))[0];else{if((s=r._filterByAlg(s,n.header.alg)).length>1)return o.Log.error("UserInfoService._getClaimsFromJwt: No kid found in id_token and more than one key found in metadata"),Promise.reject(new Error("No kid found in id_token and more than one key found in metadata"));a=s[0]}if(!a)return o.Log.error("UserInfoService._getClaimsFromJwt: No key matching kid or alg found in signing keys"),Promise.reject(new Error("No key matching kid or alg found in signing keys"));var u=r._settings.client_id,c=r._settings.clockSkew;return o.Log.debug("UserInfoService._getClaimsFromJwt: Validaing JWT; using clock skew (in seconds) of: ",c),r._joseUtil.validateJwt(e.responseText,a,t,u,c,void 0,!0).then((function(){return o.Log.debug("UserInfoService._getClaimsFromJwt: JWT validation successful"),n.payload}))}))}))}catch(t){return o.Log.error("UserInfoService._getClaimsFromJwt: Error parsing JWT response",t.message),void reject(t)}},t.prototype._filterByAlg=function(t,e){var r=null;if(e.startsWith("RS"))r="RSA";else if(e.startsWith("PS"))r="PS";else{if(!e.startsWith("ES"))return o.Log.debug("UserInfoService._filterByAlg: alg not supported: ",e),[];r="EC"}return o.Log.debug("UserInfoService._filterByAlg: Looking for keys that match kty: ",r),t=t.filter((function(t){return t.kty===r})),o.Log.debug("UserInfoService._filterByAlg: Number of keys that match kty: ",r,t.length),t},t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.AllowedSigningAlgs=e.b64tohex=e.hextob64u=e.crypto=e.X509=e.KeyUtil=e.jws=void 0;var n=r(27);e.jws=n.jws,e.KeyUtil=n.KEYUTIL,e.X509=n.X509,e.crypto=n.crypto,e.hextob64u=n.hextob64u,e.b64tohex=n.b64tohex,e.AllowedSigningAlgs=["RS256","RS384","RS512","PS256","PS384","PS512","ES256","ES384","ES512"]},function(t,e,r){(function(t){Object.defineProperty(e,"__esModule",{value:!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n={userAgent:!1},i={}; +/*! + Copyright (c) 2011, Yahoo! Inc. All rights reserved. + Code licensed under the BSD License: + http://developer.yahoo.com/yui/license.html + version: 2.9.0 + */if(void 0===o)var o={};o.lang={extend:function(t,e,r){if(!e||!t)throw new Error("YAHOO.lang.extend failed, please check that all dependencies are included.");var i=function(){};if(i.prototype=e.prototype,t.prototype=new i,t.prototype.constructor=t,t.superclass=e.prototype,e.prototype.constructor==Object.prototype.constructor&&(e.prototype.constructor=e),r){var o;for(o in r)t.prototype[o]=r[o];var s=function(){},a=["toString","valueOf"];try{/MSIE/.test(n.userAgent)&&(s=function(t,e){for(o=0;o>>2]>>>24-o%4*8&255;e[n+o>>>2]|=s<<24-(n+o)%4*8}else for(o=0;o>>2]=r[o>>>2];return this.sigBytes+=i,this},clamp:function(){var t=this.words,e=this.sigBytes;t[e>>>2]&=4294967295<<32-e%4*8,t.length=s.ceil(e/4)},clone:function(){var t=c.clone.call(this);return t.words=this.words.slice(0),t},random:function(t){for(var e=[],r=0;r>>2]>>>24-i%4*8&255;n.push((o>>>4).toString(16)),n.push((15&o).toString(16))}return n.join("")},parse:function(t){for(var e=t.length,r=[],n=0;n>>3]|=parseInt(t.substr(n,2),16)<<24-n%8*4;return new h.init(r,e/2)}},g=l.Latin1={stringify:function(t){for(var e=t.words,r=t.sigBytes,n=[],i=0;i>>2]>>>24-i%4*8&255;n.push(String.fromCharCode(o))}return n.join("")},parse:function(t){for(var e=t.length,r=[],n=0;n>>2]|=(255&t.charCodeAt(n))<<24-n%4*8;return new h.init(r,e)}},d=l.Utf8={stringify:function(t){try{return decodeURIComponent(escape(g.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:function(t){return g.parse(unescape(encodeURIComponent(t)))}},p=u.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new h.init,this._nDataBytes=0},_append:function(t){"string"==typeof t&&(t=d.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes},_process:function(t){var e=this._data,r=e.words,n=e.sigBytes,i=this.blockSize,o=n/(4*i),a=(o=t?s.ceil(o):s.max((0|o)-this._minBufferSize,0))*i,u=s.min(4*a,n);if(a){for(var c=0;c>>2]>>>24-i%4*8&255)<<16|(e[i+1>>>2]>>>24-(i+1)%4*8&255)<<8|e[i+2>>>2]>>>24-(i+2)%4*8&255,s=0;4>s&&i+.75*s>>6*(3-s)&63));if(e=n.charAt(64))for(;t.length%4;)t.push(e);return t.join("")},parse:function(t){var r=t.length,n=this._map;(i=n.charAt(64))&&-1!=(i=t.indexOf(i))&&(r=i);for(var i=[],o=0,s=0;s>>6-s%4*2;i[o>>>2]|=(a|u)<<24-o%4*8,o++}return e.create(i,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}}(),function(t){for(var e=y,r=(i=e.lib).WordArray,n=i.Hasher,i=e.algo,o=[],s=[],a=function(t){return 4294967296*(t-(0|t))|0},u=2,c=0;64>c;){var h;t:{h=u;for(var l=t.sqrt(h),f=2;f<=l;f++)if(!(h%f)){h=!1;break t}h=!0}h&&(8>c&&(o[c]=a(t.pow(u,.5))),s[c]=a(t.pow(u,1/3)),c++),u++}var g=[];i=i.SHA256=n.extend({_doReset:function(){this._hash=new r.init(o.slice(0))},_doProcessBlock:function(t,e){for(var r=this._hash.words,n=r[0],i=r[1],o=r[2],a=r[3],u=r[4],c=r[5],h=r[6],l=r[7],f=0;64>f;f++){if(16>f)g[f]=0|t[e+f];else{var d=g[f-15],p=g[f-2];g[f]=((d<<25|d>>>7)^(d<<14|d>>>18)^d>>>3)+g[f-7]+((p<<15|p>>>17)^(p<<13|p>>>19)^p>>>10)+g[f-16]}d=l+((u<<26|u>>>6)^(u<<21|u>>>11)^(u<<7|u>>>25))+(u&c^~u&h)+s[f]+g[f],p=((n<<30|n>>>2)^(n<<19|n>>>13)^(n<<10|n>>>22))+(n&i^n&o^i&o),l=h,h=c,c=u,u=a+d|0,a=o,o=i,i=n,n=d+p|0}r[0]=r[0]+n|0,r[1]=r[1]+i|0,r[2]=r[2]+o|0,r[3]=r[3]+a|0,r[4]=r[4]+u|0,r[5]=r[5]+c|0,r[6]=r[6]+h|0,r[7]=r[7]+l|0},_doFinalize:function(){var e=this._data,r=e.words,n=8*this._nDataBytes,i=8*e.sigBytes;return r[i>>>5]|=128<<24-i%32,r[14+(i+64>>>9<<4)]=t.floor(n/4294967296),r[15+(i+64>>>9<<4)]=n,e.sigBytes=4*r.length,this._process(),this._hash},clone:function(){var t=n.clone.call(this);return t._hash=this._hash.clone(),t}}),e.SHA256=n._createHelper(i),e.HmacSHA256=n._createHmacHelper(i)}(Math),function(){function t(){return n.create.apply(n,arguments)}for(var e=y,r=e.lib.Hasher,n=(o=e.x64).Word,i=o.WordArray,o=e.algo,s=[t(1116352408,3609767458),t(1899447441,602891725),t(3049323471,3964484399),t(3921009573,2173295548),t(961987163,4081628472),t(1508970993,3053834265),t(2453635748,2937671579),t(2870763221,3664609560),t(3624381080,2734883394),t(310598401,1164996542),t(607225278,1323610764),t(1426881987,3590304994),t(1925078388,4068182383),t(2162078206,991336113),t(2614888103,633803317),t(3248222580,3479774868),t(3835390401,2666613458),t(4022224774,944711139),t(264347078,2341262773),t(604807628,2007800933),t(770255983,1495990901),t(1249150122,1856431235),t(1555081692,3175218132),t(1996064986,2198950837),t(2554220882,3999719339),t(2821834349,766784016),t(2952996808,2566594879),t(3210313671,3203337956),t(3336571891,1034457026),t(3584528711,2466948901),t(113926993,3758326383),t(338241895,168717936),t(666307205,1188179964),t(773529912,1546045734),t(1294757372,1522805485),t(1396182291,2643833823),t(1695183700,2343527390),t(1986661051,1014477480),t(2177026350,1206759142),t(2456956037,344077627),t(2730485921,1290863460),t(2820302411,3158454273),t(3259730800,3505952657),t(3345764771,106217008),t(3516065817,3606008344),t(3600352804,1432725776),t(4094571909,1467031594),t(275423344,851169720),t(430227734,3100823752),t(506948616,1363258195),t(659060556,3750685593),t(883997877,3785050280),t(958139571,3318307427),t(1322822218,3812723403),t(1537002063,2003034995),t(1747873779,3602036899),t(1955562222,1575990012),t(2024104815,1125592928),t(2227730452,2716904306),t(2361852424,442776044),t(2428436474,593698344),t(2756734187,3733110249),t(3204031479,2999351573),t(3329325298,3815920427),t(3391569614,3928383900),t(3515267271,566280711),t(3940187606,3454069534),t(4118630271,4000239992),t(116418474,1914138554),t(174292421,2731055270),t(289380356,3203993006),t(460393269,320620315),t(685471733,587496836),t(852142971,1086792851),t(1017036298,365543100),t(1126000580,2618297676),t(1288033470,3409855158),t(1501505948,4234509866),t(1607167915,987167468),t(1816402316,1246189591)],a=[],u=0;80>u;u++)a[u]=t();o=o.SHA512=r.extend({_doReset:function(){this._hash=new i.init([new n.init(1779033703,4089235720),new n.init(3144134277,2227873595),new n.init(1013904242,4271175723),new n.init(2773480762,1595750129),new n.init(1359893119,2917565137),new n.init(2600822924,725511199),new n.init(528734635,4215389547),new n.init(1541459225,327033209)])},_doProcessBlock:function(t,e){for(var r=(l=this._hash.words)[0],n=l[1],i=l[2],o=l[3],u=l[4],c=l[5],h=l[6],l=l[7],f=r.high,g=r.low,d=n.high,p=n.low,v=i.high,y=i.low,m=o.high,_=o.low,S=u.high,w=u.low,b=c.high,F=c.low,E=h.high,x=h.low,A=l.high,k=l.low,P=f,C=g,T=d,R=p,I=v,D=y,L=m,N=_,U=S,O=w,B=b,M=F,j=E,H=x,K=A,V=k,q=0;80>q;q++){var J=a[q];if(16>q)var W=J.high=0|t[e+2*q],z=J.low=0|t[e+2*q+1];else{W=((z=(W=a[q-15]).high)>>>1|(Y=W.low)<<31)^(z>>>8|Y<<24)^z>>>7;var Y=(Y>>>1|z<<31)^(Y>>>8|z<<24)^(Y>>>7|z<<25),G=((z=(G=a[q-2]).high)>>>19|($=G.low)<<13)^(z<<3|$>>>29)^z>>>6,$=($>>>19|z<<13)^($<<3|z>>>29)^($>>>6|z<<26),X=(z=a[q-7]).high,Q=(Z=a[q-16]).high,Z=Z.low;W=(W=(W=W+X+((z=Y+z.low)>>>0>>0?1:0))+G+((z+=$)>>>0<$>>>0?1:0))+Q+((z+=Z)>>>0>>0?1:0),J.high=W,J.low=z}X=U&B^~U&j,Z=O&M^~O&H,J=P&T^P&I^T&I;var tt=C&R^C&D^R&D,et=(Y=(P>>>28|C<<4)^(P<<30|C>>>2)^(P<<25|C>>>7),G=(C>>>28|P<<4)^(C<<30|P>>>2)^(C<<25|P>>>7),($=s[q]).high),rt=$.low;Q=K+((U>>>14|O<<18)^(U>>>18|O<<14)^(U<<23|O>>>9))+(($=V+((O>>>14|U<<18)^(O>>>18|U<<14)^(O<<23|U>>>9)))>>>0>>0?1:0),K=j,V=H,j=B,H=M,B=U,M=O,U=L+(Q=(Q=(Q=Q+X+(($+=Z)>>>0>>0?1:0))+et+(($+=rt)>>>0>>0?1:0))+W+(($+=z)>>>0>>0?1:0))+((O=N+$|0)>>>0>>0?1:0)|0,L=I,N=D,I=T,D=R,T=P,R=C,P=Q+(J=Y+J+((z=G+tt)>>>0>>0?1:0))+((C=$+z|0)>>>0<$>>>0?1:0)|0}g=r.low=g+C,r.high=f+P+(g>>>0>>0?1:0),p=n.low=p+R,n.high=d+T+(p>>>0>>0?1:0),y=i.low=y+D,i.high=v+I+(y>>>0>>0?1:0),_=o.low=_+N,o.high=m+L+(_>>>0>>0?1:0),w=u.low=w+O,u.high=S+U+(w>>>0>>0?1:0),F=c.low=F+M,c.high=b+B+(F>>>0>>0?1:0),x=h.low=x+H,h.high=E+j+(x>>>0>>0?1:0),k=l.low=k+V,l.high=A+K+(k>>>0>>0?1:0)},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[30+(n+128>>>10<<5)]=Math.floor(r/4294967296),e[31+(n+128>>>10<<5)]=r,t.sigBytes=4*e.length,this._process(),this._hash.toX32()},clone:function(){var t=r.clone.call(this);return t._hash=this._hash.clone(),t},blockSize:32}),e.SHA512=r._createHelper(o),e.HmacSHA512=r._createHmacHelper(o)}(),function(){var t=y,e=(i=t.x64).Word,r=i.WordArray,n=(i=t.algo).SHA512,i=i.SHA384=n.extend({_doReset:function(){this._hash=new r.init([new e.init(3418070365,3238371032),new e.init(1654270250,914150663),new e.init(2438529370,812702999),new e.init(355462360,4144912697),new e.init(1731405415,4290775857),new e.init(2394180231,1750603025),new e.init(3675008525,1694076839),new e.init(1203062813,3204075428)])},_doFinalize:function(){var t=n._doFinalize.call(this);return t.sigBytes-=16,t}});t.SHA384=n._createHelper(i),t.HmacSHA384=n._createHmacHelper(i)}(); +/*! (c) Tom Wu | http://www-cs-students.stanford.edu/~tjw/jsbn/ + */ +var m,_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function S(t){var e,r,n="";for(e=0;e+3<=t.length;e+=3)r=parseInt(t.substring(e,e+3),16),n+=_.charAt(r>>6)+_.charAt(63&r);for(e+1==t.length?(r=parseInt(t.substring(e,e+1),16),n+=_.charAt(r<<2)):e+2==t.length&&(r=parseInt(t.substring(e,e+2),16),n+=_.charAt(r>>2)+_.charAt((3&r)<<4));(3&n.length)>0;)n+="=";return n}function w(t){var e,r,n,i="",o=0;for(e=0;e>2),r=3&n,o=1):1==o?(i+=P(r<<2|n>>4),r=15&n,o=2):2==o?(i+=P(r),i+=P(n>>2),r=3&n,o=3):(i+=P(r<<2|n>>4),i+=P(15&n),o=0));return 1==o&&(i+=P(r<<2)),i}function b(t){var e,r=w(t),n=new Array;for(e=0;2*e>15;--o>=0;){var u=32767&this[t],c=this[t++]>>15,h=a*u+c*s;i=((u=s*u+((32767&h)<<15)+r[n]+(1073741823&i))>>>30)+(h>>>15)+a*c+(i>>>30),r[n++]=1073741823&u}return i},m=30):"Netscape"!=n.appName?(F.prototype.am=function(t,e,r,n,i,o){for(;--o>=0;){var s=e*this[t++]+r[n]+i;i=Math.floor(s/67108864),r[n++]=67108863&s}return i},m=26):(F.prototype.am=function(t,e,r,n,i,o){for(var s=16383&e,a=e>>14;--o>=0;){var u=16383&this[t],c=this[t++]>>14,h=a*u+c*s;i=((u=s*u+((16383&h)<<14)+r[n]+i)>>28)+(h>>14)+a*c,r[n++]=268435455&u}return i},m=28),F.prototype.DB=m,F.prototype.DM=(1<>>16)&&(t=e,r+=16),0!=(e=t>>8)&&(t=e,r+=8),0!=(e=t>>4)&&(t=e,r+=4),0!=(e=t>>2)&&(t=e,r+=2),0!=(e=t>>1)&&(t=e,r+=1),r}function I(t){this.m=t}function D(t){this.m=t,this.mp=t.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<>=16,e+=16),!(255&t)&&(t>>=8,e+=8),!(15&t)&&(t>>=4,e+=4),!(3&t)&&(t>>=2,e+=2),!(1&t)&&++e,e}function M(t){for(var e=0;0!=t;)t&=t-1,++e;return e}function j(){}function H(t){return t}function K(t){this.r2=E(),this.q3=E(),F.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}I.prototype.convert=function(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t},I.prototype.revert=function(t){return t},I.prototype.reduce=function(t){t.divRemTo(this.m,null,t)},I.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},I.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},D.prototype.convert=function(t){var e=E();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(F.ZERO)>0&&this.m.subTo(e,e),e},D.prototype.revert=function(t){var e=E();return t.copyTo(e),this.reduce(e),e},D.prototype.reduce=function(t){for(;t.t<=this.mt2;)t[t.t++]=0;for(var e=0;e>15)*this.mpl&this.um)<<15)&t.DM;for(t[r=e+this.m.t]+=this.m.am(0,n,t,e,0,this.m.t);t[r]>=t.DV;)t[r]-=t.DV,t[++r]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)},D.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},D.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},F.prototype.copyTo=function(t){for(var e=this.t-1;e>=0;--e)t[e]=this[e];t.t=this.t,t.s=this.s},F.prototype.fromInt=function(t){this.t=1,this.s=t<0?-1:0,t>0?this[0]=t:t<-1?this[0]=t+this.DV:this.t=0},F.prototype.fromString=function(t,e){var r;if(16==e)r=4;else if(8==e)r=3;else if(256==e)r=8;else if(2==e)r=1;else if(32==e)r=5;else{if(4!=e)return void this.fromRadix(t,e);r=2}this.t=0,this.s=0;for(var n=t.length,i=!1,o=0;--n>=0;){var s=8==r?255&t[n]:C(t,n);s<0?"-"==t.charAt(n)&&(i=!0):(i=!1,0==o?this[this.t++]=s:o+r>this.DB?(this[this.t-1]|=(s&(1<>this.DB-o):this[this.t-1]|=s<=this.DB&&(o-=this.DB))}8==r&&!!(128&t[0])&&(this.s=-1,o>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==t;)--this.t},F.prototype.dlShiftTo=function(t,e){var r;for(r=this.t-1;r>=0;--r)e[r+t]=this[r];for(r=t-1;r>=0;--r)e[r]=0;e.t=this.t+t,e.s=this.s},F.prototype.drShiftTo=function(t,e){for(var r=t;r=0;--r)e[r+s+1]=this[r]>>i|a,a=(this[r]&o)<=0;--r)e[r]=0;e[s]=a,e.t=this.t+s+1,e.s=this.s,e.clamp()},F.prototype.rShiftTo=function(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t)e.t=0;else{var n=t%this.DB,i=this.DB-n,o=(1<>n;for(var s=r+1;s>n;n>0&&(e[this.t-r-1]|=(this.s&o)<>=this.DB;if(t.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e[r++]=this.DV+n:n>0&&(e[r++]=n),e.t=r,e.clamp()},F.prototype.multiplyTo=function(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e[i]=0;for(i=0;i=0;)t[r]=0;for(r=0;r=e.DV&&(t[r+e.t]-=e.DV,t[r+e.t+1]=1)}t.t>0&&(t[t.t-1]+=e.am(r,e[r],t,2*r,0,1)),t.s=0,t.clamp()},F.prototype.divRemTo=function(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t0?(n.lShiftTo(u,o),i.lShiftTo(u,r)):(n.copyTo(o),i.copyTo(r));var c=o.t,h=o[c-1];if(0!=h){var l=h*(1<1?o[c-2]>>this.F2:0),f=this.FV/l,g=(1<=0&&(r[r.t++]=1,r.subTo(y,r)),F.ONE.dlShiftTo(c,y),y.subTo(o,o);o.t=0;){var m=r[--p]==h?this.DM:Math.floor(r[p]*f+(r[p-1]+d)*g);if((r[p]+=o.am(0,m,r,v,0,c))0&&r.rShiftTo(u,r),s<0&&F.ZERO.subTo(r,r)}}},F.prototype.invDigit=function(){if(this.t<1)return 0;var t=this[0];if(!(1&t))return 0;var e=3&t;return(e=(e=(e=(e=e*(2-(15&t)*e)&15)*(2-(255&t)*e)&255)*(2-((65535&t)*e&65535))&65535)*(2-t*e%this.DV)%this.DV)>0?this.DV-e:-e},F.prototype.isEven=function(){return 0==(this.t>0?1&this[0]:this.s)},F.prototype.exp=function(t,e){if(t>4294967295||t<1)return F.ONE;var r=E(),n=E(),i=e.convert(this),o=R(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<0)e.mulTo(n,i,r);else{var s=r;r=n,n=s}return e.revert(r)},F.prototype.toString=function(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(16==t)e=4;else if(8==t)e=3;else if(2==t)e=1;else if(32==t)e=5;else{if(4!=t)return this.toRadix(t);e=2}var r,n=(1<0)for(a>a)>0&&(i=!0,o=P(r));s>=0;)a>(a+=this.DB-e)):(r=this[s]>>(a-=e)&n,a<=0&&(a+=this.DB,--s)),r>0&&(i=!0),i&&(o+=P(r));return i?o:"0"},F.prototype.negate=function(){var t=E();return F.ZERO.subTo(this,t),t},F.prototype.abs=function(){return this.s<0?this.negate():this},F.prototype.compareTo=function(t){var e=this.s-t.s;if(0!=e)return e;var r=this.t;if(0!=(e=r-t.t))return this.s<0?-e:e;for(;--r>=0;)if(0!=(e=this[r]-t[r]))return e;return 0},F.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+R(this[this.t-1]^this.s&this.DM)},F.prototype.mod=function(t){var e=E();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(F.ZERO)>0&&t.subTo(e,e),e},F.prototype.modPowInt=function(t,e){var r;return r=t<256||e.isEven()?new I(e):new D(e),this.exp(t,r)},F.ZERO=T(0),F.ONE=T(1),j.prototype.convert=H,j.prototype.revert=H,j.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r)},j.prototype.sqrTo=function(t,e){t.squareTo(e)},K.prototype.convert=function(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=E();return t.copyTo(e),this.reduce(e),e},K.prototype.revert=function(t){return t},K.prototype.reduce=function(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);t.compareTo(this.m)>=0;)t.subTo(this.m,t)},K.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},K.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)};var V,q,J,W=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],z=(1<<26)/W[W.length-1]; +/*! (c) Tom Wu | http://www-cs-students.stanford.edu/~tjw/jsbn/ + */function Y(){this.i=0,this.j=0,this.S=new Array} +/*! (c) Tom Wu | http://www-cs-students.stanford.edu/~tjw/jsbn/ + */ +function G(){!function(t){q[J++]^=255&t,q[J++]^=t>>8&255,q[J++]^=t>>16&255,q[J++]^=t>>24&255,J>=256&&(J-=256)}((new Date).getTime())}if(F.prototype.chunkSize=function(t){return Math.floor(Math.LN2*this.DB/Math.log(t))},F.prototype.toRadix=function(t){if(null==t&&(t=10),0==this.signum()||t<2||t>36)return"0";var e=this.chunkSize(t),r=Math.pow(t,e),n=T(r),i=E(),o=E(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s},F.prototype.fromRadix=function(t,e){this.fromInt(0),null==e&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,s=0,a=0;a=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0))}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(s,0)),i&&F.ZERO.subTo(this,this)},F.prototype.fromNumber=function(t,e,r){if("number"==typeof e)if(t<2)this.fromInt(1);else for(this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(F.ONE.shiftLeft(t-1),N,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(F.ONE.shiftLeft(t-1),this);else{var n=new Array,i=7&t;n.length=1+(t>>3),e.nextBytes(n),i>0?n[0]&=(1<>=this.DB;if(t.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e[r++]=n:n<-1&&(e[r++]=this.DV+n),e.t=r,e.clamp()},F.prototype.dMultiply=function(t){this[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()},F.prototype.dAddOffset=function(t,e){if(0!=t){for(;this.t<=e;)this[this.t++]=0;for(this[e]+=t;this[e]>=this.DV;)this[e]-=this.DV,++e>=this.t&&(this[this.t++]=0),++this[e]}},F.prototype.multiplyLowerTo=function(t,e,r){var n,i=Math.min(this.t+t.t,e);for(r.s=0,r.t=i;i>0;)r[--i]=0;for(n=r.t-this.t;i=0;)r[n]=0;for(n=Math.max(e-this.t,0);n0)if(0==e)r=this[0]%t;else for(var n=this.t-1;n>=0;--n)r=(e*r+this[n])%t;return r},F.prototype.millerRabin=function(t){var e=this.subtract(F.ONE),r=e.getLowestSetBit();if(r<=0)return!1;var n=e.shiftRight(r);(t=t+1>>1)>W.length&&(t=W.length);for(var i=E(),o=0;o>24},F.prototype.shortValue=function(){return 0==this.t?this.s:this[0]<<16>>16},F.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this[0]<=0?0:1},F.prototype.toByteArray=function(){var t=this.t,e=new Array;e[0]=this.s;var r,n=this.DB-t*this.DB%8,i=0;if(t-- >0)for(n>n)!=(this.s&this.DM)>>n&&(e[i++]=r|this.s<=0;)n<8?(r=(this[t]&(1<>(n+=this.DB-8)):(r=this[t]>>(n-=8)&255,n<=0&&(n+=this.DB,--t)),!!(128&r)&&(r|=-256),0==i&&(128&this.s)!=(128&r)&&++i,(i>0||r!=this.s)&&(e[i++]=r);return e},F.prototype.equals=function(t){return 0==this.compareTo(t)},F.prototype.min=function(t){return this.compareTo(t)<0?this:t},F.prototype.max=function(t){return this.compareTo(t)>0?this:t},F.prototype.and=function(t){var e=E();return this.bitwiseTo(t,L,e),e},F.prototype.or=function(t){var e=E();return this.bitwiseTo(t,N,e),e},F.prototype.xor=function(t){var e=E();return this.bitwiseTo(t,U,e),e},F.prototype.andNot=function(t){var e=E();return this.bitwiseTo(t,O,e),e},F.prototype.not=function(){for(var t=E(),e=0;e=this.t?0!=this.s:!!(this[e]&1<1){var h=E();for(n.sqrTo(s[1],h);a<=c;)s[a]=E(),n.mulTo(h,s[a-2],s[a]),a+=2}var l,f,g=t.t-1,d=!0,p=E();for(i=R(t[g])-1;g>=0;){for(i>=u?l=t[g]>>i-u&c:(l=(t[g]&(1<0&&(l|=t[g-1]>>this.DB+i-u)),a=r;!(1&l);)l>>=1,--a;if((i-=a)<0&&(i+=this.DB,--g),d)s[l].copyTo(o),d=!1;else{for(;a>1;)n.sqrTo(o,p),n.sqrTo(p,o),a-=2;a>0?n.sqrTo(o,p):(f=o,o=p,p=f),n.mulTo(p,s[l],o)}for(;g>=0&&!(t[g]&1<=0?(r.subTo(n,r),e&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),e&&s.subTo(i,s),a.subTo(o,a))}return 0!=n.compareTo(F.ONE)?F.ZERO:a.compareTo(t)>=0?a.subtract(t):a.signum()<0?(a.addTo(t,a),a.signum()<0?a.add(t):a):a},F.prototype.pow=function(t){return this.exp(t,new j)},F.prototype.gcd=function(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return e;for(i0&&(e.rShiftTo(o,e),r.rShiftTo(o,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r},F.prototype.isProbablePrime=function(t){var e,r=this.abs();if(1==r.t&&r[0]<=W[W.length-1]){for(e=0;e>>8,q[J++]=255&$;J=0,G()}function tt(){if(null==V){for(G(),(V=new Y).init(q),J=0;J>24,(16711680&i)>>16,(65280&i)>>8,255&i]))),i+=1;return n}function it(){this.n=null,this.e=0,this.d=null,this.p=null,this.q=null,this.dmp1=null,this.dmq1=null,this.coeff=null +/*! (c) Tom Wu | http://www-cs-students.stanford.edu/~tjw/jsbn/ + */}function ot(t,e){this.x=e,this.q=t}function st(t,e,r,n){this.curve=t,this.x=e,this.y=r,this.z=null==n?F.ONE:n,this.zinv=null}function at(t,e,r){this.q=t,this.a=this.fromBigInteger(e),this.b=this.fromBigInteger(r),this.infinity=new st(this,null,null)}et.prototype.nextBytes=function(t){var e;for(e=0;e0&&e.length>0))throw"Invalid RSA public key";this.n=rt(t,16),this.e=parseInt(e,16)}},it.prototype.encrypt=function(t){var e=function(t,e){if(e=0&&e>0;){var i=t.charCodeAt(n--);i<128?r[--e]=i:i>127&&i<2048?(r[--e]=63&i|128,r[--e]=i>>6|192):(r[--e]=63&i|128,r[--e]=i>>6&63|128,r[--e]=i>>12|224)}r[--e]=0;for(var o=new et,s=new Array;e>2;){for(s[0]=0;0==s[0];)o.nextBytes(s);r[--e]=s[0]}return r[--e]=2,r[--e]=0,new F(r)}(t,this.n.bitLength()+7>>3);if(null==e)return null;var r=this.doPublic(e);if(null==r)return null;var n=r.toString(16);return 1&n.length?"0"+n:n},it.prototype.encryptOAEP=function(t,e,r){var n=function(t,e,r,n){var i=ct.crypto.MessageDigest,o=ct.crypto.Util,s=null;if(r||(r="sha1"),"string"==typeof r&&(s=i.getCanonicalAlgName(r),n=i.getHashLength(s),r=function(t){return Ft(o.hashHex(Et(t),s))}),t.length+2*n+2>e)throw"Message too long for RSA";var a,u="";for(a=0;a>3,e,r);if(null==n)return null;var i=this.doPublic(n);if(null==i)return null;var o=i.toString(16);return 1&o.length?"0"+o:o},it.prototype.type="RSA",ot.prototype.equals=function(t){return t==this||this.q.equals(t.q)&&this.x.equals(t.x)},ot.prototype.toBigInteger=function(){return this.x},ot.prototype.negate=function(){return new ot(this.q,this.x.negate().mod(this.q))},ot.prototype.add=function(t){return new ot(this.q,this.x.add(t.toBigInteger()).mod(this.q))},ot.prototype.subtract=function(t){return new ot(this.q,this.x.subtract(t.toBigInteger()).mod(this.q))},ot.prototype.multiply=function(t){return new ot(this.q,this.x.multiply(t.toBigInteger()).mod(this.q))},ot.prototype.square=function(){return new ot(this.q,this.x.square().mod(this.q))},ot.prototype.divide=function(t){return new ot(this.q,this.x.multiply(t.toBigInteger().modInverse(this.q)).mod(this.q))},st.prototype.getX=function(){return null==this.zinv&&(this.zinv=this.z.modInverse(this.curve.q)),this.curve.fromBigInteger(this.x.toBigInteger().multiply(this.zinv).mod(this.curve.q))},st.prototype.getY=function(){return null==this.zinv&&(this.zinv=this.z.modInverse(this.curve.q)),this.curve.fromBigInteger(this.y.toBigInteger().multiply(this.zinv).mod(this.curve.q))},st.prototype.equals=function(t){return t==this||(this.isInfinity()?t.isInfinity():t.isInfinity()?this.isInfinity():!!t.y.toBigInteger().multiply(this.z).subtract(this.y.toBigInteger().multiply(t.z)).mod(this.curve.q).equals(F.ZERO)&&t.x.toBigInteger().multiply(this.z).subtract(this.x.toBigInteger().multiply(t.z)).mod(this.curve.q).equals(F.ZERO))},st.prototype.isInfinity=function(){return null==this.x&&null==this.y||this.z.equals(F.ZERO)&&!this.y.toBigInteger().equals(F.ZERO)},st.prototype.negate=function(){return new st(this.curve,this.x,this.y.negate(),this.z)},st.prototype.add=function(t){if(this.isInfinity())return t;if(t.isInfinity())return this;var e=t.y.toBigInteger().multiply(this.z).subtract(this.y.toBigInteger().multiply(t.z)).mod(this.curve.q),r=t.x.toBigInteger().multiply(this.z).subtract(this.x.toBigInteger().multiply(t.z)).mod(this.curve.q);if(F.ZERO.equals(r))return F.ZERO.equals(e)?this.twice():this.curve.getInfinity();var n=new F("3"),i=this.x.toBigInteger(),o=this.y.toBigInteger(),s=(t.x.toBigInteger(),t.y.toBigInteger(),r.square()),a=s.multiply(r),u=i.multiply(s),c=e.square().multiply(this.z),h=c.subtract(u.shiftLeft(1)).multiply(t.z).subtract(a).multiply(r).mod(this.curve.q),l=u.multiply(n).multiply(e).subtract(o.multiply(a)).subtract(c.multiply(e)).multiply(t.z).add(e.multiply(a)).mod(this.curve.q),f=a.multiply(this.z).multiply(t.z).mod(this.curve.q);return new st(this.curve,this.curve.fromBigInteger(h),this.curve.fromBigInteger(l),f)},st.prototype.twice=function(){if(this.isInfinity())return this;if(0==this.y.toBigInteger().signum())return this.curve.getInfinity();var t=new F("3"),e=this.x.toBigInteger(),r=this.y.toBigInteger(),n=r.multiply(this.z),i=n.multiply(r).mod(this.curve.q),o=this.curve.a.toBigInteger(),s=e.square().multiply(t);F.ZERO.equals(o)||(s=s.add(this.z.square().multiply(o)));var a=(s=s.mod(this.curve.q)).square().subtract(e.shiftLeft(3).multiply(i)).shiftLeft(1).multiply(n).mod(this.curve.q),u=s.multiply(t).multiply(e).subtract(i.shiftLeft(1)).shiftLeft(2).multiply(i).subtract(s.square().multiply(s)).mod(this.curve.q),c=n.square().multiply(n).shiftLeft(3).mod(this.curve.q);return new st(this.curve,this.curve.fromBigInteger(a),this.curve.fromBigInteger(u),c)},st.prototype.multiply=function(t){if(this.isInfinity())return this;if(0==t.signum())return this.curve.getInfinity();var e,r=t,n=r.multiply(new F("3")),i=this.negate(),o=this,s=this.curve.q.subtract(t),a=s.multiply(new F("3")),u=new st(this.curve,this.x,this.y),c=u.negate();for(e=n.bitLength()-2;e>0;--e){o=o.twice();var h=n.testBit(e);h!=r.testBit(e)&&(o=o.add(h?this:i))}for(e=a.bitLength()-2;e>0;--e){u=u.twice();var l=a.testBit(e);l!=s.testBit(e)&&(u=u.add(l?u:c))}return o},st.prototype.multiplyTwo=function(t,e,r){var n;n=t.bitLength()>r.bitLength()?t.bitLength()-1:r.bitLength()-1;for(var i=this.curve.getInfinity(),o=this.add(e);n>=0;)i=i.twice(),t.testBit(n)?i=r.testBit(n)?i.add(o):i.add(this):r.testBit(n)&&(i=i.add(e)),--n;return i},at.prototype.getQ=function(){return this.q},at.prototype.getA=function(){return this.a},at.prototype.getB=function(){return this.b},at.prototype.equals=function(t){return t==this||this.q.equals(t.q)&&this.a.equals(t.a)&&this.b.equals(t.b)},at.prototype.getInfinity=function(){return this.infinity},at.prototype.fromBigInteger=function(t){return new ot(this.q,t)},at.prototype.decodePointHex=function(t){switch(parseInt(t.substr(0,2),16)){case 0:return this.infinity;case 2:case 3:default:return null;case 4:case 6:case 7:var e=(t.length-2)/2,r=t.substr(2,e),n=t.substr(e+2,e);return new st(this,this.fromBigInteger(new F(r,16)),this.fromBigInteger(new F(n,16)))}}, +/*! (c) Stefan Thomas | https://github.com/bitcoinjs/bitcoinjs-lib + */ +ot.prototype.getByteLength=function(){return Math.floor((this.toBigInteger().bitLength()+7)/8)},st.prototype.getEncoded=function(t){var e=function(t,e){var r=t.toByteArrayUnsigned();if(er.length;)r.unshift(0);return r},r=this.getX().toBigInteger(),n=this.getY().toBigInteger(),i=e(r,32);return t?n.isEven()?i.unshift(2):i.unshift(3):(i.unshift(4),i=i.concat(e(n,32))),i},st.decodeFrom=function(t,e){var r=e.length-1,n=e.slice(1,1+r/2),i=e.slice(1+r/2,1+r);n.unshift(0),i.unshift(0);var o=new F(n),s=new F(i);return new st(t,t.fromBigInteger(o),t.fromBigInteger(s))},st.decodeFromHex=function(t,e){e.substr(0,2);var r=e.length-2,n=e.substr(2,r/2),i=e.substr(2+r/2,r/2),o=new F(n,16),s=new F(i,16);return new st(t,t.fromBigInteger(o),t.fromBigInteger(s))},st.prototype.add2D=function(t){if(this.isInfinity())return t;if(t.isInfinity())return this;if(this.x.equals(t.x))return this.y.equals(t.y)?this.twice():this.curve.getInfinity();var e=t.x.subtract(this.x),r=t.y.subtract(this.y).divide(e),n=r.square().subtract(this.x).subtract(t.x),i=r.multiply(this.x.subtract(n)).subtract(this.y);return new st(this.curve,n,i)},st.prototype.twice2D=function(){if(this.isInfinity())return this;if(0==this.y.toBigInteger().signum())return this.curve.getInfinity();var t=this.curve.fromBigInteger(F.valueOf(2)),e=this.curve.fromBigInteger(F.valueOf(3)),r=this.x.square().multiply(e).add(this.curve.a).divide(this.y.multiply(t)),n=r.square().subtract(this.x.multiply(t)),i=r.multiply(this.x.subtract(n)).subtract(this.y);return new st(this.curve,n,i)},st.prototype.multiply2D=function(t){if(this.isInfinity())return this;if(0==t.signum())return this.curve.getInfinity();var e,r=t,n=r.multiply(new F("3")),i=this.negate(),o=this;for(e=n.bitLength()-2;e>0;--e){o=o.twice();var s=n.testBit(e);s!=r.testBit(e)&&(o=o.add2D(s?this:i))}return o},st.prototype.isOnCurve=function(){var t=this.getX().toBigInteger(),e=this.getY().toBigInteger(),r=this.curve.getA().toBigInteger(),n=this.curve.getB().toBigInteger(),i=this.curve.getQ(),o=e.multiply(e).mod(i),s=t.multiply(t).multiply(t).add(r.multiply(t)).add(n).mod(i);return o.equals(s)},st.prototype.toString=function(){return"("+this.getX().toBigInteger().toString()+","+this.getY().toBigInteger().toString()+")"},st.prototype.validate=function(){var t=this.curve.getQ();if(this.isInfinity())throw new Error("Point is at infinity.");var e=this.getX().toBigInteger(),r=this.getY().toBigInteger();if(e.compareTo(F.ONE)<0||e.compareTo(t.subtract(F.ONE))>0)throw new Error("x coordinate out of bounds");if(r.compareTo(F.ONE)<0||r.compareTo(t.subtract(F.ONE))>0)throw new Error("y coordinate out of bounds");if(!this.isOnCurve())throw new Error("Point is not on the curve.");if(this.multiply(t).isInfinity())throw new Error("Point is not a scalar multiple of G.");return!0}; +/*! Mike Samuel (c) 2009 | code.google.com/p/json-sans-eval + */ +var ut=function(){var t=new RegExp('(?:false|true|null|[\\{\\}\\[\\]]|(?:-?\\b(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?(?:[eE][+-]?[0-9]+)?\\b)|(?:"(?:[^\\0-\\x08\\x0a-\\x1f"\\\\]|\\\\(?:["/\\\\bfnrt]|u[0-9A-Fa-f]{4}))*"))',"g"),e=new RegExp("\\\\(?:([^u])|u(.{4}))","g"),n={'"':'"',"/":"/","\\":"\\",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"};function i(t,e,r){return e?n[e]:String.fromCharCode(parseInt(r,16))}var o=new String(""),s=Object.hasOwnProperty;return function(n,a){var u,c,h=n.match(t),l=h[0],f=!1;"{"===l?u={}:"["===l?u=[]:(u=[],f=!0);for(var g=[u],d=1-f,p=h.length;d=0;)delete i[o[h]]}return a.call(e,n,i)}({"":u},"")),u}}();void 0!==ct&&ct||(e.KJUR=ct={}),void 0!==ct.asn1&&ct.asn1||(ct.asn1={}),ct.asn1.ASN1Util=new function(){this.integerToByteHex=function(t){var e=t.toString(16);return e.length%2==1&&(e="0"+e),e},this.bigIntToMinTwosComplementsHex=function(t){var e=t.toString(16);if("-"!=e.substr(0,1))e.length%2==1?e="0"+e:e.match(/^[0-7]/)||(e="00"+e);else{var r=e.substr(1).length;r%2==1?r+=1:e.match(/^[0-7]/)||(r+=2);for(var n="",i=0;i15)throw"ASN.1 length too long to represent by 8x: n = "+t.toString(16);return(128+r).toString(16)+e},this.getEncodedHex=function(){return(null==this.hTLV||this.isModified)&&(this.hV=this.getFreshValueHex(),this.hL=this.getLengthHexFromValue(),this.hTLV=this.hT+this.hL+this.hV,this.isModified=!1),this.hTLV},this.getValueHex=function(){return this.getEncodedHex(),this.hV},this.getFreshValueHex=function(){return""},this.setByParam=function(t){this.params=t},null!=t&&null!=t.tlv&&(this.hTLV=t.tlv,this.isModified=!1)},ct.asn1.DERAbstractString=function(t){ct.asn1.DERAbstractString.superclass.constructor.call(this),this.getString=function(){return this.s},this.setString=function(t){this.hTLV=null,this.isModified=!0,this.s=t,this.hV=wt(this.s).toLowerCase()},this.setStringHex=function(t){this.hTLV=null,this.isModified=!0,this.s=null,this.hV=t},this.getFreshValueHex=function(){return this.hV},void 0!==t&&("string"==typeof t?this.setString(t):void 0!==t.str?this.setString(t.str):void 0!==t.hex&&this.setStringHex(t.hex))},o.lang.extend(ct.asn1.DERAbstractString,ct.asn1.ASN1Object),ct.asn1.DERAbstractTime=function(t){ct.asn1.DERAbstractTime.superclass.constructor.call(this),this.localDateToUTC=function(t){var e=t.getTime()+6e4*t.getTimezoneOffset();return new Date(e)},this.formatDate=function(t,e,r){var n=this.zeroPadding,i=this.localDateToUTC(t),o=String(i.getFullYear());"utc"==e&&(o=o.substr(2,2));var s=o+n(String(i.getMonth()+1),2)+n(String(i.getDate()),2)+n(String(i.getHours()),2)+n(String(i.getMinutes()),2)+n(String(i.getSeconds()),2);if(!0===r){var a=i.getMilliseconds();if(0!=a){var u=n(String(a),3);s=s+"."+(u=u.replace(/[0]+$/,""))}}return s+"Z"},this.zeroPadding=function(t,e){return t.length>=e?t:new Array(e-t.length+1).join("0")+t},this.getString=function(){return this.s},this.setString=function(t){this.hTLV=null,this.isModified=!0,this.s=t,this.hV=vt(t)},this.setByDateValue=function(t,e,r,n,i,o){var s=new Date(Date.UTC(t,e-1,r,n,i,o,0));this.setByDate(s)},this.getFreshValueHex=function(){return this.hV}},o.lang.extend(ct.asn1.DERAbstractTime,ct.asn1.ASN1Object),ct.asn1.DERAbstractStructured=function(t){ct.asn1.DERAbstractString.superclass.constructor.call(this),this.setByASN1ObjectArray=function(t){this.hTLV=null,this.isModified=!0,this.asn1Array=t},this.appendASN1Object=function(t){this.hTLV=null,this.isModified=!0,this.asn1Array.push(t)},this.asn1Array=new Array,void 0!==t&&void 0!==t.array&&(this.asn1Array=t.array)},o.lang.extend(ct.asn1.DERAbstractStructured,ct.asn1.ASN1Object),ct.asn1.DERBoolean=function(t){ct.asn1.DERBoolean.superclass.constructor.call(this),this.hT="01",this.hTLV=0==t?"010100":"0101ff"},o.lang.extend(ct.asn1.DERBoolean,ct.asn1.ASN1Object),ct.asn1.DERInteger=function(t){ct.asn1.DERInteger.superclass.constructor.call(this),this.hT="02",this.setByBigInteger=function(t){this.hTLV=null,this.isModified=!0,this.hV=ct.asn1.ASN1Util.bigIntToMinTwosComplementsHex(t)},this.setByInteger=function(t){var e=new F(String(t),10);this.setByBigInteger(e)},this.setValueHex=function(t){this.hV=t},this.getFreshValueHex=function(){return this.hV},void 0!==t&&(void 0!==t.bigint?this.setByBigInteger(t.bigint):void 0!==t.int?this.setByInteger(t.int):"number"==typeof t?this.setByInteger(t):void 0!==t.hex&&this.setValueHex(t.hex))},o.lang.extend(ct.asn1.DERInteger,ct.asn1.ASN1Object),ct.asn1.DERBitString=function(t){if(void 0!==t&&void 0!==t.obj){var e=ct.asn1.ASN1Util.newObject(t.obj);t.hex="00"+e.getEncodedHex()}ct.asn1.DERBitString.superclass.constructor.call(this),this.hT="03",this.setHexValueIncludingUnusedBits=function(t){this.hTLV=null,this.isModified=!0,this.hV=t},this.setUnusedBitsAndHexValue=function(t,e){if(t<0||7i.length&&(i=n[r]);return(t=t.replace(i,"::")).slice(1,-1)}function Ut(t){var e="malformed hex value";if(!t.match(/^([0-9A-Fa-f][0-9A-Fa-f]){1,}$/))throw e;if(8!=t.length)return 32==t.length?Nt(t):t;try{return parseInt(t.substr(0,2),16)+"."+parseInt(t.substr(2,2),16)+"."+parseInt(t.substr(4,2),16)+"."+parseInt(t.substr(6,2),16)}catch(t){throw e}}function Ot(t){for(var e=encodeURIComponent(t),r="",n=0;n"7"?"00"+t:t}ft.getLblen=function(t,e){if("8"!=t.substr(e+2,1))return 1;var r=parseInt(t.substr(e+3,1));return 0==r?-1:0=n)break}return s},ft.getNthChildIdx=function(t,e,r){return ft.getChildIdx(t,e)[r]},ft.getIdxbyList=function(t,e,r,n){var i,o,s=ft;return 0==r.length?void 0!==n&&t.substr(e,2)!==n?-1:e:(i=r.shift())>=(o=s.getChildIdx(t,e)).length?-1:s.getIdxbyList(t,o[i],r,n)},ft.getIdxbyListEx=function(t,e,r,n){var i,o,s=ft;if(0==r.length)return void 0!==n&&t.substr(e,2)!==n?-1:e;i=r.shift(),o=s.getChildIdx(t,e);for(var a=0,u=0;u=t.length?null:i.getTLV(t,o)},ft.getTLVbyListEx=function(t,e,r,n){var i=ft,o=i.getIdxbyListEx(t,e,r,n);return-1==o?null:i.getTLV(t,o)},ft.getVbyList=function(t,e,r,n,i){var o,s,a=ft;return-1==(o=a.getIdxbyList(t,e,r,n))||o>=t.length?null:(s=a.getV(t,o),!0===i&&(s=s.substr(2)),s)},ft.getVbyListEx=function(t,e,r,n,i){var o,s,a=ft;return-1==(o=a.getIdxbyListEx(t,e,r,n))?null:(s=a.getV(t,o),"03"==t.substr(o,2)&&!1!==i&&(s=s.substr(2)),s)},ft.getInt=function(t,e,r){null==r&&(r=-1);try{var n=t.substr(e,2);if("02"!=n&&"03"!=n)return r;var i=ft.getV(t,e);return"02"==n?parseInt(i,16):function(t){try{var e=t.substr(0,2);if("00"==e)return parseInt(t.substr(2),16);var r=parseInt(e,16),n=t.substr(2),i=parseInt(n,16).toString(2);return"0"==i&&(i="00000000"),i=i.slice(0,0-r),parseInt(i,2)}catch(t){return-1}}(i)}catch(t){return r}},ft.getOID=function(t,e,r){null==r&&(r=null);try{return"06"!=t.substr(e,2)?r:function(t){if(!Bt(t))return null;try{var e=[],r=t.substr(0,2),n=parseInt(r,16);e[0]=new String(Math.floor(n/40)),e[1]=new String(n%40);for(var i=t.substr(2),o=[],s=0;s0&&(c=c+"."+a.join(".")),c}catch(t){return null}}(ft.getV(t,e))}catch(t){return r}},ft.getOIDName=function(t,e,r){null==r&&(r=null);try{var n=ft.getOID(t,e,r);if(n==r)return r;var i=ct.asn1.x509.OID.oid2name(n);return""==i?n:i}catch(t){return r}},ft.getString=function(t,e,r){null==r&&(r=null);try{return Ft(ft.getV(t,e))}catch(t){return r}},ft.hextooidstr=function(t){var e=function(t,e){return t.length>=e?t:new Array(e-t.length+1).join("0")+t},r=[],n=t.substr(0,2),i=parseInt(n,16);r[0]=new String(Math.floor(i/40)),r[1]=new String(i%40);for(var o=t.substr(2),s=[],a=0;a0&&(h=h+"."+u.join(".")),h},ft.dump=function(t,e,r,n){var i=ft,o=i.getV,s=i.dump,a=i.getChildIdx,u=t;t instanceof ct.asn1.ASN1Object&&(u=t.getEncodedHex());var c=function(t,e){return t.length<=2*e?t:t.substr(0,e)+"..(total "+t.length/2+"bytes).."+t.substr(t.length-e,e)};void 0===e&&(e={ommit_long_octet:32}),void 0===r&&(r=0),void 0===n&&(n="");var h,l=e.ommit_long_octet;if("01"==(h=u.substr(r,2)))return"00"==(f=o(u,r))?n+"BOOLEAN FALSE\n":n+"BOOLEAN TRUE\n";if("02"==h)return n+"INTEGER "+c(f=o(u,r),l)+"\n";if("03"==h){var f=o(u,r);return i.isASN1HEX(f.substr(2))?(w=n+"BITSTRING, encapsulates\n")+s(f.substr(2),e,0,n+" "):n+"BITSTRING "+c(f,l)+"\n"}if("04"==h)return f=o(u,r),i.isASN1HEX(f)?(w=n+"OCTETSTRING, encapsulates\n")+s(f,e,0,n+" "):n+"OCTETSTRING "+c(f,l)+"\n";if("05"==h)return n+"NULL\n";if("06"==h){var g=o(u,r),d=ct.asn1.ASN1Util.oidHexToInt(g),p=ct.asn1.x509.OID.oid2name(d),v=d.replace(/\./g," ");return""!=p?n+"ObjectIdentifier "+p+" ("+v+")\n":n+"ObjectIdentifier ("+v+")\n"}if("0a"==h)return n+"ENUMERATED "+parseInt(o(u,r))+"\n";if("0c"==h)return n+"UTF8String '"+bt(o(u,r))+"'\n";if("13"==h)return n+"PrintableString '"+bt(o(u,r))+"'\n";if("14"==h)return n+"TeletexString '"+bt(o(u,r))+"'\n";if("16"==h)return n+"IA5String '"+bt(o(u,r))+"'\n";if("17"==h)return n+"UTCTime "+bt(o(u,r))+"\n";if("18"==h)return n+"GeneralizedTime "+bt(o(u,r))+"\n";if("1a"==h)return n+"VisualString '"+bt(o(u,r))+"'\n";if("1e"==h)return n+"BMPString '"+bt(o(u,r))+"'\n";if("30"==h){if("3000"==u.substr(r,4))return n+"SEQUENCE {}\n";w=n+"SEQUENCE\n";var y=e;if((2==(S=a(u,r)).length||3==S.length)&&"06"==u.substr(S[0],2)&&"04"==u.substr(S[S.length-1],2)){p=i.oidname(o(u,S[0]));var m=JSON.parse(JSON.stringify(e));m.x509ExtName=p,y=m}for(var _=0;_31)&&128==(192&r)&&(31&r)==n}catch(t){return!1}},ft.isASN1HEX=function(t){var e=ft;if(t.length%2==1)return!1;var r=e.getVblen(t,0),n=t.substr(0,2),i=e.getL(t,0);return t.length-n.length-i.length==2*r},ft.checkStrictDER=function(t,e,r,n,i){var o=ft;if(void 0===r){if("string"!=typeof t)throw new Error("not hex string");if(t=t.toLowerCase(),!ct.lang.String.isHex(t))throw new Error("not hex string");r=t.length,i=(n=t.length/2)<128?1:Math.ceil(n.toString(16))+1}if(o.getL(t,e).length>2*i)throw new Error("L of TLV too long: idx="+e);var s=o.getVblen(t,e);if(s>n)throw new Error("value of L too long than hex: idx="+e);var a=o.getTLV(t,e),u=a.length-2-o.getL(t,e).length;if(u!==2*s)throw new Error("V string length and L's value not the same:"+u+"/"+2*s);if(0===e&&t.length!=a.length)throw new Error("total length and TLV length unmatch:"+t.length+"!="+a.length);var c=t.substr(e,2);if("02"===c){var h=o.getVidx(t,e);if("00"==t.substr(h,2)&&t.charCodeAt(h+2)<56)throw new Error("not least zeros for DER INTEGER")}if(32&parseInt(c,16)){for(var l=o.getVblen(t,e),f=0,g=o.getChildIdx(t,e),d=0;d=e?t:new Array(e-t.length+1).join(r)+t};void 0!==ct&&ct||(e.KJUR=ct={}),void 0!==ct.crypto&&ct.crypto||(ct.crypto={}),ct.crypto.Util=new function(){this.DIGESTINFOHEAD={sha1:"3021300906052b0e03021a05000414",sha224:"302d300d06096086480165030402040500041c",sha256:"3031300d060960864801650304020105000420",sha384:"3041300d060960864801650304020205000430",sha512:"3051300d060960864801650304020305000440",md2:"3020300c06082a864886f70d020205000410",md5:"3020300c06082a864886f70d020505000410",ripemd160:"3021300906052b2403020105000414"},this.DEFAULTPROVIDER={md5:"cryptojs",sha1:"cryptojs",sha224:"cryptojs",sha256:"cryptojs",sha384:"cryptojs",sha512:"cryptojs",ripemd160:"cryptojs",hmacmd5:"cryptojs",hmacsha1:"cryptojs",hmacsha224:"cryptojs",hmacsha256:"cryptojs",hmacsha384:"cryptojs",hmacsha512:"cryptojs",hmacripemd160:"cryptojs",MD5withRSA:"cryptojs/jsrsa",SHA1withRSA:"cryptojs/jsrsa",SHA224withRSA:"cryptojs/jsrsa",SHA256withRSA:"cryptojs/jsrsa",SHA384withRSA:"cryptojs/jsrsa",SHA512withRSA:"cryptojs/jsrsa",RIPEMD160withRSA:"cryptojs/jsrsa",MD5withECDSA:"cryptojs/jsrsa",SHA1withECDSA:"cryptojs/jsrsa",SHA224withECDSA:"cryptojs/jsrsa",SHA256withECDSA:"cryptojs/jsrsa",SHA384withECDSA:"cryptojs/jsrsa",SHA512withECDSA:"cryptojs/jsrsa",RIPEMD160withECDSA:"cryptojs/jsrsa",SHA1withDSA:"cryptojs/jsrsa",SHA224withDSA:"cryptojs/jsrsa",SHA256withDSA:"cryptojs/jsrsa",MD5withRSAandMGF1:"cryptojs/jsrsa",SHAwithRSAandMGF1:"cryptojs/jsrsa",SHA1withRSAandMGF1:"cryptojs/jsrsa",SHA224withRSAandMGF1:"cryptojs/jsrsa",SHA256withRSAandMGF1:"cryptojs/jsrsa",SHA384withRSAandMGF1:"cryptojs/jsrsa",SHA512withRSAandMGF1:"cryptojs/jsrsa",RIPEMD160withRSAandMGF1:"cryptojs/jsrsa"},this.CRYPTOJSMESSAGEDIGESTNAME={md5:y.algo.MD5,sha1:y.algo.SHA1,sha224:y.algo.SHA224,sha256:y.algo.SHA256,sha384:y.algo.SHA384,sha512:y.algo.SHA512,ripemd160:y.algo.RIPEMD160},this.getDigestInfoHex=function(t,e){if(void 0===this.DIGESTINFOHEAD[e])throw"alg not supported in Util.DIGESTINFOHEAD: "+e;return this.DIGESTINFOHEAD[e]+t},this.getPaddedDigestInfoHex=function(t,e,r){var n=this.getDigestInfoHex(t,e),i=r/4;if(n.length+22>i)throw"key is too short for SigAlg: keylen="+r+","+e;for(var o="00"+n,s="",a=i-4-o.length,u=0;u=0)return!1;if(r.compareTo(n.ONE)<0||r.compareTo(o)>=0)return!1;var a=r.modInverse(o),u=t.multiply(a).mod(o),c=e.multiply(a).mod(o);return s.multiply(u).add(i.multiply(c)).getX().toBigInteger().mod(o).equals(e)},this.serializeSig=function(t,e){var r=t.toByteArraySigned(),n=e.toByteArraySigned(),i=[];return i.push(2),i.push(r.length),(i=i.concat(r)).push(2),i.push(n.length),(i=i.concat(n)).unshift(i.length),i.unshift(48),i},this.parseSig=function(t){var e;if(48!=t[0])throw new Error("Signature not a valid DERSequence");if(2!=t[e=2])throw new Error("First element in signature must be a DERInteger");var r=t.slice(e+2,e+2+t[e+1]);if(2!=t[e+=2+t[e+1]])throw new Error("Second element in signature must be a DERInteger");var i=t.slice(e+2,e+2+t[e+1]);return e+=2+t[e+1],{r:n.fromByteArrayUnsigned(r),s:n.fromByteArrayUnsigned(i)}},this.parseSigCompact=function(t){if(65!==t.length)throw"Signature has the wrong length";var e=t[0]-27;if(e<0||e>7)throw"Invalid signature type";var r=this.ecparams.n;return{r:n.fromByteArrayUnsigned(t.slice(1,33)).mod(r),s:n.fromByteArrayUnsigned(t.slice(33,65)).mod(r),i:e}},this.readPKCS5PrvKeyHex=function(t){if(!1===h(t))throw new Error("not ASN.1 hex string");var e,r,n;try{e=c(t,0,["[0]",0],"06"),r=c(t,0,[1],"04");try{n=c(t,0,["[1]",0],"03")}catch(t){}}catch(t){throw new Error("malformed PKCS#1/5 plain ECC private key")}if(this.curveName=a(e),void 0===this.curveName)throw"unsupported curve name";this.setNamedCurve(this.curveName),this.setPublicKeyHex(n),this.setPrivateKeyHex(r),this.isPublic=!1},this.readPKCS8PrvKeyHex=function(t){if(!1===h(t))throw new e("not ASN.1 hex string");var r,n,i;try{c(t,0,[1,0],"06"),r=c(t,0,[1,1],"06"),n=c(t,0,[2,0,1],"04");try{i=c(t,0,[2,0,"[1]",0],"03")}catch(t){}}catch(t){throw new e("malformed PKCS#8 plain ECC private key")}if(this.curveName=a(r),void 0===this.curveName)throw new e("unsupported curve name");this.setNamedCurve(this.curveName),this.setPublicKeyHex(i),this.setPrivateKeyHex(n),this.isPublic=!1},this.readPKCS8PubKeyHex=function(t){if(!1===h(t))throw new e("not ASN.1 hex string");var r,n;try{c(t,0,[0,0],"06"),r=c(t,0,[0,1],"06"),n=c(t,0,[1],"03")}catch(t){throw new e("malformed PKCS#8 ECC public key")}if(this.curveName=a(r),null===this.curveName)throw new e("unsupported curve name");this.setNamedCurve(this.curveName),this.setPublicKeyHex(n)},this.readCertPubKeyHex=function(t,r){if(!1===h(t))throw new e("not ASN.1 hex string");var n,i;try{n=c(t,0,[0,5,0,1],"06"),i=c(t,0,[0,5,1],"03")}catch(t){throw new e("malformed X.509 certificate ECC public key")}if(this.curveName=a(n),null===this.curveName)throw new e("unsupported curve name");this.setNamedCurve(this.curveName),this.setPublicKeyHex(i)},void 0!==t&&void 0!==t.curve&&(this.curveName=t.curve),void 0===this.curveName&&(this.curveName="secp256r1"),this.setNamedCurve(this.curveName),void 0!==t&&(void 0!==t.prv&&this.setPrivateKeyHex(t.prv),void 0!==t.pub&&this.setPublicKeyHex(t.pub))},ct.crypto.ECDSA.parseSigHex=function(t){var e=ct.crypto.ECDSA.parseSigHexInHexRS(t);return{r:new F(e.r,16),s:new F(e.s,16)}},ct.crypto.ECDSA.parseSigHexInHexRS=function(t){var e=ft,r=e.getChildIdx,n=e.getV;if(e.checkStrictDER(t,0),"30"!=t.substr(0,2))throw new Error("signature is not a ASN.1 sequence");var i=r(t,0);if(2!=i.length)throw new Error("signature shall have two elements");var o=i[0],s=i[1];if("02"!=t.substr(o,2))throw new Error("1st item not ASN.1 integer");if("02"!=t.substr(s,2))throw new Error("2nd item not ASN.1 integer");return{r:n(t,o),s:n(t,s)}},ct.crypto.ECDSA.asn1SigToConcatSig=function(t){var e=ct.crypto.ECDSA.parseSigHexInHexRS(t),r=e.r,n=e.s;if("00"==r.substr(0,2)&&r.length%32==2&&(r=r.substr(2)),"00"==n.substr(0,2)&&n.length%32==2&&(n=n.substr(2)),r.length%32==30&&(r="00"+r),n.length%32==30&&(n="00"+n),r.length%32!=0)throw"unknown ECDSA sig r length error";if(n.length%32!=0)throw"unknown ECDSA sig s length error";return r+n},ct.crypto.ECDSA.concatSigToASN1Sig=function(t){if(t.length/2*8%128!=0)throw"unknown ECDSA concatinated r-s sig length error";var e=t.substr(0,t.length/2),r=t.substr(t.length/2);return ct.crypto.ECDSA.hexRSSigToASN1Sig(e,r)},ct.crypto.ECDSA.hexRSSigToASN1Sig=function(t,e){var r=new F(t,16),n=new F(e,16);return ct.crypto.ECDSA.biRSSigToASN1Sig(r,n)},ct.crypto.ECDSA.biRSSigToASN1Sig=function(t,e){var r=ct.asn1,n=new r.DERInteger({bigint:t}),i=new r.DERInteger({bigint:e});return new r.DERSequence({array:[n,i]}).getEncodedHex()},ct.crypto.ECDSA.getName=function(t){return"2b8104001f"===t?"secp192k1":"2a8648ce3d030107"===t?"secp256r1":"2b8104000a"===t?"secp256k1":"2b81040021"===t?"secp224r1":"2b81040022"===t?"secp384r1":-1!=="|secp256r1|NIST P-256|P-256|prime256v1|".indexOf(t)?"secp256r1":-1!=="|secp256k1|".indexOf(t)?"secp256k1":-1!=="|secp224r1|NIST P-224|P-224|".indexOf(t)?"secp224r1":-1!=="|secp384r1|NIST P-384|P-384|".indexOf(t)?"secp384r1":null},void 0!==ct&&ct||(e.KJUR=ct={}),void 0!==ct.crypto&&ct.crypto||(ct.crypto={}),ct.crypto.ECParameterDB=new function(){var t={},e={};function r(t){return new F(t,16)}this.getByName=function(r){var n=r;if(void 0!==e[n]&&(n=e[r]),void 0!==t[n])return t[n];throw"unregistered EC curve name: "+n},this.regist=function(n,i,o,s,a,u,c,h,l,f,g,d){t[n]={};var p=r(o),v=r(s),y=r(a),m=r(u),_=r(c),S=new at(p,v,y),w=S.decodePointHex("04"+h+l);t[n].name=n,t[n].keylen=i,t[n].curve=S,t[n].G=w,t[n].n=m,t[n].h=_,t[n].oid=g,t[n].info=d;for(var b=0;b=2*a)break}var l={};return l.keyhex=u.substr(0,2*i[t].keylen),l.ivhex=u.substr(2*i[t].keylen,2*i[t].ivlen),l},a=function(t,e,r,n){var o=y.enc.Base64.parse(t),s=y.enc.Hex.stringify(o);return(0,i[e].proc)(s,r,n)};return{version:"1.0.0",parsePKCS5PEM:function(t){return o(t)},getKeyAndUnusedIvByPasscodeAndIvsalt:function(t,e,r){return s(t,e,r)},decryptKeyB64:function(t,e,r,n){return a(t,e,r,n)},getDecryptedKeyHex:function(t,e){var r=o(t),n=r.cipher,i=r.ivsalt,u=r.data,c=s(n,e,i).keyhex;return a(u,n,c,i)},getEncryptedPKCS5PEMFromPrvKeyHex:function(t,e,r,n,o){var a="";if(void 0!==n&&null!=n||(n="AES-256-CBC"),void 0===i[n])throw"KEYUTIL unsupported algorithm: "+n;void 0!==o&&null!=o||(o=function(t){var e=y.lib.WordArray.random(t);return y.enc.Hex.stringify(e)}(i[n].ivlen).toUpperCase());var u=function(t,e,r,n){return(0,i[e].eproc)(t,r,n)}(e,n,s(n,r,o).keyhex,o);return a="-----BEGIN "+t+" PRIVATE KEY-----\r\n",a+="Proc-Type: 4,ENCRYPTED\r\n",a+="DEK-Info: "+n+","+o+"\r\n",a+="\r\n",(a+=u.replace(/(.{64})/g,"$1\r\n"))+"\r\n-----END "+t+" PRIVATE KEY-----\r\n"},parseHexOfEncryptedPKCS8:function(t){var e=ft,r=e.getChildIdx,n=e.getV,i={},o=r(t,0);if(2!=o.length)throw"malformed format: SEQUENCE(0).items != 2: "+o.length;i.ciphertext=n(t,o[1]);var s=r(t,o[0]);if(2!=s.length)throw"malformed format: SEQUENCE(0.0).items != 2: "+s.length;if("2a864886f70d01050d"!=n(t,s[0]))throw"this only supports pkcs5PBES2";var a=r(t,s[1]);if(2!=s.length)throw"malformed format: SEQUENCE(0.0.1).items != 2: "+a.length;var u=r(t,a[1]);if(2!=u.length)throw"malformed format: SEQUENCE(0.0.1.1).items != 2: "+u.length;if("2a864886f70d0307"!=n(t,u[0]))throw"this only supports TripleDES";i.encryptionSchemeAlg="TripleDES",i.encryptionSchemeIV=n(t,u[1]);var c=r(t,a[0]);if(2!=c.length)throw"malformed format: SEQUENCE(0.0.1.0).items != 2: "+c.length;if("2a864886f70d01050c"!=n(t,c[0]))throw"this only supports pkcs5PBKDF2";var h=r(t,c[1]);if(h.length<2)throw"malformed format: SEQUENCE(0.0.1.0.1).items < 2: "+h.length;i.pbkdf2Salt=n(t,h[0]);var l=n(t,h[1]);try{i.pbkdf2Iter=parseInt(l,16)}catch(t){throw"malformed format pbkdf2Iter: "+l}return i},getPBKDF2KeyHexFromParam:function(t,e){var r=y.enc.Hex.parse(t.pbkdf2Salt),n=t.pbkdf2Iter,i=y.PBKDF2(e,r,{keySize:6,iterations:n});return y.enc.Hex.stringify(i)},_getPlainPKCS8HexFromEncryptedPKCS8PEM:function(t,e){var r=Ct(t,"ENCRYPTED PRIVATE KEY"),n=this.parseHexOfEncryptedPKCS8(r),i=Ht.getPBKDF2KeyHexFromParam(n,e),o={};o.ciphertext=y.enc.Hex.parse(n.ciphertext);var s=y.enc.Hex.parse(i),a=y.enc.Hex.parse(n.encryptionSchemeIV),u=y.TripleDES.decrypt(o,s,{iv:a});return y.enc.Hex.stringify(u)},getKeyFromEncryptedPKCS8PEM:function(t,e){var r=this._getPlainPKCS8HexFromEncryptedPKCS8PEM(t,e);return this.getKeyFromPlainPrivatePKCS8Hex(r)},parsePlainPrivatePKCS8Hex:function(t){var e=ft,r=e.getChildIdx,n=e.getV,i={algparam:null};if("30"!=t.substr(0,2))throw"malformed plain PKCS8 private key(code:001)";var o=r(t,0);if(3!=o.length)throw"malformed plain PKCS8 private key(code:002)";if("30"!=t.substr(o[1],2))throw"malformed PKCS8 private key(code:003)";var s=r(t,o[1]);if(2!=s.length)throw"malformed PKCS8 private key(code:004)";if("06"!=t.substr(s[0],2))throw"malformed PKCS8 private key(code:005)";if(i.algoid=n(t,s[0]),"06"==t.substr(s[1],2)&&(i.algparam=n(t,s[1])),"04"!=t.substr(o[2],2))throw"malformed PKCS8 private key(code:006)";return i.keyidx=e.getVidx(t,o[2]),i},getKeyFromPlainPrivatePKCS8PEM:function(t){var e=Ct(t,"PRIVATE KEY");return this.getKeyFromPlainPrivatePKCS8Hex(e)},getKeyFromPlainPrivatePKCS8Hex:function(t){var e,r=this.parsePlainPrivatePKCS8Hex(t);if("2a864886f70d010101"==r.algoid)e=new it;else if("2a8648ce380401"==r.algoid)e=new ct.crypto.DSA;else{if("2a8648ce3d0201"!=r.algoid)throw"unsupported private key algorithm";e=new ct.crypto.ECDSA}return e.readPKCS8PrvKeyHex(t),e},_getKeyFromPublicPKCS8Hex:function(t){var e,r=ft.getVbyList(t,0,[0,0],"06");if("2a864886f70d010101"===r)e=new it;else if("2a8648ce380401"===r)e=new ct.crypto.DSA;else{if("2a8648ce3d0201"!==r)throw"unsupported PKCS#8 public key hex";e=new ct.crypto.ECDSA}return e.readPKCS8PubKeyHex(t),e},parsePublicRawRSAKeyHex:function(t){var e=ft,r=e.getChildIdx,n=e.getV,i={};if("30"!=t.substr(0,2))throw"malformed RSA key(code:001)";var o=r(t,0);if(2!=o.length)throw"malformed RSA key(code:002)";if("02"!=t.substr(o[0],2))throw"malformed RSA key(code:003)";if(i.n=n(t,o[0]),"02"!=t.substr(o[1],2))throw"malformed RSA key(code:004)";return i.e=n(t,o[1]),i},parsePublicPKCS8Hex:function(t){var e=ft,r=e.getChildIdx,n=e.getV,i={algparam:null},o=r(t,0);if(2!=o.length)throw"outer DERSequence shall have 2 elements: "+o.length;var s=o[0];if("30"!=t.substr(s,2))throw"malformed PKCS8 public key(code:001)";var a=r(t,s);if(2!=a.length)throw"malformed PKCS8 public key(code:002)";if("06"!=t.substr(a[0],2))throw"malformed PKCS8 public key(code:003)";if(i.algoid=n(t,a[0]),"06"==t.substr(a[1],2)?i.algparam=n(t,a[1]):"30"==t.substr(a[1],2)&&(i.algparam={},i.algparam.p=e.getVbyList(t,a[1],[0],"02"),i.algparam.q=e.getVbyList(t,a[1],[1],"02"),i.algparam.g=e.getVbyList(t,a[1],[2],"02")),"03"!=t.substr(o[1],2))throw"malformed PKCS8 public key(code:004)";return i.key=n(t,o[1]).substr(2),i}}}();Ht.getKey=function(t,e,r){var n,i=(y=ft).getChildIdx,o=y.getVbyList,s=ct.crypto,a=s.ECDSA,u=s.DSA,c=it,h=Ct,l=Ht;if(void 0!==c&&t instanceof c)return t;if(void 0!==a&&t instanceof a)return t;if(void 0!==u&&t instanceof u)return t;if(void 0!==t.curve&&void 0!==t.xy&&void 0===t.d)return new a({pub:t.xy,curve:t.curve});if(void 0!==t.curve&&void 0!==t.d)return new a({prv:t.d,curve:t.curve});if(void 0===t.kty&&void 0!==t.n&&void 0!==t.e&&void 0===t.d)return(C=new c).setPublic(t.n,t.e),C;if(void 0===t.kty&&void 0!==t.n&&void 0!==t.e&&void 0!==t.d&&void 0!==t.p&&void 0!==t.q&&void 0!==t.dp&&void 0!==t.dq&&void 0!==t.co&&void 0===t.qi)return(C=new c).setPrivateEx(t.n,t.e,t.d,t.p,t.q,t.dp,t.dq,t.co),C;if(void 0===t.kty&&void 0!==t.n&&void 0!==t.e&&void 0!==t.d&&void 0===t.p)return(C=new c).setPrivate(t.n,t.e,t.d),C;if(void 0!==t.p&&void 0!==t.q&&void 0!==t.g&&void 0!==t.y&&void 0===t.x)return(C=new u).setPublic(t.p,t.q,t.g,t.y),C;if(void 0!==t.p&&void 0!==t.q&&void 0!==t.g&&void 0!==t.y&&void 0!==t.x)return(C=new u).setPrivate(t.p,t.q,t.g,t.y,t.x),C;if("RSA"===t.kty&&void 0!==t.n&&void 0!==t.e&&void 0===t.d)return(C=new c).setPublic(St(t.n),St(t.e)),C;if("RSA"===t.kty&&void 0!==t.n&&void 0!==t.e&&void 0!==t.d&&void 0!==t.p&&void 0!==t.q&&void 0!==t.dp&&void 0!==t.dq&&void 0!==t.qi)return(C=new c).setPrivateEx(St(t.n),St(t.e),St(t.d),St(t.p),St(t.q),St(t.dp),St(t.dq),St(t.qi)),C;if("RSA"===t.kty&&void 0!==t.n&&void 0!==t.e&&void 0!==t.d)return(C=new c).setPrivate(St(t.n),St(t.e),St(t.d)),C;if("EC"===t.kty&&void 0!==t.crv&&void 0!==t.x&&void 0!==t.y&&void 0===t.d){var f=(P=new a({curve:t.crv})).ecparams.keylen/4,g="04"+("0000000000"+St(t.x)).slice(-f)+("0000000000"+St(t.y)).slice(-f);return P.setPublicKeyHex(g),P}if("EC"===t.kty&&void 0!==t.crv&&void 0!==t.x&&void 0!==t.y&&void 0!==t.d){f=(P=new a({curve:t.crv})).ecparams.keylen/4,g="04"+("0000000000"+St(t.x)).slice(-f)+("0000000000"+St(t.y)).slice(-f);var d=("0000000000"+St(t.d)).slice(-f);return P.setPublicKeyHex(g),P.setPrivateKeyHex(d),P}if("pkcs5prv"===r){var p,v=t,y=ft;if(9===(p=i(v,0)).length)(C=new c).readPKCS5PrvKeyHex(v);else if(6===p.length)(C=new u).readPKCS5PrvKeyHex(v);else{if(!(p.length>2&&"04"===v.substr(p[1],2)))throw"unsupported PKCS#1/5 hexadecimal key";(C=new a).readPKCS5PrvKeyHex(v)}return C}if("pkcs8prv"===r)return l.getKeyFromPlainPrivatePKCS8Hex(t);if("pkcs8pub"===r)return l._getKeyFromPublicPKCS8Hex(t);if("x509pub"===r)return Wt.getPublicKeyFromCertHex(t);if(-1!=t.indexOf("-END CERTIFICATE-",0)||-1!=t.indexOf("-END X509 CERTIFICATE-",0)||-1!=t.indexOf("-END TRUSTED CERTIFICATE-",0))return Wt.getPublicKeyFromCertPEM(t);if(-1!=t.indexOf("-END PUBLIC KEY-")){var m=Ct(t,"PUBLIC KEY");return l._getKeyFromPublicPKCS8Hex(m)}if(-1!=t.indexOf("-END RSA PRIVATE KEY-")&&-1==t.indexOf("4,ENCRYPTED")){var _=h(t,"RSA PRIVATE KEY");return l.getKey(_,null,"pkcs5prv")}if(-1!=t.indexOf("-END DSA PRIVATE KEY-")&&-1==t.indexOf("4,ENCRYPTED")){var S=o(n=h(t,"DSA PRIVATE KEY"),0,[1],"02"),w=o(n,0,[2],"02"),b=o(n,0,[3],"02"),E=o(n,0,[4],"02"),x=o(n,0,[5],"02");return(C=new u).setPrivate(new F(S,16),new F(w,16),new F(b,16),new F(E,16),new F(x,16)),C}if(-1!=t.indexOf("-END EC PRIVATE KEY-")&&-1==t.indexOf("4,ENCRYPTED"))return _=h(t,"EC PRIVATE KEY"),l.getKey(_,null,"pkcs5prv");if(-1!=t.indexOf("-END PRIVATE KEY-"))return l.getKeyFromPlainPrivatePKCS8PEM(t);if(-1!=t.indexOf("-END RSA PRIVATE KEY-")&&-1!=t.indexOf("4,ENCRYPTED")){var A=l.getDecryptedKeyHex(t,e),k=new it;return k.readPKCS5PrvKeyHex(A),k}if(-1!=t.indexOf("-END EC PRIVATE KEY-")&&-1!=t.indexOf("4,ENCRYPTED")){var P,C=o(n=l.getDecryptedKeyHex(t,e),0,[1],"04"),T=o(n,0,[2,0],"06"),R=o(n,0,[3,0],"03").substr(2);if(void 0===ct.crypto.OID.oidhex2name[T])throw"undefined OID(hex) in KJUR.crypto.OID: "+T;return(P=new a({curve:ct.crypto.OID.oidhex2name[T]})).setPublicKeyHex(R),P.setPrivateKeyHex(C),P.isPublic=!1,P}if(-1!=t.indexOf("-END DSA PRIVATE KEY-")&&-1!=t.indexOf("4,ENCRYPTED"))return S=o(n=l.getDecryptedKeyHex(t,e),0,[1],"02"),w=o(n,0,[2],"02"),b=o(n,0,[3],"02"),E=o(n,0,[4],"02"),x=o(n,0,[5],"02"),(C=new u).setPrivate(new F(S,16),new F(w,16),new F(b,16),new F(E,16),new F(x,16)),C;if(-1!=t.indexOf("-END ENCRYPTED PRIVATE KEY-"))return l.getKeyFromEncryptedPKCS8PEM(t,e);throw new Error("not supported argument")},Ht.generateKeypair=function(t,e){if("RSA"==t){var r=e;(s=new it).generate(r,"10001"),s.isPrivate=!0,s.isPublic=!0;var n=new it,i=s.n.toString(16),o=s.e.toString(16);return n.setPublic(i,o),n.isPrivate=!1,n.isPublic=!0,(a={}).prvKeyObj=s,a.pubKeyObj=n,a}if("EC"==t){var s,a,u=e,c=new ct.crypto.ECDSA({curve:u}).generateKeyPairHex();return(s=new ct.crypto.ECDSA({curve:u})).setPublicKeyHex(c.ecpubhex),s.setPrivateKeyHex(c.ecprvhex),s.isPrivate=!0,s.isPublic=!1,(n=new ct.crypto.ECDSA({curve:u})).setPublicKeyHex(c.ecpubhex),n.isPrivate=!1,n.isPublic=!0,(a={}).prvKeyObj=s,a.pubKeyObj=n,a}throw"unknown algorithm: "+t},Ht.getPEM=function(t,e,r,n,i,o){var s=ct,a=s.asn1,u=a.DERObjectIdentifier,c=a.DERInteger,h=a.ASN1Util.newObject,l=a.x509.SubjectPublicKeyInfo,f=s.crypto,g=f.DSA,d=f.ECDSA,p=it;function v(t){return h({seq:[{int:0},{int:{bigint:t.n}},{int:t.e},{int:{bigint:t.d}},{int:{bigint:t.p}},{int:{bigint:t.q}},{int:{bigint:t.dmp1}},{int:{bigint:t.dmq1}},{int:{bigint:t.coeff}}]})}function m(t){return h({seq:[{int:1},{octstr:{hex:t.prvKeyHex}},{tag:["a0",!0,{oid:{name:t.curveName}}]},{tag:["a1",!0,{bitstr:{hex:"00"+t.pubKeyHex}}]}]})}function _(t){return h({seq:[{int:0},{int:{bigint:t.p}},{int:{bigint:t.q}},{int:{bigint:t.g}},{int:{bigint:t.y}},{int:{bigint:t.x}}]})}if((void 0!==p&&t instanceof p||void 0!==g&&t instanceof g||void 0!==d&&t instanceof d)&&1==t.isPublic&&(void 0===e||"PKCS8PUB"==e))return Pt(F=new l(t).getEncodedHex(),"PUBLIC KEY");if("PKCS1PRV"==e&&void 0!==p&&t instanceof p&&(void 0===r||null==r)&&1==t.isPrivate)return Pt(F=v(t).getEncodedHex(),"RSA PRIVATE KEY");if("PKCS1PRV"==e&&void 0!==d&&t instanceof d&&(void 0===r||null==r)&&1==t.isPrivate){var S=new u({name:t.curveName}).getEncodedHex(),w=m(t).getEncodedHex(),b="";return(b+=Pt(S,"EC PARAMETERS"))+Pt(w,"EC PRIVATE KEY")}if("PKCS1PRV"==e&&void 0!==g&&t instanceof g&&(void 0===r||null==r)&&1==t.isPrivate)return Pt(F=_(t).getEncodedHex(),"DSA PRIVATE KEY");if("PKCS5PRV"==e&&void 0!==p&&t instanceof p&&void 0!==r&&null!=r&&1==t.isPrivate){var F=v(t).getEncodedHex();return void 0===n&&(n="DES-EDE3-CBC"),this.getEncryptedPKCS5PEMFromPrvKeyHex("RSA",F,r,n,o)}if("PKCS5PRV"==e&&void 0!==d&&t instanceof d&&void 0!==r&&null!=r&&1==t.isPrivate)return F=m(t).getEncodedHex(),void 0===n&&(n="DES-EDE3-CBC"),this.getEncryptedPKCS5PEMFromPrvKeyHex("EC",F,r,n,o);if("PKCS5PRV"==e&&void 0!==g&&t instanceof g&&void 0!==r&&null!=r&&1==t.isPrivate)return F=_(t).getEncodedHex(),void 0===n&&(n="DES-EDE3-CBC"),this.getEncryptedPKCS5PEMFromPrvKeyHex("DSA",F,r,n,o);var E=function(t,e){var r=x(t,e);return new h({seq:[{seq:[{oid:{name:"pkcs5PBES2"}},{seq:[{seq:[{oid:{name:"pkcs5PBKDF2"}},{seq:[{octstr:{hex:r.pbkdf2Salt}},{int:r.pbkdf2Iter}]}]},{seq:[{oid:{name:"des-EDE3-CBC"}},{octstr:{hex:r.encryptionSchemeIV}}]}]}]},{octstr:{hex:r.ciphertext}}]}).getEncodedHex()},x=function(t,e){var r=y.lib.WordArray.random(8),n=y.lib.WordArray.random(8),i=y.PBKDF2(e,r,{keySize:6,iterations:100}),o=y.enc.Hex.parse(t),s=y.TripleDES.encrypt(o,i,{iv:n})+"",a={};return a.ciphertext=s,a.pbkdf2Salt=y.enc.Hex.stringify(r),a.pbkdf2Iter=100,a.encryptionSchemeAlg="DES-EDE3-CBC",a.encryptionSchemeIV=y.enc.Hex.stringify(n),a};if("PKCS8PRV"==e&&null!=p&&t instanceof p&&1==t.isPrivate){var A=v(t).getEncodedHex();return F=h({seq:[{int:0},{seq:[{oid:{name:"rsaEncryption"}},{null:!0}]},{octstr:{hex:A}}]}).getEncodedHex(),void 0===r||null==r?Pt(F,"PRIVATE KEY"):Pt(w=E(F,r),"ENCRYPTED PRIVATE KEY")}if("PKCS8PRV"==e&&void 0!==d&&t instanceof d&&1==t.isPrivate)return A=new h({seq:[{int:1},{octstr:{hex:t.prvKeyHex}},{tag:["a1",!0,{bitstr:{hex:"00"+t.pubKeyHex}}]}]}).getEncodedHex(),F=h({seq:[{int:0},{seq:[{oid:{name:"ecPublicKey"}},{oid:{name:t.curveName}}]},{octstr:{hex:A}}]}).getEncodedHex(),void 0===r||null==r?Pt(F,"PRIVATE KEY"):Pt(w=E(F,r),"ENCRYPTED PRIVATE KEY");if("PKCS8PRV"==e&&void 0!==g&&t instanceof g&&1==t.isPrivate)return A=new c({bigint:t.x}).getEncodedHex(),F=h({seq:[{int:0},{seq:[{oid:{name:"dsa"}},{seq:[{int:{bigint:t.p}},{int:{bigint:t.q}},{int:{bigint:t.g}}]}]},{octstr:{hex:A}}]}).getEncodedHex(),void 0===r||null==r?Pt(F,"PRIVATE KEY"):Pt(w=E(F,r),"ENCRYPTED PRIVATE KEY");throw new Error("unsupported object nor format")},Ht.getKeyFromCSRPEM=function(t){var e=Ct(t,"CERTIFICATE REQUEST");return Ht.getKeyFromCSRHex(e)},Ht.getKeyFromCSRHex=function(t){var e=Ht.parseCSRHex(t);return Ht.getKey(e.p8pubkeyhex,null,"pkcs8pub")},Ht.parseCSRHex=function(t){var e=ft,r=e.getChildIdx,n=e.getTLV,i={},o=t;if("30"!=o.substr(0,2))throw"malformed CSR(code:001)";var s=r(o,0);if(s.length<1)throw"malformed CSR(code:002)";if("30"!=o.substr(s[0],2))throw"malformed CSR(code:003)";var a=r(o,s[0]);if(a.length<3)throw"malformed CSR(code:004)";return i.p8pubkeyhex=n(o,a[2]),i},Ht.getKeyID=function(t){var e=Ht,r=ft;"string"==typeof t&&-1!=t.indexOf("BEGIN ")&&(t=e.getKey(t));var n=Ct(e.getPEM(t)),i=r.getIdxbyList(n,0,[1]),o=r.getV(n,i).substring(2);return ct.crypto.Util.hashHex(o,"sha1")},Ht.getJWKFromKey=function(t){var e={};if(t instanceof it&&t.isPrivate)return e.kty="RSA",e.n=_t(t.n.toString(16)),e.e=_t(t.e.toString(16)),e.d=_t(t.d.toString(16)),e.p=_t(t.p.toString(16)),e.q=_t(t.q.toString(16)),e.dp=_t(t.dmp1.toString(16)),e.dq=_t(t.dmq1.toString(16)),e.qi=_t(t.coeff.toString(16)),e;if(t instanceof it&&t.isPublic)return e.kty="RSA",e.n=_t(t.n.toString(16)),e.e=_t(t.e.toString(16)),e;if(t instanceof ct.crypto.ECDSA&&t.isPrivate){if("P-256"!==(n=t.getShortNISTPCurveName())&&"P-384"!==n)throw"unsupported curve name for JWT: "+n;var r=t.getPublicKeyXYHex();return e.kty="EC",e.crv=n,e.x=_t(r.x),e.y=_t(r.y),e.d=_t(t.prvKeyHex),e}if(t instanceof ct.crypto.ECDSA&&t.isPublic){var n;if("P-256"!==(n=t.getShortNISTPCurveName())&&"P-384"!==n)throw"unsupported curve name for JWT: "+n;return r=t.getPublicKeyXYHex(),e.kty="EC",e.crv=n,e.x=_t(r.x),e.y=_t(r.y),e}throw"not supported key object"},it.getPosArrayOfChildrenFromHex=function(t){return ft.getChildIdx(t,0)},it.getHexValueArrayOfChildrenFromHex=function(t){var e,r=ft.getV,n=r(t,(e=it.getPosArrayOfChildrenFromHex(t))[0]),i=r(t,e[1]),o=r(t,e[2]),s=r(t,e[3]),a=r(t,e[4]),u=r(t,e[5]),c=r(t,e[6]),h=r(t,e[7]),l=r(t,e[8]);return(e=new Array).push(n,i,o,s,a,u,c,h,l),e},it.prototype.readPrivateKeyFromPEMString=function(t){var e=Ct(t),r=it.getHexValueArrayOfChildrenFromHex(e);this.setPrivateEx(r[1],r[2],r[3],r[4],r[5],r[6],r[7],r[8])},it.prototype.readPKCS5PrvKeyHex=function(t){var e=it.getHexValueArrayOfChildrenFromHex(t);this.setPrivateEx(e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8])},it.prototype.readPKCS8PrvKeyHex=function(t){var e,r,n,i,o,s,a,u,c=ft,h=c.getVbyListEx;if(!1===c.isASN1HEX(t))throw new Error("not ASN.1 hex string");try{e=h(t,0,[2,0,1],"02"),r=h(t,0,[2,0,2],"02"),n=h(t,0,[2,0,3],"02"),i=h(t,0,[2,0,4],"02"),o=h(t,0,[2,0,5],"02"),s=h(t,0,[2,0,6],"02"),a=h(t,0,[2,0,7],"02"),u=h(t,0,[2,0,8],"02")}catch(t){throw new Error("malformed PKCS#8 plain RSA private key")}this.setPrivateEx(e,r,n,i,o,s,a,u)},it.prototype.readPKCS5PubKeyHex=function(t){var e=ft,r=e.getV;if(!1===e.isASN1HEX(t))throw new Error("keyHex is not ASN.1 hex string");var n=e.getChildIdx(t,0);if(2!==n.length||"02"!==t.substr(n[0],2)||"02"!==t.substr(n[1],2))throw new Error("wrong hex for PKCS#5 public key");var i=r(t,n[0]),o=r(t,n[1]);this.setPublic(i,o)},it.prototype.readPKCS8PubKeyHex=function(t){var e=ft;if(!1===e.isASN1HEX(t))throw new Error("not ASN.1 hex string");if("06092a864886f70d010101"!==e.getTLVbyListEx(t,0,[0,0]))throw new Error("not PKCS8 RSA public key");var r=e.getTLVbyListEx(t,0,[1,0]);this.readPKCS5PubKeyHex(r)},it.prototype.readCertPubKeyHex=function(t,e){var r,n;(r=new Wt).readCertHex(t),n=r.getPublicKeyHex(),this.readPKCS8PubKeyHex(n)};var Kt=new RegExp("[^0-9a-f]","gi");function Vt(t,e){for(var r="",n=e/4-t.length,i=0;i>24,(16711680&i)>>16,(65280&i)>>8,255&i])))),i+=1;return n}function Jt(t){for(var e in ct.crypto.Util.DIGESTINFOHEAD){var r=ct.crypto.Util.DIGESTINFOHEAD[e],n=r.length;if(t.substring(0,n)==r)return[e,t.substring(n)]}return[]}function Wt(t){var e,r=ft,n=r.getChildIdx,i=r.getV,o=r.getTLV,s=r.getVbyList,a=r.getVbyListEx,u=r.getTLVbyList,c=r.getTLVbyListEx,h=r.getIdxbyList,l=r.getIdxbyListEx,f=r.getVidx,g=r.oidname,d=r.hextooidstr,p=Wt,v=Ct;try{e=ct.asn1.x509.AlgorithmIdentifier.PSSNAME2ASN1TLV}catch(t){}this.HEX2STAG={"0c":"utf8",13:"prn",16:"ia5","1a":"vis","1e":"bmp"},this.hex=null,this.version=0,this.foffset=0,this.aExtInfo=null,this.getVersion=function(){return null===this.hex||0!==this.version?this.version:"a003020102"!==u(this.hex,0,[0,0])?(this.version=1,this.foffset=-1,1):(this.version=3,3)},this.getSerialNumberHex=function(){return a(this.hex,0,[0,0],"02")},this.getSignatureAlgorithmField=function(){var t=c(this.hex,0,[0,1]);return this.getAlgorithmIdentifierName(t)},this.getAlgorithmIdentifierName=function(t){for(var r in e)if(t===e[r])return r;return g(a(t,0,[0],"06"))},this.getIssuer=function(){return this.getX500Name(this.getIssuerHex())},this.getIssuerHex=function(){return u(this.hex,0,[0,3+this.foffset],"30")},this.getIssuerString=function(){return p.hex2dn(this.getIssuerHex())},this.getSubject=function(){return this.getX500Name(this.getSubjectHex())},this.getSubjectHex=function(){return u(this.hex,0,[0,5+this.foffset],"30")},this.getSubjectString=function(){return p.hex2dn(this.getSubjectHex())},this.getNotBefore=function(){var t=s(this.hex,0,[0,4+this.foffset,0]);return t=t.replace(/(..)/g,"%$1"),decodeURIComponent(t)},this.getNotAfter=function(){var t=s(this.hex,0,[0,4+this.foffset,1]);return t=t.replace(/(..)/g,"%$1"),decodeURIComponent(t)},this.getPublicKeyHex=function(){return r.getTLVbyList(this.hex,0,[0,6+this.foffset],"30")},this.getPublicKeyIdx=function(){return h(this.hex,0,[0,6+this.foffset],"30")},this.getPublicKeyContentIdx=function(){var t=this.getPublicKeyIdx();return h(this.hex,t,[1,0],"30")},this.getPublicKey=function(){return Ht.getKey(this.getPublicKeyHex(),null,"pkcs8pub")},this.getSignatureAlgorithmName=function(){var t=u(this.hex,0,[1],"30");return this.getAlgorithmIdentifierName(t)},this.getSignatureValueHex=function(){return s(this.hex,0,[2],"03",!0)},this.verifySignature=function(t){var e=this.getSignatureAlgorithmField(),r=this.getSignatureValueHex(),n=u(this.hex,0,[0],"30"),i=new ct.crypto.Signature({alg:e});return i.init(t),i.updateHex(n),i.verify(r)},this.parseExt=function(t){var e,o,a;if(void 0===t){if(a=this.hex,3!==this.version)return-1;e=h(a,0,[0,7,0],"30"),o=n(a,e)}else{a=Ct(t);var u=h(a,0,[0,3,0,0],"06");if("2a864886f70d01090e"!=i(a,u))return void(this.aExtInfo=new Array);e=h(a,0,[0,3,0,1,0],"30"),o=n(a,e),this.hex=a}this.aExtInfo=new Array;for(var c=0;c1){var a=o(t,s[1]),u=this.getGeneralName(a);null!=u.uri&&(i.uri=u.uri)}if(s.length>2){var c=o(t,s[2]);"0101ff"==c&&(i.reqauth=!0),"010100"==c&&(i.reqauth=!1)}return i},this.getX500NameRule=function(t){for(var e=null,r=[],n=0;n0&&(t.ext=this.getExtParamArray()),t.sighex=this.getSignatureValueHex(),t},this.getExtParamArray=function(t){null==t&&-1!=l(this.hex,0,[0,"[3]"])&&(t=c(this.hex,0,[0,"[3]",0],"30"));for(var e=[],r=n(t,0),i=0;i0&&(c=new Array(r),(new et).nextBytes(c),c=String.fromCharCode.apply(String,c));var h=Ft(u(Et("\0\0\0\0\0\0\0\0"+i+c))),l=[];for(n=0;n>8*a-s&255;for(d[0]&=~p,n=0;nthis.n.bitLength())return 0;var n=Jt(this.doPublic(r).toString(16).replace(/^1f+00/,""));if(0==n.length)return!1;var i=n[0];return n[1]==function(t){return ct.crypto.Util.hashString(t,i)}(t)},it.prototype.verifyWithMessageHash=function(t,e){if(e.length!=Math.ceil(this.n.bitLength()/4))return!1;var r=rt(e,16);if(r.bitLength()>this.n.bitLength())return 0;var n=Jt(this.doPublic(r).toString(16).replace(/^1f+00/,""));return 0!=n.length&&n[1]==t},it.prototype.verifyPSS=function(t,e,r,n){var i=function(t){return ct.crypto.Util.hashHex(t,r)}(Et(t));return void 0===n&&(n=-1),this.verifyWithMessageHashPSS(i,e,r,n)},it.prototype.verifyWithMessageHashPSS=function(t,e,r,n){if(e.length!=Math.ceil(this.n.bitLength()/4))return!1;var i,o=new F(e,16),s=function(t){return ct.crypto.Util.hashHex(t,r)},a=Ft(t),u=a.length,c=this.n.bitLength()-1,h=Math.ceil(c/8);if(-1===n||void 0===n)n=u;else if(-2===n)n=h-u-2;else if(n<-2)throw new Error("invalid salt length");if(h>8*h-c&255;if(f.charCodeAt(0)&d)throw new Error("bits beyond keysize not zero");var p=qt(g,f.length,s),v=[];for(i=0;i0&&-1==(":"+n.join(":")+":").indexOf(":"+y+":"))throw"algorithm '"+y+"' not accepted in the list";if("none"!=y&&null===e)throw"key shall be specified to verify.";if("string"==typeof e&&-1!=e.indexOf("-----BEGIN ")&&(e=Ht.getKey(e)),!("RS"!=g&&"PS"!=g||e instanceof i))throw"key shall be a RSAKey obj for RS* and PS* algs";if("ES"==g&&!(e instanceof c))throw"key shall be a ECDSA obj for ES* algs";var m=null;if(void 0===s.jwsalg2sigalg[v.alg])throw"unsupported alg name: "+y;if("none"==(m=s.jwsalg2sigalg[y]))throw"not supported";if("Hmac"==m.substr(0,4)){if(void 0===e)throw"hexadecimal key shall be specified for HMAC";var _=new h({alg:m,pass:e});return _.updateString(d),p==_.doFinal()}if(-1!=m.indexOf("withECDSA")){var S,w=null;try{w=c.concatSigToASN1Sig(p)}catch(t){return!1}return(S=new l({alg:m})).init(e),S.updateString(d),S.verify(w)}return(S=new l({alg:m})).init(e),S.updateString(d),S.verify(p)},ct.jws.JWS.parse=function(t){var e,r,n,i=t.split("."),o={};if(2!=i.length&&3!=i.length)throw"malformed sJWS: wrong number of '.' splitted elements";return e=i[0],r=i[1],3==i.length&&(n=i[2]),o.headerObj=ct.jws.JWS.readSafeJSONString(lt(e)),o.payloadObj=ct.jws.JWS.readSafeJSONString(lt(r)),o.headerPP=JSON.stringify(o.headerObj,null," "),null==o.payloadObj?o.payloadPP=lt(r):o.payloadPP=JSON.stringify(o.payloadObj,null," "),void 0!==n&&(o.sigHex=St(n)),o},ct.jws.JWS.verifyJWT=function(t,e,n){var i=ct.jws,o=i.JWS,s=o.readSafeJSONString,a=o.inArray,u=o.includedArray,c=t.split("."),h=c[0],l=c[1],f=(St(c[2]),s(lt(h))),g=s(lt(l));if(void 0===f.alg)return!1;if(void 0===n.alg)throw"acceptField.alg shall be specified";if(!a(f.alg,n.alg))return!1;if(void 0!==g.iss&&"object"===r(n.iss)&&!a(g.iss,n.iss))return!1;if(void 0!==g.sub&&"object"===r(n.sub)&&!a(g.sub,n.sub))return!1;if(void 0!==g.aud&&"object"===r(n.aud))if("string"==typeof g.aud){if(!a(g.aud,n.aud))return!1}else if("object"==r(g.aud)&&!u(g.aud,n.aud))return!1;var d=i.IntDate.getNow();return void 0!==n.verifyAt&&"number"==typeof n.verifyAt&&(d=n.verifyAt),void 0!==n.gracePeriod&&"number"==typeof n.gracePeriod||(n.gracePeriod=0),!(void 0!==g.exp&&"number"==typeof g.exp&&g.exp+n.gracePeriode.length&&(r=e.length);for(var n=0;n + * @license MIT + */ +var n=r(30),i=r(31),o=r(32);function s(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function a(t,e){if(s()=s())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s().toString(16)+" bytes");return 0|t}function d(t,e){if(u.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return H(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return K(t).length;default:if(n)return H(t).length;e=(""+e).toLowerCase(),n=!0}}function p(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return T(this,e,r);case"utf8":case"utf-8":return A(this,e,r);case"ascii":return P(this,e,r);case"latin1":case"binary":return C(this,e,r);case"base64":return x(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return R(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function v(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function y(t,e,r,n,i){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof e&&(e=u.from(e,n)),u.isBuffer(e))return 0===e.length?-1:m(t,e,r,n,i);if("number"==typeof e)return e&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):m(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function m(t,e,r,n,i){var o,s=1,a=t.length,u=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;s=2,a/=2,u/=2,r/=2}function c(t,e){return 1===s?t[e]:t.readUInt16BE(e*s)}if(i){var h=-1;for(o=r;oa&&(r=a-u),o=r;o>=0;o--){for(var l=!0,f=0;fi&&(n=i):n=i;var o=e.length;if(o%2!=0)throw new TypeError("Invalid hex string");n>o/2&&(n=o/2);for(var s=0;s>8,i=r%256,o.push(i),o.push(n);return o}(e,t.length-r),t,r,n)}function x(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function A(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i239?4:c>223?3:c>191?2:1;if(i+l<=r)switch(l){case 1:c<128&&(h=c);break;case 2:128==(192&(o=t[i+1]))&&(u=(31&c)<<6|63&o)>127&&(h=u);break;case 3:o=t[i+1],s=t[i+2],128==(192&o)&&128==(192&s)&&(u=(15&c)<<12|(63&o)<<6|63&s)>2047&&(u<55296||u>57343)&&(h=u);break;case 4:o=t[i+1],s=t[i+2],a=t[i+3],128==(192&o)&&128==(192&s)&&128==(192&a)&&(u=(15&c)<<18|(63&o)<<12|(63&s)<<6|63&a)>65535&&u<1114112&&(h=u)}null===h?(h=65533,l=1):h>65535&&(h-=65536,n.push(h>>>10&1023|55296),h=56320|1023&h),n.push(h),i+=l}return function(t){var e=t.length;if(e<=k)return String.fromCharCode.apply(String,t);for(var r="",n=0;n0&&(t=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(t+=" ... ")),""},u.prototype.compare=function(t,e,r,n,i){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),e<0||r>t.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&e>=r)return 0;if(n>=i)return-1;if(e>=r)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(n>>>=0),s=(r>>>=0)-(e>>>=0),a=Math.min(o,s),c=this.slice(n,i),h=t.slice(e,r),l=0;li)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return _(this,t,e,r);case"utf8":case"utf-8":return S(this,t,e,r);case"ascii":return w(this,t,e,r);case"latin1":case"binary":return b(this,t,e,r);case"base64":return F(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return E(this,t,e,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var k=4096;function P(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;in)&&(r=n);for(var i="",o=e;or)throw new RangeError("Trying to access beyond buffer length")}function D(t,e,r,n,i,o){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function L(t,e,r,n){e<0&&(e=65535+e+1);for(var i=0,o=Math.min(t.length-r,2);i>>8*(n?i:1-i)}function N(t,e,r,n){e<0&&(e=4294967295+e+1);for(var i=0,o=Math.min(t.length-r,4);i>>8*(n?i:3-i)&255}function U(t,e,r,n,i,o){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function O(t,e,r,n,o){return o||U(t,0,r,4),i.write(t,e,r,n,23,4),r+4}function B(t,e,r,n,o){return o||U(t,0,r,8),i.write(t,e,r,n,52,8),r+8}u.prototype.slice=function(t,e){var r,n=this.length;if((t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e0&&(i*=256);)n+=this[t+--e]*i;return n},u.prototype.readUInt8=function(t,e){return e||I(t,1,this.length),this[t]},u.prototype.readUInt16LE=function(t,e){return e||I(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUInt16BE=function(t,e){return e||I(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUInt32LE=function(t,e){return e||I(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUInt32BE=function(t,e){return e||I(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readIntLE=function(t,e,r){t|=0,e|=0,r||I(t,e,this.length);for(var n=this[t],i=1,o=0;++o=(i*=128)&&(n-=Math.pow(2,8*e)),n},u.prototype.readIntBE=function(t,e,r){t|=0,e|=0,r||I(t,e,this.length);for(var n=e,i=1,o=this[t+--n];n>0&&(i*=256);)o+=this[t+--n]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},u.prototype.readInt8=function(t,e){return e||I(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){e||I(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt16BE=function(t,e){e||I(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt32LE=function(t,e){return e||I(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return e||I(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readFloatLE=function(t,e){return e||I(t,4,this.length),i.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return e||I(t,4,this.length),i.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return e||I(t,8,this.length),i.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return e||I(t,8,this.length),i.read(this,t,!1,52,8)},u.prototype.writeUIntLE=function(t,e,r,n){t=+t,e|=0,r|=0,n||D(this,t,e,r,Math.pow(2,8*r)-1,0);var i=1,o=0;for(this[e]=255&t;++o=0&&(o*=256);)this[e+i]=t/o&255;return e+r},u.prototype.writeUInt8=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,1,255,0),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},u.prototype.writeUInt16LE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):L(this,t,e,!0),e+2},u.prototype.writeUInt16BE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):L(this,t,e,!1),e+2},u.prototype.writeUInt32LE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):N(this,t,e,!0),e+4},u.prototype.writeUInt32BE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):N(this,t,e,!1),e+4},u.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e|=0,!n){var i=Math.pow(2,8*r-1);D(this,t,e,r,i-1,-i)}var o=0,s=1,a=0;for(this[e]=255&t;++o=0&&(s*=256);)t<0&&0===a&&0!==this[e+o+1]&&(a=1),this[e+o]=(t/s|0)-a&255;return e+r},u.prototype.writeInt8=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,1,127,-128),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):L(this,t,e,!0),e+2},u.prototype.writeInt16BE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):L(this,t,e,!1),e+2},u.prototype.writeInt32LE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):N(this,t,e,!0),e+4},u.prototype.writeInt32BE=function(t,e,r){return t=+t,e|=0,r||D(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):N(this,t,e,!1),e+4},u.prototype.writeFloatLE=function(t,e,r){return O(this,t,e,!0,r)},u.prototype.writeFloatBE=function(t,e,r){return O(this,t,e,!1,r)},u.prototype.writeDoubleLE=function(t,e,r){return B(this,t,e,!0,r)},u.prototype.writeDoubleBE=function(t,e,r){return B(this,t,e,!1,r)},u.prototype.copy=function(t,e,r,n){if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e=0;--i)t[i+e]=this[i+r];else if(o<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(o=e;o55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(s+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;o.push(r)}else if(r<2048){if((e-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function K(t){return n.toByteArray(function(t){if((t=function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}(t).replace(M,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function V(t,e,r,n){for(var i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}}).call(this,r(29))},function(t,e){var r;r=function(){return this}();try{r=r||new Function("return this")()}catch(t){"object"==typeof window&&(r=window)}t.exports=r},function(t,e,r){e.byteLength=function(t){var e=u(t),r=e[0],n=e[1];return 3*(r+n)/4-n},e.toByteArray=function(t){var e,r,n=u(t),s=n[0],a=n[1],c=new o(function(t,e,r){return 3*(e+r)/4-r}(0,s,a)),h=0,l=a>0?s-4:s;for(r=0;r>16&255,c[h++]=e>>8&255,c[h++]=255&e;return 2===a&&(e=i[t.charCodeAt(r)]<<2|i[t.charCodeAt(r+1)]>>4,c[h++]=255&e),1===a&&(e=i[t.charCodeAt(r)]<<10|i[t.charCodeAt(r+1)]<<4|i[t.charCodeAt(r+2)]>>2,c[h++]=e>>8&255,c[h++]=255&e),c},e.fromByteArray=function(t){for(var e,r=t.length,i=r%3,o=[],s=16383,a=0,u=r-i;au?u:a+s));return 1===i?(e=t[r-1],o.push(n[e>>2]+n[e<<4&63]+"==")):2===i&&(e=(t[r-2]<<8)+t[r-1],o.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"=")),o.join("")};for(var n=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0;a<64;++a)n[a]=s[a],i[s.charCodeAt(a)]=a;function u(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function c(t,e,r){for(var i,o,s=[],a=e;a>18&63]+n[o>>12&63]+n[o>>6&63]+n[63&o]);return s.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(t,e){ +/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ +e.read=function(t,e,r,n,i){var o,s,a=8*i-n-1,u=(1<>1,h=-7,l=r?i-1:0,f=r?-1:1,g=t[e+l];for(l+=f,o=g&(1<<-h)-1,g>>=-h,h+=a;h>0;o=256*o+t[e+l],l+=f,h-=8);for(s=o&(1<<-h)-1,o>>=-h,h+=n;h>0;s=256*s+t[e+l],l+=f,h-=8);if(0===o)o=1-c;else{if(o===u)return s?NaN:1/0*(g?-1:1);s+=Math.pow(2,n),o-=c}return(g?-1:1)*s*Math.pow(2,o-n)},e.write=function(t,e,r,n,i,o){var s,a,u,c=8*o-i-1,h=(1<>1,f=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,g=n?0:o-1,d=n?1:-1,p=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,s=h):(s=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-s))<1&&(s--,u*=2),(e+=s+l>=1?f/u:f*Math.pow(2,1-l))*u>=2&&(s++,u/=2),s+l>=h?(a=0,s=h):s+l>=1?(a=(e*u-1)*Math.pow(2,i),s+=l):(a=e*Math.pow(2,l-1)*Math.pow(2,i),s=0));i>=8;t[r+g]=255&a,g+=d,a/=256,i-=8);for(s=s<0;t[r+g]=255&s,g+=d,s/=256,c-=8);t[r+g-d]|=128*p}},function(t,e){var r={}.toString;t.exports=Array.isArray||function(t){return"[object Array]"==r.call(t)}},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){var e=t.jws,r=t.KeyUtil,i=t.X509,o=t.crypto,s=t.hextob64u,a=t.b64tohex,u=t.AllowedSigningAlgs;return function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t)}return t.parseJwt=function t(r){n.Log.debug("JoseUtil.parseJwt");try{var i=e.JWS.parse(r);return{header:i.headerObj,payload:i.payloadObj}}catch(t){n.Log.error(t)}},t.validateJwt=function(e,o,s,u,c,h,l){n.Log.debug("JoseUtil.validateJwt");try{if("RSA"===o.kty)if(o.e&&o.n)o=r.getKey(o);else{if(!o.x5c||!o.x5c.length)return n.Log.error("JoseUtil.validateJwt: RSA key missing key material",o),Promise.reject(new Error("RSA key missing key material"));var f=a(o.x5c[0]);o=i.getPublicKeyFromCertHex(f)}else{if("EC"!==o.kty)return n.Log.error("JoseUtil.validateJwt: Unsupported key type",o&&o.kty),Promise.reject(new Error(o.kty));if(!(o.crv&&o.x&&o.y))return n.Log.error("JoseUtil.validateJwt: EC key missing key material",o),Promise.reject(new Error("EC key missing key material"));o=r.getKey(o)}return t._validateJwt(e,o,s,u,c,h,l)}catch(t){return n.Log.error(t&&t.message||t),Promise.reject("JWT validation failed")}},t.validateJwtAttributes=function(e,r,i,o,s,a){o||(o=0),s||(s=parseInt(Date.now()/1e3));var u=t.parseJwt(e).payload;if(!u.iss)return n.Log.error("JoseUtil._validateJwt: issuer was not provided"),Promise.reject(new Error("issuer was not provided"));if(u.iss!==r)return n.Log.error("JoseUtil._validateJwt: Invalid issuer in token",u.iss),Promise.reject(new Error("Invalid issuer in token: "+u.iss));if(!u.aud)return n.Log.error("JoseUtil._validateJwt: aud was not provided"),Promise.reject(new Error("aud was not provided"));if(!(u.aud===i||Array.isArray(u.aud)&&u.aud.indexOf(i)>=0))return n.Log.error("JoseUtil._validateJwt: Invalid audience in token",u.aud),Promise.reject(new Error("Invalid audience in token: "+u.aud));if(u.azp&&u.azp!==i)return n.Log.error("JoseUtil._validateJwt: Invalid azp in token",u.azp),Promise.reject(new Error("Invalid azp in token: "+u.azp));if(!a){var c=s+o,h=s-o;if(!u.iat)return n.Log.error("JoseUtil._validateJwt: iat was not provided"),Promise.reject(new Error("iat was not provided"));if(c1&&void 0!==arguments[1]?arguments[1]:"#";!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t);var n=i.UrlUtility.parseUrlFragment(e,r);this.error=n.error,this.error_description=n.error_description,this.error_uri=n.error_uri,this.code=n.code,this.state=n.state,this.id_token=n.id_token,this.session_state=n.session_state,this.access_token=n.access_token,this.token_type=n.token_type,this.scope=n.scope,this.profile=void 0,this.expires_in=n.expires_in}return n(t,[{key:"expires_in",get:function(){if(this.expires_at){var t=parseInt(Date.now()/1e3);return this.expires_at-t}},set:function(t){var e=parseInt(t);if("number"==typeof e&&e>0){var r=parseInt(Date.now()/1e3);this.expires_at=r+e}}},{key:"expired",get:function(){var t=this.expires_in;if(void 0!==t)return t<=0}},{key:"scopes",get:function(){return(this.scope||"").split(" ")}},{key:"isOpenIdConnect",get:function(){return this.scopes.indexOf("openid")>=0||!!this.id_token}}]),t}()},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.SignoutRequest=void 0;var n=r(0),i=r(3),o=r(9);e.SignoutRequest=function t(e){var r=e.url,s=e.id_token_hint,a=e.post_logout_redirect_uri,u=e.data,c=e.extraQueryParams,h=e.request_type;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),!r)throw n.Log.error("SignoutRequest.ctor: No url passed"),new Error("url");for(var l in s&&(r=i.UrlUtility.addQueryParam(r,"id_token_hint",s)),a&&(r=i.UrlUtility.addQueryParam(r,"post_logout_redirect_uri",a),u&&(this.state=new o.State({data:u,request_type:h}),r=i.UrlUtility.addQueryParam(r,"state",this.state.id))),c)r=i.UrlUtility.addQueryParam(r,l,c[l]);this.url=r}},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.SignoutResponse=void 0;var n=r(3);e.SignoutResponse=function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t);var r=n.UrlUtility.parseUrlFragment(e,"?");this.error=r.error,this.error_description=r.error_description,this.error_uri=r.error_uri,this.state=r.state}},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.InMemoryWebStorage=void 0;var n=function(){function t(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:c.SilentRenewService,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:h.SessionMonitor,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:f.TokenRevocationClient,l=arguments.length>4&&void 0!==arguments[4]?arguments[4]:g.TokenClient,p=arguments.length>5&&void 0!==arguments[5]?arguments[5]:d.JoseUtil;(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")})(this,e),r instanceof s.UserManagerSettings||(r=new s.UserManagerSettings(r));var v=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,t.call(this,r));return v._events=new u.UserManagerEvents(r),v._silentRenewService=new n(v),v.settings.automaticSilentRenew&&(i.Log.debug("UserManager.ctor: automaticSilentRenew is configured, setting up silent renew"),v.startSilentRenew()),v.settings.monitorSession&&(i.Log.debug("UserManager.ctor: monitorSession is configured, setting up session monitor"),v._sessionMonitor=new o(v)),v._tokenRevocationClient=new a(v._settings),v._tokenClient=new l(v._settings),v._joseUtil=p,v}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,t),e.prototype.getUser=function(){var t=this;return this._loadUser().then((function(e){return e?(i.Log.info("UserManager.getUser: user loaded"),t._events.load(e,!1),e):(i.Log.info("UserManager.getUser: user not found in storage"),null)}))},e.prototype.removeUser=function(){var t=this;return this.storeUser(null).then((function(){i.Log.info("UserManager.removeUser: user removed from storage"),t._events.unload()}))},e.prototype.signinRedirect=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(t=Object.assign({},t)).request_type="si:r";var e={useReplaceToNavigate:t.useReplaceToNavigate};return this._signinStart(t,this._redirectNavigator,e).then((function(){i.Log.info("UserManager.signinRedirect: successful")}))},e.prototype.signinRedirectCallback=function(t){return this._signinEnd(t||this._redirectNavigator.url).then((function(t){return t.profile&&t.profile.sub?i.Log.info("UserManager.signinRedirectCallback: successful, signed in sub: ",t.profile.sub):i.Log.info("UserManager.signinRedirectCallback: no sub"),t}))},e.prototype.signinPopup=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(t=Object.assign({},t)).request_type="si:p";var e=t.redirect_uri||this.settings.popup_redirect_uri||this.settings.redirect_uri;return e?(t.redirect_uri=e,t.display="popup",this._signin(t,this._popupNavigator,{startUrl:e,popupWindowFeatures:t.popupWindowFeatures||this.settings.popupWindowFeatures,popupWindowTarget:t.popupWindowTarget||this.settings.popupWindowTarget}).then((function(t){return t&&(t.profile&&t.profile.sub?i.Log.info("UserManager.signinPopup: signinPopup successful, signed in sub: ",t.profile.sub):i.Log.info("UserManager.signinPopup: no sub")),t}))):(i.Log.error("UserManager.signinPopup: No popup_redirect_uri or redirect_uri configured"),Promise.reject(new Error("No popup_redirect_uri or redirect_uri configured")))},e.prototype.signinPopupCallback=function(t){return this._signinCallback(t,this._popupNavigator).then((function(t){return t&&(t.profile&&t.profile.sub?i.Log.info("UserManager.signinPopupCallback: successful, signed in sub: ",t.profile.sub):i.Log.info("UserManager.signinPopupCallback: no sub")),t})).catch((function(t){i.Log.error(t.message)}))},e.prototype.signinSilent=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e=Object.assign({},e),this._loadUser().then((function(r){return r&&r.refresh_token?(e.refresh_token=r.refresh_token,t._useRefreshToken(e)):(e.request_type="si:s",e.id_token_hint=e.id_token_hint||t.settings.includeIdTokenInSilentRenew&&r&&r.id_token,r&&t._settings.validateSubOnSilentRenew&&(i.Log.debug("UserManager.signinSilent, subject prior to silent renew: ",r.profile.sub),e.current_sub=r.profile.sub),t._signinSilentIframe(e))}))},e.prototype._useRefreshToken=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this._tokenClient.exchangeRefreshToken(e).then((function(e){return e?e.access_token?t._loadUser().then((function(r){if(r){var n=Promise.resolve();return e.id_token&&(n=t._validateIdTokenFromTokenRefreshToken(r.profile,e.id_token)),n.then((function(){return i.Log.debug("UserManager._useRefreshToken: refresh token response success"),r.id_token=e.id_token||r.id_token,r.access_token=e.access_token,r.refresh_token=e.refresh_token||r.refresh_token,r.expires_in=e.expires_in,t.storeUser(r).then((function(){return t._events.load(r),r}))}))}return null})):(i.Log.error("UserManager._useRefreshToken: No access token returned from token endpoint"),Promise.reject("No access token returned from token endpoint")):(i.Log.error("UserManager._useRefreshToken: No response returned from token endpoint"),Promise.reject("No response returned from token endpoint"))}))},e.prototype._validateIdTokenFromTokenRefreshToken=function(t,e){var r=this;return this._metadataService.getIssuer().then((function(n){return r.settings.getEpochTime().then((function(o){return r._joseUtil.validateJwtAttributes(e,n,r._settings.client_id,r._settings.clockSkew,o).then((function(e){return e?e.sub!==t.sub?(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: sub in id_token does not match current sub"),Promise.reject(new Error("sub in id_token does not match current sub"))):e.auth_time&&e.auth_time!==t.auth_time?(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: auth_time in id_token does not match original auth_time"),Promise.reject(new Error("auth_time in id_token does not match original auth_time"))):e.azp&&e.azp!==t.azp?(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: azp in id_token does not match original azp"),Promise.reject(new Error("azp in id_token does not match original azp"))):!e.azp&&t.azp?(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: azp not in id_token, but present in original id_token"),Promise.reject(new Error("azp not in id_token, but present in original id_token"))):void 0:(i.Log.error("UserManager._validateIdTokenFromTokenRefreshToken: Failed to validate id_token"),Promise.reject(new Error("Failed to validate id_token")))}))}))}))},e.prototype._signinSilentIframe=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.redirect_uri||this.settings.silent_redirect_uri||this.settings.redirect_uri;return e?(t.redirect_uri=e,t.prompt=t.prompt||"none",this._signin(t,this._iframeNavigator,{startUrl:e,silentRequestTimeout:t.silentRequestTimeout||this.settings.silentRequestTimeout}).then((function(t){return t&&(t.profile&&t.profile.sub?i.Log.info("UserManager.signinSilent: successful, signed in sub: ",t.profile.sub):i.Log.info("UserManager.signinSilent: no sub")),t}))):(i.Log.error("UserManager.signinSilent: No silent_redirect_uri configured"),Promise.reject(new Error("No silent_redirect_uri configured")))},e.prototype.signinSilentCallback=function(t){return this._signinCallback(t,this._iframeNavigator).then((function(t){return t&&(t.profile&&t.profile.sub?i.Log.info("UserManager.signinSilentCallback: successful, signed in sub: ",t.profile.sub):i.Log.info("UserManager.signinSilentCallback: no sub")),t}))},e.prototype.signinCallback=function(t){var e=this;return this.readSigninResponseState(t).then((function(r){var n=r.state;return"si:r"===n.request_type?e.signinRedirectCallback(t):"si:p"===n.request_type?e.signinPopupCallback(t):"si:s"===n.request_type?e.signinSilentCallback(t):Promise.reject(new Error("invalid response_type in state"))}))},e.prototype.signoutCallback=function(t,e){var r=this;return this.readSignoutResponseState(t).then((function(n){var i=n.state,o=n.response;return i?"so:r"===i.request_type?r.signoutRedirectCallback(t):"so:p"===i.request_type?r.signoutPopupCallback(t,e):Promise.reject(new Error("invalid response_type in state")):o}))},e.prototype.querySessionStatus=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(e=Object.assign({},e)).request_type="si:s";var r=e.redirect_uri||this.settings.silent_redirect_uri||this.settings.redirect_uri;return r?(e.redirect_uri=r,e.prompt="none",e.response_type=e.response_type||this.settings.query_status_response_type,e.scope=e.scope||"openid",e.skipUserInfo=!0,this._signinStart(e,this._iframeNavigator,{startUrl:r,silentRequestTimeout:e.silentRequestTimeout||this.settings.silentRequestTimeout}).then((function(e){return t.processSigninResponse(e.url).then((function(t){if(i.Log.debug("UserManager.querySessionStatus: got signin response"),t.session_state&&t.profile.sub)return i.Log.info("UserManager.querySessionStatus: querySessionStatus success for sub: ",t.profile.sub),{session_state:t.session_state,sub:t.profile.sub,sid:t.profile.sid};i.Log.info("querySessionStatus successful, user not authenticated")})).catch((function(e){if(e.session_state&&t.settings.monitorAnonymousSession&&("login_required"==e.message||"consent_required"==e.message||"interaction_required"==e.message||"account_selection_required"==e.message))return i.Log.info("UserManager.querySessionStatus: querySessionStatus success for anonymous user"),{session_state:e.session_state};throw e}))}))):(i.Log.error("UserManager.querySessionStatus: No silent_redirect_uri configured"),Promise.reject(new Error("No silent_redirect_uri configured")))},e.prototype._signin=function(t,e){var r=this,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this._signinStart(t,e,n).then((function(e){return r._signinEnd(e.url,t)}))},e.prototype._signinStart=function(t,e){var r=this,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.prepare(n).then((function(e){return i.Log.debug("UserManager._signinStart: got navigator window handle"),r.createSigninRequest(t).then((function(t){return i.Log.debug("UserManager._signinStart: got signin request"),n.url=t.url,n.id=t.state.id,e.navigate(n)})).catch((function(t){throw e.close&&(i.Log.debug("UserManager._signinStart: Error after preparing navigator, closing navigator window"),e.close()),t}))}))},e.prototype._signinEnd=function(t){var e=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.processSigninResponse(t).then((function(t){i.Log.debug("UserManager._signinEnd: got signin response");var n=new a.User(t);if(r.current_sub){if(r.current_sub!==n.profile.sub)return i.Log.debug("UserManager._signinEnd: current user does not match user returned from signin. sub from signin: ",n.profile.sub),Promise.reject(new Error("login_required"));i.Log.debug("UserManager._signinEnd: current user matches user returned from signin")}return e.storeUser(n).then((function(){return i.Log.debug("UserManager._signinEnd: user stored"),e._events.load(n),n}))}))},e.prototype._signinCallback=function(t,e){i.Log.debug("UserManager._signinCallback");var r="query"===this._settings.response_mode||!this._settings.response_mode&&l.SigninRequest.isCode(this._settings.response_type)?"?":"#";return e.callback(t,void 0,r)},e.prototype.signoutRedirect=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(t=Object.assign({},t)).request_type="so:r";var e=t.post_logout_redirect_uri||this.settings.post_logout_redirect_uri;e&&(t.post_logout_redirect_uri=e);var r={useReplaceToNavigate:t.useReplaceToNavigate};return this._signoutStart(t,this._redirectNavigator,r).then((function(){i.Log.info("UserManager.signoutRedirect: successful")}))},e.prototype.signoutRedirectCallback=function(t){return this._signoutEnd(t||this._redirectNavigator.url).then((function(t){return i.Log.info("UserManager.signoutRedirectCallback: successful"),t}))},e.prototype.signoutPopup=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(t=Object.assign({},t)).request_type="so:p";var e=t.post_logout_redirect_uri||this.settings.popup_post_logout_redirect_uri||this.settings.post_logout_redirect_uri;return t.post_logout_redirect_uri=e,t.display="popup",t.post_logout_redirect_uri&&(t.state=t.state||{}),this._signout(t,this._popupNavigator,{startUrl:e,popupWindowFeatures:t.popupWindowFeatures||this.settings.popupWindowFeatures,popupWindowTarget:t.popupWindowTarget||this.settings.popupWindowTarget}).then((function(){i.Log.info("UserManager.signoutPopup: successful")}))},e.prototype.signoutPopupCallback=function(t,e){return void 0===e&&"boolean"==typeof t&&(e=t,t=null),this._popupNavigator.callback(t,e,"?").then((function(){i.Log.info("UserManager.signoutPopupCallback: successful")}))},e.prototype._signout=function(t,e){var r=this,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this._signoutStart(t,e,n).then((function(t){return r._signoutEnd(t.url)}))},e.prototype._signoutStart=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return arguments[1].prepare(r).then((function(n){return i.Log.debug("UserManager._signoutStart: got navigator window handle"),e._loadUser().then((function(o){return i.Log.debug("UserManager._signoutStart: loaded current user from storage"),(e._settings.revokeAccessTokenOnSignout?e._revokeInternal(o):Promise.resolve()).then((function(){var s=t.id_token_hint||o&&o.id_token;return s&&(i.Log.debug("UserManager._signoutStart: Setting id_token into signout request"),t.id_token_hint=s),e.removeUser().then((function(){return i.Log.debug("UserManager._signoutStart: user removed, creating signout request"),e.createSignoutRequest(t).then((function(t){return i.Log.debug("UserManager._signoutStart: got signout request"),r.url=t.url,t.state&&(r.id=t.state.id),n.navigate(r)}))}))}))})).catch((function(t){throw n.close&&(i.Log.debug("UserManager._signoutStart: Error after preparing navigator, closing navigator window"),n.close()),t}))}))},e.prototype._signoutEnd=function(t){return this.processSignoutResponse(t).then((function(t){return i.Log.debug("UserManager._signoutEnd: got signout response"),t}))},e.prototype.revokeAccessToken=function(){var t=this;return this._loadUser().then((function(e){return t._revokeInternal(e,!0).then((function(r){if(r)return i.Log.debug("UserManager.revokeAccessToken: removing token properties from user and re-storing"),e.access_token=null,e.refresh_token=null,e.expires_at=null,e.token_type=null,t.storeUser(e).then((function(){i.Log.debug("UserManager.revokeAccessToken: user stored"),t._events.load(e)}))}))})).then((function(){i.Log.info("UserManager.revokeAccessToken: access token revoked successfully")}))},e.prototype._revokeInternal=function(t,e){var r=this;if(t){var n=t.access_token,o=t.refresh_token;return this._revokeAccessTokenInternal(n,e).then((function(t){return r._revokeRefreshTokenInternal(o,e).then((function(e){return t||e||i.Log.debug("UserManager.revokeAccessToken: no need to revoke due to no token(s), or JWT format"),t||e}))}))}return Promise.resolve(!1)},e.prototype._revokeAccessTokenInternal=function(t,e){return!t||t.indexOf(".")>=0?Promise.resolve(!1):this._tokenRevocationClient.revoke(t,e).then((function(){return!0}))},e.prototype._revokeRefreshTokenInternal=function(t,e){return t?this._tokenRevocationClient.revoke(t,e,"refresh_token").then((function(){return!0})):Promise.resolve(!1)},e.prototype.startSilentRenew=function(){this._silentRenewService.start()},e.prototype.stopSilentRenew=function(){this._silentRenewService.stop()},e.prototype._loadUser=function(){return this._userStore.get(this._userStoreKey).then((function(t){return t?(i.Log.debug("UserManager._loadUser: user storageString loaded"),a.User.fromStorageString(t)):(i.Log.debug("UserManager._loadUser: no user storageString"),null)}))},e.prototype.storeUser=function(t){if(t){i.Log.debug("UserManager.storeUser: storing user");var e=t.toStorageString();return this._userStore.set(this._userStoreKey,e)}return i.Log.debug("storeUser.storeUser: removing user"),this._userStore.remove(this._userStoreKey)},n(e,[{key:"_redirectNavigator",get:function(){return this.settings.redirectNavigator}},{key:"_popupNavigator",get:function(){return this.settings.popupNavigator}},{key:"_iframeNavigator",get:function(){return this.settings.iframeNavigator}},{key:"_userStore",get:function(){return this.settings.userStore}},{key:"events",get:function(){return this._events}},{key:"_userStoreKey",get:function(){return"user:"+this.settings.authority+":"+this.settings.client_id}}]),e}(o.OidcClient)},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.UserManagerSettings=void 0;var n=function(){function t(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},n=r.popup_redirect_uri,i=r.popup_post_logout_redirect_uri,l=r.popupWindowFeatures,f=r.popupWindowTarget,g=r.silent_redirect_uri,d=r.silentRequestTimeout,p=r.automaticSilentRenew,v=void 0!==p&&p,y=r.validateSubOnSilentRenew,m=void 0!==y&&y,_=r.includeIdTokenInSilentRenew,S=void 0===_||_,w=r.monitorSession,b=void 0===w||w,F=r.monitorAnonymousSession,E=void 0!==F&&F,x=r.checkSessionInterval,A=void 0===x?2e3:x,k=r.stopCheckSessionOnError,P=void 0===k||k,C=r.query_status_response_type,T=r.revokeAccessTokenOnSignout,R=void 0!==T&&T,I=r.accessTokenExpiringNotificationTime,D=void 0===I?60:I,L=r.redirectNavigator,N=void 0===L?new o.RedirectNavigator:L,U=r.popupNavigator,O=void 0===U?new s.PopupNavigator:U,B=r.iframeNavigator,M=void 0===B?new a.IFrameNavigator:B,j=r.userStore,H=void 0===j?new u.WebStorageStateStore({store:c.Global.sessionStorage}):j;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e);var K=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,t.call(this,arguments[0]));return K._popup_redirect_uri=n,K._popup_post_logout_redirect_uri=i,K._popupWindowFeatures=l,K._popupWindowTarget=f,K._silent_redirect_uri=g,K._silentRequestTimeout=d,K._automaticSilentRenew=v,K._validateSubOnSilentRenew=m,K._includeIdTokenInSilentRenew=S,K._accessTokenExpiringNotificationTime=D,K._monitorSession=b,K._monitorAnonymousSession=E,K._checkSessionInterval=A,K._stopCheckSessionOnError=P,C?K._query_status_response_type=C:arguments[0]&&arguments[0].response_type?K._query_status_response_type=h.SigninRequest.isOidc(arguments[0].response_type)?"id_token":"code":K._query_status_response_type="id_token",K._revokeAccessTokenOnSignout=R,K._redirectNavigator=N,K._popupNavigator=O,K._iframeNavigator=M,K._userStore=H,K}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,t),n(e,[{key:"popup_redirect_uri",get:function(){return this._popup_redirect_uri}},{key:"popup_post_logout_redirect_uri",get:function(){return this._popup_post_logout_redirect_uri}},{key:"popupWindowFeatures",get:function(){return this._popupWindowFeatures}},{key:"popupWindowTarget",get:function(){return this._popupWindowTarget}},{key:"silent_redirect_uri",get:function(){return this._silent_redirect_uri}},{key:"silentRequestTimeout",get:function(){return this._silentRequestTimeout}},{key:"automaticSilentRenew",get:function(){return this._automaticSilentRenew}},{key:"validateSubOnSilentRenew",get:function(){return this._validateSubOnSilentRenew}},{key:"includeIdTokenInSilentRenew",get:function(){return this._includeIdTokenInSilentRenew}},{key:"accessTokenExpiringNotificationTime",get:function(){return this._accessTokenExpiringNotificationTime}},{key:"monitorSession",get:function(){return this._monitorSession}},{key:"monitorAnonymousSession",get:function(){return this._monitorAnonymousSession}},{key:"checkSessionInterval",get:function(){return this._checkSessionInterval}},{key:"stopCheckSessionOnError",get:function(){return this._stopCheckSessionOnError}},{key:"query_status_response_type",get:function(){return this._query_status_response_type}},{key:"revokeAccessTokenOnSignout",get:function(){return this._revokeAccessTokenOnSignout}},{key:"redirectNavigator",get:function(){return this._redirectNavigator}},{key:"popupNavigator",get:function(){return this._popupNavigator}},{key:"iframeNavigator",get:function(){return this._iframeNavigator}},{key:"userStore",get:function(){return this._userStore}}]),e}(i.OidcClientSettings)},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.RedirectNavigator=void 0;var n=function(){function t(t,e){for(var r=0;r1&&void 0!==arguments[1])||arguments[1];n.Log.debug("UserManagerEvents.load"),t.prototype.load.call(this,e),r&&this._userLoaded.raise(e)},e.prototype.unload=function(){n.Log.debug("UserManagerEvents.unload"),t.prototype.unload.call(this),this._userUnloaded.raise()},e.prototype.addUserLoaded=function(t){this._userLoaded.addHandler(t)},e.prototype.removeUserLoaded=function(t){this._userLoaded.removeHandler(t)},e.prototype.addUserUnloaded=function(t){this._userUnloaded.addHandler(t)},e.prototype.removeUserUnloaded=function(t){this._userUnloaded.removeHandler(t)},e.prototype.addSilentRenewError=function(t){this._silentRenewError.addHandler(t)},e.prototype.removeSilentRenewError=function(t){this._silentRenewError.removeHandler(t)},e.prototype._raiseSilentRenewError=function(t){n.Log.debug("UserManagerEvents._raiseSilentRenewError",t.message),this._silentRenewError.raise(t)},e.prototype.addUserSignedIn=function(t){this._userSignedIn.addHandler(t)},e.prototype.removeUserSignedIn=function(t){this._userSignedIn.removeHandler(t)},e.prototype._raiseUserSignedIn=function(){n.Log.debug("UserManagerEvents._raiseUserSignedIn"),this._userSignedIn.raise()},e.prototype.addUserSignedOut=function(t){this._userSignedOut.addHandler(t)},e.prototype.removeUserSignedOut=function(t){this._userSignedOut.removeHandler(t)},e.prototype._raiseUserSignedOut=function(){n.Log.debug("UserManagerEvents._raiseUserSignedOut"),this._userSignedOut.raise()},e.prototype.addUserSessionChanged=function(t){this._userSessionChanged.addHandler(t)},e.prototype.removeUserSessionChanged=function(t){this._userSessionChanged.removeHandler(t)},e.prototype._raiseUserSessionChanged=function(){n.Log.debug("UserManagerEvents._raiseUserSessionChanged"),this._userSessionChanged.raise()},e}(i.AccessTokenEvents)},function(t,e,r){Object.defineProperty(e,"__esModule",{value:!0}),e.Timer=void 0;var n=function(){function t(t,e){for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:o.Global.timer,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e);var s=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,t.call(this,r));return s._timer=n,s._nowFunc=i||function(){return Date.now()/1e3},s}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(e,t),e.prototype.init=function(t){t<=0&&(t=1),t=parseInt(t);var e=this.now+t;if(this.expiration===e&&this._timerHandle)i.Log.debug("Timer.init timer "+this._name+" skipping initialization since already initialized for expiration:",this.expiration);else{this.cancel(),i.Log.debug("Timer.init timer "+this._name+" for duration:",t),this._expiration=e;var r=5;t{try{this.debug("Beginning initial silent sign in."),await this._userManager.signinSilent(),this.debug("Initial silent sign in succeeded.")}catch(t){t instanceof Error&&this.debug(`Initial silent sign in failed '${t.message}'`)}})()),this._intialSilentSignIn}async getUser(){window.parent!==window||window.opener||window.frameElement||!this._userManager.settings.redirect_uri||location.href.startsWith(this._userManager.settings.redirect_uri)||await this.trySilentSignIn();const t=await this._userManager.getUser();return t&&t.profile}async getAccessToken(e){this.trace("getAccessToken",e);const r=await this._userManager.getUser();if(function(t){return!(!t||!t.access_token||t.expired||!t.scopes)}(r)&&function(t,e){const r=new Set(e);if(t&&t.scopes)for(const e of t.scopes)if(!r.has(e))return!1;return!0}(e,r.scopes))return this.debug(`Valid access token present expiring at '${n(r.expires_in).toISOString()}'`),{status:t.AccessTokenResultStatus.Success,token:{grantedScopes:r.scopes,expires:n(r.expires_in),value:r.access_token}};try{const r=e&&e.scopes?{scope:e.scopes.join(" ")}:void 0;this.debug(`Provisioning a token silently for scopes '${r?.scope}'`),this.trace("userManager.signinSilent",r);const i=await this._userManager.signinSilent(r);this.debug(`Provisioned an access token expiring at '${n(i.expires_in).toISOString()}'`);const o={status:t.AccessTokenResultStatus.Success,token:{grantedScopes:i.scopes,expires:n(i.expires_in),value:i.access_token}};return this.trace("getAccessToken-result",o),o}catch(e){return e instanceof Error&&this.debug(`Failed to provision a token silently '${e.message}'`),{status:t.AccessTokenResultStatus.RequiresRedirect}}function n(t){const e=new Date;return e.setTime(e.getTime()+1e3*t),e}}async signIn(t){if(this.trace("signIn",t),t.interactiveRequest)return this.debug("Interactive sign in starting."),this.signInInteractive(t);try{return this.debug("Silent sign in starting"),await this._userManager.clearStaleState(),await this._userManager.signinSilent(this.createArguments(void 0,t.interactiveRequest)),this.debug("Silent sign in succeeded"),this.success(t.state)}catch(e){return e instanceof Error&&this.debug(`Silent sign in failed, redirecting to the identity provider '${e.message}'.`),await this.signInInteractive(t)}}async signInInteractive(t){this.trace("signInInteractive",t);try{return await this._userManager.clearStaleState(),await this._userManager.signinRedirect(this.createArguments(t.state,t.interactiveRequest)),this.debug("Redirect sign in succeeded"),this.redirect()}catch(t){const e=this.getExceptionMessage(t);return this.debug(`Redirect sign in failed '${e}'.`),this.error(e)}}async completeSignIn(t){this.trace("completeSignIn",t);const e=await this.loginRequired(t),r=await this.stateExists(t);try{const e=await this._userManager.signinCallback(t);return window.self!==window.top?this.operationCompleted():(this.trace("completeSignIn-result",e),this.success(e&&e.state))}catch(t){return e||window.self!==window.top||!r?this.operationCompleted():this.error("There was an error signing in.")}}async signOut(t){this.trace("signOut",t);try{return await this._userManager.metadataService.getEndSessionEndpoint()?(await this._userManager.signoutRedirect(this.createArguments(t.state,t.interactiveRequest)),this.redirect()):(await this._userManager.removeUser(),this.success(t.state))}catch(t){const e=this.getExceptionMessage(t);return this.debug(`Sign out error '${e}'.`),this.error(e)}}async completeSignOut(t){this.trace("completeSignOut",t);try{if(await this.stateExists(t)){const e=await this._userManager.signoutCallback(t);return this.success(e&&e.state)}return this.operationCompleted()}catch(t){const e=this.getExceptionMessage(t);return this.debug(`Complete sign out error '${e}'`),this.error(e)}}getExceptionMessage(t){return function(t){return t&&t.error_description}(t)?t.error_description:function(t){return t&&t.message}(t)?t.message:t.toString()}async stateExists(t){const e=new URLSearchParams(new URL(t).search).get("state");return e&&this._userManager.settings.stateStore?await this._userManager.settings.stateStore.get(e):void 0}async loginRequired(t){const e=new URLSearchParams(new URL(t).search).get("error");return!(!e||!this._userManager.settings.stateStore)&&"login_required"===await this._userManager.settings.stateStore.get(e)}createArguments(t,e){return{useReplaceToNavigate:!0,data:t,scope:e?.scopes?e.scopes.join(" "):void 0,...e?.additionalRequestParameters}}error(e){return{status:t.AuthenticationResultStatus.Failure,errorMessage:e}}success(e){return{status:t.AuthenticationResultStatus.Success,state:e}}redirect(){return{status:t.AuthenticationResultStatus.Redirect}}operationCompleted(){return{status:t.AuthenticationResultStatus.OperationCompleted}}debug(e){this._logger?.log(t.LogLevel.Debug,e)}trace(e,r){this._logger?.log(t.LogLevel.Trace,`${e}: ${JSON.stringify(r)}`)}}class c{static _infrastructureKey="Microsoft.AspNetCore.Components.WebAssembly.Authentication";static _initialized;static instance;static _pendingOperations={};static init(t,e){return c._initialized||(c._initialized=c.initializeCore(t,new a(e))),c._initialized}static handleCallback(){return c.initializeCore()}static async initializeCore(t,e){const r=t||c.resolveCachedSettings(),n=c.resolveCachedLoggerOptions(),i=e||n&&new a(n);if(!t&&r&&!e&&i){const t=c.createUserManagerCore(r);window.parent!==window&&!window.opener&&window.frameElement&&t.settings.redirect_uri&&location.href.startsWith(t.settings.redirect_uri)&&(c.instance=new u(t,i),c._initialized=(async()=>{await c.instance.completeSignIn(location.href)})())}else if(t&&e){const r=await c.createUserManager(t);c.instance=new u(r,e),window.sessionStorage.setItem(`${c._infrastructureKey}.CachedJSLoggingOptions`,JSON.stringify({debugEnabled:e.debug,traceEnabled:e.trace}))}}static resolveCachedSettings(){const t=window.sessionStorage.getItem(`${c._infrastructureKey}.CachedAuthSettings`);return t?JSON.parse(t):void 0}static resolveCachedLoggerOptions(){const t=window.sessionStorage.getItem(`${c._infrastructureKey}.CachedJSLoggingOptions`);return t?JSON.parse(t):void 0}static getUser(){return c.instance.getUser()}static getAccessToken(t){return c.instance.getAccessToken(t)}static signIn(t){return c.instance.signIn(t)}static async completeSignIn(t){let e=this._pendingOperations[t];return e||(e=c.instance.completeSignIn(t),await e,delete this._pendingOperations[t]),e}static signOut(t){return c.instance.signOut(t)}static async completeSignOut(t){let e=this._pendingOperations[t];return e||(e=c.instance.completeSignOut(t),await e,delete this._pendingOperations[t]),e}static async createUserManager(t){let e;if(function(t){return t.hasOwnProperty("configurationEndpoint")}(t)){const r=await fetch(t.configurationEndpoint);if(!r.ok)throw new Error(`Could not load settings from '${t.configurationEndpoint}'`);e=await r.json()}else t.scope||(t.scope=t.defaultScopes.join(" ")),null===t.response_type&&delete t.response_type,e=t;return window.sessionStorage.setItem(`${c._infrastructureKey}.CachedAuthSettings`,JSON.stringify(e)),c.createUserManagerCore(e)}static createUserManagerCore(t){const e=new s.UserManager(t);return e.events.addUserSignedOut((async()=>{e.removeUser()})),e}}c.handleCallback(),window.AuthenticationService=c,t.AuthenticationService=c,t.ManagedLogger=a}({}); +; var abp=abp||{};(function(){abp.utils=abp.utils||{};abp.domReady=function(n){document.readyState==="complete"||document.readyState==="interactive"?setTimeout(n,1):document.addEventListener("DOMContentLoaded",n)};abp.utils.setCookieValue=function(n,t,i,r,u){var f=encodeURIComponent(n)+"=";t&&(f=f+encodeURIComponent(t));i&&(f=f+"; expires="+i);r&&(f=f+"; path="+r);u&&(f=f+"; secure");document.cookie=f};abp.utils.getCookieValue=function(n){for(var i,r=document.cookie.split("; "),t=0;ta[0]&&e[1]|`|"|&/g,"?")}var t=s.getTextarea(t),o=t.value,n=t.selectionStart,i=o.slice(0,n),o=(0@")+e(o),document.createElement("div")),o=(i.className="ant-mentions-measure",i.innerHTML=n,t.parentNode.append(i),i.querySelector("span")),n=o.offsetLeft-t.scrollLeft+16,o=o.offsetTop-t.scrollTop+16;return i.remove(),[n,o]},s);function s(){}o.mentionsHelper=n},{}],12:[function(t,e,o){"use strict";o.__esModule=!0,o.modalHelper=void 0;var r=t("../dom/exports"),n=t("../dom/manipulationHelper");function i(){}i.focusDialog=function(t,e){var o,n=this,i=(void 0===e&&(e=0),document.querySelector(t));i&&(i.hasAttribute("disabled")?null!=(o=document.activeElement)&&o.blur():setTimeout(function(){i.focus(),"#"+r.domInfoHelper.getActiveElement()!==t&&e<10&&n.focusDialog(t,e+1)},10))},i.destroyAllDialog=function(){document.querySelectorAll(".ant-modal-root").forEach(function(t){t=t.parentNode;t instanceof HTMLElement&&t.remove()}),n.manipulationHelper.enableBodyScroll(!0)},o.modalHelper=i},{"../dom/exports":20,"../dom/manipulationHelper":22}],13:[function(t,e,o){"use strict";var n,s,l=function(){return(l=Object.assign||function(t){for(var e,o=1,n=arguments.length;oo.bound.right&&(e=o.bound.right),to.bound.bottom&&(t=o.bound.bottom)),i._container.style.translate=e+"px "+t+"px")},10).bind(this),this.onResize=r(function(t){i._state.bound=c(i._container,i._draggedInContainer)},30).bind(this),this._trigger=t,this._container=e,this._draggedInContainer=n,this._options=Object.assign({},a,{inViewport:o}),this._state={isInDrag:!1,mouseDownX:0,mouseDownY:0,mouseDownXOffset:0,mouseDownYOffset:0,bound:{left:0,top:0,right:0,bottom:0}}}function c(t,e){var o=window.getComputedStyle(e),n=window.getComputedStyle(e);return{left:-t.offsetLeft+parseInt(o.marginLeft)+parseInt(n.paddingLeft),top:-t.offsetTop+parseInt(o.marginTop)+parseInt(n.paddingTop),right:function(t,e){void 0===e&&(e=null);e=e||window.getComputedStyle(t);t=t.clientWidth;return t=(t-=parseInt(e.paddingLeft))-parseInt(e.paddingRight)}(e,n)-function(t,e){void 0===e&&(e=null);e=e||window.getComputedStyle(t);t=t.clientWidth;return t=(t+=parseInt(e.borderLeftWidth))+parseInt(e.borderRightWidth)}(t,o)-t.offsetLeft+parseInt(n.paddingRight)-parseInt(o.marginRight),bottom:function(t,e){void 0===e&&(e=null);e=e||window.getComputedStyle(t);t=t.clientHeight;return t=(t-=parseInt(e.paddingTop))-parseInt(e.paddingBottom)}(e,n)-function(t,e){void 0===e&&(e=null);e=e||window.getComputedStyle(t);t=t.clientHeight;return t=(t+=parseInt(e.borderTopWidth))+parseInt(e.borderBottomWidth)}(t,o)-t.offsetTop+parseInt(n.paddingBottom)-parseInt(o.marginBottom)}}o.enableDraggable=function(t,e,o,n){void 0===o&&(o=!0),void 0===n&&(n=document.documentElement);var i=s.get(t);i||(i=new l(t,e,o,n),s.set(t,i)),i.bindDrag()},o.disableDraggable=function(t){(t=s.get(t))&&t.unbindDrag()},o.resetModalPosition=function(t){(t=s.get(t))&&t.resetContainerStyle()}},{}],19:[function(t,e,o){"use strict";var l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i=(o.__esModule=!0,o.eventHelper=void 0,t("./exports")),r=t("../stateProvider");function n(){}n.triggerEvent=function(t,e,o){e=document.createEvent(e);return e.initEvent(o),t.dispatchEvent(e)},n.addDomEventListener=function(t,e,r,s,a){void 0===a&&(a=!1);function o(t){var e,o={};for(e in t)"originalTarget"!==e&&(o[e]=t[e]);var n=new Set,i=JSON.stringify(o,function(t,e){if("object"===(void 0===e?"undefined":l(e))&&null!==e){if(n.has(e))return;n.add(e)}return e instanceof Node?"Node":e instanceof Window?"Window":e}," ");setTimeout(function(){s.invokeMethodAsync("Invoke",i)},0),!0===r&&t.preventDefault(),a&&t.stopPropagation()}var t=i.domInfoHelper.get(t),n=e+"-"+s._id;t["e_"+n]="resize"===e?this.debounce(function(){return o({innerWidth:window.innerWidth,innerHeight:window.innerHeight})},200,!1):o,t["i_"+n]=s,t.addEventListener(e,t["e_"+n])},n.addDomEventListenerToFirstChild=function(t,e,o,n){t=i.domInfoHelper.get(t);t&&t.firstElementChild&&this.addDomEventListener(t.firstElementChild,e,o,n)},n.removeDomEventListener=function(t,e,o){t=i.domInfoHelper.get(t),o=e+"-"+o._id;t&&t.removeEventListener(e,t["e_"+o])},n.addPreventKeys=function(t,e){var o,n=this;t&&(o=i.domInfoHelper.get(t),e=e.map(function(t){return t.toUpperCase()}),r.state.eventCallbackRegistry[t.id+"keydown"]=function(t){return n.preventKeys(t,e)},o.addEventListener("keydown",r.state.eventCallbackRegistry[t.id+"keydown"],!1))},n.preventKeyOnCondition=function(t,e,o){if(t.key.toUpperCase()===e.toUpperCase()&&o())return t.preventDefault(),!1},n.removePreventKeys=function(t){var e;t&&(e=i.domInfoHelper.get(t))&&(e.removeEventListener("keydown",r.state.eventCallbackRegistry[t.id+"keydown"]),r.state.eventCallbackRegistry[t.id+"keydown"]=null)},n.debounce=function(i,r,s){var a,l=this;return function(){for(var t=[],e=0;e(window.innerHeight||document.documentElement.clientHeight)},c.getScrollBarSize=function(t){var e,o;return void 0===t&&(t=!1),"undefined"==typeof document?0:(!t&&void 0!==a||((t=document.createElement("div")).style.width="100%",t.style.height="200px",(o=(e=document.createElement("div")).style).position="absolute",o.top="0",o.left="0",o.pointerEvents="none",o.visibility="hidden",o.width="200px",o.height="150px",o.overflow="hidden",e.appendChild(t),document.body.appendChild(e),o=t.offsetWidth,e.style.overflow="scroll",o===(t=t.offsetWidth)&&(t=e.clientWidth),document.body.removeChild(e),a=o-t),a)},o.manipulationHelper=c},{"../enums":24,"../stateProvider":25,"../styleHelper":26,"./exports":20}],23:[function(t,e,o){"use strict";o.__esModule=!0},{}],24:[function(t,e,o){"use strict";o.__esModule=!0,o.FocusBehavior=void 0,(o=o.FocusBehavior||(o.FocusBehavior={}))[o.FocusAtLast=0]="FocusAtLast",o[o.FocusAtFirst=1]="FocusAtFirst",o[o.FocusAndSelectAll=2]="FocusAndSelectAll"},{}],25:[function(t,e,o){"use strict";o.__esModule=!0,o.state=o.State=void 0;i.prototype.disposeObj=function(t){delete this.objReferenceDict[t]},i.getInstance=function(){return this.instance||(this.instance=new i),this.instance};var n=i;function i(){this.objReferenceDict={},this.eventCallbackRegistry={},this.oldBodyCacheStack=[]}o.State=n,o.state=n.getInstance()},{}],26:[function(t,e,o){"use strict";o.__esModule=!0,o.styleHelper=void 0;var n=t("./dom/infoHelper");function i(){}i.addCls=function(t,e){var t=n.infoHelper.get(t);t&&("string"==typeof e?t.classList.add(e):(t=t.classList).add.apply(t,e))},i.removeCls=function(t,e){var t=n.infoHelper.get(t);t&&("string"==typeof e?t.classList.remove(e):(t=t.classList).remove.apply(t,e))},i.addClsToFirstChild=function(t,e){t=n.infoHelper.get(t);t&&t.firstElementChild&&t.firstElementChild.classList.add(e)},i.removeClsFromFirstChild=function(t,e){t=n.infoHelper.get(t);t&&t.firstElementChild&&t.firstElementChild.classList.remove(e)},i.matchMedia=function(t){return window.matchMedia(t).matches},i.getStyle=function(t,e){return t.currentStyle?t.currentStyle[e]:window.getComputedStyle?document.defaultView.getComputedStyle(t,null).getPropertyValue(e):void 0},i.css=function(t,e,o){if(void 0===o&&(o=null),"string"==typeof e)if(null===o)for(var n=e.split(";"),i=0;i>16,g:(65280&t)>>8,b:255&t}}},{"./util":39}],30:[function(t,e,o){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.names=void 0,o.names={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"}},{}],31:[function(t,e,o){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.isValidCSSUnit=o.stringInputToObject=o.inputToRGB=void 0;var a=t("./conversion"),n=t("./css-color-names"),l=t("./util");o.inputToRGB=function(t){var e,o={r:0,g:0,b:0},n=1,i=null,r=!1,s=!1;return"object"==typeof(t="string"==typeof t?c(t):t)&&(u(t.r)&&u(t.g)&&u(t.b)?(o=(0,a.rgbToRgb)(t.r,t.g,t.b),r=!0,s="%"===String(t.r).substr(-1)?"prgb":"rgb"):u(t.h)&&u(t.s)&&u(t.v)?(i=(0,l.convertToPercentage)(t.s),e=(0,l.convertToPercentage)(t.v),o=(0,a.hsvToRgb)(t.h,i,e),r=!0,s="hsv"):u(t.h)&&u(t.s)&&u(t.l)&&(i=(0,l.convertToPercentage)(t.s),e=(0,l.convertToPercentage)(t.l),o=(0,a.hslToRgb)(t.h,i,e),r=!0,s="hsl"),Object.prototype.hasOwnProperty.call(t,"a"))&&(n=t.a),n=(0,l.boundAlpha)(n),{ok:r,format:t.format||s,r:Math.min(255,Math.max(o.r,0)),g:Math.min(255,Math.max(o.g,0)),b:Math.min(255,Math.max(o.b,0)),a:n}};var t="(?:".concat("[-\\+]?\\d*\\.\\d+%?",")|(?:").concat("[-\\+]?\\d+%?",")"),i="[\\s|\\(]+(".concat(t,")[,|\\s]+(").concat(t,")[,|\\s]+(").concat(t,")\\s*\\)?"),r="[\\s|\\(]+(".concat(t,")[,|\\s]+(").concat(t,")[,|\\s]+(").concat(t,")[,|\\s]+(").concat(t,")\\s*\\)?"),s={CSS_UNIT:new RegExp(t),rgb:new RegExp("rgb"+i),rgba:new RegExp("rgba"+r),hsl:new RegExp("hsl"+i),hsla:new RegExp("hsla"+r),hsv:new RegExp("hsv"+i),hsva:new RegExp("hsva"+r),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function c(t){if(0===(t=t.trim().toLowerCase()).length)return!1;var e=!1;if(n.names[t])t=n.names[t],e=!0;else if("transparent"===t)return{r:0,g:0,b:0,a:0,format:"name"};var o=s.rgb.exec(t);return o?{r:o[1],g:o[2],b:o[3]}:(o=s.rgba.exec(t))?{r:o[1],g:o[2],b:o[3],a:o[4]}:(o=s.hsl.exec(t))?{h:o[1],s:o[2],l:o[3]}:(o=s.hsla.exec(t))?{h:o[1],s:o[2],l:o[3],a:o[4]}:(o=s.hsv.exec(t))?{h:o[1],s:o[2],v:o[3]}:(o=s.hsva.exec(t))?{h:o[1],s:o[2],v:o[3],a:o[4]}:(o=s.hex8.exec(t))?{r:(0,a.parseIntFromHex)(o[1]),g:(0,a.parseIntFromHex)(o[2]),b:(0,a.parseIntFromHex)(o[3]),a:(0,a.convertHexToDecimal)(o[4]),format:e?"name":"hex8"}:(o=s.hex6.exec(t))?{r:(0,a.parseIntFromHex)(o[1]),g:(0,a.parseIntFromHex)(o[2]),b:(0,a.parseIntFromHex)(o[3]),format:e?"name":"hex"}:(o=s.hex4.exec(t))?{r:(0,a.parseIntFromHex)(o[1]+o[1]),g:(0,a.parseIntFromHex)(o[2]+o[2]),b:(0,a.parseIntFromHex)(o[3]+o[3]),a:(0,a.convertHexToDecimal)(o[4]+o[4]),format:e?"name":"hex8"}:!!(o=s.hex3.exec(t))&&{r:(0,a.parseIntFromHex)(o[1]+o[1]),g:(0,a.parseIntFromHex)(o[2]+o[2]),b:(0,a.parseIntFromHex)(o[3]+o[3]),format:e?"name":"hex"}}function u(t){return Boolean(s.CSS_UNIT.exec(String(t)))}o.stringInputToObject=c,o.isValidCSSUnit=u},{"./conversion":29,"./css-color-names":30,"./util":39}],32:[function(t,e,o){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.legacyRandom=o.fromRatio=void 0;var n=t("./index"),i=t("./util");o.fromRatio=function(t,e){var o={r:(0,i.convertToPercentage)(t.r),g:(0,i.convertToPercentage)(t.g),b:(0,i.convertToPercentage)(t.b)};return void 0!==t.a&&(o.a=Number(t.a)),new n.TinyColor(o,e)},o.legacyRandom=function(){return new n.TinyColor({r:Math.random(),g:Math.random(),b:Math.random()})}},{"./index":33,"./util":39}],33:[function(t,e,o){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.tinycolor=o.TinyColor=void 0;var r=t("./conversion"),s=t("./css-color-names"),n=t("./format-input"),i=t("./util"),a=(l.prototype.isDark=function(){return this.getBrightness()<128},l.prototype.isLight=function(){return!this.isDark()},l.prototype.getBrightness=function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},l.prototype.getLuminance=function(){var t=this.toRgb(),e=t.r/255,o=t.g/255,t=t.b/255,e=e<=.03928?e/12.92:Math.pow((.055+e)/1.055,2.4),o=o<=.03928?o/12.92:Math.pow((.055+o)/1.055,2.4),t=t<=.03928?t/12.92:Math.pow((.055+t)/1.055,2.4);return.2126*e+.7152*o+.0722*t},l.prototype.getAlpha=function(){return this.a},l.prototype.setAlpha=function(t){return this.a=(0,i.boundAlpha)(t),this.roundA=Math.round(100*this.a)/100,this},l.prototype.isMonochrome=function(){return 0===this.toHsl().s},l.prototype.toHsv=function(){var t=(0,r.rgbToHsv)(this.r,this.g,this.b);return{h:360*t.h,s:t.s,v:t.v,a:this.a}},l.prototype.toHsvString=function(){var t=(0,r.rgbToHsv)(this.r,this.g,this.b),e=Math.round(360*t.h),o=Math.round(100*t.s),t=Math.round(100*t.v);return 1===this.a?"hsv(".concat(e,", ").concat(o,"%, ").concat(t,"%)"):"hsva(".concat(e,", ").concat(o,"%, ").concat(t,"%, ").concat(this.roundA,")")},l.prototype.toHsl=function(){var t=(0,r.rgbToHsl)(this.r,this.g,this.b);return{h:360*t.h,s:t.s,l:t.l,a:this.a}},l.prototype.toHslString=function(){var t=(0,r.rgbToHsl)(this.r,this.g,this.b),e=Math.round(360*t.h),o=Math.round(100*t.s),t=Math.round(100*t.l);return 1===this.a?"hsl(".concat(e,", ").concat(o,"%, ").concat(t,"%)"):"hsla(".concat(e,", ").concat(o,"%, ").concat(t,"%, ").concat(this.roundA,")")},l.prototype.toHex=function(t){return(0,r.rgbToHex)(this.r,this.g,this.b,t=void 0===t?!1:t)},l.prototype.toHexString=function(t){return"#"+this.toHex(t=void 0===t?!1:t)},l.prototype.toHex8=function(t){return(0,r.rgbaToHex)(this.r,this.g,this.b,this.a,t=void 0===t?!1:t)},l.prototype.toHex8String=function(t){return"#"+this.toHex8(t=void 0===t?!1:t)},l.prototype.toHexShortString=function(t){return void 0===t&&(t=!1),1===this.a?this.toHexString(t):this.toHex8String(t)},l.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},l.prototype.toRgbString=function(){var t=Math.round(this.r),e=Math.round(this.g),o=Math.round(this.b);return 1===this.a?"rgb(".concat(t,", ").concat(e,", ").concat(o,")"):"rgba(".concat(t,", ").concat(e,", ").concat(o,", ").concat(this.roundA,")")},l.prototype.toPercentageRgb=function(){function t(t){return"".concat(Math.round(100*(0,i.bound01)(t,255)),"%")}return{r:t(this.r),g:t(this.g),b:t(this.b),a:this.a}},l.prototype.toPercentageRgbString=function(){function t(t){return Math.round(100*(0,i.bound01)(t,255))}return 1===this.a?"rgb(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%)"):"rgba(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%, ").concat(this.roundA,")")},l.prototype.toName=function(){if(0===this.a)return"transparent";if(!(this.a<1))for(var t="#"+(0,r.rgbToHex)(this.r,this.g,this.b,!1),e=0,o=Object.entries(s.names);e>1)+720)%360;--t;)o.h=(o.h+n)%360,i.push(new l(o));return i},l.prototype.complement=function(){var t=this.toHsl();return t.h=(t.h+180)%360,new l(t)},l.prototype.monochromatic=function(t){void 0===t&&(t=6);for(var e=this.toHsv(),o=e.h,n=e.s,i=e.v,r=[],s=1/t;t--;)r.push(new l({h:o,s:n,v:i})),i=(i+s)%1;return r},l.prototype.splitcomplement=function(){var t=this.toHsl(),e=t.h;return[this,new l({h:(e+72)%360,s:t.s,l:t.l}),new l({h:(e+216)%360,s:t.s,l:t.l})]},l.prototype.onBackground=function(t){var e=this.toRgb(),t=new l(t).toRgb(),o=e.a+t.a*(1-e.a);return new l({r:(e.r*e.a+t.r*t.a*(1-e.a))/o,g:(e.g*e.a+t.g*t.a*(1-e.a))/o,b:(e.b*e.a+t.b*t.a*(1-e.a))/o,a:o})},l.prototype.triad=function(){return this.polyad(3)},l.prototype.tetrad=function(){return this.polyad(4)},l.prototype.polyad=function(t){for(var e=this.toHsl(),o=e.h,n=[this],i=360/t,r=1;r=n.hueRange[0]&&t<=n.hueRange[1])return n}throw Error("Color not found")}function c(t,e){var o;return void 0===e?Math.floor(t[0]+Math.random()*(t[1]+1-t[0])):(o=t[1]||1,t=t[0]||0,e=(e=(9301*e+49297)%233280)/233280,Math.floor(t+e*(o-t)))}function u(t){var e=t.lowerBounds[0][0],o=t.lowerBounds[t.lowerBounds.length-1][0],n=t.lowerBounds[t.lowerBounds.length-1][1],i=t.lowerBounds[0][1];return{name:t.name,hueRange:t.hueRange,lowerBounds:t.lowerBounds,saturationRange:[e,o],brightnessRange:[n,i]}}s.random=function t(e){if(void 0!==(e=void 0===e?{}:e).count&&null!==e.count){var o=e.count,n=[];for(e.count=void 0;n.lengtha[0]&&e[1]|`|"|&/g,"?")}var t=s.getTextarea(t),o=t.value,n=t.selectionStart,i=o.slice(0,n),o=(0@")+e(o),document.createElement("div")),o=(i.className="ant-mentions-measure",i.innerHTML=n,t.parentNode.append(i),i.querySelector("span")),n=o.offsetLeft-t.scrollLeft+16,o=o.offsetTop-t.scrollTop+16;return i.remove(),[n,o]},s);function s(){}o.mentionsHelper=n},{}],12:[function(t,e,o){"use strict";o.__esModule=!0,o.modalHelper=void 0;var r=t("../dom/exports"),n=t("../dom/manipulationHelper");function i(){}i.focusDialog=function(t,e){var o,n=this,i=(void 0===e&&(e=0),document.querySelector(t));i&&(i.hasAttribute("disabled")?null!=(o=document.activeElement)&&o.blur():setTimeout(function(){i.focus(),"#"+r.domInfoHelper.getActiveElement()!==t&&e<10&&n.focusDialog(t,e+1)},10))},i.destroyAllDialog=function(){document.querySelectorAll(".ant-modal-root").forEach(function(t){t=t.parentNode;t instanceof HTMLElement&&t.remove()}),n.manipulationHelper.enableBodyScroll(!0)},o.modalHelper=i},{"../dom/exports":20,"../dom/manipulationHelper":22}],13:[function(t,e,o){"use strict";var n,s,l=function(){return(l=Object.assign||function(t){for(var e,o=1,n=arguments.length;on||t.righto.bound.right&&(e=o.bound.right),to.bound.bottom&&(t=o.bound.bottom)),i._container.style.translate=e+"px "+t+"px")},10).bind(this),this.onResize=r(function(t){i._state.bound=c(i._container,i._draggedInContainer)},30).bind(this),this._trigger=t,this._container=e,this._draggedInContainer=n,this._options=Object.assign({},a,{inViewport:o}),this._state={isInDrag:!1,mouseDownX:0,mouseDownY:0,mouseDownXOffset:0,mouseDownYOffset:0,bound:{left:0,top:0,right:0,bottom:0}}}function c(t,e){var o=window.getComputedStyle(e),n=window.getComputedStyle(e);return{left:-t.offsetLeft+parseInt(o.marginLeft)+parseInt(n.paddingLeft),top:-t.offsetTop+parseInt(o.marginTop)+parseInt(n.paddingTop),right:function(t,e){void 0===e&&(e=null);e=e||window.getComputedStyle(t);t=t.clientWidth;return t=(t-=parseInt(e.paddingLeft))-parseInt(e.paddingRight)}(e,n)-function(t,e){void 0===e&&(e=null);e=e||window.getComputedStyle(t);t=t.clientWidth;return t=(t+=parseInt(e.borderLeftWidth))+parseInt(e.borderRightWidth)}(t,o)-t.offsetLeft+parseInt(n.paddingRight)-parseInt(o.marginRight),bottom:function(t,e){void 0===e&&(e=null);e=e||window.getComputedStyle(t);t=t.clientHeight;return t=(t-=parseInt(e.paddingTop))-parseInt(e.paddingBottom)}(e,n)-function(t,e){void 0===e&&(e=null);e=e||window.getComputedStyle(t);t=t.clientHeight;return t=(t+=parseInt(e.borderTopWidth))+parseInt(e.borderBottomWidth)}(t,o)-t.offsetTop+parseInt(n.paddingBottom)-parseInt(o.marginBottom)}}o.enableDraggable=function(t,e,o,n){void 0===o&&(o=!0),void 0===n&&(n=document.documentElement);var i=s.get(t);i||(i=new l(t,e,o,n),s.set(t,i)),i.bindDrag()},o.disableDraggable=function(t){(t=s.get(t))&&t.unbindDrag()},o.resetModalPosition=function(t){(t=s.get(t))&&t.resetContainerStyle()}},{}],19:[function(t,e,o){"use strict";var l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i=(o.__esModule=!0,o.eventHelper=void 0,t("./exports")),r=t("../stateProvider");function n(){}n.triggerEvent=function(t,e,o){e=document.createEvent(e);return e.initEvent(o),t.dispatchEvent(e)},n.addDomEventListener=function(t,e,r,s,a){void 0===a&&(a=!1);function o(t){var e,o={};for(e in t)"originalTarget"!==e&&(o[e]=t[e]);var n=new Set,i=JSON.stringify(o,function(t,e){if("object"===(void 0===e?"undefined":l(e))&&null!==e){if(n.has(e))return;n.add(e)}return e instanceof Node?"Node":e instanceof Window?"Window":e}," ");setTimeout(function(){s.invokeMethodAsync("Invoke",i)},0),!0===r&&t.preventDefault(),a&&t.stopPropagation()}var t=i.domInfoHelper.get(t),n=e+"-"+s._id;t["e_"+n]="resize"===e?this.debounce(function(){return o({innerWidth:window.innerWidth,innerHeight:window.innerHeight})},200,!1):o,t["i_"+n]=s,t&&t.addEventListener&&t.addEventListener(e,t["e_"+n])},n.addDomEventListenerToFirstChild=function(t,e,o,n){t=i.domInfoHelper.get(t);t&&t.firstElementChild&&this.addDomEventListener(t.firstElementChild,e,o,n)},n.removeDomEventListener=function(t,e,o){t=i.domInfoHelper.get(t),o=e+"-"+o._id;t&&t.removeEventListener(e,t["e_"+o])},n.addPreventKeys=function(t,e){var o,n=this;t&&(o=i.domInfoHelper.get(t),e=e.map(function(t){return t.toUpperCase()}),r.state.eventCallbackRegistry[t.id+"keydown"]=function(t){return n.preventKeys(t,e)},o.addEventListener("keydown",r.state.eventCallbackRegistry[t.id+"keydown"],!1))},n.preventKeyOnCondition=function(t,e,o){if(t.key.toUpperCase()===e.toUpperCase()&&o())return t.preventDefault(),!1},n.removePreventKeys=function(t){var e;t&&(e=i.domInfoHelper.get(t))&&(e.removeEventListener("keydown",r.state.eventCallbackRegistry[t.id+"keydown"]),r.state.eventCallbackRegistry[t.id+"keydown"]=null)},n.debounce=function(i,r,s){var a,l=this;return function(){for(var t=[],e=0;e(window.innerHeight||document.documentElement.clientHeight)},c.getScrollBarSize=function(t){var e,o;return void 0===t&&(t=!1),"undefined"==typeof document?0:(!t&&void 0!==a||((t=document.createElement("div")).style.width="100%",t.style.height="200px",(o=(e=document.createElement("div")).style).position="absolute",o.top="0",o.left="0",o.pointerEvents="none",o.visibility="hidden",o.width="200px",o.height="150px",o.overflow="hidden",e.appendChild(t),document.body.appendChild(e),o=t.offsetWidth,e.style.overflow="scroll",o===(t=t.offsetWidth)&&(t=e.clientWidth),document.body.removeChild(e),a=o-t,document.documentElement.style.setProperty("--ant-scrollbar-width",a+"px")),a)},o.manipulationHelper=c},{"../enums":24,"../stateProvider":25,"../styleHelper":26,"./exports":20}],23:[function(t,e,o){"use strict";o.__esModule=!0},{}],24:[function(t,e,o){"use strict";o.__esModule=!0,o.FocusBehavior=void 0,(o=o.FocusBehavior||(o.FocusBehavior={}))[o.FocusAtLast=0]="FocusAtLast",o[o.FocusAtFirst=1]="FocusAtFirst",o[o.FocusAndSelectAll=2]="FocusAndSelectAll"},{}],25:[function(t,e,o){"use strict";o.__esModule=!0,o.state=o.State=void 0;i.prototype.disposeObj=function(t){delete this.objReferenceDict[t]},i.getInstance=function(){return this.instance||(this.instance=new i),this.instance};var n=i;function i(){this.objReferenceDict={},this.eventCallbackRegistry={},this.oldBodyCacheStack=[]}o.State=n,o.state=n.getInstance()},{}],26:[function(t,e,o){"use strict";o.__esModule=!0,o.styleHelper=void 0;var n=t("./dom/infoHelper");function i(){}i.addCls=function(t,e){var t=n.infoHelper.get(t);t&&("string"==typeof e?t.classList.add(e):(t=t.classList).add.apply(t,e))},i.removeCls=function(t,e){var t=n.infoHelper.get(t);t&&("string"==typeof e?t.classList.remove(e):(t=t.classList).remove.apply(t,e))},i.addClsToFirstChild=function(t,e){t=n.infoHelper.get(t);t&&t.firstElementChild&&t.firstElementChild.classList.add(e)},i.removeClsFromFirstChild=function(t,e){t=n.infoHelper.get(t);t&&t.firstElementChild&&t.firstElementChild.classList.remove(e)},i.matchMedia=function(t){return window.matchMedia(t).matches},i.getStyle=function(t,e){return t.currentStyle?t.currentStyle[e]:window.getComputedStyle?document.defaultView.getComputedStyle(t,null).getPropertyValue(e):void 0},i.css=function(t,e,o){if(void 0===o&&(o=null),"string"==typeof e)if(null===o)for(var n=e.split(";"),i=0;i>16,g:(65280&t)>>8,b:255&t}}},{"./util":39}],30:[function(t,e,o){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.names=void 0,o.names={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"}},{}],31:[function(t,e,o){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.isValidCSSUnit=o.stringInputToObject=o.inputToRGB=void 0;var a=t("./conversion"),n=t("./css-color-names"),l=t("./util");o.inputToRGB=function(t){var e,o={r:0,g:0,b:0},n=1,i=null,r=!1,s=!1;return"object"==typeof(t="string"==typeof t?c(t):t)&&(u(t.r)&&u(t.g)&&u(t.b)?(o=(0,a.rgbToRgb)(t.r,t.g,t.b),r=!0,s="%"===String(t.r).substr(-1)?"prgb":"rgb"):u(t.h)&&u(t.s)&&u(t.v)?(i=(0,l.convertToPercentage)(t.s),e=(0,l.convertToPercentage)(t.v),o=(0,a.hsvToRgb)(t.h,i,e),r=!0,s="hsv"):u(t.h)&&u(t.s)&&u(t.l)&&(i=(0,l.convertToPercentage)(t.s),e=(0,l.convertToPercentage)(t.l),o=(0,a.hslToRgb)(t.h,i,e),r=!0,s="hsl"),Object.prototype.hasOwnProperty.call(t,"a"))&&(n=t.a),n=(0,l.boundAlpha)(n),{ok:r,format:t.format||s,r:Math.min(255,Math.max(o.r,0)),g:Math.min(255,Math.max(o.g,0)),b:Math.min(255,Math.max(o.b,0)),a:n}};var t="(?:".concat("[-\\+]?\\d*\\.\\d+%?",")|(?:").concat("[-\\+]?\\d+%?",")"),i="[\\s|\\(]+(".concat(t,")[,|\\s]+(").concat(t,")[,|\\s]+(").concat(t,")\\s*\\)?"),r="[\\s|\\(]+(".concat(t,")[,|\\s]+(").concat(t,")[,|\\s]+(").concat(t,")[,|\\s]+(").concat(t,")\\s*\\)?"),s={CSS_UNIT:new RegExp(t),rgb:new RegExp("rgb"+i),rgba:new RegExp("rgba"+r),hsl:new RegExp("hsl"+i),hsla:new RegExp("hsla"+r),hsv:new RegExp("hsv"+i),hsva:new RegExp("hsva"+r),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function c(t){if(0===(t=t.trim().toLowerCase()).length)return!1;var e=!1;if(n.names[t])t=n.names[t],e=!0;else if("transparent"===t)return{r:0,g:0,b:0,a:0,format:"name"};var o=s.rgb.exec(t);return o?{r:o[1],g:o[2],b:o[3]}:(o=s.rgba.exec(t))?{r:o[1],g:o[2],b:o[3],a:o[4]}:(o=s.hsl.exec(t))?{h:o[1],s:o[2],l:o[3]}:(o=s.hsla.exec(t))?{h:o[1],s:o[2],l:o[3],a:o[4]}:(o=s.hsv.exec(t))?{h:o[1],s:o[2],v:o[3]}:(o=s.hsva.exec(t))?{h:o[1],s:o[2],v:o[3],a:o[4]}:(o=s.hex8.exec(t))?{r:(0,a.parseIntFromHex)(o[1]),g:(0,a.parseIntFromHex)(o[2]),b:(0,a.parseIntFromHex)(o[3]),a:(0,a.convertHexToDecimal)(o[4]),format:e?"name":"hex8"}:(o=s.hex6.exec(t))?{r:(0,a.parseIntFromHex)(o[1]),g:(0,a.parseIntFromHex)(o[2]),b:(0,a.parseIntFromHex)(o[3]),format:e?"name":"hex"}:(o=s.hex4.exec(t))?{r:(0,a.parseIntFromHex)(o[1]+o[1]),g:(0,a.parseIntFromHex)(o[2]+o[2]),b:(0,a.parseIntFromHex)(o[3]+o[3]),a:(0,a.convertHexToDecimal)(o[4]+o[4]),format:e?"name":"hex8"}:!!(o=s.hex3.exec(t))&&{r:(0,a.parseIntFromHex)(o[1]+o[1]),g:(0,a.parseIntFromHex)(o[2]+o[2]),b:(0,a.parseIntFromHex)(o[3]+o[3]),format:e?"name":"hex"}}function u(t){return Boolean(s.CSS_UNIT.exec(String(t)))}o.stringInputToObject=c,o.isValidCSSUnit=u},{"./conversion":29,"./css-color-names":30,"./util":39}],32:[function(t,e,o){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.legacyRandom=o.fromRatio=void 0;var n=t("./index"),i=t("./util");o.fromRatio=function(t,e){var o={r:(0,i.convertToPercentage)(t.r),g:(0,i.convertToPercentage)(t.g),b:(0,i.convertToPercentage)(t.b)};return void 0!==t.a&&(o.a=Number(t.a)),new n.TinyColor(o,e)},o.legacyRandom=function(){return new n.TinyColor({r:Math.random(),g:Math.random(),b:Math.random()})}},{"./index":33,"./util":39}],33:[function(t,e,o){"use strict";Object.defineProperty(o,"__esModule",{value:!0}),o.tinycolor=o.TinyColor=void 0;var r=t("./conversion"),s=t("./css-color-names"),n=t("./format-input"),i=t("./util"),a=(l.prototype.isDark=function(){return this.getBrightness()<128},l.prototype.isLight=function(){return!this.isDark()},l.prototype.getBrightness=function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},l.prototype.getLuminance=function(){var t=this.toRgb(),e=t.r/255,o=t.g/255,t=t.b/255,e=e<=.03928?e/12.92:Math.pow((.055+e)/1.055,2.4),o=o<=.03928?o/12.92:Math.pow((.055+o)/1.055,2.4),t=t<=.03928?t/12.92:Math.pow((.055+t)/1.055,2.4);return.2126*e+.7152*o+.0722*t},l.prototype.getAlpha=function(){return this.a},l.prototype.setAlpha=function(t){return this.a=(0,i.boundAlpha)(t),this.roundA=Math.round(100*this.a)/100,this},l.prototype.isMonochrome=function(){return 0===this.toHsl().s},l.prototype.toHsv=function(){var t=(0,r.rgbToHsv)(this.r,this.g,this.b);return{h:360*t.h,s:t.s,v:t.v,a:this.a}},l.prototype.toHsvString=function(){var t=(0,r.rgbToHsv)(this.r,this.g,this.b),e=Math.round(360*t.h),o=Math.round(100*t.s),t=Math.round(100*t.v);return 1===this.a?"hsv(".concat(e,", ").concat(o,"%, ").concat(t,"%)"):"hsva(".concat(e,", ").concat(o,"%, ").concat(t,"%, ").concat(this.roundA,")")},l.prototype.toHsl=function(){var t=(0,r.rgbToHsl)(this.r,this.g,this.b);return{h:360*t.h,s:t.s,l:t.l,a:this.a}},l.prototype.toHslString=function(){var t=(0,r.rgbToHsl)(this.r,this.g,this.b),e=Math.round(360*t.h),o=Math.round(100*t.s),t=Math.round(100*t.l);return 1===this.a?"hsl(".concat(e,", ").concat(o,"%, ").concat(t,"%)"):"hsla(".concat(e,", ").concat(o,"%, ").concat(t,"%, ").concat(this.roundA,")")},l.prototype.toHex=function(t){return(0,r.rgbToHex)(this.r,this.g,this.b,t=void 0===t?!1:t)},l.prototype.toHexString=function(t){return"#"+this.toHex(t=void 0===t?!1:t)},l.prototype.toHex8=function(t){return(0,r.rgbaToHex)(this.r,this.g,this.b,this.a,t=void 0===t?!1:t)},l.prototype.toHex8String=function(t){return"#"+this.toHex8(t=void 0===t?!1:t)},l.prototype.toHexShortString=function(t){return void 0===t&&(t=!1),1===this.a?this.toHexString(t):this.toHex8String(t)},l.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},l.prototype.toRgbString=function(){var t=Math.round(this.r),e=Math.round(this.g),o=Math.round(this.b);return 1===this.a?"rgb(".concat(t,", ").concat(e,", ").concat(o,")"):"rgba(".concat(t,", ").concat(e,", ").concat(o,", ").concat(this.roundA,")")},l.prototype.toPercentageRgb=function(){function t(t){return"".concat(Math.round(100*(0,i.bound01)(t,255)),"%")}return{r:t(this.r),g:t(this.g),b:t(this.b),a:this.a}},l.prototype.toPercentageRgbString=function(){function t(t){return Math.round(100*(0,i.bound01)(t,255))}return 1===this.a?"rgb(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%)"):"rgba(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%, ").concat(this.roundA,")")},l.prototype.toName=function(){if(0===this.a)return"transparent";if(!(this.a<1))for(var t="#"+(0,r.rgbToHex)(this.r,this.g,this.b,!1),e=0,o=Object.entries(s.names);e>1)+720)%360;--t;)o.h=(o.h+n)%360,i.push(new l(o));return i},l.prototype.complement=function(){var t=this.toHsl();return t.h=(t.h+180)%360,new l(t)},l.prototype.monochromatic=function(t){void 0===t&&(t=6);for(var e=this.toHsv(),o=e.h,n=e.s,i=e.v,r=[],s=1/t;t--;)r.push(new l({h:o,s:n,v:i})),i=(i+s)%1;return r},l.prototype.splitcomplement=function(){var t=this.toHsl(),e=t.h;return[this,new l({h:(e+72)%360,s:t.s,l:t.l}),new l({h:(e+216)%360,s:t.s,l:t.l})]},l.prototype.onBackground=function(t){var e=this.toRgb(),t=new l(t).toRgb(),o=e.a+t.a*(1-e.a);return new l({r:(e.r*e.a+t.r*t.a*(1-e.a))/o,g:(e.g*e.a+t.g*t.a*(1-e.a))/o,b:(e.b*e.a+t.b*t.a*(1-e.a))/o,a:o})},l.prototype.triad=function(){return this.polyad(3)},l.prototype.tetrad=function(){return this.polyad(4)},l.prototype.polyad=function(t){for(var e=this.toHsl(),o=e.h,n=[this],i=360/t,r=1;r=n.hueRange[0]&&t<=n.hueRange[1])return n}throw Error("Color not found")}function c(t,e){var o;return void 0===e?Math.floor(t[0]+Math.random()*(t[1]+1-t[0])):(o=t[1]||1,t=t[0]||0,e=(e=(9301*e+49297)%233280)/233280,Math.floor(t+e*(o-t)))}function u(t){var e=t.lowerBounds[0][0],o=t.lowerBounds[t.lowerBounds.length-1][0],n=t.lowerBounds[t.lowerBounds.length-1][1],i=t.lowerBounds[0][1];return{name:t.name,hueRange:t.hueRange,lowerBounds:t.lowerBounds,saturationRange:[e,o],brightnessRange:[n,i]}}s.random=function t(e){if(void 0!==(e=void 0===e?{}:e).count&&null!==e.count){var o=e.count,n=[];for(e.count=void 0;n.length - + @@ -23,7 +23,7 @@ - + diff --git a/samples/BookStore/src/BookStore.BlazorServer/BookStore.BlazorServer.csproj b/samples/BookStore/src/BookStore.BlazorServer/BookStore.BlazorServer.csproj index 5257acb..09f4bb8 100644 --- a/samples/BookStore/src/BookStore.BlazorServer/BookStore.BlazorServer.csproj +++ b/samples/BookStore/src/BookStore.BlazorServer/BookStore.BlazorServer.csproj @@ -3,7 +3,7 @@ - net8.0 + net9.0 true true true @@ -14,7 +14,9 @@ - + + + diff --git a/samples/BookStore/src/BookStore.BlazorServer/appsettings.json b/samples/BookStore/src/BookStore.BlazorServer/appsettings.json index f5a22bc..37b318f 100644 --- a/samples/BookStore/src/BookStore.BlazorServer/appsettings.json +++ b/samples/BookStore/src/BookStore.BlazorServer/appsettings.json @@ -4,7 +4,7 @@ "RedirectAllowedUrls": "https://localhost:44313" }, "ConnectionStrings": { - "Default": "Server=LOCALHOST\\SQLEXPRESS;Initial Catalog=AntBlazorDemo;Trusted_Connection=True;TrustServerCertificate=True" + "Default": "Server=(LocalDb)\\MSSQLLocalDB;Database=AntBlazorDemo;Trusted_Connection=True" }, "AuthServer": { "Authority": "https://localhost:44313", diff --git a/samples/BookStore/src/BookStore.BlazorServer/package-lock.json b/samples/BookStore/src/BookStore.BlazorServer/package-lock.json index a640558..d5a61ed 100644 --- a/samples/BookStore/src/BookStore.BlazorServer/package-lock.json +++ b/samples/BookStore/src/BookStore.BlazorServer/package-lock.json @@ -8,245 +8,245 @@ "name": "my-app", "version": "1.0.0", "dependencies": { - "@abp/aspnetcore.components.server.basictheme": "~8.3.0", - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0" + "@abp/aspnetcore.components.server.basictheme": "~9.0.0", + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.0" } }, "node_modules/@abp/aspnetcore.components.server.basictheme": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/aspnetcore.components.server.basictheme/-/aspnetcore.components.server.basictheme-8.3.2.tgz", - "integrity": "sha512-30iq9hCikAtFgn45Z7H0o0/16UOb0TUNwf3B731sEJkURMmz5fp8Br8s7p0wO3cqTLBkFcZRIeeEyQ4sTiJuoQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/aspnetcore.components.server.basictheme/-/aspnetcore.components.server.basictheme-9.0.1.tgz", + "integrity": "sha512-9nRzZuHteVxUKwDdbKeOiU4j01S9lknZg+FpVeDGYnhJwLi6ssdyDvAi6uL8F+sWKhAh8JcmwfmPBqwzuwq9CQ==", "dependencies": { - "@abp/aspnetcore.components.server.theming": "~8.3.2" + "@abp/aspnetcore.components.server.theming": "~9.0.1" } }, "node_modules/@abp/aspnetcore.components.server.theming": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/aspnetcore.components.server.theming/-/aspnetcore.components.server.theming-8.3.2.tgz", - "integrity": "sha512-qzMD4TuAGDPUnSYxSsFnr8HbDIJFmWWtg96yNxeXwbdhziuyeSVswFzugNsnedBWMsBgpHwfKUhPPsRkiYqwiw==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/aspnetcore.components.server.theming/-/aspnetcore.components.server.theming-9.0.1.tgz", + "integrity": "sha512-PEvkCxlL+pYS6wdzIznghN+t0tIpr8ipuVK0zTFK4yFIFWDw+LzOPADGv1UcmlO7nxC6DGUxye5JatjX61Cocg==", "dependencies": { - "@abp/bootstrap": "~8.3.2", - "@abp/font-awesome": "~8.3.2" + "@abp/bootstrap": "~9.0.1", + "@abp/font-awesome": "~9.0.1" } }, "node_modules/@abp/aspnetcore.mvc.ui": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.2.tgz", - "integrity": "sha512-og4n6CZFGSA9Oe5kxZfz5b0db6nBO8oEDdSkpwRO7t/g/WTNpz1gBps32tQbvKEO7FahZ36wvWlD8Or201MapA==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.1.tgz", + "integrity": "sha512-KVbWCpBV7S1ViHYQP/hn4gSMzSiA2e8/zC0HND1fjE+1zXJqJyEWto1eg2DaKSOs/rmHD8WtFVMU4hCLQTCuIA==", "dependencies": { "ansi-colors": "^4.1.3" } }, "node_modules/@abp/aspnetcore.mvc.ui.theme.basic": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.2.tgz", - "integrity": "sha512-3Wu4KlbIP8VKR3Xy0twNl+aNtl6JUyrz5apaB8nGdegW+QJH39BnTL5juBn4z1Z8qNANVXYVS5Kteh0mmbDiBQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.0.1.tgz", + "integrity": "sha512-JaxuDH8WTnZYX6C7CX7ZVHfhTDR/SxfwRvtJaGGijSX8QKd1DXpfi9lYEF4Y9k5b48YT/0slBqU5g0sLmBd3+g==", "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~8.3.2" + "@abp/aspnetcore.mvc.ui.theme.shared": "~9.0.1" } }, "node_modules/@abp/aspnetcore.mvc.ui.theme.shared": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.2.tgz", - "integrity": "sha512-p8d+kx9xCUuZS9CpDk2gCnC6L/Sd4oqt07zEsO4IGRV3Dd9eyYZhvk4GhtQa4/lGauwXrKr+YUMZU+2fJm8zUg==", - "dependencies": { - "@abp/aspnetcore.mvc.ui": "~8.3.2", - "@abp/bootstrap": "~8.3.2", - "@abp/bootstrap-datepicker": "~8.3.2", - "@abp/bootstrap-daterangepicker": "~8.3.2", - "@abp/datatables.net-bs5": "~8.3.2", - "@abp/font-awesome": "~8.3.2", - "@abp/jquery-form": "~8.3.2", - "@abp/jquery-validation-unobtrusive": "~8.3.2", - "@abp/lodash": "~8.3.2", - "@abp/luxon": "~8.3.2", - "@abp/malihu-custom-scrollbar-plugin": "~8.3.2", - "@abp/moment": "~8.3.2", - "@abp/select2": "~8.3.2", - "@abp/sweetalert2": "~8.3.2", - "@abp/timeago": "~8.3.2", - "@abp/toastr": "~8.3.2" + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.1.tgz", + "integrity": "sha512-vrgRYKNctdZYhPCQ2I6Z10gUI1S5ynDj+DgnV7x7a7G/juuHaOSbkRXgwrmJsmYLfGA7KFCoJcbpER8mmXQeHQ==", + "dependencies": { + "@abp/aspnetcore.mvc.ui": "~9.0.1", + "@abp/bootstrap": "~9.0.1", + "@abp/bootstrap-datepicker": "~9.0.1", + "@abp/bootstrap-daterangepicker": "~9.0.1", + "@abp/datatables.net-bs5": "~9.0.1", + "@abp/font-awesome": "~9.0.1", + "@abp/jquery-form": "~9.0.1", + "@abp/jquery-validation-unobtrusive": "~9.0.1", + "@abp/lodash": "~9.0.1", + "@abp/luxon": "~9.0.1", + "@abp/malihu-custom-scrollbar-plugin": "~9.0.1", + "@abp/moment": "~9.0.1", + "@abp/select2": "~9.0.1", + "@abp/sweetalert2": "~9.0.1", + "@abp/timeago": "~9.0.1", + "@abp/toastr": "~9.0.1" } }, "node_modules/@abp/bootstrap": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/bootstrap/-/bootstrap-8.3.2.tgz", - "integrity": "sha512-qlCt5xpoIH7l4WeJtZvottpOq/GonYIaOpw4PXf4wmpma+iE8IMW5SKD12ajTI46DvAUuJdJzn/HuZi09btQkw==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/bootstrap/-/bootstrap-9.0.1.tgz", + "integrity": "sha512-uAfVNsUYSsRqgeO9JMnhJJlFoDmO3/lTvER/iYOqerF0X03KQnR8HZy2V3MD1D+fSh/4JuU6aAZFl6IQLinMKQ==", "dependencies": { - "@abp/core": "~8.3.2", + "@abp/core": "~9.0.1", "bootstrap": "^5.3.3" } }, "node_modules/@abp/bootstrap-datepicker": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.2.tgz", - "integrity": "sha512-Bdxc0SJ4/nC9BbBCz9hutgVtLBWQ2vkMLXFHqLrME7cQ0i8zg7XolEvY6IHt2/0V3omMCw/BA9oUc4JBsE76KQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.1.tgz", + "integrity": "sha512-LhgqBRr66x9gGTAyv1FuPAw8u8N77WQK2AfDkNgLueurM2+xMYQzH3pWWLhcN676/JXafxfALCfBoM8U7CfXLg==", "dependencies": { "bootstrap-datepicker": "^1.10.0" } }, "node_modules/@abp/bootstrap-daterangepicker": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.2.tgz", - "integrity": "sha512-+hSTVqvlYrdlQ5ajwVvjzQdAWj5U1eoRMHNKFLdddIHp27n5q6waz2kIhqvUe1TNHF98LksbFkylFcuj6v7aZg==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.1.tgz", + "integrity": "sha512-SlBVgiYa75uQyaGt5EVjduren7Po5UP26A1tXEQQr0hDia1+1TK0qxmJ2YxjeJpB7FwtcmJiofv5fngvJqhxIA==", "dependencies": { "bootstrap-daterangepicker": "^3.1.0" } }, "node_modules/@abp/core": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/core/-/core-8.3.2.tgz", - "integrity": "sha512-sNAJZr7bRBYPzM5zR1a3B+ZAHUUPO1cZey38Vf4UtRZ5cTNnVuM7RovMQKvWZkUcD7S1vWgtKS8m/KWq4/tMQg==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/core/-/core-9.0.1.tgz", + "integrity": "sha512-NWXDVCIJePbcKCrRvGxAlaA2MrOF2IZox37bQkW7/mTeOPpNoTa6lhowksNNcTpFq2YdD8bG0i0kfskkp3EZ2w==", "dependencies": { - "@abp/utils": "~8.3.2" + "@abp/utils": "~9.0.1" } }, "node_modules/@abp/datatables.net": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/datatables.net/-/datatables.net-8.3.2.tgz", - "integrity": "sha512-LI0AM5HYfMVdMZZ7VucyqFq/MxTt1Yh9klh2DB4B0lTeZTaXtjK4rJbV8B2A6MhSN04ZNqz5LF+xoKoUerNK5w==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/datatables.net/-/datatables.net-9.0.1.tgz", + "integrity": "sha512-JY53zVQPluRrBiKwtgk4gfSgD8VDs/VU8LWizhGCprXt3h9vXx0SQL4My6zvXVkv4hUjaq4+MYo84OI8EwFvsg==", "dependencies": { - "@abp/jquery": "~8.3.2", - "datatables.net": "^2.0.8" + "@abp/jquery": "~9.0.1", + "datatables.net": "^2.1.8" } }, "node_modules/@abp/datatables.net-bs5": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.2.tgz", - "integrity": "sha512-JrBtjsr4jWgG/8ZJYbyYWk65tCkjkU5UIrK1xdX8hFCHX+Rq4ioCXdswqRzNkLLIfXh6U4J96JurMLuJtinepA==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.1.tgz", + "integrity": "sha512-tAHdf4TBAS0bVRcvovDKS0OHFyeRSPYbiSIwDn8AIWzW9Weav31jhZ5jL3HEtBKVdb7zqUQ8/3dYPufjDuDdDA==", "dependencies": { - "@abp/datatables.net": "~8.3.2", - "datatables.net-bs5": "^2.0.8" + "@abp/datatables.net": "~9.0.1", + "datatables.net-bs5": "^2.1.8" } }, "node_modules/@abp/font-awesome": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/font-awesome/-/font-awesome-8.3.2.tgz", - "integrity": "sha512-nhoyY/svGY5iaoU3M8q7MCIB5OGrFSpsyY5eoRROady+BrIww9msZwMFcyE08+uNQXbqL94BcrMIDAnUA/zdYg==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/font-awesome/-/font-awesome-9.0.1.tgz", + "integrity": "sha512-7NnYBmk0plLVElUWR1zohul87vE9wKJItemWT5Kskf/IJirKOvXwSSu+7Jg1LmnVtIxcH6qgRpJMmzuAJgawnQ==", "dependencies": { - "@abp/core": "~8.3.2", - "@fortawesome/fontawesome-free": "^6.5.2" + "@abp/core": "~9.0.1", + "@fortawesome/fontawesome-free": "^6.6.0" } }, "node_modules/@abp/jquery": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/jquery/-/jquery-8.3.2.tgz", - "integrity": "sha512-tCNNQJCVQmAmz2z5orBQNFWPD9MfvM3hkFM/TZSDEZMetFBfz1tJKwEjS7eLEOLeSDju3YbByG1PtWGKN1rsUQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/jquery/-/jquery-9.0.1.tgz", + "integrity": "sha512-z8EcnOveItAszbTsM9GFFDQSlcIg/ym6+WZME9uldLoetdxkmI9ij0knVeGj5eqMjQaHvTWwrVLObiBbZwYFWw==", "dependencies": { - "@abp/core": "~8.3.2", + "@abp/core": "~9.0.1", "jquery": "~3.7.1" } }, "node_modules/@abp/jquery-form": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/jquery-form/-/jquery-form-8.3.2.tgz", - "integrity": "sha512-cO9VTL2gO7dvd2FpYWHYgUfmzfTQkm90LE5CfEFJipXrq92alPV5FFB/DrTFOX1UoR9SCTdq6k0auEPNPnp6Dw==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/jquery-form/-/jquery-form-9.0.1.tgz", + "integrity": "sha512-9co0+Cver+RUSOpfuukSWQhR+TCnO9Dly4RTVRIKFksGVfN8hA70NqRrVxaASNNFv42ynK88FQK+2bLPswz/iw==", "dependencies": { - "@abp/jquery": "~8.3.2", + "@abp/jquery": "~9.0.1", "jquery-form": "^4.3.0" } }, "node_modules/@abp/jquery-validation": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/jquery-validation/-/jquery-validation-8.3.2.tgz", - "integrity": "sha512-4l4D5cSJw75/dH81JagDcyV82q3+AEwyPcgNymAcxbe0N+8hvch2dWxW/WlxgdSt1Wj17MHRQyaOHJD299yB2Q==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/jquery-validation/-/jquery-validation-9.0.1.tgz", + "integrity": "sha512-uFSxiPMEkaPlcuyXIoKbeOIIRHo4IrgRbmnlHwI1uETrW60ENUdE2LJAVcYS77JROrjVtv8FPlaffWuva6sGeQ==", "dependencies": { - "@abp/jquery": "~8.3.2", - "jquery-validation": "^1.20.1" + "@abp/jquery": "~9.0.1", + "jquery-validation": "^1.21.0" } }, "node_modules/@abp/jquery-validation-unobtrusive": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.2.tgz", - "integrity": "sha512-KBKozSr7Q3+WZgvYDkpSmMHLikyl8tz9N1XXzkQTvHTI8LEIdP2wLCKqkjccP0IlivYFzcSamAHsuEK+mfg11Q==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.1.tgz", + "integrity": "sha512-Zpz48wIFjq7eIApG/sEVjkfaJWZhcyCnlCtDf5eU3vvh82nRetbiCEAVLpZ4LVjorlyp3VvVAxReUSeeWflu8A==", "dependencies": { - "@abp/jquery-validation": "~8.3.2", + "@abp/jquery-validation": "~9.0.1", "jquery-validation-unobtrusive": "^4.0.0" } }, "node_modules/@abp/lodash": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/lodash/-/lodash-8.3.2.tgz", - "integrity": "sha512-O5p6mchGaZHnge1tza3/uQfEqUvIuyWVhzMv+sRq//9FHnMyTThlHU0zriFsYb3wpBQfPf11uOtisv5F+wbuRw==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/lodash/-/lodash-9.0.1.tgz", + "integrity": "sha512-D+/iOyh/O+jV80bK5vWxyn++IVmeRbZq/UaXanA4RKpzigxJUsgOiSD9lUj85BkfKn2YyFmoR39xwaAqkWoyRA==", "dependencies": { - "@abp/core": "~8.3.2", + "@abp/core": "~9.0.1", "lodash": "^4.17.21" } }, "node_modules/@abp/luxon": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/luxon/-/luxon-8.3.2.tgz", - "integrity": "sha512-GxjKfYAUu3YPW8oJq/APNvghG8a+PR2vgX13k4FTRi7o0ndLjqu1m4+oqfA9r4tpRgj4WLmoaVjGGJYrtaEBGQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/luxon/-/luxon-9.0.1.tgz", + "integrity": "sha512-1ZHXP5SGz05tQ1tzYmPcRiZwmkCKGX0KWFoV0zF3ATRaevzku9nXvSy7K6GIFkkgTb9f9XNx4/OBBF/GXkuRqw==", "dependencies": { - "@abp/core": "~8.3.2", - "luxon": "^3.4.4" + "@abp/core": "~9.0.1", + "luxon": "^3.5.0" } }, "node_modules/@abp/malihu-custom-scrollbar-plugin": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.2.tgz", - "integrity": "sha512-cyVeeKppYYYR93eyy20QFuwmhCf0k5B/+ZlslOqbm5E4NIoPN8oIVcg02wyq541jSmDINj1pOl71IZcMxt01hA==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.1.tgz", + "integrity": "sha512-GkKPLg9Z9UTTSSpW2hYZYZ9IgCvDSOYJmyRSl/h4fG8cWMgGCPVpv8MPPu0+WtIfwW/mT4SPX9X+sjUlRL5XRQ==", "dependencies": { - "@abp/core": "~8.3.2", + "@abp/core": "~9.0.1", "malihu-custom-scrollbar-plugin": "^3.1.5" } }, "node_modules/@abp/moment": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/moment/-/moment-8.3.2.tgz", - "integrity": "sha512-2aFlq+sdXpcBS/nOEo1CQMlVl5/Qv0/wYKFez5KylyKic4CKGrmzFWvQWeqsR73Ns+Ayk8dX0Dabzseia1hdIQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/moment/-/moment-9.0.1.tgz", + "integrity": "sha512-bTuCc7pi/DCtgz7t96UBU0wn9UGt4b50JhDCVeTKquh+gP1sgWoI5hyvEBkmgE4dcffO0yzZU2opHYTKYGl/OQ==", "dependencies": { "moment": "^2.30.1" } }, "node_modules/@abp/select2": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/select2/-/select2-8.3.2.tgz", - "integrity": "sha512-q2pAsmF+J2Zs2+DqDgA63DBfkKUSgqqvSYdeEGVoGQqmr70o6BAvIvyaNSW7FNq/VzQca+zSQAoUI6F3opHiuQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/select2/-/select2-9.0.1.tgz", + "integrity": "sha512-epyYJH2gAOU2UvGn5FD6372hbW3fL7uZIgGpvfgEfa+l6HPdlV9B1OweU2xkONNCoylShAcP/y8qf+bUh8WDEA==", "dependencies": { - "@abp/core": "~8.3.2", + "@abp/core": "~9.0.1", "select2": "^4.0.13" } }, "node_modules/@abp/sweetalert2": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/sweetalert2/-/sweetalert2-8.3.2.tgz", - "integrity": "sha512-rQEU27H9Yj8IMQY5IzwgE6N4jvlE4lnCQno87NDDa6lYp1QO8Bp6VJi77TSj3/eXb/8mJSyyoO1QqLoyrql+tg==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/sweetalert2/-/sweetalert2-9.0.1.tgz", + "integrity": "sha512-0RXR/lzy3qMJLisGUz4qrcA9Clu/Tt1ABGzB64ynG1t/l5XessQsIB5Hkt6MbSyOEsprRsq+ZtKH35CwTRPdAw==", "dependencies": { - "@abp/core": "~8.3.2", - "sweetalert2": "^11.3.6" + "@abp/core": "~9.0.1", + "sweetalert2": "^11.14.1" } }, "node_modules/@abp/timeago": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/timeago/-/timeago-8.3.2.tgz", - "integrity": "sha512-JZ9lo6AgDjpxs5AhhS+UoNIDpx1yN7bHxYdnEXg7wztVbV+V9U96Upp3rYhRHSjiCmx0xIMLfujElwjgBAhPDQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/timeago/-/timeago-9.0.1.tgz", + "integrity": "sha512-dNfUQwilrY+JHxL5lwJ++ixYDGAs5lF1EDxKMQMIXD/ak5L8rkdLns8Otta7FhgDDny9UJ7XWQjYsG8ZxxybRQ==", "dependencies": { - "@abp/jquery": "~8.3.2", + "@abp/jquery": "~9.0.1", "timeago": "^1.6.7" } }, "node_modules/@abp/toastr": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/toastr/-/toastr-8.3.2.tgz", - "integrity": "sha512-aFnSMojAPSIYkHV7tE3Uh00G+r07c6spW+tRqxEiooF11t6PXZyWayNGsol+8L43tXk9dQYj8GwnGau/yTxzRA==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/toastr/-/toastr-9.0.1.tgz", + "integrity": "sha512-10KuHnSJOxkvzqs6Aim6GJp8xBuT+TsZqBE1KaXQnERPawmOo4+ME28kA/7lq8fvgFUNO3K41T2uuA1GPHVQcg==", "dependencies": { - "@abp/jquery": "~8.3.2", + "@abp/jquery": "~9.0.1", "toastr": "^2.1.4" } }, "node_modules/@abp/utils": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/utils/-/utils-8.3.2.tgz", - "integrity": "sha512-0i4yqwxSGnKKZJZwXNBvCPoT7nZ0/vnyNVBMeE12x3Y7MV3bZSza2CGTPUhVVvoWt2JfGiDpAfKzPq2eUKfisg==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/utils/-/utils-9.0.1.tgz", + "integrity": "sha512-7eOKT0ciKNdtuASck1kifyc4dC6CeebgxV+rx/EAi3YwPMDkqie6YwLGUqKdGW2N/MZ15JuDR6gkuZxKHEb0NQ==", "dependencies": { "just-compare": "^2.3.0" } }, "node_modules/@fortawesome/fontawesome-free": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.6.0.tgz", - "integrity": "sha512-60G28ke/sXdtS9KZCpZSHHkCbdsOGEhIUGlwq6yhY74UpTiToIh8np7A8yphhM4BWsvNFtIvLpi4co+h9Mr9Ow==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.7.1.tgz", + "integrity": "sha512-ALIk/MOh5gYe1TG/ieS5mVUsk7VUIJTJKPMK9rFFqOgfp0Q3d5QiBXbcOMwUvs37fyZVCz46YjOE6IFeOAXCHA==", "engines": { "node": ">=6" } @@ -396,9 +396,9 @@ "integrity": "sha512-1JeB87s6oN/TDxQQYCvS5EFoQyvV6eYMZZ0AeA4tdFDYWN3BAGZ8npr17UBFddU0lgAt3H0yjX3X6/ekOj1yjw==" }, "node_modules/sweetalert2": { - "version": "11.14.4", - "resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.14.4.tgz", - "integrity": "sha512-8QMzjxCuinwm18EK5AtYvuhP+lRMRxTWVXy8om9wGlULsXSI4TD29kyih3VYrSXMMBlD4EShFvNC7slhTC7j0w==", + "version": "11.14.5", + "resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.14.5.tgz", + "integrity": "sha512-8MWk5uc/r6bWhiJWkUXyEuApfXAhSCZT8FFX7pZXL7YwaPxq+9Ynhi2dUzWkOFn9jvLjKj22CXuccZ+IHcnjvQ==", "funding": { "type": "individual", "url": "https://github.com/sponsors/limonte" diff --git a/samples/BookStore/src/BookStore.BlazorServer/package.json b/samples/BookStore/src/BookStore.BlazorServer/package.json index 5cfdae6..aee6594 100644 --- a/samples/BookStore/src/BookStore.BlazorServer/package.json +++ b/samples/BookStore/src/BookStore.BlazorServer/package.json @@ -3,7 +3,7 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0", - "@abp/aspnetcore.components.server.basictheme": "~8.3.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.0", + "@abp/aspnetcore.components.server.basictheme": "~9.0.0" } } \ No newline at end of file diff --git a/samples/BookStore/src/BookStore.BlazorServer/yarn.lock b/samples/BookStore/src/BookStore.BlazorServer/yarn.lock index abd0155..c948dfe 100644 --- a/samples/BookStore/src/BookStore.BlazorServer/yarn.lock +++ b/samples/BookStore/src/BookStore.BlazorServer/yarn.lock @@ -2,216 +2,216 @@ # yarn lockfile v1 -"@abp/aspnetcore.components.server.basictheme@~8.3.0": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/aspnetcore.components.server.basictheme/-/aspnetcore.components.server.basictheme-8.3.2.tgz" - integrity sha512-30iq9hCikAtFgn45Z7H0o0/16UOb0TUNwf3B731sEJkURMmz5fp8Br8s7p0wO3cqTLBkFcZRIeeEyQ4sTiJuoQ== - dependencies: - "@abp/aspnetcore.components.server.theming" "~8.3.2" - -"@abp/aspnetcore.components.server.theming@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/aspnetcore.components.server.theming/-/aspnetcore.components.server.theming-8.3.2.tgz" - integrity sha512-qzMD4TuAGDPUnSYxSsFnr8HbDIJFmWWtg96yNxeXwbdhziuyeSVswFzugNsnedBWMsBgpHwfKUhPPsRkiYqwiw== - dependencies: - "@abp/bootstrap" "~8.3.2" - "@abp/font-awesome" "~8.3.2" - -"@abp/aspnetcore.mvc.ui.theme.basic@~8.3.0": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.2.tgz" - integrity sha512-3Wu4KlbIP8VKR3Xy0twNl+aNtl6JUyrz5apaB8nGdegW+QJH39BnTL5juBn4z1Z8qNANVXYVS5Kteh0mmbDiBQ== - dependencies: - "@abp/aspnetcore.mvc.ui.theme.shared" "~8.3.2" - -"@abp/aspnetcore.mvc.ui.theme.shared@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.2.tgz" - integrity sha512-p8d+kx9xCUuZS9CpDk2gCnC6L/Sd4oqt07zEsO4IGRV3Dd9eyYZhvk4GhtQa4/lGauwXrKr+YUMZU+2fJm8zUg== - dependencies: - "@abp/aspnetcore.mvc.ui" "~8.3.2" - "@abp/bootstrap" "~8.3.2" - "@abp/bootstrap-datepicker" "~8.3.2" - "@abp/bootstrap-daterangepicker" "~8.3.2" - "@abp/datatables.net-bs5" "~8.3.2" - "@abp/font-awesome" "~8.3.2" - "@abp/jquery-form" "~8.3.2" - "@abp/jquery-validation-unobtrusive" "~8.3.2" - "@abp/lodash" "~8.3.2" - "@abp/luxon" "~8.3.2" - "@abp/malihu-custom-scrollbar-plugin" "~8.3.2" - "@abp/moment" "~8.3.2" - "@abp/select2" "~8.3.2" - "@abp/sweetalert2" "~8.3.2" - "@abp/timeago" "~8.3.2" - "@abp/toastr" "~8.3.2" - -"@abp/aspnetcore.mvc.ui@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.2.tgz" - integrity sha512-og4n6CZFGSA9Oe5kxZfz5b0db6nBO8oEDdSkpwRO7t/g/WTNpz1gBps32tQbvKEO7FahZ36wvWlD8Or201MapA== +"@abp/aspnetcore.components.server.basictheme@~9.0.0": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/aspnetcore.components.server.basictheme/-/aspnetcore.components.server.basictheme-9.0.1.tgz" + integrity sha512-9nRzZuHteVxUKwDdbKeOiU4j01S9lknZg+FpVeDGYnhJwLi6ssdyDvAi6uL8F+sWKhAh8JcmwfmPBqwzuwq9CQ== + dependencies: + "@abp/aspnetcore.components.server.theming" "~9.0.1" + +"@abp/aspnetcore.components.server.theming@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/aspnetcore.components.server.theming/-/aspnetcore.components.server.theming-9.0.1.tgz" + integrity sha512-PEvkCxlL+pYS6wdzIznghN+t0tIpr8ipuVK0zTFK4yFIFWDw+LzOPADGv1UcmlO7nxC6DGUxye5JatjX61Cocg== + dependencies: + "@abp/bootstrap" "~9.0.1" + "@abp/font-awesome" "~9.0.1" + +"@abp/aspnetcore.mvc.ui.theme.basic@~9.0.0": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.0.1.tgz" + integrity sha512-JaxuDH8WTnZYX6C7CX7ZVHfhTDR/SxfwRvtJaGGijSX8QKd1DXpfi9lYEF4Y9k5b48YT/0slBqU5g0sLmBd3+g== + dependencies: + "@abp/aspnetcore.mvc.ui.theme.shared" "~9.0.1" + +"@abp/aspnetcore.mvc.ui.theme.shared@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.1.tgz" + integrity sha512-vrgRYKNctdZYhPCQ2I6Z10gUI1S5ynDj+DgnV7x7a7G/juuHaOSbkRXgwrmJsmYLfGA7KFCoJcbpER8mmXQeHQ== + dependencies: + "@abp/aspnetcore.mvc.ui" "~9.0.1" + "@abp/bootstrap" "~9.0.1" + "@abp/bootstrap-datepicker" "~9.0.1" + "@abp/bootstrap-daterangepicker" "~9.0.1" + "@abp/datatables.net-bs5" "~9.0.1" + "@abp/font-awesome" "~9.0.1" + "@abp/jquery-form" "~9.0.1" + "@abp/jquery-validation-unobtrusive" "~9.0.1" + "@abp/lodash" "~9.0.1" + "@abp/luxon" "~9.0.1" + "@abp/malihu-custom-scrollbar-plugin" "~9.0.1" + "@abp/moment" "~9.0.1" + "@abp/select2" "~9.0.1" + "@abp/sweetalert2" "~9.0.1" + "@abp/timeago" "~9.0.1" + "@abp/toastr" "~9.0.1" + +"@abp/aspnetcore.mvc.ui@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.1.tgz" + integrity sha512-KVbWCpBV7S1ViHYQP/hn4gSMzSiA2e8/zC0HND1fjE+1zXJqJyEWto1eg2DaKSOs/rmHD8WtFVMU4hCLQTCuIA== dependencies: ansi-colors "^4.1.3" -"@abp/bootstrap-datepicker@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.2.tgz" - integrity sha512-Bdxc0SJ4/nC9BbBCz9hutgVtLBWQ2vkMLXFHqLrME7cQ0i8zg7XolEvY6IHt2/0V3omMCw/BA9oUc4JBsE76KQ== +"@abp/bootstrap-datepicker@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.1.tgz" + integrity sha512-LhgqBRr66x9gGTAyv1FuPAw8u8N77WQK2AfDkNgLueurM2+xMYQzH3pWWLhcN676/JXafxfALCfBoM8U7CfXLg== dependencies: bootstrap-datepicker "^1.10.0" -"@abp/bootstrap-daterangepicker@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.2.tgz" - integrity sha512-+hSTVqvlYrdlQ5ajwVvjzQdAWj5U1eoRMHNKFLdddIHp27n5q6waz2kIhqvUe1TNHF98LksbFkylFcuj6v7aZg== +"@abp/bootstrap-daterangepicker@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.1.tgz" + integrity sha512-SlBVgiYa75uQyaGt5EVjduren7Po5UP26A1tXEQQr0hDia1+1TK0qxmJ2YxjeJpB7FwtcmJiofv5fngvJqhxIA== dependencies: bootstrap-daterangepicker "^3.1.0" -"@abp/bootstrap@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/bootstrap/-/bootstrap-8.3.2.tgz" - integrity sha512-qlCt5xpoIH7l4WeJtZvottpOq/GonYIaOpw4PXf4wmpma+iE8IMW5SKD12ajTI46DvAUuJdJzn/HuZi09btQkw== +"@abp/bootstrap@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/bootstrap/-/bootstrap-9.0.1.tgz" + integrity sha512-uAfVNsUYSsRqgeO9JMnhJJlFoDmO3/lTvER/iYOqerF0X03KQnR8HZy2V3MD1D+fSh/4JuU6aAZFl6IQLinMKQ== dependencies: - "@abp/core" "~8.3.2" + "@abp/core" "~9.0.1" bootstrap "^5.3.3" -"@abp/core@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/core/-/core-8.3.2.tgz" - integrity sha512-sNAJZr7bRBYPzM5zR1a3B+ZAHUUPO1cZey38Vf4UtRZ5cTNnVuM7RovMQKvWZkUcD7S1vWgtKS8m/KWq4/tMQg== +"@abp/core@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/core/-/core-9.0.1.tgz" + integrity sha512-NWXDVCIJePbcKCrRvGxAlaA2MrOF2IZox37bQkW7/mTeOPpNoTa6lhowksNNcTpFq2YdD8bG0i0kfskkp3EZ2w== dependencies: - "@abp/utils" "~8.3.2" + "@abp/utils" "~9.0.1" -"@abp/datatables.net-bs5@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.2.tgz" - integrity sha512-JrBtjsr4jWgG/8ZJYbyYWk65tCkjkU5UIrK1xdX8hFCHX+Rq4ioCXdswqRzNkLLIfXh6U4J96JurMLuJtinepA== +"@abp/datatables.net-bs5@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.1.tgz" + integrity sha512-tAHdf4TBAS0bVRcvovDKS0OHFyeRSPYbiSIwDn8AIWzW9Weav31jhZ5jL3HEtBKVdb7zqUQ8/3dYPufjDuDdDA== dependencies: - "@abp/datatables.net" "~8.3.2" - datatables.net-bs5 "^2.0.8" + "@abp/datatables.net" "~9.0.1" + datatables.net-bs5 "^2.1.8" -"@abp/datatables.net@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/datatables.net/-/datatables.net-8.3.2.tgz" - integrity sha512-LI0AM5HYfMVdMZZ7VucyqFq/MxTt1Yh9klh2DB4B0lTeZTaXtjK4rJbV8B2A6MhSN04ZNqz5LF+xoKoUerNK5w== +"@abp/datatables.net@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/datatables.net/-/datatables.net-9.0.1.tgz" + integrity sha512-JY53zVQPluRrBiKwtgk4gfSgD8VDs/VU8LWizhGCprXt3h9vXx0SQL4My6zvXVkv4hUjaq4+MYo84OI8EwFvsg== dependencies: - "@abp/jquery" "~8.3.2" - datatables.net "^2.0.8" + "@abp/jquery" "~9.0.1" + datatables.net "^2.1.8" -"@abp/font-awesome@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/font-awesome/-/font-awesome-8.3.2.tgz" - integrity sha512-nhoyY/svGY5iaoU3M8q7MCIB5OGrFSpsyY5eoRROady+BrIww9msZwMFcyE08+uNQXbqL94BcrMIDAnUA/zdYg== +"@abp/font-awesome@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/font-awesome/-/font-awesome-9.0.1.tgz" + integrity sha512-7NnYBmk0plLVElUWR1zohul87vE9wKJItemWT5Kskf/IJirKOvXwSSu+7Jg1LmnVtIxcH6qgRpJMmzuAJgawnQ== dependencies: - "@abp/core" "~8.3.2" - "@fortawesome/fontawesome-free" "^6.5.2" + "@abp/core" "~9.0.1" + "@fortawesome/fontawesome-free" "^6.6.0" -"@abp/jquery-form@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/jquery-form/-/jquery-form-8.3.2.tgz" - integrity sha512-cO9VTL2gO7dvd2FpYWHYgUfmzfTQkm90LE5CfEFJipXrq92alPV5FFB/DrTFOX1UoR9SCTdq6k0auEPNPnp6Dw== +"@abp/jquery-form@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/jquery-form/-/jquery-form-9.0.1.tgz" + integrity sha512-9co0+Cver+RUSOpfuukSWQhR+TCnO9Dly4RTVRIKFksGVfN8hA70NqRrVxaASNNFv42ynK88FQK+2bLPswz/iw== dependencies: - "@abp/jquery" "~8.3.2" + "@abp/jquery" "~9.0.1" jquery-form "^4.3.0" -"@abp/jquery-validation-unobtrusive@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.2.tgz" - integrity sha512-KBKozSr7Q3+WZgvYDkpSmMHLikyl8tz9N1XXzkQTvHTI8LEIdP2wLCKqkjccP0IlivYFzcSamAHsuEK+mfg11Q== +"@abp/jquery-validation-unobtrusive@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.1.tgz" + integrity sha512-Zpz48wIFjq7eIApG/sEVjkfaJWZhcyCnlCtDf5eU3vvh82nRetbiCEAVLpZ4LVjorlyp3VvVAxReUSeeWflu8A== dependencies: - "@abp/jquery-validation" "~8.3.2" + "@abp/jquery-validation" "~9.0.1" jquery-validation-unobtrusive "^4.0.0" -"@abp/jquery-validation@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/jquery-validation/-/jquery-validation-8.3.2.tgz" - integrity sha512-4l4D5cSJw75/dH81JagDcyV82q3+AEwyPcgNymAcxbe0N+8hvch2dWxW/WlxgdSt1Wj17MHRQyaOHJD299yB2Q== +"@abp/jquery-validation@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/jquery-validation/-/jquery-validation-9.0.1.tgz" + integrity sha512-uFSxiPMEkaPlcuyXIoKbeOIIRHo4IrgRbmnlHwI1uETrW60ENUdE2LJAVcYS77JROrjVtv8FPlaffWuva6sGeQ== dependencies: - "@abp/jquery" "~8.3.2" - jquery-validation "^1.20.1" + "@abp/jquery" "~9.0.1" + jquery-validation "^1.21.0" -"@abp/jquery@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/jquery/-/jquery-8.3.2.tgz" - integrity sha512-tCNNQJCVQmAmz2z5orBQNFWPD9MfvM3hkFM/TZSDEZMetFBfz1tJKwEjS7eLEOLeSDju3YbByG1PtWGKN1rsUQ== +"@abp/jquery@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/jquery/-/jquery-9.0.1.tgz" + integrity sha512-z8EcnOveItAszbTsM9GFFDQSlcIg/ym6+WZME9uldLoetdxkmI9ij0knVeGj5eqMjQaHvTWwrVLObiBbZwYFWw== dependencies: - "@abp/core" "~8.3.2" + "@abp/core" "~9.0.1" jquery "~3.7.1" -"@abp/lodash@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/lodash/-/lodash-8.3.2.tgz" - integrity sha512-O5p6mchGaZHnge1tza3/uQfEqUvIuyWVhzMv+sRq//9FHnMyTThlHU0zriFsYb3wpBQfPf11uOtisv5F+wbuRw== +"@abp/lodash@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/lodash/-/lodash-9.0.1.tgz" + integrity sha512-D+/iOyh/O+jV80bK5vWxyn++IVmeRbZq/UaXanA4RKpzigxJUsgOiSD9lUj85BkfKn2YyFmoR39xwaAqkWoyRA== dependencies: - "@abp/core" "~8.3.2" + "@abp/core" "~9.0.1" lodash "^4.17.21" -"@abp/luxon@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/luxon/-/luxon-8.3.2.tgz" - integrity sha512-GxjKfYAUu3YPW8oJq/APNvghG8a+PR2vgX13k4FTRi7o0ndLjqu1m4+oqfA9r4tpRgj4WLmoaVjGGJYrtaEBGQ== +"@abp/luxon@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/luxon/-/luxon-9.0.1.tgz" + integrity sha512-1ZHXP5SGz05tQ1tzYmPcRiZwmkCKGX0KWFoV0zF3ATRaevzku9nXvSy7K6GIFkkgTb9f9XNx4/OBBF/GXkuRqw== dependencies: - "@abp/core" "~8.3.2" - luxon "^3.4.4" + "@abp/core" "~9.0.1" + luxon "^3.5.0" -"@abp/malihu-custom-scrollbar-plugin@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.2.tgz" - integrity sha512-cyVeeKppYYYR93eyy20QFuwmhCf0k5B/+ZlslOqbm5E4NIoPN8oIVcg02wyq541jSmDINj1pOl71IZcMxt01hA== +"@abp/malihu-custom-scrollbar-plugin@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.1.tgz" + integrity sha512-GkKPLg9Z9UTTSSpW2hYZYZ9IgCvDSOYJmyRSl/h4fG8cWMgGCPVpv8MPPu0+WtIfwW/mT4SPX9X+sjUlRL5XRQ== dependencies: - "@abp/core" "~8.3.2" + "@abp/core" "~9.0.1" malihu-custom-scrollbar-plugin "^3.1.5" -"@abp/moment@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/moment/-/moment-8.3.2.tgz" - integrity sha512-2aFlq+sdXpcBS/nOEo1CQMlVl5/Qv0/wYKFez5KylyKic4CKGrmzFWvQWeqsR73Ns+Ayk8dX0Dabzseia1hdIQ== +"@abp/moment@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/moment/-/moment-9.0.1.tgz" + integrity sha512-bTuCc7pi/DCtgz7t96UBU0wn9UGt4b50JhDCVeTKquh+gP1sgWoI5hyvEBkmgE4dcffO0yzZU2opHYTKYGl/OQ== dependencies: moment "^2.30.1" -"@abp/select2@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/select2/-/select2-8.3.2.tgz" - integrity sha512-q2pAsmF+J2Zs2+DqDgA63DBfkKUSgqqvSYdeEGVoGQqmr70o6BAvIvyaNSW7FNq/VzQca+zSQAoUI6F3opHiuQ== +"@abp/select2@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/select2/-/select2-9.0.1.tgz" + integrity sha512-epyYJH2gAOU2UvGn5FD6372hbW3fL7uZIgGpvfgEfa+l6HPdlV9B1OweU2xkONNCoylShAcP/y8qf+bUh8WDEA== dependencies: - "@abp/core" "~8.3.2" + "@abp/core" "~9.0.1" select2 "^4.0.13" -"@abp/sweetalert2@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/sweetalert2/-/sweetalert2-8.3.2.tgz" - integrity sha512-rQEU27H9Yj8IMQY5IzwgE6N4jvlE4lnCQno87NDDa6lYp1QO8Bp6VJi77TSj3/eXb/8mJSyyoO1QqLoyrql+tg== +"@abp/sweetalert2@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/sweetalert2/-/sweetalert2-9.0.1.tgz" + integrity sha512-0RXR/lzy3qMJLisGUz4qrcA9Clu/Tt1ABGzB64ynG1t/l5XessQsIB5Hkt6MbSyOEsprRsq+ZtKH35CwTRPdAw== dependencies: - "@abp/core" "~8.3.2" - sweetalert2 "^11.3.6" + "@abp/core" "~9.0.1" + sweetalert2 "^11.14.1" -"@abp/timeago@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/timeago/-/timeago-8.3.2.tgz" - integrity sha512-JZ9lo6AgDjpxs5AhhS+UoNIDpx1yN7bHxYdnEXg7wztVbV+V9U96Upp3rYhRHSjiCmx0xIMLfujElwjgBAhPDQ== +"@abp/timeago@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/timeago/-/timeago-9.0.1.tgz" + integrity sha512-dNfUQwilrY+JHxL5lwJ++ixYDGAs5lF1EDxKMQMIXD/ak5L8rkdLns8Otta7FhgDDny9UJ7XWQjYsG8ZxxybRQ== dependencies: - "@abp/jquery" "~8.3.2" + "@abp/jquery" "~9.0.1" timeago "^1.6.7" -"@abp/toastr@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/toastr/-/toastr-8.3.2.tgz" - integrity sha512-aFnSMojAPSIYkHV7tE3Uh00G+r07c6spW+tRqxEiooF11t6PXZyWayNGsol+8L43tXk9dQYj8GwnGau/yTxzRA== +"@abp/toastr@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/toastr/-/toastr-9.0.1.tgz" + integrity sha512-10KuHnSJOxkvzqs6Aim6GJp8xBuT+TsZqBE1KaXQnERPawmOo4+ME28kA/7lq8fvgFUNO3K41T2uuA1GPHVQcg== dependencies: - "@abp/jquery" "~8.3.2" + "@abp/jquery" "~9.0.1" toastr "^2.1.4" -"@abp/utils@~8.3.2": - version "8.3.2" - resolved "https://registry.npmjs.org/@abp/utils/-/utils-8.3.2.tgz" - integrity sha512-0i4yqwxSGnKKZJZwXNBvCPoT7nZ0/vnyNVBMeE12x3Y7MV3bZSza2CGTPUhVVvoWt2JfGiDpAfKzPq2eUKfisg== +"@abp/utils@~9.0.1": + version "9.0.1" + resolved "https://registry.npmjs.org/@abp/utils/-/utils-9.0.1.tgz" + integrity sha512-7eOKT0ciKNdtuASck1kifyc4dC6CeebgxV+rx/EAi3YwPMDkqie6YwLGUqKdGW2N/MZ15JuDR6gkuZxKHEb0NQ== dependencies: just-compare "^2.3.0" -"@fortawesome/fontawesome-free@^6.5.2": - version "6.6.0" - resolved "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.6.0.tgz" - integrity sha512-60G28ke/sXdtS9KZCpZSHHkCbdsOGEhIUGlwq6yhY74UpTiToIh8np7A8yphhM4BWsvNFtIvLpi4co+h9Mr9Ow== +"@fortawesome/fontawesome-free@^6.6.0": + version "6.7.1" + resolved "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.7.1.tgz" + integrity sha512-ALIk/MOh5gYe1TG/ieS5mVUsk7VUIJTJKPMK9rFFqOgfp0Q3d5QiBXbcOMwUvs37fyZVCz46YjOE6IFeOAXCHA== "@popperjs/core@^2.11.8": version "2.11.8" @@ -243,7 +243,7 @@ bootstrap@^5.3.3: resolved "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz" integrity sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg== -datatables.net-bs5@^2.0.8: +datatables.net-bs5@^2.1.8: version "2.1.8" resolved "https://registry.npmjs.org/datatables.net-bs5/-/datatables.net-bs5-2.1.8.tgz" integrity sha512-YlGws8eI3iw/1AmKJH18+YMzm/UgGb6o9s14KAC24QT1/8anolm8GnVAgGcwUcvHm3hn1i8A5QXqgbqeMRINeg== @@ -251,7 +251,7 @@ datatables.net-bs5@^2.0.8: datatables.net "2.1.8" jquery ">=1.7" -datatables.net@^2.0.8, datatables.net@2.1.8: +datatables.net@^2.1.8, datatables.net@2.1.8: version "2.1.8" resolved "https://registry.npmjs.org/datatables.net/-/datatables.net-2.1.8.tgz" integrity sha512-47ULt+U4bcjbuGTpTlT6SnCuSFVRBxxdWa6X3NfvTObBJ2BZU0o+JUIl05wQ6cABNIavjbAV51gpgvFsMHL9zA== @@ -278,7 +278,7 @@ jquery-validation-unobtrusive@^4.0.0: jquery "^3.6.0" jquery-validation ">=1.19" -jquery-validation@^1.20.1, jquery-validation@>=1.19: +jquery-validation@^1.21.0, jquery-validation@>=1.19: version "1.21.0" resolved "https://registry.npmjs.org/jquery-validation/-/jquery-validation-1.21.0.tgz" integrity sha512-xNot0rlUIgu7duMcQ5qb6MGkGL/Z1PQaRJQoZAURW9+a/2PGOUxY36o/WyNeP2T9R6jvWB8Z9lUVvvQWI/Zs5w== @@ -298,7 +298,7 @@ lodash@^4.17.21: resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -luxon@^3.4.4: +luxon@^3.5.0: version "3.5.0" resolved "https://registry.npmjs.org/luxon/-/luxon-3.5.0.tgz" integrity sha512-rh+Zjr6DNfUYR3bPwJEnuwDdqMbxZW7LOQfUN4B54+Cl+0o5zaU9RJ6bcidfDtC1cWCZXQ+nvX8bf6bAji37QQ== @@ -320,10 +320,10 @@ select2@^4.0.13: resolved "https://registry.npmjs.org/select2/-/select2-4.0.13.tgz" integrity sha512-1JeB87s6oN/TDxQQYCvS5EFoQyvV6eYMZZ0AeA4tdFDYWN3BAGZ8npr17UBFddU0lgAt3H0yjX3X6/ekOj1yjw== -sweetalert2@^11.3.6: - version "11.14.4" - resolved "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.14.4.tgz" - integrity sha512-8QMzjxCuinwm18EK5AtYvuhP+lRMRxTWVXy8om9wGlULsXSI4TD29kyih3VYrSXMMBlD4EShFvNC7slhTC7j0w== +sweetalert2@^11.14.1: + version "11.14.5" + resolved "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.14.5.tgz" + integrity sha512-8MWk5uc/r6bWhiJWkUXyEuApfXAhSCZT8FFX7pZXL7YwaPxq+9Ynhi2dUzWkOFn9jvLjKj22CXuccZ+IHcnjvQ== timeago@^1.6.7: version "1.6.7" diff --git a/samples/BookStore/src/BookStore.DbMigrator/BookStore.DbMigrator.csproj b/samples/BookStore/src/BookStore.DbMigrator/BookStore.DbMigrator.csproj index 7831b06..fa51d6b 100644 --- a/samples/BookStore/src/BookStore.DbMigrator/BookStore.DbMigrator.csproj +++ b/samples/BookStore/src/BookStore.DbMigrator/BookStore.DbMigrator.csproj @@ -1,51 +1,53 @@  - - - - Exe - net8.0 - BookStore-4681b4fd-151f-4221-84a4-929d86723e4c - - - - - - PreserveNewest - Always - - - - PreserveNewest - Always - - - - - - - - - - - - - - - - - - - - - - - - - - true - Never - - + + + + Exe + net9.0 + BookStore-4681b4fd-151f-4221-84a4-929d86723e4c + + + + + + PreserveNewest + Always + + + + PreserveNewest + Always + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + Never + + diff --git a/samples/BookStore/src/BookStore.DbMigrator/appsettings.json b/samples/BookStore/src/BookStore.DbMigrator/appsettings.json index 9ae176a..55408f3 100644 --- a/samples/BookStore/src/BookStore.DbMigrator/appsettings.json +++ b/samples/BookStore/src/BookStore.DbMigrator/appsettings.json @@ -1,6 +1,6 @@ { "ConnectionStrings": { - "Default": "Server=LOCALHOST\\SQLEXPRESS;Initial Catalog=AntBlazorDemo;Trusted_Connection=True;TrustServerCertificate=True" + "Default": "Server=(LocalDb)\\MSSQLLocalDB;Database=AntBlazorDemo;Trusted_Connection=True" }, "IdentityServer": { "Clients": { diff --git a/samples/BookStore/src/BookStore.Domain.Shared/BookStore.Domain.Shared.csproj b/samples/BookStore/src/BookStore.Domain.Shared/BookStore.Domain.Shared.csproj index 23d16fd..d0d6a5a 100644 --- a/samples/BookStore/src/BookStore.Domain.Shared/BookStore.Domain.Shared.csproj +++ b/samples/BookStore/src/BookStore.Domain.Shared/BookStore.Domain.Shared.csproj @@ -3,7 +3,7 @@ - net8.0 + net9.0 BookStore true diff --git a/samples/BookStore/src/BookStore.Domain/BookStore.Domain.csproj b/samples/BookStore/src/BookStore.Domain/BookStore.Domain.csproj index b9cf685..c485695 100644 --- a/samples/BookStore/src/BookStore.Domain/BookStore.Domain.csproj +++ b/samples/BookStore/src/BookStore.Domain/BookStore.Domain.csproj @@ -3,7 +3,7 @@ - net8.0 + net9.0 BookStore diff --git a/samples/BookStore/src/BookStore.EntityFrameworkCore/BookStore.EntityFrameworkCore.csproj b/samples/BookStore/src/BookStore.EntityFrameworkCore/BookStore.EntityFrameworkCore.csproj index 789e4b4..405db1b 100644 --- a/samples/BookStore/src/BookStore.EntityFrameworkCore/BookStore.EntityFrameworkCore.csproj +++ b/samples/BookStore/src/BookStore.EntityFrameworkCore/BookStore.EntityFrameworkCore.csproj @@ -3,7 +3,7 @@ - net8.0 + net9.0 BookStore diff --git a/samples/BookStore/src/BookStore.HttpApi.Client/BookStore.HttpApi.Client.csproj b/samples/BookStore/src/BookStore.HttpApi.Client/BookStore.HttpApi.Client.csproj index 788fa5c..3002b6d 100644 --- a/samples/BookStore/src/BookStore.HttpApi.Client/BookStore.HttpApi.Client.csproj +++ b/samples/BookStore/src/BookStore.HttpApi.Client/BookStore.HttpApi.Client.csproj @@ -3,7 +3,7 @@ - net8.0 + net9.0 BookStore diff --git a/samples/BookStore/src/BookStore.HttpApi.Host/BookStore.HttpApi.Host.csproj b/samples/BookStore/src/BookStore.HttpApi.Host/BookStore.HttpApi.Host.csproj index 0d523fc..96c6534 100644 --- a/samples/BookStore/src/BookStore.HttpApi.Host/BookStore.HttpApi.Host.csproj +++ b/samples/BookStore/src/BookStore.HttpApi.Host/BookStore.HttpApi.Host.csproj @@ -1,37 +1,39 @@  - + - - net8.0 - BookStore - true - BookStore-4681b4fd-151f-4221-84a4-929d86723e4c - + + net9.0 + BookStore + true + BookStore-4681b4fd-151f-4221-84a4-929d86723e4c + - - - - - - - - - - - + + - - - - - + + + + + + + + + + - - - - - - + + + + + + + + + + + + diff --git a/samples/BookStore/src/BookStore.HttpApi.Host/appsettings.json b/samples/BookStore/src/BookStore.HttpApi.Host/appsettings.json index 0bffa1b..e093d9a 100644 --- a/samples/BookStore/src/BookStore.HttpApi.Host/appsettings.json +++ b/samples/BookStore/src/BookStore.HttpApi.Host/appsettings.json @@ -5,7 +5,7 @@ "RedirectAllowedUrls": "http://localhost:4200,https://localhost:44307" }, "ConnectionStrings": { - "Default": "Server=LOCALHOST\\SQLEXPRESS;Initial Catalog=AntBlazorDemo;Trusted_Connection=True;TrustServerCertificate=True" + "Default": "Server=(LocalDb)\\MSSQLLocalDB;Database=AntBlazorDemo;Trusted_Connection=True" }, "AuthServer": { "Authority": "https://localhost:44306", diff --git a/samples/BookStore/src/BookStore.HttpApi.Host/package-lock.json b/samples/BookStore/src/BookStore.HttpApi.Host/package-lock.json index 4f29a67..329c37f 100644 --- a/samples/BookStore/src/BookStore.HttpApi.Host/package-lock.json +++ b/samples/BookStore/src/BookStore.HttpApi.Host/package-lock.json @@ -8,227 +8,227 @@ "name": "my-app", "version": "1.0.0", "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.0" } }, "node_modules/@abp/aspnetcore.mvc.ui": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-8.3.2.tgz", - "integrity": "sha512-og4n6CZFGSA9Oe5kxZfz5b0db6nBO8oEDdSkpwRO7t/g/WTNpz1gBps32tQbvKEO7FahZ36wvWlD8Or201MapA==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-9.0.1.tgz", + "integrity": "sha512-KVbWCpBV7S1ViHYQP/hn4gSMzSiA2e8/zC0HND1fjE+1zXJqJyEWto1eg2DaKSOs/rmHD8WtFVMU4hCLQTCuIA==", "dependencies": { "ansi-colors": "^4.1.3" } }, "node_modules/@abp/aspnetcore.mvc.ui.theme.basic": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-8.3.2.tgz", - "integrity": "sha512-3Wu4KlbIP8VKR3Xy0twNl+aNtl6JUyrz5apaB8nGdegW+QJH39BnTL5juBn4z1Z8qNANVXYVS5Kteh0mmbDiBQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-9.0.1.tgz", + "integrity": "sha512-JaxuDH8WTnZYX6C7CX7ZVHfhTDR/SxfwRvtJaGGijSX8QKd1DXpfi9lYEF4Y9k5b48YT/0slBqU5g0sLmBd3+g==", "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.shared": "~8.3.2" + "@abp/aspnetcore.mvc.ui.theme.shared": "~9.0.1" } }, "node_modules/@abp/aspnetcore.mvc.ui.theme.shared": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-8.3.2.tgz", - "integrity": "sha512-p8d+kx9xCUuZS9CpDk2gCnC6L/Sd4oqt07zEsO4IGRV3Dd9eyYZhvk4GhtQa4/lGauwXrKr+YUMZU+2fJm8zUg==", - "dependencies": { - "@abp/aspnetcore.mvc.ui": "~8.3.2", - "@abp/bootstrap": "~8.3.2", - "@abp/bootstrap-datepicker": "~8.3.2", - "@abp/bootstrap-daterangepicker": "~8.3.2", - "@abp/datatables.net-bs5": "~8.3.2", - "@abp/font-awesome": "~8.3.2", - "@abp/jquery-form": "~8.3.2", - "@abp/jquery-validation-unobtrusive": "~8.3.2", - "@abp/lodash": "~8.3.2", - "@abp/luxon": "~8.3.2", - "@abp/malihu-custom-scrollbar-plugin": "~8.3.2", - "@abp/moment": "~8.3.2", - "@abp/select2": "~8.3.2", - "@abp/sweetalert2": "~8.3.2", - "@abp/timeago": "~8.3.2", - "@abp/toastr": "~8.3.2" + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-9.0.1.tgz", + "integrity": "sha512-vrgRYKNctdZYhPCQ2I6Z10gUI1S5ynDj+DgnV7x7a7G/juuHaOSbkRXgwrmJsmYLfGA7KFCoJcbpER8mmXQeHQ==", + "dependencies": { + "@abp/aspnetcore.mvc.ui": "~9.0.1", + "@abp/bootstrap": "~9.0.1", + "@abp/bootstrap-datepicker": "~9.0.1", + "@abp/bootstrap-daterangepicker": "~9.0.1", + "@abp/datatables.net-bs5": "~9.0.1", + "@abp/font-awesome": "~9.0.1", + "@abp/jquery-form": "~9.0.1", + "@abp/jquery-validation-unobtrusive": "~9.0.1", + "@abp/lodash": "~9.0.1", + "@abp/luxon": "~9.0.1", + "@abp/malihu-custom-scrollbar-plugin": "~9.0.1", + "@abp/moment": "~9.0.1", + "@abp/select2": "~9.0.1", + "@abp/sweetalert2": "~9.0.1", + "@abp/timeago": "~9.0.1", + "@abp/toastr": "~9.0.1" } }, "node_modules/@abp/bootstrap": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/bootstrap/-/bootstrap-8.3.2.tgz", - "integrity": "sha512-qlCt5xpoIH7l4WeJtZvottpOq/GonYIaOpw4PXf4wmpma+iE8IMW5SKD12ajTI46DvAUuJdJzn/HuZi09btQkw==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/bootstrap/-/bootstrap-9.0.1.tgz", + "integrity": "sha512-uAfVNsUYSsRqgeO9JMnhJJlFoDmO3/lTvER/iYOqerF0X03KQnR8HZy2V3MD1D+fSh/4JuU6aAZFl6IQLinMKQ==", "dependencies": { - "@abp/core": "~8.3.2", + "@abp/core": "~9.0.1", "bootstrap": "^5.3.3" } }, "node_modules/@abp/bootstrap-datepicker": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/bootstrap-datepicker/-/bootstrap-datepicker-8.3.2.tgz", - "integrity": "sha512-Bdxc0SJ4/nC9BbBCz9hutgVtLBWQ2vkMLXFHqLrME7cQ0i8zg7XolEvY6IHt2/0V3omMCw/BA9oUc4JBsE76KQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/bootstrap-datepicker/-/bootstrap-datepicker-9.0.1.tgz", + "integrity": "sha512-LhgqBRr66x9gGTAyv1FuPAw8u8N77WQK2AfDkNgLueurM2+xMYQzH3pWWLhcN676/JXafxfALCfBoM8U7CfXLg==", "dependencies": { "bootstrap-datepicker": "^1.10.0" } }, "node_modules/@abp/bootstrap-daterangepicker": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-8.3.2.tgz", - "integrity": "sha512-+hSTVqvlYrdlQ5ajwVvjzQdAWj5U1eoRMHNKFLdddIHp27n5q6waz2kIhqvUe1TNHF98LksbFkylFcuj6v7aZg==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-9.0.1.tgz", + "integrity": "sha512-SlBVgiYa75uQyaGt5EVjduren7Po5UP26A1tXEQQr0hDia1+1TK0qxmJ2YxjeJpB7FwtcmJiofv5fngvJqhxIA==", "dependencies": { "bootstrap-daterangepicker": "^3.1.0" } }, "node_modules/@abp/core": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/core/-/core-8.3.2.tgz", - "integrity": "sha512-sNAJZr7bRBYPzM5zR1a3B+ZAHUUPO1cZey38Vf4UtRZ5cTNnVuM7RovMQKvWZkUcD7S1vWgtKS8m/KWq4/tMQg==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/core/-/core-9.0.1.tgz", + "integrity": "sha512-NWXDVCIJePbcKCrRvGxAlaA2MrOF2IZox37bQkW7/mTeOPpNoTa6lhowksNNcTpFq2YdD8bG0i0kfskkp3EZ2w==", "dependencies": { - "@abp/utils": "~8.3.2" + "@abp/utils": "~9.0.1" } }, "node_modules/@abp/datatables.net": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/datatables.net/-/datatables.net-8.3.2.tgz", - "integrity": "sha512-LI0AM5HYfMVdMZZ7VucyqFq/MxTt1Yh9klh2DB4B0lTeZTaXtjK4rJbV8B2A6MhSN04ZNqz5LF+xoKoUerNK5w==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/datatables.net/-/datatables.net-9.0.1.tgz", + "integrity": "sha512-JY53zVQPluRrBiKwtgk4gfSgD8VDs/VU8LWizhGCprXt3h9vXx0SQL4My6zvXVkv4hUjaq4+MYo84OI8EwFvsg==", "dependencies": { - "@abp/jquery": "~8.3.2", - "datatables.net": "^2.0.8" + "@abp/jquery": "~9.0.1", + "datatables.net": "^2.1.8" } }, "node_modules/@abp/datatables.net-bs5": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/datatables.net-bs5/-/datatables.net-bs5-8.3.2.tgz", - "integrity": "sha512-JrBtjsr4jWgG/8ZJYbyYWk65tCkjkU5UIrK1xdX8hFCHX+Rq4ioCXdswqRzNkLLIfXh6U4J96JurMLuJtinepA==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/datatables.net-bs5/-/datatables.net-bs5-9.0.1.tgz", + "integrity": "sha512-tAHdf4TBAS0bVRcvovDKS0OHFyeRSPYbiSIwDn8AIWzW9Weav31jhZ5jL3HEtBKVdb7zqUQ8/3dYPufjDuDdDA==", "dependencies": { - "@abp/datatables.net": "~8.3.2", - "datatables.net-bs5": "^2.0.8" + "@abp/datatables.net": "~9.0.1", + "datatables.net-bs5": "^2.1.8" } }, "node_modules/@abp/font-awesome": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/font-awesome/-/font-awesome-8.3.2.tgz", - "integrity": "sha512-nhoyY/svGY5iaoU3M8q7MCIB5OGrFSpsyY5eoRROady+BrIww9msZwMFcyE08+uNQXbqL94BcrMIDAnUA/zdYg==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/font-awesome/-/font-awesome-9.0.1.tgz", + "integrity": "sha512-7NnYBmk0plLVElUWR1zohul87vE9wKJItemWT5Kskf/IJirKOvXwSSu+7Jg1LmnVtIxcH6qgRpJMmzuAJgawnQ==", "dependencies": { - "@abp/core": "~8.3.2", - "@fortawesome/fontawesome-free": "^6.5.2" + "@abp/core": "~9.0.1", + "@fortawesome/fontawesome-free": "^6.6.0" } }, "node_modules/@abp/jquery": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/jquery/-/jquery-8.3.2.tgz", - "integrity": "sha512-tCNNQJCVQmAmz2z5orBQNFWPD9MfvM3hkFM/TZSDEZMetFBfz1tJKwEjS7eLEOLeSDju3YbByG1PtWGKN1rsUQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/jquery/-/jquery-9.0.1.tgz", + "integrity": "sha512-z8EcnOveItAszbTsM9GFFDQSlcIg/ym6+WZME9uldLoetdxkmI9ij0knVeGj5eqMjQaHvTWwrVLObiBbZwYFWw==", "dependencies": { - "@abp/core": "~8.3.2", + "@abp/core": "~9.0.1", "jquery": "~3.7.1" } }, "node_modules/@abp/jquery-form": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/jquery-form/-/jquery-form-8.3.2.tgz", - "integrity": "sha512-cO9VTL2gO7dvd2FpYWHYgUfmzfTQkm90LE5CfEFJipXrq92alPV5FFB/DrTFOX1UoR9SCTdq6k0auEPNPnp6Dw==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/jquery-form/-/jquery-form-9.0.1.tgz", + "integrity": "sha512-9co0+Cver+RUSOpfuukSWQhR+TCnO9Dly4RTVRIKFksGVfN8hA70NqRrVxaASNNFv42ynK88FQK+2bLPswz/iw==", "dependencies": { - "@abp/jquery": "~8.3.2", + "@abp/jquery": "~9.0.1", "jquery-form": "^4.3.0" } }, "node_modules/@abp/jquery-validation": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/jquery-validation/-/jquery-validation-8.3.2.tgz", - "integrity": "sha512-4l4D5cSJw75/dH81JagDcyV82q3+AEwyPcgNymAcxbe0N+8hvch2dWxW/WlxgdSt1Wj17MHRQyaOHJD299yB2Q==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/jquery-validation/-/jquery-validation-9.0.1.tgz", + "integrity": "sha512-uFSxiPMEkaPlcuyXIoKbeOIIRHo4IrgRbmnlHwI1uETrW60ENUdE2LJAVcYS77JROrjVtv8FPlaffWuva6sGeQ==", "dependencies": { - "@abp/jquery": "~8.3.2", - "jquery-validation": "^1.20.1" + "@abp/jquery": "~9.0.1", + "jquery-validation": "^1.21.0" } }, "node_modules/@abp/jquery-validation-unobtrusive": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-8.3.2.tgz", - "integrity": "sha512-KBKozSr7Q3+WZgvYDkpSmMHLikyl8tz9N1XXzkQTvHTI8LEIdP2wLCKqkjccP0IlivYFzcSamAHsuEK+mfg11Q==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-9.0.1.tgz", + "integrity": "sha512-Zpz48wIFjq7eIApG/sEVjkfaJWZhcyCnlCtDf5eU3vvh82nRetbiCEAVLpZ4LVjorlyp3VvVAxReUSeeWflu8A==", "dependencies": { - "@abp/jquery-validation": "~8.3.2", + "@abp/jquery-validation": "~9.0.1", "jquery-validation-unobtrusive": "^4.0.0" } }, "node_modules/@abp/lodash": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/lodash/-/lodash-8.3.2.tgz", - "integrity": "sha512-O5p6mchGaZHnge1tza3/uQfEqUvIuyWVhzMv+sRq//9FHnMyTThlHU0zriFsYb3wpBQfPf11uOtisv5F+wbuRw==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/lodash/-/lodash-9.0.1.tgz", + "integrity": "sha512-D+/iOyh/O+jV80bK5vWxyn++IVmeRbZq/UaXanA4RKpzigxJUsgOiSD9lUj85BkfKn2YyFmoR39xwaAqkWoyRA==", "dependencies": { - "@abp/core": "~8.3.2", + "@abp/core": "~9.0.1", "lodash": "^4.17.21" } }, "node_modules/@abp/luxon": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/luxon/-/luxon-8.3.2.tgz", - "integrity": "sha512-GxjKfYAUu3YPW8oJq/APNvghG8a+PR2vgX13k4FTRi7o0ndLjqu1m4+oqfA9r4tpRgj4WLmoaVjGGJYrtaEBGQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/luxon/-/luxon-9.0.1.tgz", + "integrity": "sha512-1ZHXP5SGz05tQ1tzYmPcRiZwmkCKGX0KWFoV0zF3ATRaevzku9nXvSy7K6GIFkkgTb9f9XNx4/OBBF/GXkuRqw==", "dependencies": { - "@abp/core": "~8.3.2", - "luxon": "^3.4.4" + "@abp/core": "~9.0.1", + "luxon": "^3.5.0" } }, "node_modules/@abp/malihu-custom-scrollbar-plugin": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-8.3.2.tgz", - "integrity": "sha512-cyVeeKppYYYR93eyy20QFuwmhCf0k5B/+ZlslOqbm5E4NIoPN8oIVcg02wyq541jSmDINj1pOl71IZcMxt01hA==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-9.0.1.tgz", + "integrity": "sha512-GkKPLg9Z9UTTSSpW2hYZYZ9IgCvDSOYJmyRSl/h4fG8cWMgGCPVpv8MPPu0+WtIfwW/mT4SPX9X+sjUlRL5XRQ==", "dependencies": { - "@abp/core": "~8.3.2", + "@abp/core": "~9.0.1", "malihu-custom-scrollbar-plugin": "^3.1.5" } }, "node_modules/@abp/moment": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/moment/-/moment-8.3.2.tgz", - "integrity": "sha512-2aFlq+sdXpcBS/nOEo1CQMlVl5/Qv0/wYKFez5KylyKic4CKGrmzFWvQWeqsR73Ns+Ayk8dX0Dabzseia1hdIQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/moment/-/moment-9.0.1.tgz", + "integrity": "sha512-bTuCc7pi/DCtgz7t96UBU0wn9UGt4b50JhDCVeTKquh+gP1sgWoI5hyvEBkmgE4dcffO0yzZU2opHYTKYGl/OQ==", "dependencies": { "moment": "^2.30.1" } }, "node_modules/@abp/select2": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/select2/-/select2-8.3.2.tgz", - "integrity": "sha512-q2pAsmF+J2Zs2+DqDgA63DBfkKUSgqqvSYdeEGVoGQqmr70o6BAvIvyaNSW7FNq/VzQca+zSQAoUI6F3opHiuQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/select2/-/select2-9.0.1.tgz", + "integrity": "sha512-epyYJH2gAOU2UvGn5FD6372hbW3fL7uZIgGpvfgEfa+l6HPdlV9B1OweU2xkONNCoylShAcP/y8qf+bUh8WDEA==", "dependencies": { - "@abp/core": "~8.3.2", + "@abp/core": "~9.0.1", "select2": "^4.0.13" } }, "node_modules/@abp/sweetalert2": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/sweetalert2/-/sweetalert2-8.3.2.tgz", - "integrity": "sha512-rQEU27H9Yj8IMQY5IzwgE6N4jvlE4lnCQno87NDDa6lYp1QO8Bp6VJi77TSj3/eXb/8mJSyyoO1QqLoyrql+tg==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/sweetalert2/-/sweetalert2-9.0.1.tgz", + "integrity": "sha512-0RXR/lzy3qMJLisGUz4qrcA9Clu/Tt1ABGzB64ynG1t/l5XessQsIB5Hkt6MbSyOEsprRsq+ZtKH35CwTRPdAw==", "dependencies": { - "@abp/core": "~8.3.2", - "sweetalert2": "^11.3.6" + "@abp/core": "~9.0.1", + "sweetalert2": "^11.14.1" } }, "node_modules/@abp/timeago": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/timeago/-/timeago-8.3.2.tgz", - "integrity": "sha512-JZ9lo6AgDjpxs5AhhS+UoNIDpx1yN7bHxYdnEXg7wztVbV+V9U96Upp3rYhRHSjiCmx0xIMLfujElwjgBAhPDQ==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/timeago/-/timeago-9.0.1.tgz", + "integrity": "sha512-dNfUQwilrY+JHxL5lwJ++ixYDGAs5lF1EDxKMQMIXD/ak5L8rkdLns8Otta7FhgDDny9UJ7XWQjYsG8ZxxybRQ==", "dependencies": { - "@abp/jquery": "~8.3.2", + "@abp/jquery": "~9.0.1", "timeago": "^1.6.7" } }, "node_modules/@abp/toastr": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/toastr/-/toastr-8.3.2.tgz", - "integrity": "sha512-aFnSMojAPSIYkHV7tE3Uh00G+r07c6spW+tRqxEiooF11t6PXZyWayNGsol+8L43tXk9dQYj8GwnGau/yTxzRA==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/toastr/-/toastr-9.0.1.tgz", + "integrity": "sha512-10KuHnSJOxkvzqs6Aim6GJp8xBuT+TsZqBE1KaXQnERPawmOo4+ME28kA/7lq8fvgFUNO3K41T2uuA1GPHVQcg==", "dependencies": { - "@abp/jquery": "~8.3.2", + "@abp/jquery": "~9.0.1", "toastr": "^2.1.4" } }, "node_modules/@abp/utils": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/@abp/utils/-/utils-8.3.2.tgz", - "integrity": "sha512-0i4yqwxSGnKKZJZwXNBvCPoT7nZ0/vnyNVBMeE12x3Y7MV3bZSza2CGTPUhVVvoWt2JfGiDpAfKzPq2eUKfisg==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@abp/utils/-/utils-9.0.1.tgz", + "integrity": "sha512-7eOKT0ciKNdtuASck1kifyc4dC6CeebgxV+rx/EAi3YwPMDkqie6YwLGUqKdGW2N/MZ15JuDR6gkuZxKHEb0NQ==", "dependencies": { "just-compare": "^2.3.0" } }, "node_modules/@fortawesome/fontawesome-free": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.6.0.tgz", - "integrity": "sha512-60G28ke/sXdtS9KZCpZSHHkCbdsOGEhIUGlwq6yhY74UpTiToIh8np7A8yphhM4BWsvNFtIvLpi4co+h9Mr9Ow==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.7.1.tgz", + "integrity": "sha512-ALIk/MOh5gYe1TG/ieS5mVUsk7VUIJTJKPMK9rFFqOgfp0Q3d5QiBXbcOMwUvs37fyZVCz46YjOE6IFeOAXCHA==", "engines": { "node": ">=6" } @@ -359,7 +359,7 @@ "node_modules/malihu-custom-scrollbar-plugin": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-3.1.5.tgz", - "integrity": "sha1-MQzsxeWUFaHCnp37XStuAdZqKe8= sha512-lwW3LgI+CNDMPnP4ED2la6oYxWMkCXlnhex+s2wuOLhFDFGnGmQuTQVdRK9bvDLpxs10sGlfErVufJy9ztfgJQ==", + "integrity": "sha512-lwW3LgI+CNDMPnP4ED2la6oYxWMkCXlnhex+s2wuOLhFDFGnGmQuTQVdRK9bvDLpxs10sGlfErVufJy9ztfgJQ==", "dependencies": { "jquery-mousewheel": ">=3.0.6" } @@ -378,12 +378,12 @@ "integrity": "sha512-1JeB87s6oN/TDxQQYCvS5EFoQyvV6eYMZZ0AeA4tdFDYWN3BAGZ8npr17UBFddU0lgAt3H0yjX3X6/ekOj1yjw==" }, "node_modules/sweetalert2": { - "version": "11.4.14", - "resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.4.14.tgz", - "integrity": "sha512-Dh4XqfUSpCwhRsGM5zZFbtBRHujjcaf98DjVKXEs0ER4E/Zao0OtDHZRRQqvT9xxY7RA8WsiZ6FHJbyW+BBbDw==", + "version": "11.14.5", + "resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.14.5.tgz", + "integrity": "sha512-8MWk5uc/r6bWhiJWkUXyEuApfXAhSCZT8FFX7pZXL7YwaPxq+9Ynhi2dUzWkOFn9jvLjKj22CXuccZ+IHcnjvQ==", "funding": { "type": "individual", - "url": "https://sweetalert2.github.io/#donations" + "url": "https://github.com/sponsors/limonte" } }, "node_modules/timeago": { diff --git a/samples/BookStore/src/BookStore.HttpApi.Host/package.json b/samples/BookStore/src/BookStore.HttpApi.Host/package.json index d0de1d5..7219791 100644 --- a/samples/BookStore/src/BookStore.HttpApi.Host/package.json +++ b/samples/BookStore/src/BookStore.HttpApi.Host/package.json @@ -3,6 +3,6 @@ "name": "my-app", "private": true, "dependencies": { - "@abp/aspnetcore.mvc.ui.theme.basic": "~8.3.0" + "@abp/aspnetcore.mvc.ui.theme.basic": "~9.0.0" } } \ No newline at end of file diff --git a/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/css/all.css b/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/css/all.css index c093364..50d3cab 100644 --- a/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/css/all.css +++ b/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/css/all.css @@ -1,5 +1,5 @@ /*! - * Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com + * Font Awesome Free 6.7.1 by @fontawesome - https://fontawesome.com * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) * Copyright 2024 Fonticons, Inc. */ @@ -7,14 +7,12 @@ font-family: var(--fa-style-family, "Font Awesome 6 Free"); font-weight: var(--fa-style, 900); } -.fa-solid, -.fa-regular, -.fa-brands, .fas, .far, .fab, -.fa-sharp-solid, -.fa-classic, +.fa-solid, +.fa-regular, +.fa-brands, .fa { -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; @@ -24,15 +22,24 @@ line-height: 1; text-rendering: auto; } -.fas, +.fas::before, +.far::before, +.fab::before, +.fa-solid::before, +.fa-regular::before, +.fa-brands::before, +.fa::before { + content: var(--fa); } + .fa-classic, +.fas, .fa-solid, .far, .fa-regular { font-family: 'Font Awesome 6 Free'; } -.fab, -.fa-brands { +.fa-brands, +.fab { font-family: 'Font Awesome 6 Brands'; } .fa-1x { @@ -325,5870 +332,7853 @@ /* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen readers do not read off random characters that represent icons */ -.fa-0::before { - content: "\30"; } +.fa-0 { + --fa: "\30"; + --fa--fa: "\30\30"; } + +.fa-1 { + --fa: "\31"; + --fa--fa: "\31\31"; } + +.fa-2 { + --fa: "\32"; + --fa--fa: "\32\32"; } + +.fa-3 { + --fa: "\33"; + --fa--fa: "\33\33"; } + +.fa-4 { + --fa: "\34"; + --fa--fa: "\34\34"; } + +.fa-5 { + --fa: "\35"; + --fa--fa: "\35\35"; } -.fa-1::before { - content: "\31"; } +.fa-6 { + --fa: "\36"; + --fa--fa: "\36\36"; } -.fa-2::before { - content: "\32"; } +.fa-7 { + --fa: "\37"; + --fa--fa: "\37\37"; } -.fa-3::before { - content: "\33"; } +.fa-8 { + --fa: "\38"; + --fa--fa: "\38\38"; } -.fa-4::before { - content: "\34"; } +.fa-9 { + --fa: "\39"; + --fa--fa: "\39\39"; } -.fa-5::before { - content: "\35"; } +.fa-fill-drip { + --fa: "\f576"; + --fa--fa: "\f576\f576"; } -.fa-6::before { - content: "\36"; } +.fa-arrows-to-circle { + --fa: "\e4bd"; + --fa--fa: "\e4bd\e4bd"; } -.fa-7::before { - content: "\37"; } +.fa-circle-chevron-right { + --fa: "\f138"; + --fa--fa: "\f138\f138"; } -.fa-8::before { - content: "\38"; } +.fa-chevron-circle-right { + --fa: "\f138"; + --fa--fa: "\f138\f138"; } -.fa-9::before { - content: "\39"; } +.fa-at { + --fa: "\40"; + --fa--fa: "\40\40"; } -.fa-fill-drip::before { - content: "\f576"; } +.fa-trash-can { + --fa: "\f2ed"; + --fa--fa: "\f2ed\f2ed"; } -.fa-arrows-to-circle::before { - content: "\e4bd"; } +.fa-trash-alt { + --fa: "\f2ed"; + --fa--fa: "\f2ed\f2ed"; } -.fa-circle-chevron-right::before { - content: "\f138"; } +.fa-text-height { + --fa: "\f034"; + --fa--fa: "\f034\f034"; } -.fa-chevron-circle-right::before { - content: "\f138"; } +.fa-user-xmark { + --fa: "\f235"; + --fa--fa: "\f235\f235"; } -.fa-at::before { - content: "\40"; } +.fa-user-times { + --fa: "\f235"; + --fa--fa: "\f235\f235"; } -.fa-trash-can::before { - content: "\f2ed"; } +.fa-stethoscope { + --fa: "\f0f1"; + --fa--fa: "\f0f1\f0f1"; } -.fa-trash-alt::before { - content: "\f2ed"; } +.fa-message { + --fa: "\f27a"; + --fa--fa: "\f27a\f27a"; } -.fa-text-height::before { - content: "\f034"; } +.fa-comment-alt { + --fa: "\f27a"; + --fa--fa: "\f27a\f27a"; } -.fa-user-xmark::before { - content: "\f235"; } +.fa-info { + --fa: "\f129"; + --fa--fa: "\f129\f129"; } -.fa-user-times::before { - content: "\f235"; } +.fa-down-left-and-up-right-to-center { + --fa: "\f422"; + --fa--fa: "\f422\f422"; } -.fa-stethoscope::before { - content: "\f0f1"; } +.fa-compress-alt { + --fa: "\f422"; + --fa--fa: "\f422\f422"; } -.fa-message::before { - content: "\f27a"; } +.fa-explosion { + --fa: "\e4e9"; + --fa--fa: "\e4e9\e4e9"; } -.fa-comment-alt::before { - content: "\f27a"; } +.fa-file-lines { + --fa: "\f15c"; + --fa--fa: "\f15c\f15c"; } -.fa-info::before { - content: "\f129"; } +.fa-file-alt { + --fa: "\f15c"; + --fa--fa: "\f15c\f15c"; } -.fa-down-left-and-up-right-to-center::before { - content: "\f422"; } +.fa-file-text { + --fa: "\f15c"; + --fa--fa: "\f15c\f15c"; } -.fa-compress-alt::before { - content: "\f422"; } +.fa-wave-square { + --fa: "\f83e"; + --fa--fa: "\f83e\f83e"; } -.fa-explosion::before { - content: "\e4e9"; } +.fa-ring { + --fa: "\f70b"; + --fa--fa: "\f70b\f70b"; } -.fa-file-lines::before { - content: "\f15c"; } +.fa-building-un { + --fa: "\e4d9"; + --fa--fa: "\e4d9\e4d9"; } -.fa-file-alt::before { - content: "\f15c"; } +.fa-dice-three { + --fa: "\f527"; + --fa--fa: "\f527\f527"; } -.fa-file-text::before { - content: "\f15c"; } +.fa-calendar-days { + --fa: "\f073"; + --fa--fa: "\f073\f073"; } -.fa-wave-square::before { - content: "\f83e"; } +.fa-calendar-alt { + --fa: "\f073"; + --fa--fa: "\f073\f073"; } -.fa-ring::before { - content: "\f70b"; } +.fa-anchor-circle-check { + --fa: "\e4aa"; + --fa--fa: "\e4aa\e4aa"; } -.fa-building-un::before { - content: "\e4d9"; } +.fa-building-circle-arrow-right { + --fa: "\e4d1"; + --fa--fa: "\e4d1\e4d1"; } -.fa-dice-three::before { - content: "\f527"; } +.fa-volleyball { + --fa: "\f45f"; + --fa--fa: "\f45f\f45f"; } -.fa-calendar-days::before { - content: "\f073"; } +.fa-volleyball-ball { + --fa: "\f45f"; + --fa--fa: "\f45f\f45f"; } -.fa-calendar-alt::before { - content: "\f073"; } +.fa-arrows-up-to-line { + --fa: "\e4c2"; + --fa--fa: "\e4c2\e4c2"; } -.fa-anchor-circle-check::before { - content: "\e4aa"; } +.fa-sort-down { + --fa: "\f0dd"; + --fa--fa: "\f0dd\f0dd"; } -.fa-building-circle-arrow-right::before { - content: "\e4d1"; } +.fa-sort-desc { + --fa: "\f0dd"; + --fa--fa: "\f0dd\f0dd"; } -.fa-volleyball::before { - content: "\f45f"; } +.fa-circle-minus { + --fa: "\f056"; + --fa--fa: "\f056\f056"; } -.fa-volleyball-ball::before { - content: "\f45f"; } +.fa-minus-circle { + --fa: "\f056"; + --fa--fa: "\f056\f056"; } -.fa-arrows-up-to-line::before { - content: "\e4c2"; } +.fa-door-open { + --fa: "\f52b"; + --fa--fa: "\f52b\f52b"; } -.fa-sort-down::before { - content: "\f0dd"; } +.fa-right-from-bracket { + --fa: "\f2f5"; + --fa--fa: "\f2f5\f2f5"; } -.fa-sort-desc::before { - content: "\f0dd"; } +.fa-sign-out-alt { + --fa: "\f2f5"; + --fa--fa: "\f2f5\f2f5"; } -.fa-circle-minus::before { - content: "\f056"; } +.fa-atom { + --fa: "\f5d2"; + --fa--fa: "\f5d2\f5d2"; } -.fa-minus-circle::before { - content: "\f056"; } +.fa-soap { + --fa: "\e06e"; + --fa--fa: "\e06e\e06e"; } -.fa-door-open::before { - content: "\f52b"; } +.fa-icons { + --fa: "\f86d"; + --fa--fa: "\f86d\f86d"; } -.fa-right-from-bracket::before { - content: "\f2f5"; } +.fa-heart-music-camera-bolt { + --fa: "\f86d"; + --fa--fa: "\f86d\f86d"; } -.fa-sign-out-alt::before { - content: "\f2f5"; } +.fa-microphone-lines-slash { + --fa: "\f539"; + --fa--fa: "\f539\f539"; } -.fa-atom::before { - content: "\f5d2"; } +.fa-microphone-alt-slash { + --fa: "\f539"; + --fa--fa: "\f539\f539"; } -.fa-soap::before { - content: "\e06e"; } +.fa-bridge-circle-check { + --fa: "\e4c9"; + --fa--fa: "\e4c9\e4c9"; } -.fa-icons::before { - content: "\f86d"; } +.fa-pump-medical { + --fa: "\e06a"; + --fa--fa: "\e06a\e06a"; } -.fa-heart-music-camera-bolt::before { - content: "\f86d"; } +.fa-fingerprint { + --fa: "\f577"; + --fa--fa: "\f577\f577"; } -.fa-microphone-lines-slash::before { - content: "\f539"; } +.fa-hand-point-right { + --fa: "\f0a4"; + --fa--fa: "\f0a4\f0a4"; } -.fa-microphone-alt-slash::before { - content: "\f539"; } +.fa-magnifying-glass-location { + --fa: "\f689"; + --fa--fa: "\f689\f689"; } -.fa-bridge-circle-check::before { - content: "\e4c9"; } +.fa-search-location { + --fa: "\f689"; + --fa--fa: "\f689\f689"; } -.fa-pump-medical::before { - content: "\e06a"; } +.fa-forward-step { + --fa: "\f051"; + --fa--fa: "\f051\f051"; } -.fa-fingerprint::before { - content: "\f577"; } +.fa-step-forward { + --fa: "\f051"; + --fa--fa: "\f051\f051"; } -.fa-hand-point-right::before { - content: "\f0a4"; } +.fa-face-smile-beam { + --fa: "\f5b8"; + --fa--fa: "\f5b8\f5b8"; } -.fa-magnifying-glass-location::before { - content: "\f689"; } +.fa-smile-beam { + --fa: "\f5b8"; + --fa--fa: "\f5b8\f5b8"; } -.fa-search-location::before { - content: "\f689"; } +.fa-flag-checkered { + --fa: "\f11e"; + --fa--fa: "\f11e\f11e"; } -.fa-forward-step::before { - content: "\f051"; } +.fa-football { + --fa: "\f44e"; + --fa--fa: "\f44e\f44e"; } -.fa-step-forward::before { - content: "\f051"; } +.fa-football-ball { + --fa: "\f44e"; + --fa--fa: "\f44e\f44e"; } -.fa-face-smile-beam::before { - content: "\f5b8"; } +.fa-school-circle-exclamation { + --fa: "\e56c"; + --fa--fa: "\e56c\e56c"; } -.fa-smile-beam::before { - content: "\f5b8"; } +.fa-crop { + --fa: "\f125"; + --fa--fa: "\f125\f125"; } -.fa-flag-checkered::before { - content: "\f11e"; } +.fa-angles-down { + --fa: "\f103"; + --fa--fa: "\f103\f103"; } -.fa-football::before { - content: "\f44e"; } +.fa-angle-double-down { + --fa: "\f103"; + --fa--fa: "\f103\f103"; } -.fa-football-ball::before { - content: "\f44e"; } +.fa-users-rectangle { + --fa: "\e594"; + --fa--fa: "\e594\e594"; } -.fa-school-circle-exclamation::before { - content: "\e56c"; } +.fa-people-roof { + --fa: "\e537"; + --fa--fa: "\e537\e537"; } -.fa-crop::before { - content: "\f125"; } +.fa-people-line { + --fa: "\e534"; + --fa--fa: "\e534\e534"; } -.fa-angles-down::before { - content: "\f103"; } +.fa-beer-mug-empty { + --fa: "\f0fc"; + --fa--fa: "\f0fc\f0fc"; } -.fa-angle-double-down::before { - content: "\f103"; } +.fa-beer { + --fa: "\f0fc"; + --fa--fa: "\f0fc\f0fc"; } -.fa-users-rectangle::before { - content: "\e594"; } +.fa-diagram-predecessor { + --fa: "\e477"; + --fa--fa: "\e477\e477"; } -.fa-people-roof::before { - content: "\e537"; } +.fa-arrow-up-long { + --fa: "\f176"; + --fa--fa: "\f176\f176"; } -.fa-people-line::before { - content: "\e534"; } +.fa-long-arrow-up { + --fa: "\f176"; + --fa--fa: "\f176\f176"; } -.fa-beer-mug-empty::before { - content: "\f0fc"; } +.fa-fire-flame-simple { + --fa: "\f46a"; + --fa--fa: "\f46a\f46a"; } -.fa-beer::before { - content: "\f0fc"; } +.fa-burn { + --fa: "\f46a"; + --fa--fa: "\f46a\f46a"; } -.fa-diagram-predecessor::before { - content: "\e477"; } +.fa-person { + --fa: "\f183"; + --fa--fa: "\f183\f183"; } -.fa-arrow-up-long::before { - content: "\f176"; } +.fa-male { + --fa: "\f183"; + --fa--fa: "\f183\f183"; } -.fa-long-arrow-up::before { - content: "\f176"; } +.fa-laptop { + --fa: "\f109"; + --fa--fa: "\f109\f109"; } -.fa-fire-flame-simple::before { - content: "\f46a"; } +.fa-file-csv { + --fa: "\f6dd"; + --fa--fa: "\f6dd\f6dd"; } -.fa-burn::before { - content: "\f46a"; } +.fa-menorah { + --fa: "\f676"; + --fa--fa: "\f676\f676"; } -.fa-person::before { - content: "\f183"; } +.fa-truck-plane { + --fa: "\e58f"; + --fa--fa: "\e58f\e58f"; } -.fa-male::before { - content: "\f183"; } +.fa-record-vinyl { + --fa: "\f8d9"; + --fa--fa: "\f8d9\f8d9"; } -.fa-laptop::before { - content: "\f109"; } +.fa-face-grin-stars { + --fa: "\f587"; + --fa--fa: "\f587\f587"; } -.fa-file-csv::before { - content: "\f6dd"; } +.fa-grin-stars { + --fa: "\f587"; + --fa--fa: "\f587\f587"; } -.fa-menorah::before { - content: "\f676"; } +.fa-bong { + --fa: "\f55c"; + --fa--fa: "\f55c\f55c"; } -.fa-truck-plane::before { - content: "\e58f"; } +.fa-spaghetti-monster-flying { + --fa: "\f67b"; + --fa--fa: "\f67b\f67b"; } -.fa-record-vinyl::before { - content: "\f8d9"; } +.fa-pastafarianism { + --fa: "\f67b"; + --fa--fa: "\f67b\f67b"; } -.fa-face-grin-stars::before { - content: "\f587"; } +.fa-arrow-down-up-across-line { + --fa: "\e4af"; + --fa--fa: "\e4af\e4af"; } -.fa-grin-stars::before { - content: "\f587"; } +.fa-spoon { + --fa: "\f2e5"; + --fa--fa: "\f2e5\f2e5"; } -.fa-bong::before { - content: "\f55c"; } +.fa-utensil-spoon { + --fa: "\f2e5"; + --fa--fa: "\f2e5\f2e5"; } -.fa-spaghetti-monster-flying::before { - content: "\f67b"; } +.fa-jar-wheat { + --fa: "\e517"; + --fa--fa: "\e517\e517"; } -.fa-pastafarianism::before { - content: "\f67b"; } +.fa-envelopes-bulk { + --fa: "\f674"; + --fa--fa: "\f674\f674"; } -.fa-arrow-down-up-across-line::before { - content: "\e4af"; } +.fa-mail-bulk { + --fa: "\f674"; + --fa--fa: "\f674\f674"; } -.fa-spoon::before { - content: "\f2e5"; } +.fa-file-circle-exclamation { + --fa: "\e4eb"; + --fa--fa: "\e4eb\e4eb"; } -.fa-utensil-spoon::before { - content: "\f2e5"; } +.fa-circle-h { + --fa: "\f47e"; + --fa--fa: "\f47e\f47e"; } -.fa-jar-wheat::before { - content: "\e517"; } +.fa-hospital-symbol { + --fa: "\f47e"; + --fa--fa: "\f47e\f47e"; } -.fa-envelopes-bulk::before { - content: "\f674"; } +.fa-pager { + --fa: "\f815"; + --fa--fa: "\f815\f815"; } -.fa-mail-bulk::before { - content: "\f674"; } +.fa-address-book { + --fa: "\f2b9"; + --fa--fa: "\f2b9\f2b9"; } -.fa-file-circle-exclamation::before { - content: "\e4eb"; } +.fa-contact-book { + --fa: "\f2b9"; + --fa--fa: "\f2b9\f2b9"; } -.fa-circle-h::before { - content: "\f47e"; } +.fa-strikethrough { + --fa: "\f0cc"; + --fa--fa: "\f0cc\f0cc"; } -.fa-hospital-symbol::before { - content: "\f47e"; } +.fa-k { + --fa: "\4b"; + --fa--fa: "\4b\4b"; } -.fa-pager::before { - content: "\f815"; } +.fa-landmark-flag { + --fa: "\e51c"; + --fa--fa: "\e51c\e51c"; } -.fa-address-book::before { - content: "\f2b9"; } +.fa-pencil { + --fa: "\f303"; + --fa--fa: "\f303\f303"; } -.fa-contact-book::before { - content: "\f2b9"; } +.fa-pencil-alt { + --fa: "\f303"; + --fa--fa: "\f303\f303"; } -.fa-strikethrough::before { - content: "\f0cc"; } +.fa-backward { + --fa: "\f04a"; + --fa--fa: "\f04a\f04a"; } -.fa-k::before { - content: "\4b"; } +.fa-caret-right { + --fa: "\f0da"; + --fa--fa: "\f0da\f0da"; } -.fa-landmark-flag::before { - content: "\e51c"; } +.fa-comments { + --fa: "\f086"; + --fa--fa: "\f086\f086"; } -.fa-pencil::before { - content: "\f303"; } +.fa-paste { + --fa: "\f0ea"; + --fa--fa: "\f0ea\f0ea"; } -.fa-pencil-alt::before { - content: "\f303"; } +.fa-file-clipboard { + --fa: "\f0ea"; + --fa--fa: "\f0ea\f0ea"; } -.fa-backward::before { - content: "\f04a"; } +.fa-code-pull-request { + --fa: "\e13c"; + --fa--fa: "\e13c\e13c"; } -.fa-caret-right::before { - content: "\f0da"; } +.fa-clipboard-list { + --fa: "\f46d"; + --fa--fa: "\f46d\f46d"; } -.fa-comments::before { - content: "\f086"; } +.fa-truck-ramp-box { + --fa: "\f4de"; + --fa--fa: "\f4de\f4de"; } -.fa-paste::before { - content: "\f0ea"; } +.fa-truck-loading { + --fa: "\f4de"; + --fa--fa: "\f4de\f4de"; } -.fa-file-clipboard::before { - content: "\f0ea"; } +.fa-user-check { + --fa: "\f4fc"; + --fa--fa: "\f4fc\f4fc"; } -.fa-code-pull-request::before { - content: "\e13c"; } +.fa-vial-virus { + --fa: "\e597"; + --fa--fa: "\e597\e597"; } -.fa-clipboard-list::before { - content: "\f46d"; } +.fa-sheet-plastic { + --fa: "\e571"; + --fa--fa: "\e571\e571"; } -.fa-truck-ramp-box::before { - content: "\f4de"; } +.fa-blog { + --fa: "\f781"; + --fa--fa: "\f781\f781"; } -.fa-truck-loading::before { - content: "\f4de"; } +.fa-user-ninja { + --fa: "\f504"; + --fa--fa: "\f504\f504"; } -.fa-user-check::before { - content: "\f4fc"; } +.fa-person-arrow-up-from-line { + --fa: "\e539"; + --fa--fa: "\e539\e539"; } -.fa-vial-virus::before { - content: "\e597"; } +.fa-scroll-torah { + --fa: "\f6a0"; + --fa--fa: "\f6a0\f6a0"; } -.fa-sheet-plastic::before { - content: "\e571"; } +.fa-torah { + --fa: "\f6a0"; + --fa--fa: "\f6a0\f6a0"; } -.fa-blog::before { - content: "\f781"; } +.fa-broom-ball { + --fa: "\f458"; + --fa--fa: "\f458\f458"; } -.fa-user-ninja::before { - content: "\f504"; } +.fa-quidditch { + --fa: "\f458"; + --fa--fa: "\f458\f458"; } -.fa-person-arrow-up-from-line::before { - content: "\e539"; } +.fa-quidditch-broom-ball { + --fa: "\f458"; + --fa--fa: "\f458\f458"; } -.fa-scroll-torah::before { - content: "\f6a0"; } +.fa-toggle-off { + --fa: "\f204"; + --fa--fa: "\f204\f204"; } -.fa-torah::before { - content: "\f6a0"; } +.fa-box-archive { + --fa: "\f187"; + --fa--fa: "\f187\f187"; } -.fa-broom-ball::before { - content: "\f458"; } +.fa-archive { + --fa: "\f187"; + --fa--fa: "\f187\f187"; } -.fa-quidditch::before { - content: "\f458"; } +.fa-person-drowning { + --fa: "\e545"; + --fa--fa: "\e545\e545"; } -.fa-quidditch-broom-ball::before { - content: "\f458"; } +.fa-arrow-down-9-1 { + --fa: "\f886"; + --fa--fa: "\f886\f886"; } -.fa-toggle-off::before { - content: "\f204"; } +.fa-sort-numeric-desc { + --fa: "\f886"; + --fa--fa: "\f886\f886"; } -.fa-box-archive::before { - content: "\f187"; } +.fa-sort-numeric-down-alt { + --fa: "\f886"; + --fa--fa: "\f886\f886"; } -.fa-archive::before { - content: "\f187"; } +.fa-face-grin-tongue-squint { + --fa: "\f58a"; + --fa--fa: "\f58a\f58a"; } -.fa-person-drowning::before { - content: "\e545"; } +.fa-grin-tongue-squint { + --fa: "\f58a"; + --fa--fa: "\f58a\f58a"; } -.fa-arrow-down-9-1::before { - content: "\f886"; } +.fa-spray-can { + --fa: "\f5bd"; + --fa--fa: "\f5bd\f5bd"; } -.fa-sort-numeric-desc::before { - content: "\f886"; } +.fa-truck-monster { + --fa: "\f63b"; + --fa--fa: "\f63b\f63b"; } -.fa-sort-numeric-down-alt::before { - content: "\f886"; } +.fa-w { + --fa: "\57"; + --fa--fa: "\57\57"; } -.fa-face-grin-tongue-squint::before { - content: "\f58a"; } +.fa-earth-africa { + --fa: "\f57c"; + --fa--fa: "\f57c\f57c"; } -.fa-grin-tongue-squint::before { - content: "\f58a"; } +.fa-globe-africa { + --fa: "\f57c"; + --fa--fa: "\f57c\f57c"; } -.fa-spray-can::before { - content: "\f5bd"; } +.fa-rainbow { + --fa: "\f75b"; + --fa--fa: "\f75b\f75b"; } -.fa-truck-monster::before { - content: "\f63b"; } +.fa-circle-notch { + --fa: "\f1ce"; + --fa--fa: "\f1ce\f1ce"; } -.fa-w::before { - content: "\57"; } +.fa-tablet-screen-button { + --fa: "\f3fa"; + --fa--fa: "\f3fa\f3fa"; } -.fa-earth-africa::before { - content: "\f57c"; } +.fa-tablet-alt { + --fa: "\f3fa"; + --fa--fa: "\f3fa\f3fa"; } -.fa-globe-africa::before { - content: "\f57c"; } +.fa-paw { + --fa: "\f1b0"; + --fa--fa: "\f1b0\f1b0"; } -.fa-rainbow::before { - content: "\f75b"; } +.fa-cloud { + --fa: "\f0c2"; + --fa--fa: "\f0c2\f0c2"; } -.fa-circle-notch::before { - content: "\f1ce"; } +.fa-trowel-bricks { + --fa: "\e58a"; + --fa--fa: "\e58a\e58a"; } -.fa-tablet-screen-button::before { - content: "\f3fa"; } +.fa-face-flushed { + --fa: "\f579"; + --fa--fa: "\f579\f579"; } -.fa-tablet-alt::before { - content: "\f3fa"; } +.fa-flushed { + --fa: "\f579"; + --fa--fa: "\f579\f579"; } -.fa-paw::before { - content: "\f1b0"; } +.fa-hospital-user { + --fa: "\f80d"; + --fa--fa: "\f80d\f80d"; } -.fa-cloud::before { - content: "\f0c2"; } +.fa-tent-arrow-left-right { + --fa: "\e57f"; + --fa--fa: "\e57f\e57f"; } -.fa-trowel-bricks::before { - content: "\e58a"; } +.fa-gavel { + --fa: "\f0e3"; + --fa--fa: "\f0e3\f0e3"; } -.fa-face-flushed::before { - content: "\f579"; } +.fa-legal { + --fa: "\f0e3"; + --fa--fa: "\f0e3\f0e3"; } -.fa-flushed::before { - content: "\f579"; } +.fa-binoculars { + --fa: "\f1e5"; + --fa--fa: "\f1e5\f1e5"; } -.fa-hospital-user::before { - content: "\f80d"; } +.fa-microphone-slash { + --fa: "\f131"; + --fa--fa: "\f131\f131"; } -.fa-tent-arrow-left-right::before { - content: "\e57f"; } +.fa-box-tissue { + --fa: "\e05b"; + --fa--fa: "\e05b\e05b"; } -.fa-gavel::before { - content: "\f0e3"; } +.fa-motorcycle { + --fa: "\f21c"; + --fa--fa: "\f21c\f21c"; } -.fa-legal::before { - content: "\f0e3"; } +.fa-bell-concierge { + --fa: "\f562"; + --fa--fa: "\f562\f562"; } -.fa-binoculars::before { - content: "\f1e5"; } +.fa-concierge-bell { + --fa: "\f562"; + --fa--fa: "\f562\f562"; } -.fa-microphone-slash::before { - content: "\f131"; } +.fa-pen-ruler { + --fa: "\f5ae"; + --fa--fa: "\f5ae\f5ae"; } -.fa-box-tissue::before { - content: "\e05b"; } +.fa-pencil-ruler { + --fa: "\f5ae"; + --fa--fa: "\f5ae\f5ae"; } -.fa-motorcycle::before { - content: "\f21c"; } +.fa-people-arrows { + --fa: "\e068"; + --fa--fa: "\e068\e068"; } -.fa-bell-concierge::before { - content: "\f562"; } +.fa-people-arrows-left-right { + --fa: "\e068"; + --fa--fa: "\e068\e068"; } -.fa-concierge-bell::before { - content: "\f562"; } +.fa-mars-and-venus-burst { + --fa: "\e523"; + --fa--fa: "\e523\e523"; } -.fa-pen-ruler::before { - content: "\f5ae"; } +.fa-square-caret-right { + --fa: "\f152"; + --fa--fa: "\f152\f152"; } -.fa-pencil-ruler::before { - content: "\f5ae"; } +.fa-caret-square-right { + --fa: "\f152"; + --fa--fa: "\f152\f152"; } -.fa-people-arrows::before { - content: "\e068"; } +.fa-scissors { + --fa: "\f0c4"; + --fa--fa: "\f0c4\f0c4"; } -.fa-people-arrows-left-right::before { - content: "\e068"; } +.fa-cut { + --fa: "\f0c4"; + --fa--fa: "\f0c4\f0c4"; } -.fa-mars-and-venus-burst::before { - content: "\e523"; } +.fa-sun-plant-wilt { + --fa: "\e57a"; + --fa--fa: "\e57a\e57a"; } -.fa-square-caret-right::before { - content: "\f152"; } +.fa-toilets-portable { + --fa: "\e584"; + --fa--fa: "\e584\e584"; } -.fa-caret-square-right::before { - content: "\f152"; } +.fa-hockey-puck { + --fa: "\f453"; + --fa--fa: "\f453\f453"; } -.fa-scissors::before { - content: "\f0c4"; } +.fa-table { + --fa: "\f0ce"; + --fa--fa: "\f0ce\f0ce"; } -.fa-cut::before { - content: "\f0c4"; } +.fa-magnifying-glass-arrow-right { + --fa: "\e521"; + --fa--fa: "\e521\e521"; } -.fa-sun-plant-wilt::before { - content: "\e57a"; } +.fa-tachograph-digital { + --fa: "\f566"; + --fa--fa: "\f566\f566"; } -.fa-toilets-portable::before { - content: "\e584"; } +.fa-digital-tachograph { + --fa: "\f566"; + --fa--fa: "\f566\f566"; } -.fa-hockey-puck::before { - content: "\f453"; } +.fa-users-slash { + --fa: "\e073"; + --fa--fa: "\e073\e073"; } -.fa-table::before { - content: "\f0ce"; } +.fa-clover { + --fa: "\e139"; + --fa--fa: "\e139\e139"; } -.fa-magnifying-glass-arrow-right::before { - content: "\e521"; } +.fa-reply { + --fa: "\f3e5"; + --fa--fa: "\f3e5\f3e5"; } -.fa-tachograph-digital::before { - content: "\f566"; } +.fa-mail-reply { + --fa: "\f3e5"; + --fa--fa: "\f3e5\f3e5"; } -.fa-digital-tachograph::before { - content: "\f566"; } +.fa-star-and-crescent { + --fa: "\f699"; + --fa--fa: "\f699\f699"; } -.fa-users-slash::before { - content: "\e073"; } +.fa-house-fire { + --fa: "\e50c"; + --fa--fa: "\e50c\e50c"; } -.fa-clover::before { - content: "\e139"; } +.fa-square-minus { + --fa: "\f146"; + --fa--fa: "\f146\f146"; } -.fa-reply::before { - content: "\f3e5"; } +.fa-minus-square { + --fa: "\f146"; + --fa--fa: "\f146\f146"; } -.fa-mail-reply::before { - content: "\f3e5"; } +.fa-helicopter { + --fa: "\f533"; + --fa--fa: "\f533\f533"; } -.fa-star-and-crescent::before { - content: "\f699"; } +.fa-compass { + --fa: "\f14e"; + --fa--fa: "\f14e\f14e"; } -.fa-house-fire::before { - content: "\e50c"; } +.fa-square-caret-down { + --fa: "\f150"; + --fa--fa: "\f150\f150"; } -.fa-square-minus::before { - content: "\f146"; } +.fa-caret-square-down { + --fa: "\f150"; + --fa--fa: "\f150\f150"; } -.fa-minus-square::before { - content: "\f146"; } +.fa-file-circle-question { + --fa: "\e4ef"; + --fa--fa: "\e4ef\e4ef"; } -.fa-helicopter::before { - content: "\f533"; } +.fa-laptop-code { + --fa: "\f5fc"; + --fa--fa: "\f5fc\f5fc"; } -.fa-compass::before { - content: "\f14e"; } +.fa-swatchbook { + --fa: "\f5c3"; + --fa--fa: "\f5c3\f5c3"; } -.fa-square-caret-down::before { - content: "\f150"; } +.fa-prescription-bottle { + --fa: "\f485"; + --fa--fa: "\f485\f485"; } -.fa-caret-square-down::before { - content: "\f150"; } +.fa-bars { + --fa: "\f0c9"; + --fa--fa: "\f0c9\f0c9"; } -.fa-file-circle-question::before { - content: "\e4ef"; } +.fa-navicon { + --fa: "\f0c9"; + --fa--fa: "\f0c9\f0c9"; } -.fa-laptop-code::before { - content: "\f5fc"; } +.fa-people-group { + --fa: "\e533"; + --fa--fa: "\e533\e533"; } -.fa-swatchbook::before { - content: "\f5c3"; } +.fa-hourglass-end { + --fa: "\f253"; + --fa--fa: "\f253\f253"; } -.fa-prescription-bottle::before { - content: "\f485"; } +.fa-hourglass-3 { + --fa: "\f253"; + --fa--fa: "\f253\f253"; } -.fa-bars::before { - content: "\f0c9"; } +.fa-heart-crack { + --fa: "\f7a9"; + --fa--fa: "\f7a9\f7a9"; } -.fa-navicon::before { - content: "\f0c9"; } +.fa-heart-broken { + --fa: "\f7a9"; + --fa--fa: "\f7a9\f7a9"; } -.fa-people-group::before { - content: "\e533"; } +.fa-square-up-right { + --fa: "\f360"; + --fa--fa: "\f360\f360"; } -.fa-hourglass-end::before { - content: "\f253"; } +.fa-external-link-square-alt { + --fa: "\f360"; + --fa--fa: "\f360\f360"; } -.fa-hourglass-3::before { - content: "\f253"; } +.fa-face-kiss-beam { + --fa: "\f597"; + --fa--fa: "\f597\f597"; } -.fa-heart-crack::before { - content: "\f7a9"; } +.fa-kiss-beam { + --fa: "\f597"; + --fa--fa: "\f597\f597"; } -.fa-heart-broken::before { - content: "\f7a9"; } +.fa-film { + --fa: "\f008"; + --fa--fa: "\f008\f008"; } -.fa-square-up-right::before { - content: "\f360"; } +.fa-ruler-horizontal { + --fa: "\f547"; + --fa--fa: "\f547\f547"; } -.fa-external-link-square-alt::before { - content: "\f360"; } +.fa-people-robbery { + --fa: "\e536"; + --fa--fa: "\e536\e536"; } -.fa-face-kiss-beam::before { - content: "\f597"; } +.fa-lightbulb { + --fa: "\f0eb"; + --fa--fa: "\f0eb\f0eb"; } -.fa-kiss-beam::before { - content: "\f597"; } +.fa-caret-left { + --fa: "\f0d9"; + --fa--fa: "\f0d9\f0d9"; } -.fa-film::before { - content: "\f008"; } +.fa-circle-exclamation { + --fa: "\f06a"; + --fa--fa: "\f06a\f06a"; } -.fa-ruler-horizontal::before { - content: "\f547"; } +.fa-exclamation-circle { + --fa: "\f06a"; + --fa--fa: "\f06a\f06a"; } -.fa-people-robbery::before { - content: "\e536"; } +.fa-school-circle-xmark { + --fa: "\e56d"; + --fa--fa: "\e56d\e56d"; } -.fa-lightbulb::before { - content: "\f0eb"; } +.fa-arrow-right-from-bracket { + --fa: "\f08b"; + --fa--fa: "\f08b\f08b"; } -.fa-caret-left::before { - content: "\f0d9"; } +.fa-sign-out { + --fa: "\f08b"; + --fa--fa: "\f08b\f08b"; } -.fa-circle-exclamation::before { - content: "\f06a"; } +.fa-circle-chevron-down { + --fa: "\f13a"; + --fa--fa: "\f13a\f13a"; } -.fa-exclamation-circle::before { - content: "\f06a"; } +.fa-chevron-circle-down { + --fa: "\f13a"; + --fa--fa: "\f13a\f13a"; } -.fa-school-circle-xmark::before { - content: "\e56d"; } +.fa-unlock-keyhole { + --fa: "\f13e"; + --fa--fa: "\f13e\f13e"; } -.fa-arrow-right-from-bracket::before { - content: "\f08b"; } +.fa-unlock-alt { + --fa: "\f13e"; + --fa--fa: "\f13e\f13e"; } -.fa-sign-out::before { - content: "\f08b"; } +.fa-cloud-showers-heavy { + --fa: "\f740"; + --fa--fa: "\f740\f740"; } -.fa-circle-chevron-down::before { - content: "\f13a"; } +.fa-headphones-simple { + --fa: "\f58f"; + --fa--fa: "\f58f\f58f"; } -.fa-chevron-circle-down::before { - content: "\f13a"; } +.fa-headphones-alt { + --fa: "\f58f"; + --fa--fa: "\f58f\f58f"; } -.fa-unlock-keyhole::before { - content: "\f13e"; } +.fa-sitemap { + --fa: "\f0e8"; + --fa--fa: "\f0e8\f0e8"; } -.fa-unlock-alt::before { - content: "\f13e"; } +.fa-circle-dollar-to-slot { + --fa: "\f4b9"; + --fa--fa: "\f4b9\f4b9"; } -.fa-cloud-showers-heavy::before { - content: "\f740"; } +.fa-donate { + --fa: "\f4b9"; + --fa--fa: "\f4b9\f4b9"; } -.fa-headphones-simple::before { - content: "\f58f"; } +.fa-memory { + --fa: "\f538"; + --fa--fa: "\f538\f538"; } -.fa-headphones-alt::before { - content: "\f58f"; } +.fa-road-spikes { + --fa: "\e568"; + --fa--fa: "\e568\e568"; } -.fa-sitemap::before { - content: "\f0e8"; } +.fa-fire-burner { + --fa: "\e4f1"; + --fa--fa: "\e4f1\e4f1"; } -.fa-circle-dollar-to-slot::before { - content: "\f4b9"; } +.fa-flag { + --fa: "\f024"; + --fa--fa: "\f024\f024"; } -.fa-donate::before { - content: "\f4b9"; } +.fa-hanukiah { + --fa: "\f6e6"; + --fa--fa: "\f6e6\f6e6"; } -.fa-memory::before { - content: "\f538"; } +.fa-feather { + --fa: "\f52d"; + --fa--fa: "\f52d\f52d"; } -.fa-road-spikes::before { - content: "\e568"; } +.fa-volume-low { + --fa: "\f027"; + --fa--fa: "\f027\f027"; } -.fa-fire-burner::before { - content: "\e4f1"; } +.fa-volume-down { + --fa: "\f027"; + --fa--fa: "\f027\f027"; } -.fa-flag::before { - content: "\f024"; } +.fa-comment-slash { + --fa: "\f4b3"; + --fa--fa: "\f4b3\f4b3"; } -.fa-hanukiah::before { - content: "\f6e6"; } +.fa-cloud-sun-rain { + --fa: "\f743"; + --fa--fa: "\f743\f743"; } -.fa-feather::before { - content: "\f52d"; } +.fa-compress { + --fa: "\f066"; + --fa--fa: "\f066\f066"; } -.fa-volume-low::before { - content: "\f027"; } +.fa-wheat-awn { + --fa: "\e2cd"; + --fa--fa: "\e2cd\e2cd"; } -.fa-volume-down::before { - content: "\f027"; } +.fa-wheat-alt { + --fa: "\e2cd"; + --fa--fa: "\e2cd\e2cd"; } -.fa-comment-slash::before { - content: "\f4b3"; } +.fa-ankh { + --fa: "\f644"; + --fa--fa: "\f644\f644"; } -.fa-cloud-sun-rain::before { - content: "\f743"; } +.fa-hands-holding-child { + --fa: "\e4fa"; + --fa--fa: "\e4fa\e4fa"; } -.fa-compress::before { - content: "\f066"; } +.fa-asterisk { + --fa: "\2a"; + --fa--fa: "\2a\2a"; } -.fa-wheat-awn::before { - content: "\e2cd"; } +.fa-square-check { + --fa: "\f14a"; + --fa--fa: "\f14a\f14a"; } -.fa-wheat-alt::before { - content: "\e2cd"; } +.fa-check-square { + --fa: "\f14a"; + --fa--fa: "\f14a\f14a"; } -.fa-ankh::before { - content: "\f644"; } +.fa-peseta-sign { + --fa: "\e221"; + --fa--fa: "\e221\e221"; } -.fa-hands-holding-child::before { - content: "\e4fa"; } +.fa-heading { + --fa: "\f1dc"; + --fa--fa: "\f1dc\f1dc"; } -.fa-asterisk::before { - content: "\2a"; } +.fa-header { + --fa: "\f1dc"; + --fa--fa: "\f1dc\f1dc"; } -.fa-square-check::before { - content: "\f14a"; } +.fa-ghost { + --fa: "\f6e2"; + --fa--fa: "\f6e2\f6e2"; } -.fa-check-square::before { - content: "\f14a"; } +.fa-list { + --fa: "\f03a"; + --fa--fa: "\f03a\f03a"; } -.fa-peseta-sign::before { - content: "\e221"; } +.fa-list-squares { + --fa: "\f03a"; + --fa--fa: "\f03a\f03a"; } -.fa-heading::before { - content: "\f1dc"; } +.fa-square-phone-flip { + --fa: "\f87b"; + --fa--fa: "\f87b\f87b"; } -.fa-header::before { - content: "\f1dc"; } +.fa-phone-square-alt { + --fa: "\f87b"; + --fa--fa: "\f87b\f87b"; } -.fa-ghost::before { - content: "\f6e2"; } +.fa-cart-plus { + --fa: "\f217"; + --fa--fa: "\f217\f217"; } -.fa-list::before { - content: "\f03a"; } +.fa-gamepad { + --fa: "\f11b"; + --fa--fa: "\f11b\f11b"; } -.fa-list-squares::before { - content: "\f03a"; } +.fa-circle-dot { + --fa: "\f192"; + --fa--fa: "\f192\f192"; } -.fa-square-phone-flip::before { - content: "\f87b"; } +.fa-dot-circle { + --fa: "\f192"; + --fa--fa: "\f192\f192"; } -.fa-phone-square-alt::before { - content: "\f87b"; } +.fa-face-dizzy { + --fa: "\f567"; + --fa--fa: "\f567\f567"; } -.fa-cart-plus::before { - content: "\f217"; } +.fa-dizzy { + --fa: "\f567"; + --fa--fa: "\f567\f567"; } -.fa-gamepad::before { - content: "\f11b"; } +.fa-egg { + --fa: "\f7fb"; + --fa--fa: "\f7fb\f7fb"; } -.fa-circle-dot::before { - content: "\f192"; } +.fa-house-medical-circle-xmark { + --fa: "\e513"; + --fa--fa: "\e513\e513"; } -.fa-dot-circle::before { - content: "\f192"; } +.fa-campground { + --fa: "\f6bb"; + --fa--fa: "\f6bb\f6bb"; } -.fa-face-dizzy::before { - content: "\f567"; } +.fa-folder-plus { + --fa: "\f65e"; + --fa--fa: "\f65e\f65e"; } -.fa-dizzy::before { - content: "\f567"; } +.fa-futbol { + --fa: "\f1e3"; + --fa--fa: "\f1e3\f1e3"; } -.fa-egg::before { - content: "\f7fb"; } +.fa-futbol-ball { + --fa: "\f1e3"; + --fa--fa: "\f1e3\f1e3"; } -.fa-house-medical-circle-xmark::before { - content: "\e513"; } +.fa-soccer-ball { + --fa: "\f1e3"; + --fa--fa: "\f1e3\f1e3"; } -.fa-campground::before { - content: "\f6bb"; } +.fa-paintbrush { + --fa: "\f1fc"; + --fa--fa: "\f1fc\f1fc"; } -.fa-folder-plus::before { - content: "\f65e"; } +.fa-paint-brush { + --fa: "\f1fc"; + --fa--fa: "\f1fc\f1fc"; } -.fa-futbol::before { - content: "\f1e3"; } +.fa-lock { + --fa: "\f023"; + --fa--fa: "\f023\f023"; } -.fa-futbol-ball::before { - content: "\f1e3"; } +.fa-gas-pump { + --fa: "\f52f"; + --fa--fa: "\f52f\f52f"; } -.fa-soccer-ball::before { - content: "\f1e3"; } +.fa-hot-tub-person { + --fa: "\f593"; + --fa--fa: "\f593\f593"; } -.fa-paintbrush::before { - content: "\f1fc"; } +.fa-hot-tub { + --fa: "\f593"; + --fa--fa: "\f593\f593"; } -.fa-paint-brush::before { - content: "\f1fc"; } +.fa-map-location { + --fa: "\f59f"; + --fa--fa: "\f59f\f59f"; } -.fa-lock::before { - content: "\f023"; } +.fa-map-marked { + --fa: "\f59f"; + --fa--fa: "\f59f\f59f"; } -.fa-gas-pump::before { - content: "\f52f"; } +.fa-house-flood-water { + --fa: "\e50e"; + --fa--fa: "\e50e\e50e"; } -.fa-hot-tub-person::before { - content: "\f593"; } +.fa-tree { + --fa: "\f1bb"; + --fa--fa: "\f1bb\f1bb"; } -.fa-hot-tub::before { - content: "\f593"; } +.fa-bridge-lock { + --fa: "\e4cc"; + --fa--fa: "\e4cc\e4cc"; } -.fa-map-location::before { - content: "\f59f"; } +.fa-sack-dollar { + --fa: "\f81d"; + --fa--fa: "\f81d\f81d"; } -.fa-map-marked::before { - content: "\f59f"; } +.fa-pen-to-square { + --fa: "\f044"; + --fa--fa: "\f044\f044"; } -.fa-house-flood-water::before { - content: "\e50e"; } +.fa-edit { + --fa: "\f044"; + --fa--fa: "\f044\f044"; } -.fa-tree::before { - content: "\f1bb"; } +.fa-car-side { + --fa: "\f5e4"; + --fa--fa: "\f5e4\f5e4"; } -.fa-bridge-lock::before { - content: "\e4cc"; } +.fa-share-nodes { + --fa: "\f1e0"; + --fa--fa: "\f1e0\f1e0"; } -.fa-sack-dollar::before { - content: "\f81d"; } +.fa-share-alt { + --fa: "\f1e0"; + --fa--fa: "\f1e0\f1e0"; } -.fa-pen-to-square::before { - content: "\f044"; } +.fa-heart-circle-minus { + --fa: "\e4ff"; + --fa--fa: "\e4ff\e4ff"; } -.fa-edit::before { - content: "\f044"; } +.fa-hourglass-half { + --fa: "\f252"; + --fa--fa: "\f252\f252"; } -.fa-car-side::before { - content: "\f5e4"; } +.fa-hourglass-2 { + --fa: "\f252"; + --fa--fa: "\f252\f252"; } -.fa-share-nodes::before { - content: "\f1e0"; } +.fa-microscope { + --fa: "\f610"; + --fa--fa: "\f610\f610"; } -.fa-share-alt::before { - content: "\f1e0"; } +.fa-sink { + --fa: "\e06d"; + --fa--fa: "\e06d\e06d"; } -.fa-heart-circle-minus::before { - content: "\e4ff"; } +.fa-bag-shopping { + --fa: "\f290"; + --fa--fa: "\f290\f290"; } -.fa-hourglass-half::before { - content: "\f252"; } +.fa-shopping-bag { + --fa: "\f290"; + --fa--fa: "\f290\f290"; } -.fa-hourglass-2::before { - content: "\f252"; } +.fa-arrow-down-z-a { + --fa: "\f881"; + --fa--fa: "\f881\f881"; } -.fa-microscope::before { - content: "\f610"; } +.fa-sort-alpha-desc { + --fa: "\f881"; + --fa--fa: "\f881\f881"; } -.fa-sink::before { - content: "\e06d"; } +.fa-sort-alpha-down-alt { + --fa: "\f881"; + --fa--fa: "\f881\f881"; } -.fa-bag-shopping::before { - content: "\f290"; } +.fa-mitten { + --fa: "\f7b5"; + --fa--fa: "\f7b5\f7b5"; } -.fa-shopping-bag::before { - content: "\f290"; } +.fa-person-rays { + --fa: "\e54d"; + --fa--fa: "\e54d\e54d"; } -.fa-arrow-down-z-a::before { - content: "\f881"; } +.fa-users { + --fa: "\f0c0"; + --fa--fa: "\f0c0\f0c0"; } -.fa-sort-alpha-desc::before { - content: "\f881"; } +.fa-eye-slash { + --fa: "\f070"; + --fa--fa: "\f070\f070"; } -.fa-sort-alpha-down-alt::before { - content: "\f881"; } +.fa-flask-vial { + --fa: "\e4f3"; + --fa--fa: "\e4f3\e4f3"; } -.fa-mitten::before { - content: "\f7b5"; } +.fa-hand { + --fa: "\f256"; + --fa--fa: "\f256\f256"; } -.fa-person-rays::before { - content: "\e54d"; } +.fa-hand-paper { + --fa: "\f256"; + --fa--fa: "\f256\f256"; } -.fa-users::before { - content: "\f0c0"; } +.fa-om { + --fa: "\f679"; + --fa--fa: "\f679\f679"; } -.fa-eye-slash::before { - content: "\f070"; } +.fa-worm { + --fa: "\e599"; + --fa--fa: "\e599\e599"; } -.fa-flask-vial::before { - content: "\e4f3"; } +.fa-house-circle-xmark { + --fa: "\e50b"; + --fa--fa: "\e50b\e50b"; } -.fa-hand::before { - content: "\f256"; } +.fa-plug { + --fa: "\f1e6"; + --fa--fa: "\f1e6\f1e6"; } -.fa-hand-paper::before { - content: "\f256"; } +.fa-chevron-up { + --fa: "\f077"; + --fa--fa: "\f077\f077"; } -.fa-om::before { - content: "\f679"; } +.fa-hand-spock { + --fa: "\f259"; + --fa--fa: "\f259\f259"; } -.fa-worm::before { - content: "\e599"; } +.fa-stopwatch { + --fa: "\f2f2"; + --fa--fa: "\f2f2\f2f2"; } -.fa-house-circle-xmark::before { - content: "\e50b"; } +.fa-face-kiss { + --fa: "\f596"; + --fa--fa: "\f596\f596"; } -.fa-plug::before { - content: "\f1e6"; } +.fa-kiss { + --fa: "\f596"; + --fa--fa: "\f596\f596"; } -.fa-chevron-up::before { - content: "\f077"; } +.fa-bridge-circle-xmark { + --fa: "\e4cb"; + --fa--fa: "\e4cb\e4cb"; } -.fa-hand-spock::before { - content: "\f259"; } +.fa-face-grin-tongue { + --fa: "\f589"; + --fa--fa: "\f589\f589"; } -.fa-stopwatch::before { - content: "\f2f2"; } +.fa-grin-tongue { + --fa: "\f589"; + --fa--fa: "\f589\f589"; } -.fa-face-kiss::before { - content: "\f596"; } +.fa-chess-bishop { + --fa: "\f43a"; + --fa--fa: "\f43a\f43a"; } -.fa-kiss::before { - content: "\f596"; } +.fa-face-grin-wink { + --fa: "\f58c"; + --fa--fa: "\f58c\f58c"; } -.fa-bridge-circle-xmark::before { - content: "\e4cb"; } +.fa-grin-wink { + --fa: "\f58c"; + --fa--fa: "\f58c\f58c"; } -.fa-face-grin-tongue::before { - content: "\f589"; } +.fa-ear-deaf { + --fa: "\f2a4"; + --fa--fa: "\f2a4\f2a4"; } -.fa-grin-tongue::before { - content: "\f589"; } +.fa-deaf { + --fa: "\f2a4"; + --fa--fa: "\f2a4\f2a4"; } -.fa-chess-bishop::before { - content: "\f43a"; } +.fa-deafness { + --fa: "\f2a4"; + --fa--fa: "\f2a4\f2a4"; } -.fa-face-grin-wink::before { - content: "\f58c"; } +.fa-hard-of-hearing { + --fa: "\f2a4"; + --fa--fa: "\f2a4\f2a4"; } -.fa-grin-wink::before { - content: "\f58c"; } +.fa-road-circle-check { + --fa: "\e564"; + --fa--fa: "\e564\e564"; } -.fa-ear-deaf::before { - content: "\f2a4"; } +.fa-dice-five { + --fa: "\f523"; + --fa--fa: "\f523\f523"; } -.fa-deaf::before { - content: "\f2a4"; } +.fa-square-rss { + --fa: "\f143"; + --fa--fa: "\f143\f143"; } -.fa-deafness::before { - content: "\f2a4"; } +.fa-rss-square { + --fa: "\f143"; + --fa--fa: "\f143\f143"; } -.fa-hard-of-hearing::before { - content: "\f2a4"; } +.fa-land-mine-on { + --fa: "\e51b"; + --fa--fa: "\e51b\e51b"; } -.fa-road-circle-check::before { - content: "\e564"; } +.fa-i-cursor { + --fa: "\f246"; + --fa--fa: "\f246\f246"; } -.fa-dice-five::before { - content: "\f523"; } +.fa-stamp { + --fa: "\f5bf"; + --fa--fa: "\f5bf\f5bf"; } -.fa-square-rss::before { - content: "\f143"; } +.fa-stairs { + --fa: "\e289"; + --fa--fa: "\e289\e289"; } -.fa-rss-square::before { - content: "\f143"; } +.fa-i { + --fa: "\49"; + --fa--fa: "\49\49"; } -.fa-land-mine-on::before { - content: "\e51b"; } +.fa-hryvnia-sign { + --fa: "\f6f2"; + --fa--fa: "\f6f2\f6f2"; } -.fa-i-cursor::before { - content: "\f246"; } +.fa-hryvnia { + --fa: "\f6f2"; + --fa--fa: "\f6f2\f6f2"; } -.fa-stamp::before { - content: "\f5bf"; } +.fa-pills { + --fa: "\f484"; + --fa--fa: "\f484\f484"; } -.fa-stairs::before { - content: "\e289"; } +.fa-face-grin-wide { + --fa: "\f581"; + --fa--fa: "\f581\f581"; } -.fa-i::before { - content: "\49"; } +.fa-grin-alt { + --fa: "\f581"; + --fa--fa: "\f581\f581"; } -.fa-hryvnia-sign::before { - content: "\f6f2"; } +.fa-tooth { + --fa: "\f5c9"; + --fa--fa: "\f5c9\f5c9"; } -.fa-hryvnia::before { - content: "\f6f2"; } +.fa-v { + --fa: "\56"; + --fa--fa: "\56\56"; } -.fa-pills::before { - content: "\f484"; } +.fa-bangladeshi-taka-sign { + --fa: "\e2e6"; + --fa--fa: "\e2e6\e2e6"; } -.fa-face-grin-wide::before { - content: "\f581"; } +.fa-bicycle { + --fa: "\f206"; + --fa--fa: "\f206\f206"; } -.fa-grin-alt::before { - content: "\f581"; } +.fa-staff-snake { + --fa: "\e579"; + --fa--fa: "\e579\e579"; } -.fa-tooth::before { - content: "\f5c9"; } +.fa-rod-asclepius { + --fa: "\e579"; + --fa--fa: "\e579\e579"; } -.fa-v::before { - content: "\56"; } +.fa-rod-snake { + --fa: "\e579"; + --fa--fa: "\e579\e579"; } -.fa-bangladeshi-taka-sign::before { - content: "\e2e6"; } +.fa-staff-aesculapius { + --fa: "\e579"; + --fa--fa: "\e579\e579"; } -.fa-bicycle::before { - content: "\f206"; } +.fa-head-side-cough-slash { + --fa: "\e062"; + --fa--fa: "\e062\e062"; } -.fa-staff-snake::before { - content: "\e579"; } +.fa-truck-medical { + --fa: "\f0f9"; + --fa--fa: "\f0f9\f0f9"; } -.fa-rod-asclepius::before { - content: "\e579"; } +.fa-ambulance { + --fa: "\f0f9"; + --fa--fa: "\f0f9\f0f9"; } -.fa-rod-snake::before { - content: "\e579"; } +.fa-wheat-awn-circle-exclamation { + --fa: "\e598"; + --fa--fa: "\e598\e598"; } -.fa-staff-aesculapius::before { - content: "\e579"; } +.fa-snowman { + --fa: "\f7d0"; + --fa--fa: "\f7d0\f7d0"; } -.fa-head-side-cough-slash::before { - content: "\e062"; } +.fa-mortar-pestle { + --fa: "\f5a7"; + --fa--fa: "\f5a7\f5a7"; } -.fa-truck-medical::before { - content: "\f0f9"; } +.fa-road-barrier { + --fa: "\e562"; + --fa--fa: "\e562\e562"; } -.fa-ambulance::before { - content: "\f0f9"; } +.fa-school { + --fa: "\f549"; + --fa--fa: "\f549\f549"; } -.fa-wheat-awn-circle-exclamation::before { - content: "\e598"; } +.fa-igloo { + --fa: "\f7ae"; + --fa--fa: "\f7ae\f7ae"; } -.fa-snowman::before { - content: "\f7d0"; } +.fa-joint { + --fa: "\f595"; + --fa--fa: "\f595\f595"; } -.fa-mortar-pestle::before { - content: "\f5a7"; } +.fa-angle-right { + --fa: "\f105"; + --fa--fa: "\f105\f105"; } -.fa-road-barrier::before { - content: "\e562"; } +.fa-horse { + --fa: "\f6f0"; + --fa--fa: "\f6f0\f6f0"; } -.fa-school::before { - content: "\f549"; } +.fa-q { + --fa: "\51"; + --fa--fa: "\51\51"; } -.fa-igloo::before { - content: "\f7ae"; } +.fa-g { + --fa: "\47"; + --fa--fa: "\47\47"; } -.fa-joint::before { - content: "\f595"; } +.fa-notes-medical { + --fa: "\f481"; + --fa--fa: "\f481\f481"; } -.fa-angle-right::before { - content: "\f105"; } +.fa-temperature-half { + --fa: "\f2c9"; + --fa--fa: "\f2c9\f2c9"; } -.fa-horse::before { - content: "\f6f0"; } +.fa-temperature-2 { + --fa: "\f2c9"; + --fa--fa: "\f2c9\f2c9"; } -.fa-q::before { - content: "\51"; } +.fa-thermometer-2 { + --fa: "\f2c9"; + --fa--fa: "\f2c9\f2c9"; } -.fa-g::before { - content: "\47"; } +.fa-thermometer-half { + --fa: "\f2c9"; + --fa--fa: "\f2c9\f2c9"; } -.fa-notes-medical::before { - content: "\f481"; } +.fa-dong-sign { + --fa: "\e169"; + --fa--fa: "\e169\e169"; } -.fa-temperature-half::before { - content: "\f2c9"; } +.fa-capsules { + --fa: "\f46b"; + --fa--fa: "\f46b\f46b"; } -.fa-temperature-2::before { - content: "\f2c9"; } +.fa-poo-storm { + --fa: "\f75a"; + --fa--fa: "\f75a\f75a"; } -.fa-thermometer-2::before { - content: "\f2c9"; } +.fa-poo-bolt { + --fa: "\f75a"; + --fa--fa: "\f75a\f75a"; } -.fa-thermometer-half::before { - content: "\f2c9"; } +.fa-face-frown-open { + --fa: "\f57a"; + --fa--fa: "\f57a\f57a"; } -.fa-dong-sign::before { - content: "\e169"; } +.fa-frown-open { + --fa: "\f57a"; + --fa--fa: "\f57a\f57a"; } -.fa-capsules::before { - content: "\f46b"; } +.fa-hand-point-up { + --fa: "\f0a6"; + --fa--fa: "\f0a6\f0a6"; } -.fa-poo-storm::before { - content: "\f75a"; } +.fa-money-bill { + --fa: "\f0d6"; + --fa--fa: "\f0d6\f0d6"; } -.fa-poo-bolt::before { - content: "\f75a"; } +.fa-bookmark { + --fa: "\f02e"; + --fa--fa: "\f02e\f02e"; } -.fa-face-frown-open::before { - content: "\f57a"; } +.fa-align-justify { + --fa: "\f039"; + --fa--fa: "\f039\f039"; } -.fa-frown-open::before { - content: "\f57a"; } +.fa-umbrella-beach { + --fa: "\f5ca"; + --fa--fa: "\f5ca\f5ca"; } -.fa-hand-point-up::before { - content: "\f0a6"; } +.fa-helmet-un { + --fa: "\e503"; + --fa--fa: "\e503\e503"; } -.fa-money-bill::before { - content: "\f0d6"; } +.fa-bullseye { + --fa: "\f140"; + --fa--fa: "\f140\f140"; } -.fa-bookmark::before { - content: "\f02e"; } +.fa-bacon { + --fa: "\f7e5"; + --fa--fa: "\f7e5\f7e5"; } -.fa-align-justify::before { - content: "\f039"; } +.fa-hand-point-down { + --fa: "\f0a7"; + --fa--fa: "\f0a7\f0a7"; } -.fa-umbrella-beach::before { - content: "\f5ca"; } +.fa-arrow-up-from-bracket { + --fa: "\e09a"; + --fa--fa: "\e09a\e09a"; } -.fa-helmet-un::before { - content: "\e503"; } +.fa-folder { + --fa: "\f07b"; + --fa--fa: "\f07b\f07b"; } -.fa-bullseye::before { - content: "\f140"; } +.fa-folder-blank { + --fa: "\f07b"; + --fa--fa: "\f07b\f07b"; } -.fa-bacon::before { - content: "\f7e5"; } +.fa-file-waveform { + --fa: "\f478"; + --fa--fa: "\f478\f478"; } -.fa-hand-point-down::before { - content: "\f0a7"; } +.fa-file-medical-alt { + --fa: "\f478"; + --fa--fa: "\f478\f478"; } -.fa-arrow-up-from-bracket::before { - content: "\e09a"; } +.fa-radiation { + --fa: "\f7b9"; + --fa--fa: "\f7b9\f7b9"; } -.fa-folder::before { - content: "\f07b"; } +.fa-chart-simple { + --fa: "\e473"; + --fa--fa: "\e473\e473"; } -.fa-folder-blank::before { - content: "\f07b"; } +.fa-mars-stroke { + --fa: "\f229"; + --fa--fa: "\f229\f229"; } -.fa-file-waveform::before { - content: "\f478"; } +.fa-vial { + --fa: "\f492"; + --fa--fa: "\f492\f492"; } -.fa-file-medical-alt::before { - content: "\f478"; } +.fa-gauge { + --fa: "\f624"; + --fa--fa: "\f624\f624"; } -.fa-radiation::before { - content: "\f7b9"; } +.fa-dashboard { + --fa: "\f624"; + --fa--fa: "\f624\f624"; } -.fa-chart-simple::before { - content: "\e473"; } +.fa-gauge-med { + --fa: "\f624"; + --fa--fa: "\f624\f624"; } -.fa-mars-stroke::before { - content: "\f229"; } +.fa-tachometer-alt-average { + --fa: "\f624"; + --fa--fa: "\f624\f624"; } -.fa-vial::before { - content: "\f492"; } +.fa-wand-magic-sparkles { + --fa: "\e2ca"; + --fa--fa: "\e2ca\e2ca"; } -.fa-gauge::before { - content: "\f624"; } +.fa-magic-wand-sparkles { + --fa: "\e2ca"; + --fa--fa: "\e2ca\e2ca"; } -.fa-dashboard::before { - content: "\f624"; } +.fa-e { + --fa: "\45"; + --fa--fa: "\45\45"; } -.fa-gauge-med::before { - content: "\f624"; } +.fa-pen-clip { + --fa: "\f305"; + --fa--fa: "\f305\f305"; } -.fa-tachometer-alt-average::before { - content: "\f624"; } +.fa-pen-alt { + --fa: "\f305"; + --fa--fa: "\f305\f305"; } -.fa-wand-magic-sparkles::before { - content: "\e2ca"; } +.fa-bridge-circle-exclamation { + --fa: "\e4ca"; + --fa--fa: "\e4ca\e4ca"; } -.fa-magic-wand-sparkles::before { - content: "\e2ca"; } +.fa-user { + --fa: "\f007"; + --fa--fa: "\f007\f007"; } -.fa-e::before { - content: "\45"; } +.fa-school-circle-check { + --fa: "\e56b"; + --fa--fa: "\e56b\e56b"; } -.fa-pen-clip::before { - content: "\f305"; } +.fa-dumpster { + --fa: "\f793"; + --fa--fa: "\f793\f793"; } -.fa-pen-alt::before { - content: "\f305"; } +.fa-van-shuttle { + --fa: "\f5b6"; + --fa--fa: "\f5b6\f5b6"; } -.fa-bridge-circle-exclamation::before { - content: "\e4ca"; } +.fa-shuttle-van { + --fa: "\f5b6"; + --fa--fa: "\f5b6\f5b6"; } -.fa-user::before { - content: "\f007"; } +.fa-building-user { + --fa: "\e4da"; + --fa--fa: "\e4da\e4da"; } -.fa-school-circle-check::before { - content: "\e56b"; } +.fa-square-caret-left { + --fa: "\f191"; + --fa--fa: "\f191\f191"; } -.fa-dumpster::before { - content: "\f793"; } +.fa-caret-square-left { + --fa: "\f191"; + --fa--fa: "\f191\f191"; } -.fa-van-shuttle::before { - content: "\f5b6"; } +.fa-highlighter { + --fa: "\f591"; + --fa--fa: "\f591\f591"; } -.fa-shuttle-van::before { - content: "\f5b6"; } +.fa-key { + --fa: "\f084"; + --fa--fa: "\f084\f084"; } -.fa-building-user::before { - content: "\e4da"; } +.fa-bullhorn { + --fa: "\f0a1"; + --fa--fa: "\f0a1\f0a1"; } -.fa-square-caret-left::before { - content: "\f191"; } +.fa-globe { + --fa: "\f0ac"; + --fa--fa: "\f0ac\f0ac"; } -.fa-caret-square-left::before { - content: "\f191"; } +.fa-synagogue { + --fa: "\f69b"; + --fa--fa: "\f69b\f69b"; } -.fa-highlighter::before { - content: "\f591"; } +.fa-person-half-dress { + --fa: "\e548"; + --fa--fa: "\e548\e548"; } -.fa-key::before { - content: "\f084"; } +.fa-road-bridge { + --fa: "\e563"; + --fa--fa: "\e563\e563"; } -.fa-bullhorn::before { - content: "\f0a1"; } +.fa-location-arrow { + --fa: "\f124"; + --fa--fa: "\f124\f124"; } -.fa-globe::before { - content: "\f0ac"; } +.fa-c { + --fa: "\43"; + --fa--fa: "\43\43"; } -.fa-synagogue::before { - content: "\f69b"; } +.fa-tablet-button { + --fa: "\f10a"; + --fa--fa: "\f10a\f10a"; } -.fa-person-half-dress::before { - content: "\e548"; } +.fa-building-lock { + --fa: "\e4d6"; + --fa--fa: "\e4d6\e4d6"; } -.fa-road-bridge::before { - content: "\e563"; } +.fa-pizza-slice { + --fa: "\f818"; + --fa--fa: "\f818\f818"; } -.fa-location-arrow::before { - content: "\f124"; } +.fa-money-bill-wave { + --fa: "\f53a"; + --fa--fa: "\f53a\f53a"; } -.fa-c::before { - content: "\43"; } +.fa-chart-area { + --fa: "\f1fe"; + --fa--fa: "\f1fe\f1fe"; } -.fa-tablet-button::before { - content: "\f10a"; } +.fa-area-chart { + --fa: "\f1fe"; + --fa--fa: "\f1fe\f1fe"; } -.fa-building-lock::before { - content: "\e4d6"; } +.fa-house-flag { + --fa: "\e50d"; + --fa--fa: "\e50d\e50d"; } -.fa-pizza-slice::before { - content: "\f818"; } +.fa-person-circle-minus { + --fa: "\e540"; + --fa--fa: "\e540\e540"; } -.fa-money-bill-wave::before { - content: "\f53a"; } +.fa-ban { + --fa: "\f05e"; + --fa--fa: "\f05e\f05e"; } -.fa-chart-area::before { - content: "\f1fe"; } +.fa-cancel { + --fa: "\f05e"; + --fa--fa: "\f05e\f05e"; } -.fa-area-chart::before { - content: "\f1fe"; } +.fa-camera-rotate { + --fa: "\e0d8"; + --fa--fa: "\e0d8\e0d8"; } -.fa-house-flag::before { - content: "\e50d"; } +.fa-spray-can-sparkles { + --fa: "\f5d0"; + --fa--fa: "\f5d0\f5d0"; } -.fa-person-circle-minus::before { - content: "\e540"; } +.fa-air-freshener { + --fa: "\f5d0"; + --fa--fa: "\f5d0\f5d0"; } -.fa-ban::before { - content: "\f05e"; } +.fa-star { + --fa: "\f005"; + --fa--fa: "\f005\f005"; } -.fa-cancel::before { - content: "\f05e"; } +.fa-repeat { + --fa: "\f363"; + --fa--fa: "\f363\f363"; } -.fa-camera-rotate::before { - content: "\e0d8"; } +.fa-cross { + --fa: "\f654"; + --fa--fa: "\f654\f654"; } -.fa-spray-can-sparkles::before { - content: "\f5d0"; } +.fa-box { + --fa: "\f466"; + --fa--fa: "\f466\f466"; } -.fa-air-freshener::before { - content: "\f5d0"; } +.fa-venus-mars { + --fa: "\f228"; + --fa--fa: "\f228\f228"; } -.fa-star::before { - content: "\f005"; } +.fa-arrow-pointer { + --fa: "\f245"; + --fa--fa: "\f245\f245"; } -.fa-repeat::before { - content: "\f363"; } +.fa-mouse-pointer { + --fa: "\f245"; + --fa--fa: "\f245\f245"; } -.fa-cross::before { - content: "\f654"; } +.fa-maximize { + --fa: "\f31e"; + --fa--fa: "\f31e\f31e"; } -.fa-box::before { - content: "\f466"; } +.fa-expand-arrows-alt { + --fa: "\f31e"; + --fa--fa: "\f31e\f31e"; } -.fa-venus-mars::before { - content: "\f228"; } +.fa-charging-station { + --fa: "\f5e7"; + --fa--fa: "\f5e7\f5e7"; } -.fa-arrow-pointer::before { - content: "\f245"; } +.fa-shapes { + --fa: "\f61f"; + --fa--fa: "\f61f\f61f"; } -.fa-mouse-pointer::before { - content: "\f245"; } +.fa-triangle-circle-square { + --fa: "\f61f"; + --fa--fa: "\f61f\f61f"; } -.fa-maximize::before { - content: "\f31e"; } +.fa-shuffle { + --fa: "\f074"; + --fa--fa: "\f074\f074"; } -.fa-expand-arrows-alt::before { - content: "\f31e"; } +.fa-random { + --fa: "\f074"; + --fa--fa: "\f074\f074"; } -.fa-charging-station::before { - content: "\f5e7"; } +.fa-person-running { + --fa: "\f70c"; + --fa--fa: "\f70c\f70c"; } -.fa-shapes::before { - content: "\f61f"; } +.fa-running { + --fa: "\f70c"; + --fa--fa: "\f70c\f70c"; } -.fa-triangle-circle-square::before { - content: "\f61f"; } +.fa-mobile-retro { + --fa: "\e527"; + --fa--fa: "\e527\e527"; } -.fa-shuffle::before { - content: "\f074"; } +.fa-grip-lines-vertical { + --fa: "\f7a5"; + --fa--fa: "\f7a5\f7a5"; } -.fa-random::before { - content: "\f074"; } +.fa-spider { + --fa: "\f717"; + --fa--fa: "\f717\f717"; } -.fa-person-running::before { - content: "\f70c"; } +.fa-hands-bound { + --fa: "\e4f9"; + --fa--fa: "\e4f9\e4f9"; } -.fa-running::before { - content: "\f70c"; } +.fa-file-invoice-dollar { + --fa: "\f571"; + --fa--fa: "\f571\f571"; } -.fa-mobile-retro::before { - content: "\e527"; } +.fa-plane-circle-exclamation { + --fa: "\e556"; + --fa--fa: "\e556\e556"; } -.fa-grip-lines-vertical::before { - content: "\f7a5"; } +.fa-x-ray { + --fa: "\f497"; + --fa--fa: "\f497\f497"; } -.fa-spider::before { - content: "\f717"; } +.fa-spell-check { + --fa: "\f891"; + --fa--fa: "\f891\f891"; } -.fa-hands-bound::before { - content: "\e4f9"; } +.fa-slash { + --fa: "\f715"; + --fa--fa: "\f715\f715"; } -.fa-file-invoice-dollar::before { - content: "\f571"; } +.fa-computer-mouse { + --fa: "\f8cc"; + --fa--fa: "\f8cc\f8cc"; } -.fa-plane-circle-exclamation::before { - content: "\e556"; } +.fa-mouse { + --fa: "\f8cc"; + --fa--fa: "\f8cc\f8cc"; } -.fa-x-ray::before { - content: "\f497"; } +.fa-arrow-right-to-bracket { + --fa: "\f090"; + --fa--fa: "\f090\f090"; } -.fa-spell-check::before { - content: "\f891"; } +.fa-sign-in { + --fa: "\f090"; + --fa--fa: "\f090\f090"; } -.fa-slash::before { - content: "\f715"; } +.fa-shop-slash { + --fa: "\e070"; + --fa--fa: "\e070\e070"; } -.fa-computer-mouse::before { - content: "\f8cc"; } +.fa-store-alt-slash { + --fa: "\e070"; + --fa--fa: "\e070\e070"; } -.fa-mouse::before { - content: "\f8cc"; } +.fa-server { + --fa: "\f233"; + --fa--fa: "\f233\f233"; } -.fa-arrow-right-to-bracket::before { - content: "\f090"; } +.fa-virus-covid-slash { + --fa: "\e4a9"; + --fa--fa: "\e4a9\e4a9"; } -.fa-sign-in::before { - content: "\f090"; } +.fa-shop-lock { + --fa: "\e4a5"; + --fa--fa: "\e4a5\e4a5"; } -.fa-shop-slash::before { - content: "\e070"; } +.fa-hourglass-start { + --fa: "\f251"; + --fa--fa: "\f251\f251"; } -.fa-store-alt-slash::before { - content: "\e070"; } +.fa-hourglass-1 { + --fa: "\f251"; + --fa--fa: "\f251\f251"; } -.fa-server::before { - content: "\f233"; } +.fa-blender-phone { + --fa: "\f6b6"; + --fa--fa: "\f6b6\f6b6"; } -.fa-virus-covid-slash::before { - content: "\e4a9"; } +.fa-building-wheat { + --fa: "\e4db"; + --fa--fa: "\e4db\e4db"; } -.fa-shop-lock::before { - content: "\e4a5"; } +.fa-person-breastfeeding { + --fa: "\e53a"; + --fa--fa: "\e53a\e53a"; } -.fa-hourglass-start::before { - content: "\f251"; } +.fa-right-to-bracket { + --fa: "\f2f6"; + --fa--fa: "\f2f6\f2f6"; } -.fa-hourglass-1::before { - content: "\f251"; } +.fa-sign-in-alt { + --fa: "\f2f6"; + --fa--fa: "\f2f6\f2f6"; } -.fa-blender-phone::before { - content: "\f6b6"; } +.fa-venus { + --fa: "\f221"; + --fa--fa: "\f221\f221"; } -.fa-building-wheat::before { - content: "\e4db"; } +.fa-passport { + --fa: "\f5ab"; + --fa--fa: "\f5ab\f5ab"; } -.fa-person-breastfeeding::before { - content: "\e53a"; } +.fa-thumbtack-slash { + --fa: "\e68f"; + --fa--fa: "\e68f\e68f"; } -.fa-right-to-bracket::before { - content: "\f2f6"; } +.fa-thumb-tack-slash { + --fa: "\e68f"; + --fa--fa: "\e68f\e68f"; } -.fa-sign-in-alt::before { - content: "\f2f6"; } +.fa-heart-pulse { + --fa: "\f21e"; + --fa--fa: "\f21e\f21e"; } -.fa-venus::before { - content: "\f221"; } +.fa-heartbeat { + --fa: "\f21e"; + --fa--fa: "\f21e\f21e"; } -.fa-passport::before { - content: "\f5ab"; } +.fa-people-carry-box { + --fa: "\f4ce"; + --fa--fa: "\f4ce\f4ce"; } -.fa-thumbtack-slash::before { - content: "\e68f"; } +.fa-people-carry { + --fa: "\f4ce"; + --fa--fa: "\f4ce\f4ce"; } -.fa-thumb-tack-slash::before { - content: "\e68f"; } +.fa-temperature-high { + --fa: "\f769"; + --fa--fa: "\f769\f769"; } -.fa-heart-pulse::before { - content: "\f21e"; } +.fa-microchip { + --fa: "\f2db"; + --fa--fa: "\f2db\f2db"; } -.fa-heartbeat::before { - content: "\f21e"; } +.fa-crown { + --fa: "\f521"; + --fa--fa: "\f521\f521"; } -.fa-people-carry-box::before { - content: "\f4ce"; } +.fa-weight-hanging { + --fa: "\f5cd"; + --fa--fa: "\f5cd\f5cd"; } -.fa-people-carry::before { - content: "\f4ce"; } +.fa-xmarks-lines { + --fa: "\e59a"; + --fa--fa: "\e59a\e59a"; } -.fa-temperature-high::before { - content: "\f769"; } +.fa-file-prescription { + --fa: "\f572"; + --fa--fa: "\f572\f572"; } -.fa-microchip::before { - content: "\f2db"; } +.fa-weight-scale { + --fa: "\f496"; + --fa--fa: "\f496\f496"; } -.fa-crown::before { - content: "\f521"; } +.fa-weight { + --fa: "\f496"; + --fa--fa: "\f496\f496"; } -.fa-weight-hanging::before { - content: "\f5cd"; } +.fa-user-group { + --fa: "\f500"; + --fa--fa: "\f500\f500"; } -.fa-xmarks-lines::before { - content: "\e59a"; } +.fa-user-friends { + --fa: "\f500"; + --fa--fa: "\f500\f500"; } -.fa-file-prescription::before { - content: "\f572"; } +.fa-arrow-up-a-z { + --fa: "\f15e"; + --fa--fa: "\f15e\f15e"; } -.fa-weight-scale::before { - content: "\f496"; } +.fa-sort-alpha-up { + --fa: "\f15e"; + --fa--fa: "\f15e\f15e"; } -.fa-weight::before { - content: "\f496"; } +.fa-chess-knight { + --fa: "\f441"; + --fa--fa: "\f441\f441"; } -.fa-user-group::before { - content: "\f500"; } +.fa-face-laugh-squint { + --fa: "\f59b"; + --fa--fa: "\f59b\f59b"; } -.fa-user-friends::before { - content: "\f500"; } +.fa-laugh-squint { + --fa: "\f59b"; + --fa--fa: "\f59b\f59b"; } -.fa-arrow-up-a-z::before { - content: "\f15e"; } +.fa-wheelchair { + --fa: "\f193"; + --fa--fa: "\f193\f193"; } -.fa-sort-alpha-up::before { - content: "\f15e"; } +.fa-circle-arrow-up { + --fa: "\f0aa"; + --fa--fa: "\f0aa\f0aa"; } -.fa-chess-knight::before { - content: "\f441"; } +.fa-arrow-circle-up { + --fa: "\f0aa"; + --fa--fa: "\f0aa\f0aa"; } -.fa-face-laugh-squint::before { - content: "\f59b"; } +.fa-toggle-on { + --fa: "\f205"; + --fa--fa: "\f205\f205"; } -.fa-laugh-squint::before { - content: "\f59b"; } +.fa-person-walking { + --fa: "\f554"; + --fa--fa: "\f554\f554"; } -.fa-wheelchair::before { - content: "\f193"; } +.fa-walking { + --fa: "\f554"; + --fa--fa: "\f554\f554"; } -.fa-circle-arrow-up::before { - content: "\f0aa"; } +.fa-l { + --fa: "\4c"; + --fa--fa: "\4c\4c"; } -.fa-arrow-circle-up::before { - content: "\f0aa"; } +.fa-fire { + --fa: "\f06d"; + --fa--fa: "\f06d\f06d"; } -.fa-toggle-on::before { - content: "\f205"; } +.fa-bed-pulse { + --fa: "\f487"; + --fa--fa: "\f487\f487"; } -.fa-person-walking::before { - content: "\f554"; } +.fa-procedures { + --fa: "\f487"; + --fa--fa: "\f487\f487"; } -.fa-walking::before { - content: "\f554"; } +.fa-shuttle-space { + --fa: "\f197"; + --fa--fa: "\f197\f197"; } -.fa-l::before { - content: "\4c"; } +.fa-space-shuttle { + --fa: "\f197"; + --fa--fa: "\f197\f197"; } -.fa-fire::before { - content: "\f06d"; } +.fa-face-laugh { + --fa: "\f599"; + --fa--fa: "\f599\f599"; } -.fa-bed-pulse::before { - content: "\f487"; } +.fa-laugh { + --fa: "\f599"; + --fa--fa: "\f599\f599"; } -.fa-procedures::before { - content: "\f487"; } +.fa-folder-open { + --fa: "\f07c"; + --fa--fa: "\f07c\f07c"; } -.fa-shuttle-space::before { - content: "\f197"; } +.fa-heart-circle-plus { + --fa: "\e500"; + --fa--fa: "\e500\e500"; } -.fa-space-shuttle::before { - content: "\f197"; } +.fa-code-fork { + --fa: "\e13b"; + --fa--fa: "\e13b\e13b"; } -.fa-face-laugh::before { - content: "\f599"; } +.fa-city { + --fa: "\f64f"; + --fa--fa: "\f64f\f64f"; } -.fa-laugh::before { - content: "\f599"; } +.fa-microphone-lines { + --fa: "\f3c9"; + --fa--fa: "\f3c9\f3c9"; } -.fa-folder-open::before { - content: "\f07c"; } +.fa-microphone-alt { + --fa: "\f3c9"; + --fa--fa: "\f3c9\f3c9"; } -.fa-heart-circle-plus::before { - content: "\e500"; } +.fa-pepper-hot { + --fa: "\f816"; + --fa--fa: "\f816\f816"; } -.fa-code-fork::before { - content: "\e13b"; } +.fa-unlock { + --fa: "\f09c"; + --fa--fa: "\f09c\f09c"; } -.fa-city::before { - content: "\f64f"; } +.fa-colon-sign { + --fa: "\e140"; + --fa--fa: "\e140\e140"; } -.fa-microphone-lines::before { - content: "\f3c9"; } +.fa-headset { + --fa: "\f590"; + --fa--fa: "\f590\f590"; } -.fa-microphone-alt::before { - content: "\f3c9"; } +.fa-store-slash { + --fa: "\e071"; + --fa--fa: "\e071\e071"; } -.fa-pepper-hot::before { - content: "\f816"; } +.fa-road-circle-xmark { + --fa: "\e566"; + --fa--fa: "\e566\e566"; } -.fa-unlock::before { - content: "\f09c"; } +.fa-user-minus { + --fa: "\f503"; + --fa--fa: "\f503\f503"; } -.fa-colon-sign::before { - content: "\e140"; } +.fa-mars-stroke-up { + --fa: "\f22a"; + --fa--fa: "\f22a\f22a"; } -.fa-headset::before { - content: "\f590"; } +.fa-mars-stroke-v { + --fa: "\f22a"; + --fa--fa: "\f22a\f22a"; } -.fa-store-slash::before { - content: "\e071"; } +.fa-champagne-glasses { + --fa: "\f79f"; + --fa--fa: "\f79f\f79f"; } -.fa-road-circle-xmark::before { - content: "\e566"; } +.fa-glass-cheers { + --fa: "\f79f"; + --fa--fa: "\f79f\f79f"; } -.fa-user-minus::before { - content: "\f503"; } +.fa-clipboard { + --fa: "\f328"; + --fa--fa: "\f328\f328"; } -.fa-mars-stroke-up::before { - content: "\f22a"; } +.fa-house-circle-exclamation { + --fa: "\e50a"; + --fa--fa: "\e50a\e50a"; } -.fa-mars-stroke-v::before { - content: "\f22a"; } +.fa-file-arrow-up { + --fa: "\f574"; + --fa--fa: "\f574\f574"; } -.fa-champagne-glasses::before { - content: "\f79f"; } +.fa-file-upload { + --fa: "\f574"; + --fa--fa: "\f574\f574"; } -.fa-glass-cheers::before { - content: "\f79f"; } +.fa-wifi { + --fa: "\f1eb"; + --fa--fa: "\f1eb\f1eb"; } -.fa-clipboard::before { - content: "\f328"; } +.fa-wifi-3 { + --fa: "\f1eb"; + --fa--fa: "\f1eb\f1eb"; } -.fa-house-circle-exclamation::before { - content: "\e50a"; } +.fa-wifi-strong { + --fa: "\f1eb"; + --fa--fa: "\f1eb\f1eb"; } -.fa-file-arrow-up::before { - content: "\f574"; } +.fa-bath { + --fa: "\f2cd"; + --fa--fa: "\f2cd\f2cd"; } -.fa-file-upload::before { - content: "\f574"; } +.fa-bathtub { + --fa: "\f2cd"; + --fa--fa: "\f2cd\f2cd"; } -.fa-wifi::before { - content: "\f1eb"; } +.fa-underline { + --fa: "\f0cd"; + --fa--fa: "\f0cd\f0cd"; } -.fa-wifi-3::before { - content: "\f1eb"; } +.fa-user-pen { + --fa: "\f4ff"; + --fa--fa: "\f4ff\f4ff"; } -.fa-wifi-strong::before { - content: "\f1eb"; } +.fa-user-edit { + --fa: "\f4ff"; + --fa--fa: "\f4ff\f4ff"; } -.fa-bath::before { - content: "\f2cd"; } +.fa-signature { + --fa: "\f5b7"; + --fa--fa: "\f5b7\f5b7"; } -.fa-bathtub::before { - content: "\f2cd"; } +.fa-stroopwafel { + --fa: "\f551"; + --fa--fa: "\f551\f551"; } -.fa-underline::before { - content: "\f0cd"; } +.fa-bold { + --fa: "\f032"; + --fa--fa: "\f032\f032"; } -.fa-user-pen::before { - content: "\f4ff"; } +.fa-anchor-lock { + --fa: "\e4ad"; + --fa--fa: "\e4ad\e4ad"; } -.fa-user-edit::before { - content: "\f4ff"; } +.fa-building-ngo { + --fa: "\e4d7"; + --fa--fa: "\e4d7\e4d7"; } -.fa-signature::before { - content: "\f5b7"; } +.fa-manat-sign { + --fa: "\e1d5"; + --fa--fa: "\e1d5\e1d5"; } -.fa-stroopwafel::before { - content: "\f551"; } +.fa-not-equal { + --fa: "\f53e"; + --fa--fa: "\f53e\f53e"; } -.fa-bold::before { - content: "\f032"; } +.fa-border-top-left { + --fa: "\f853"; + --fa--fa: "\f853\f853"; } -.fa-anchor-lock::before { - content: "\e4ad"; } +.fa-border-style { + --fa: "\f853"; + --fa--fa: "\f853\f853"; } -.fa-building-ngo::before { - content: "\e4d7"; } +.fa-map-location-dot { + --fa: "\f5a0"; + --fa--fa: "\f5a0\f5a0"; } -.fa-manat-sign::before { - content: "\e1d5"; } +.fa-map-marked-alt { + --fa: "\f5a0"; + --fa--fa: "\f5a0\f5a0"; } -.fa-not-equal::before { - content: "\f53e"; } +.fa-jedi { + --fa: "\f669"; + --fa--fa: "\f669\f669"; } -.fa-border-top-left::before { - content: "\f853"; } +.fa-square-poll-vertical { + --fa: "\f681"; + --fa--fa: "\f681\f681"; } -.fa-border-style::before { - content: "\f853"; } +.fa-poll { + --fa: "\f681"; + --fa--fa: "\f681\f681"; } -.fa-map-location-dot::before { - content: "\f5a0"; } +.fa-mug-hot { + --fa: "\f7b6"; + --fa--fa: "\f7b6\f7b6"; } -.fa-map-marked-alt::before { - content: "\f5a0"; } +.fa-car-battery { + --fa: "\f5df"; + --fa--fa: "\f5df\f5df"; } -.fa-jedi::before { - content: "\f669"; } +.fa-battery-car { + --fa: "\f5df"; + --fa--fa: "\f5df\f5df"; } -.fa-square-poll-vertical::before { - content: "\f681"; } +.fa-gift { + --fa: "\f06b"; + --fa--fa: "\f06b\f06b"; } -.fa-poll::before { - content: "\f681"; } +.fa-dice-two { + --fa: "\f528"; + --fa--fa: "\f528\f528"; } -.fa-mug-hot::before { - content: "\f7b6"; } +.fa-chess-queen { + --fa: "\f445"; + --fa--fa: "\f445\f445"; } -.fa-car-battery::before { - content: "\f5df"; } +.fa-glasses { + --fa: "\f530"; + --fa--fa: "\f530\f530"; } -.fa-battery-car::before { - content: "\f5df"; } +.fa-chess-board { + --fa: "\f43c"; + --fa--fa: "\f43c\f43c"; } -.fa-gift::before { - content: "\f06b"; } +.fa-building-circle-check { + --fa: "\e4d2"; + --fa--fa: "\e4d2\e4d2"; } -.fa-dice-two::before { - content: "\f528"; } +.fa-person-chalkboard { + --fa: "\e53d"; + --fa--fa: "\e53d\e53d"; } -.fa-chess-queen::before { - content: "\f445"; } +.fa-mars-stroke-right { + --fa: "\f22b"; + --fa--fa: "\f22b\f22b"; } -.fa-glasses::before { - content: "\f530"; } +.fa-mars-stroke-h { + --fa: "\f22b"; + --fa--fa: "\f22b\f22b"; } -.fa-chess-board::before { - content: "\f43c"; } +.fa-hand-back-fist { + --fa: "\f255"; + --fa--fa: "\f255\f255"; } -.fa-building-circle-check::before { - content: "\e4d2"; } +.fa-hand-rock { + --fa: "\f255"; + --fa--fa: "\f255\f255"; } -.fa-person-chalkboard::before { - content: "\e53d"; } +.fa-square-caret-up { + --fa: "\f151"; + --fa--fa: "\f151\f151"; } -.fa-mars-stroke-right::before { - content: "\f22b"; } +.fa-caret-square-up { + --fa: "\f151"; + --fa--fa: "\f151\f151"; } -.fa-mars-stroke-h::before { - content: "\f22b"; } +.fa-cloud-showers-water { + --fa: "\e4e4"; + --fa--fa: "\e4e4\e4e4"; } -.fa-hand-back-fist::before { - content: "\f255"; } +.fa-chart-bar { + --fa: "\f080"; + --fa--fa: "\f080\f080"; } -.fa-hand-rock::before { - content: "\f255"; } +.fa-bar-chart { + --fa: "\f080"; + --fa--fa: "\f080\f080"; } -.fa-square-caret-up::before { - content: "\f151"; } +.fa-hands-bubbles { + --fa: "\e05e"; + --fa--fa: "\e05e\e05e"; } -.fa-caret-square-up::before { - content: "\f151"; } +.fa-hands-wash { + --fa: "\e05e"; + --fa--fa: "\e05e\e05e"; } -.fa-cloud-showers-water::before { - content: "\e4e4"; } +.fa-less-than-equal { + --fa: "\f537"; + --fa--fa: "\f537\f537"; } -.fa-chart-bar::before { - content: "\f080"; } +.fa-train { + --fa: "\f238"; + --fa--fa: "\f238\f238"; } -.fa-bar-chart::before { - content: "\f080"; } +.fa-eye-low-vision { + --fa: "\f2a8"; + --fa--fa: "\f2a8\f2a8"; } -.fa-hands-bubbles::before { - content: "\e05e"; } +.fa-low-vision { + --fa: "\f2a8"; + --fa--fa: "\f2a8\f2a8"; } -.fa-hands-wash::before { - content: "\e05e"; } +.fa-crow { + --fa: "\f520"; + --fa--fa: "\f520\f520"; } -.fa-less-than-equal::before { - content: "\f537"; } +.fa-sailboat { + --fa: "\e445"; + --fa--fa: "\e445\e445"; } -.fa-train::before { - content: "\f238"; } +.fa-window-restore { + --fa: "\f2d2"; + --fa--fa: "\f2d2\f2d2"; } -.fa-eye-low-vision::before { - content: "\f2a8"; } +.fa-square-plus { + --fa: "\f0fe"; + --fa--fa: "\f0fe\f0fe"; } -.fa-low-vision::before { - content: "\f2a8"; } +.fa-plus-square { + --fa: "\f0fe"; + --fa--fa: "\f0fe\f0fe"; } -.fa-crow::before { - content: "\f520"; } +.fa-torii-gate { + --fa: "\f6a1"; + --fa--fa: "\f6a1\f6a1"; } -.fa-sailboat::before { - content: "\e445"; } +.fa-frog { + --fa: "\f52e"; + --fa--fa: "\f52e\f52e"; } -.fa-window-restore::before { - content: "\f2d2"; } +.fa-bucket { + --fa: "\e4cf"; + --fa--fa: "\e4cf\e4cf"; } -.fa-square-plus::before { - content: "\f0fe"; } +.fa-image { + --fa: "\f03e"; + --fa--fa: "\f03e\f03e"; } -.fa-plus-square::before { - content: "\f0fe"; } +.fa-microphone { + --fa: "\f130"; + --fa--fa: "\f130\f130"; } -.fa-torii-gate::before { - content: "\f6a1"; } +.fa-cow { + --fa: "\f6c8"; + --fa--fa: "\f6c8\f6c8"; } -.fa-frog::before { - content: "\f52e"; } +.fa-caret-up { + --fa: "\f0d8"; + --fa--fa: "\f0d8\f0d8"; } -.fa-bucket::before { - content: "\e4cf"; } +.fa-screwdriver { + --fa: "\f54a"; + --fa--fa: "\f54a\f54a"; } -.fa-image::before { - content: "\f03e"; } +.fa-folder-closed { + --fa: "\e185"; + --fa--fa: "\e185\e185"; } -.fa-microphone::before { - content: "\f130"; } +.fa-house-tsunami { + --fa: "\e515"; + --fa--fa: "\e515\e515"; } -.fa-cow::before { - content: "\f6c8"; } +.fa-square-nfi { + --fa: "\e576"; + --fa--fa: "\e576\e576"; } -.fa-caret-up::before { - content: "\f0d8"; } +.fa-arrow-up-from-ground-water { + --fa: "\e4b5"; + --fa--fa: "\e4b5\e4b5"; } -.fa-screwdriver::before { - content: "\f54a"; } +.fa-martini-glass { + --fa: "\f57b"; + --fa--fa: "\f57b\f57b"; } -.fa-folder-closed::before { - content: "\e185"; } +.fa-glass-martini-alt { + --fa: "\f57b"; + --fa--fa: "\f57b\f57b"; } -.fa-house-tsunami::before { - content: "\e515"; } +.fa-square-binary { + --fa: "\e69b"; + --fa--fa: "\e69b\e69b"; } -.fa-square-nfi::before { - content: "\e576"; } +.fa-rotate-left { + --fa: "\f2ea"; + --fa--fa: "\f2ea\f2ea"; } -.fa-arrow-up-from-ground-water::before { - content: "\e4b5"; } +.fa-rotate-back { + --fa: "\f2ea"; + --fa--fa: "\f2ea\f2ea"; } -.fa-martini-glass::before { - content: "\f57b"; } +.fa-rotate-backward { + --fa: "\f2ea"; + --fa--fa: "\f2ea\f2ea"; } -.fa-glass-martini-alt::before { - content: "\f57b"; } +.fa-undo-alt { + --fa: "\f2ea"; + --fa--fa: "\f2ea\f2ea"; } -.fa-rotate-left::before { - content: "\f2ea"; } +.fa-table-columns { + --fa: "\f0db"; + --fa--fa: "\f0db\f0db"; } -.fa-rotate-back::before { - content: "\f2ea"; } +.fa-columns { + --fa: "\f0db"; + --fa--fa: "\f0db\f0db"; } -.fa-rotate-backward::before { - content: "\f2ea"; } +.fa-lemon { + --fa: "\f094"; + --fa--fa: "\f094\f094"; } -.fa-undo-alt::before { - content: "\f2ea"; } +.fa-head-side-mask { + --fa: "\e063"; + --fa--fa: "\e063\e063"; } -.fa-table-columns::before { - content: "\f0db"; } +.fa-handshake { + --fa: "\f2b5"; + --fa--fa: "\f2b5\f2b5"; } -.fa-columns::before { - content: "\f0db"; } +.fa-gem { + --fa: "\f3a5"; + --fa--fa: "\f3a5\f3a5"; } -.fa-lemon::before { - content: "\f094"; } +.fa-dolly { + --fa: "\f472"; + --fa--fa: "\f472\f472"; } -.fa-head-side-mask::before { - content: "\e063"; } +.fa-dolly-box { + --fa: "\f472"; + --fa--fa: "\f472\f472"; } -.fa-handshake::before { - content: "\f2b5"; } +.fa-smoking { + --fa: "\f48d"; + --fa--fa: "\f48d\f48d"; } -.fa-gem::before { - content: "\f3a5"; } +.fa-minimize { + --fa: "\f78c"; + --fa--fa: "\f78c\f78c"; } -.fa-dolly::before { - content: "\f472"; } +.fa-compress-arrows-alt { + --fa: "\f78c"; + --fa--fa: "\f78c\f78c"; } -.fa-dolly-box::before { - content: "\f472"; } +.fa-monument { + --fa: "\f5a6"; + --fa--fa: "\f5a6\f5a6"; } -.fa-smoking::before { - content: "\f48d"; } +.fa-snowplow { + --fa: "\f7d2"; + --fa--fa: "\f7d2\f7d2"; } -.fa-minimize::before { - content: "\f78c"; } +.fa-angles-right { + --fa: "\f101"; + --fa--fa: "\f101\f101"; } -.fa-compress-arrows-alt::before { - content: "\f78c"; } +.fa-angle-double-right { + --fa: "\f101"; + --fa--fa: "\f101\f101"; } -.fa-monument::before { - content: "\f5a6"; } +.fa-cannabis { + --fa: "\f55f"; + --fa--fa: "\f55f\f55f"; } -.fa-snowplow::before { - content: "\f7d2"; } +.fa-circle-play { + --fa: "\f144"; + --fa--fa: "\f144\f144"; } -.fa-angles-right::before { - content: "\f101"; } +.fa-play-circle { + --fa: "\f144"; + --fa--fa: "\f144\f144"; } -.fa-angle-double-right::before { - content: "\f101"; } +.fa-tablets { + --fa: "\f490"; + --fa--fa: "\f490\f490"; } -.fa-cannabis::before { - content: "\f55f"; } +.fa-ethernet { + --fa: "\f796"; + --fa--fa: "\f796\f796"; } -.fa-circle-play::before { - content: "\f144"; } +.fa-euro-sign { + --fa: "\f153"; + --fa--fa: "\f153\f153"; } -.fa-play-circle::before { - content: "\f144"; } +.fa-eur { + --fa: "\f153"; + --fa--fa: "\f153\f153"; } -.fa-tablets::before { - content: "\f490"; } +.fa-euro { + --fa: "\f153"; + --fa--fa: "\f153\f153"; } -.fa-ethernet::before { - content: "\f796"; } +.fa-chair { + --fa: "\f6c0"; + --fa--fa: "\f6c0\f6c0"; } -.fa-euro-sign::before { - content: "\f153"; } +.fa-circle-check { + --fa: "\f058"; + --fa--fa: "\f058\f058"; } -.fa-eur::before { - content: "\f153"; } +.fa-check-circle { + --fa: "\f058"; + --fa--fa: "\f058\f058"; } -.fa-euro::before { - content: "\f153"; } +.fa-circle-stop { + --fa: "\f28d"; + --fa--fa: "\f28d\f28d"; } -.fa-chair::before { - content: "\f6c0"; } +.fa-stop-circle { + --fa: "\f28d"; + --fa--fa: "\f28d\f28d"; } -.fa-circle-check::before { - content: "\f058"; } +.fa-compass-drafting { + --fa: "\f568"; + --fa--fa: "\f568\f568"; } -.fa-check-circle::before { - content: "\f058"; } +.fa-drafting-compass { + --fa: "\f568"; + --fa--fa: "\f568\f568"; } -.fa-circle-stop::before { - content: "\f28d"; } +.fa-plate-wheat { + --fa: "\e55a"; + --fa--fa: "\e55a\e55a"; } -.fa-stop-circle::before { - content: "\f28d"; } +.fa-icicles { + --fa: "\f7ad"; + --fa--fa: "\f7ad\f7ad"; } -.fa-compass-drafting::before { - content: "\f568"; } +.fa-person-shelter { + --fa: "\e54f"; + --fa--fa: "\e54f\e54f"; } -.fa-drafting-compass::before { - content: "\f568"; } +.fa-neuter { + --fa: "\f22c"; + --fa--fa: "\f22c\f22c"; } -.fa-plate-wheat::before { - content: "\e55a"; } +.fa-id-badge { + --fa: "\f2c1"; + --fa--fa: "\f2c1\f2c1"; } -.fa-icicles::before { - content: "\f7ad"; } +.fa-marker { + --fa: "\f5a1"; + --fa--fa: "\f5a1\f5a1"; } -.fa-person-shelter::before { - content: "\e54f"; } +.fa-face-laugh-beam { + --fa: "\f59a"; + --fa--fa: "\f59a\f59a"; } -.fa-neuter::before { - content: "\f22c"; } +.fa-laugh-beam { + --fa: "\f59a"; + --fa--fa: "\f59a\f59a"; } -.fa-id-badge::before { - content: "\f2c1"; } +.fa-helicopter-symbol { + --fa: "\e502"; + --fa--fa: "\e502\e502"; } -.fa-marker::before { - content: "\f5a1"; } +.fa-universal-access { + --fa: "\f29a"; + --fa--fa: "\f29a\f29a"; } -.fa-face-laugh-beam::before { - content: "\f59a"; } +.fa-circle-chevron-up { + --fa: "\f139"; + --fa--fa: "\f139\f139"; } -.fa-laugh-beam::before { - content: "\f59a"; } +.fa-chevron-circle-up { + --fa: "\f139"; + --fa--fa: "\f139\f139"; } -.fa-helicopter-symbol::before { - content: "\e502"; } +.fa-lari-sign { + --fa: "\e1c8"; + --fa--fa: "\e1c8\e1c8"; } -.fa-universal-access::before { - content: "\f29a"; } +.fa-volcano { + --fa: "\f770"; + --fa--fa: "\f770\f770"; } -.fa-circle-chevron-up::before { - content: "\f139"; } +.fa-person-walking-dashed-line-arrow-right { + --fa: "\e553"; + --fa--fa: "\e553\e553"; } -.fa-chevron-circle-up::before { - content: "\f139"; } +.fa-sterling-sign { + --fa: "\f154"; + --fa--fa: "\f154\f154"; } -.fa-lari-sign::before { - content: "\e1c8"; } +.fa-gbp { + --fa: "\f154"; + --fa--fa: "\f154\f154"; } -.fa-volcano::before { - content: "\f770"; } +.fa-pound-sign { + --fa: "\f154"; + --fa--fa: "\f154\f154"; } -.fa-person-walking-dashed-line-arrow-right::before { - content: "\e553"; } +.fa-viruses { + --fa: "\e076"; + --fa--fa: "\e076\e076"; } -.fa-sterling-sign::before { - content: "\f154"; } +.fa-square-person-confined { + --fa: "\e577"; + --fa--fa: "\e577\e577"; } -.fa-gbp::before { - content: "\f154"; } +.fa-user-tie { + --fa: "\f508"; + --fa--fa: "\f508\f508"; } -.fa-pound-sign::before { - content: "\f154"; } +.fa-arrow-down-long { + --fa: "\f175"; + --fa--fa: "\f175\f175"; } -.fa-viruses::before { - content: "\e076"; } +.fa-long-arrow-down { + --fa: "\f175"; + --fa--fa: "\f175\f175"; } -.fa-square-person-confined::before { - content: "\e577"; } +.fa-tent-arrow-down-to-line { + --fa: "\e57e"; + --fa--fa: "\e57e\e57e"; } -.fa-user-tie::before { - content: "\f508"; } +.fa-certificate { + --fa: "\f0a3"; + --fa--fa: "\f0a3\f0a3"; } -.fa-arrow-down-long::before { - content: "\f175"; } +.fa-reply-all { + --fa: "\f122"; + --fa--fa: "\f122\f122"; } -.fa-long-arrow-down::before { - content: "\f175"; } +.fa-mail-reply-all { + --fa: "\f122"; + --fa--fa: "\f122\f122"; } -.fa-tent-arrow-down-to-line::before { - content: "\e57e"; } +.fa-suitcase { + --fa: "\f0f2"; + --fa--fa: "\f0f2\f0f2"; } -.fa-certificate::before { - content: "\f0a3"; } +.fa-person-skating { + --fa: "\f7c5"; + --fa--fa: "\f7c5\f7c5"; } -.fa-reply-all::before { - content: "\f122"; } +.fa-skating { + --fa: "\f7c5"; + --fa--fa: "\f7c5\f7c5"; } -.fa-mail-reply-all::before { - content: "\f122"; } +.fa-filter-circle-dollar { + --fa: "\f662"; + --fa--fa: "\f662\f662"; } -.fa-suitcase::before { - content: "\f0f2"; } +.fa-funnel-dollar { + --fa: "\f662"; + --fa--fa: "\f662\f662"; } -.fa-person-skating::before { - content: "\f7c5"; } +.fa-camera-retro { + --fa: "\f083"; + --fa--fa: "\f083\f083"; } -.fa-skating::before { - content: "\f7c5"; } +.fa-circle-arrow-down { + --fa: "\f0ab"; + --fa--fa: "\f0ab\f0ab"; } -.fa-filter-circle-dollar::before { - content: "\f662"; } +.fa-arrow-circle-down { + --fa: "\f0ab"; + --fa--fa: "\f0ab\f0ab"; } -.fa-funnel-dollar::before { - content: "\f662"; } +.fa-file-import { + --fa: "\f56f"; + --fa--fa: "\f56f\f56f"; } -.fa-camera-retro::before { - content: "\f083"; } +.fa-arrow-right-to-file { + --fa: "\f56f"; + --fa--fa: "\f56f\f56f"; } -.fa-circle-arrow-down::before { - content: "\f0ab"; } +.fa-square-arrow-up-right { + --fa: "\f14c"; + --fa--fa: "\f14c\f14c"; } -.fa-arrow-circle-down::before { - content: "\f0ab"; } +.fa-external-link-square { + --fa: "\f14c"; + --fa--fa: "\f14c\f14c"; } -.fa-file-import::before { - content: "\f56f"; } +.fa-box-open { + --fa: "\f49e"; + --fa--fa: "\f49e\f49e"; } -.fa-arrow-right-to-file::before { - content: "\f56f"; } +.fa-scroll { + --fa: "\f70e"; + --fa--fa: "\f70e\f70e"; } -.fa-square-arrow-up-right::before { - content: "\f14c"; } +.fa-spa { + --fa: "\f5bb"; + --fa--fa: "\f5bb\f5bb"; } -.fa-external-link-square::before { - content: "\f14c"; } +.fa-location-pin-lock { + --fa: "\e51f"; + --fa--fa: "\e51f\e51f"; } -.fa-box-open::before { - content: "\f49e"; } +.fa-pause { + --fa: "\f04c"; + --fa--fa: "\f04c\f04c"; } -.fa-scroll::before { - content: "\f70e"; } +.fa-hill-avalanche { + --fa: "\e507"; + --fa--fa: "\e507\e507"; } -.fa-spa::before { - content: "\f5bb"; } +.fa-temperature-empty { + --fa: "\f2cb"; + --fa--fa: "\f2cb\f2cb"; } -.fa-location-pin-lock::before { - content: "\e51f"; } +.fa-temperature-0 { + --fa: "\f2cb"; + --fa--fa: "\f2cb\f2cb"; } -.fa-pause::before { - content: "\f04c"; } +.fa-thermometer-0 { + --fa: "\f2cb"; + --fa--fa: "\f2cb\f2cb"; } -.fa-hill-avalanche::before { - content: "\e507"; } +.fa-thermometer-empty { + --fa: "\f2cb"; + --fa--fa: "\f2cb\f2cb"; } -.fa-temperature-empty::before { - content: "\f2cb"; } +.fa-bomb { + --fa: "\f1e2"; + --fa--fa: "\f1e2\f1e2"; } -.fa-temperature-0::before { - content: "\f2cb"; } +.fa-registered { + --fa: "\f25d"; + --fa--fa: "\f25d\f25d"; } -.fa-thermometer-0::before { - content: "\f2cb"; } +.fa-address-card { + --fa: "\f2bb"; + --fa--fa: "\f2bb\f2bb"; } -.fa-thermometer-empty::before { - content: "\f2cb"; } +.fa-contact-card { + --fa: "\f2bb"; + --fa--fa: "\f2bb\f2bb"; } -.fa-bomb::before { - content: "\f1e2"; } +.fa-vcard { + --fa: "\f2bb"; + --fa--fa: "\f2bb\f2bb"; } -.fa-registered::before { - content: "\f25d"; } +.fa-scale-unbalanced-flip { + --fa: "\f516"; + --fa--fa: "\f516\f516"; } -.fa-address-card::before { - content: "\f2bb"; } +.fa-balance-scale-right { + --fa: "\f516"; + --fa--fa: "\f516\f516"; } -.fa-contact-card::before { - content: "\f2bb"; } +.fa-subscript { + --fa: "\f12c"; + --fa--fa: "\f12c\f12c"; } -.fa-vcard::before { - content: "\f2bb"; } +.fa-diamond-turn-right { + --fa: "\f5eb"; + --fa--fa: "\f5eb\f5eb"; } -.fa-scale-unbalanced-flip::before { - content: "\f516"; } +.fa-directions { + --fa: "\f5eb"; + --fa--fa: "\f5eb\f5eb"; } -.fa-balance-scale-right::before { - content: "\f516"; } +.fa-burst { + --fa: "\e4dc"; + --fa--fa: "\e4dc\e4dc"; } -.fa-subscript::before { - content: "\f12c"; } +.fa-house-laptop { + --fa: "\e066"; + --fa--fa: "\e066\e066"; } -.fa-diamond-turn-right::before { - content: "\f5eb"; } +.fa-laptop-house { + --fa: "\e066"; + --fa--fa: "\e066\e066"; } -.fa-directions::before { - content: "\f5eb"; } +.fa-face-tired { + --fa: "\f5c8"; + --fa--fa: "\f5c8\f5c8"; } -.fa-burst::before { - content: "\e4dc"; } +.fa-tired { + --fa: "\f5c8"; + --fa--fa: "\f5c8\f5c8"; } -.fa-house-laptop::before { - content: "\e066"; } +.fa-money-bills { + --fa: "\e1f3"; + --fa--fa: "\e1f3\e1f3"; } -.fa-laptop-house::before { - content: "\e066"; } +.fa-smog { + --fa: "\f75f"; + --fa--fa: "\f75f\f75f"; } -.fa-face-tired::before { - content: "\f5c8"; } +.fa-crutch { + --fa: "\f7f7"; + --fa--fa: "\f7f7\f7f7"; } -.fa-tired::before { - content: "\f5c8"; } +.fa-cloud-arrow-up { + --fa: "\f0ee"; + --fa--fa: "\f0ee\f0ee"; } -.fa-money-bills::before { - content: "\e1f3"; } +.fa-cloud-upload { + --fa: "\f0ee"; + --fa--fa: "\f0ee\f0ee"; } -.fa-smog::before { - content: "\f75f"; } +.fa-cloud-upload-alt { + --fa: "\f0ee"; + --fa--fa: "\f0ee\f0ee"; } -.fa-crutch::before { - content: "\f7f7"; } +.fa-palette { + --fa: "\f53f"; + --fa--fa: "\f53f\f53f"; } -.fa-cloud-arrow-up::before { - content: "\f0ee"; } +.fa-arrows-turn-right { + --fa: "\e4c0"; + --fa--fa: "\e4c0\e4c0"; } -.fa-cloud-upload::before { - content: "\f0ee"; } +.fa-vest { + --fa: "\e085"; + --fa--fa: "\e085\e085"; } -.fa-cloud-upload-alt::before { - content: "\f0ee"; } +.fa-ferry { + --fa: "\e4ea"; + --fa--fa: "\e4ea\e4ea"; } -.fa-palette::before { - content: "\f53f"; } +.fa-arrows-down-to-people { + --fa: "\e4b9"; + --fa--fa: "\e4b9\e4b9"; } -.fa-arrows-turn-right::before { - content: "\e4c0"; } +.fa-seedling { + --fa: "\f4d8"; + --fa--fa: "\f4d8\f4d8"; } -.fa-vest::before { - content: "\e085"; } +.fa-sprout { + --fa: "\f4d8"; + --fa--fa: "\f4d8\f4d8"; } -.fa-ferry::before { - content: "\e4ea"; } +.fa-left-right { + --fa: "\f337"; + --fa--fa: "\f337\f337"; } -.fa-arrows-down-to-people::before { - content: "\e4b9"; } +.fa-arrows-alt-h { + --fa: "\f337"; + --fa--fa: "\f337\f337"; } -.fa-seedling::before { - content: "\f4d8"; } +.fa-boxes-packing { + --fa: "\e4c7"; + --fa--fa: "\e4c7\e4c7"; } -.fa-sprout::before { - content: "\f4d8"; } +.fa-circle-arrow-left { + --fa: "\f0a8"; + --fa--fa: "\f0a8\f0a8"; } -.fa-left-right::before { - content: "\f337"; } +.fa-arrow-circle-left { + --fa: "\f0a8"; + --fa--fa: "\f0a8\f0a8"; } -.fa-arrows-alt-h::before { - content: "\f337"; } +.fa-group-arrows-rotate { + --fa: "\e4f6"; + --fa--fa: "\e4f6\e4f6"; } -.fa-boxes-packing::before { - content: "\e4c7"; } +.fa-bowl-food { + --fa: "\e4c6"; + --fa--fa: "\e4c6\e4c6"; } -.fa-circle-arrow-left::before { - content: "\f0a8"; } +.fa-candy-cane { + --fa: "\f786"; + --fa--fa: "\f786\f786"; } -.fa-arrow-circle-left::before { - content: "\f0a8"; } +.fa-arrow-down-wide-short { + --fa: "\f160"; + --fa--fa: "\f160\f160"; } -.fa-group-arrows-rotate::before { - content: "\e4f6"; } +.fa-sort-amount-asc { + --fa: "\f160"; + --fa--fa: "\f160\f160"; } -.fa-bowl-food::before { - content: "\e4c6"; } +.fa-sort-amount-down { + --fa: "\f160"; + --fa--fa: "\f160\f160"; } -.fa-candy-cane::before { - content: "\f786"; } +.fa-cloud-bolt { + --fa: "\f76c"; + --fa--fa: "\f76c\f76c"; } -.fa-arrow-down-wide-short::before { - content: "\f160"; } +.fa-thunderstorm { + --fa: "\f76c"; + --fa--fa: "\f76c\f76c"; } -.fa-sort-amount-asc::before { - content: "\f160"; } +.fa-text-slash { + --fa: "\f87d"; + --fa--fa: "\f87d\f87d"; } -.fa-sort-amount-down::before { - content: "\f160"; } +.fa-remove-format { + --fa: "\f87d"; + --fa--fa: "\f87d\f87d"; } -.fa-cloud-bolt::before { - content: "\f76c"; } +.fa-face-smile-wink { + --fa: "\f4da"; + --fa--fa: "\f4da\f4da"; } -.fa-thunderstorm::before { - content: "\f76c"; } +.fa-smile-wink { + --fa: "\f4da"; + --fa--fa: "\f4da\f4da"; } -.fa-text-slash::before { - content: "\f87d"; } +.fa-file-word { + --fa: "\f1c2"; + --fa--fa: "\f1c2\f1c2"; } -.fa-remove-format::before { - content: "\f87d"; } +.fa-file-powerpoint { + --fa: "\f1c4"; + --fa--fa: "\f1c4\f1c4"; } -.fa-face-smile-wink::before { - content: "\f4da"; } +.fa-arrows-left-right { + --fa: "\f07e"; + --fa--fa: "\f07e\f07e"; } -.fa-smile-wink::before { - content: "\f4da"; } +.fa-arrows-h { + --fa: "\f07e"; + --fa--fa: "\f07e\f07e"; } -.fa-file-word::before { - content: "\f1c2"; } +.fa-house-lock { + --fa: "\e510"; + --fa--fa: "\e510\e510"; } -.fa-file-powerpoint::before { - content: "\f1c4"; } +.fa-cloud-arrow-down { + --fa: "\f0ed"; + --fa--fa: "\f0ed\f0ed"; } -.fa-arrows-left-right::before { - content: "\f07e"; } +.fa-cloud-download { + --fa: "\f0ed"; + --fa--fa: "\f0ed\f0ed"; } -.fa-arrows-h::before { - content: "\f07e"; } +.fa-cloud-download-alt { + --fa: "\f0ed"; + --fa--fa: "\f0ed\f0ed"; } -.fa-house-lock::before { - content: "\e510"; } +.fa-children { + --fa: "\e4e1"; + --fa--fa: "\e4e1\e4e1"; } -.fa-cloud-arrow-down::before { - content: "\f0ed"; } +.fa-chalkboard { + --fa: "\f51b"; + --fa--fa: "\f51b\f51b"; } -.fa-cloud-download::before { - content: "\f0ed"; } +.fa-blackboard { + --fa: "\f51b"; + --fa--fa: "\f51b\f51b"; } -.fa-cloud-download-alt::before { - content: "\f0ed"; } +.fa-user-large-slash { + --fa: "\f4fa"; + --fa--fa: "\f4fa\f4fa"; } -.fa-children::before { - content: "\e4e1"; } +.fa-user-alt-slash { + --fa: "\f4fa"; + --fa--fa: "\f4fa\f4fa"; } -.fa-chalkboard::before { - content: "\f51b"; } +.fa-envelope-open { + --fa: "\f2b6"; + --fa--fa: "\f2b6\f2b6"; } -.fa-blackboard::before { - content: "\f51b"; } +.fa-handshake-simple-slash { + --fa: "\e05f"; + --fa--fa: "\e05f\e05f"; } -.fa-user-large-slash::before { - content: "\f4fa"; } +.fa-handshake-alt-slash { + --fa: "\e05f"; + --fa--fa: "\e05f\e05f"; } -.fa-user-alt-slash::before { - content: "\f4fa"; } +.fa-mattress-pillow { + --fa: "\e525"; + --fa--fa: "\e525\e525"; } -.fa-envelope-open::before { - content: "\f2b6"; } +.fa-guarani-sign { + --fa: "\e19a"; + --fa--fa: "\e19a\e19a"; } -.fa-handshake-simple-slash::before { - content: "\e05f"; } +.fa-arrows-rotate { + --fa: "\f021"; + --fa--fa: "\f021\f021"; } -.fa-handshake-alt-slash::before { - content: "\e05f"; } +.fa-refresh { + --fa: "\f021"; + --fa--fa: "\f021\f021"; } -.fa-mattress-pillow::before { - content: "\e525"; } +.fa-sync { + --fa: "\f021"; + --fa--fa: "\f021\f021"; } -.fa-guarani-sign::before { - content: "\e19a"; } +.fa-fire-extinguisher { + --fa: "\f134"; + --fa--fa: "\f134\f134"; } -.fa-arrows-rotate::before { - content: "\f021"; } +.fa-cruzeiro-sign { + --fa: "\e152"; + --fa--fa: "\e152\e152"; } -.fa-refresh::before { - content: "\f021"; } +.fa-greater-than-equal { + --fa: "\f532"; + --fa--fa: "\f532\f532"; } -.fa-sync::before { - content: "\f021"; } +.fa-shield-halved { + --fa: "\f3ed"; + --fa--fa: "\f3ed\f3ed"; } -.fa-fire-extinguisher::before { - content: "\f134"; } +.fa-shield-alt { + --fa: "\f3ed"; + --fa--fa: "\f3ed\f3ed"; } -.fa-cruzeiro-sign::before { - content: "\e152"; } +.fa-book-atlas { + --fa: "\f558"; + --fa--fa: "\f558\f558"; } -.fa-greater-than-equal::before { - content: "\f532"; } +.fa-atlas { + --fa: "\f558"; + --fa--fa: "\f558\f558"; } -.fa-shield-halved::before { - content: "\f3ed"; } +.fa-virus { + --fa: "\e074"; + --fa--fa: "\e074\e074"; } -.fa-shield-alt::before { - content: "\f3ed"; } +.fa-envelope-circle-check { + --fa: "\e4e8"; + --fa--fa: "\e4e8\e4e8"; } -.fa-book-atlas::before { - content: "\f558"; } +.fa-layer-group { + --fa: "\f5fd"; + --fa--fa: "\f5fd\f5fd"; } -.fa-atlas::before { - content: "\f558"; } +.fa-arrows-to-dot { + --fa: "\e4be"; + --fa--fa: "\e4be\e4be"; } -.fa-virus::before { - content: "\e074"; } +.fa-archway { + --fa: "\f557"; + --fa--fa: "\f557\f557"; } -.fa-envelope-circle-check::before { - content: "\e4e8"; } +.fa-heart-circle-check { + --fa: "\e4fd"; + --fa--fa: "\e4fd\e4fd"; } -.fa-layer-group::before { - content: "\f5fd"; } +.fa-house-chimney-crack { + --fa: "\f6f1"; + --fa--fa: "\f6f1\f6f1"; } -.fa-arrows-to-dot::before { - content: "\e4be"; } +.fa-house-damage { + --fa: "\f6f1"; + --fa--fa: "\f6f1\f6f1"; } -.fa-archway::before { - content: "\f557"; } +.fa-file-zipper { + --fa: "\f1c6"; + --fa--fa: "\f1c6\f1c6"; } -.fa-heart-circle-check::before { - content: "\e4fd"; } +.fa-file-archive { + --fa: "\f1c6"; + --fa--fa: "\f1c6\f1c6"; } -.fa-house-chimney-crack::before { - content: "\f6f1"; } +.fa-square { + --fa: "\f0c8"; + --fa--fa: "\f0c8\f0c8"; } -.fa-house-damage::before { - content: "\f6f1"; } +.fa-martini-glass-empty { + --fa: "\f000"; + --fa--fa: "\f000\f000"; } -.fa-file-zipper::before { - content: "\f1c6"; } +.fa-glass-martini { + --fa: "\f000"; + --fa--fa: "\f000\f000"; } -.fa-file-archive::before { - content: "\f1c6"; } +.fa-couch { + --fa: "\f4b8"; + --fa--fa: "\f4b8\f4b8"; } -.fa-square::before { - content: "\f0c8"; } +.fa-cedi-sign { + --fa: "\e0df"; + --fa--fa: "\e0df\e0df"; } -.fa-martini-glass-empty::before { - content: "\f000"; } +.fa-italic { + --fa: "\f033"; + --fa--fa: "\f033\f033"; } -.fa-glass-martini::before { - content: "\f000"; } +.fa-table-cells-column-lock { + --fa: "\e678"; + --fa--fa: "\e678\e678"; } -.fa-couch::before { - content: "\f4b8"; } +.fa-church { + --fa: "\f51d"; + --fa--fa: "\f51d\f51d"; } -.fa-cedi-sign::before { - content: "\e0df"; } +.fa-comments-dollar { + --fa: "\f653"; + --fa--fa: "\f653\f653"; } -.fa-italic::before { - content: "\f033"; } +.fa-democrat { + --fa: "\f747"; + --fa--fa: "\f747\f747"; } -.fa-table-cells-column-lock::before { - content: "\e678"; } +.fa-z { + --fa: "\5a"; + --fa--fa: "\5a\5a"; } -.fa-church::before { - content: "\f51d"; } +.fa-person-skiing { + --fa: "\f7c9"; + --fa--fa: "\f7c9\f7c9"; } -.fa-comments-dollar::before { - content: "\f653"; } +.fa-skiing { + --fa: "\f7c9"; + --fa--fa: "\f7c9\f7c9"; } -.fa-democrat::before { - content: "\f747"; } +.fa-road-lock { + --fa: "\e567"; + --fa--fa: "\e567\e567"; } -.fa-z::before { - content: "\5a"; } +.fa-a { + --fa: "\41"; + --fa--fa: "\41\41"; } -.fa-person-skiing::before { - content: "\f7c9"; } +.fa-temperature-arrow-down { + --fa: "\e03f"; + --fa--fa: "\e03f\e03f"; } -.fa-skiing::before { - content: "\f7c9"; } +.fa-temperature-down { + --fa: "\e03f"; + --fa--fa: "\e03f\e03f"; } -.fa-road-lock::before { - content: "\e567"; } +.fa-feather-pointed { + --fa: "\f56b"; + --fa--fa: "\f56b\f56b"; } -.fa-a::before { - content: "\41"; } +.fa-feather-alt { + --fa: "\f56b"; + --fa--fa: "\f56b\f56b"; } -.fa-temperature-arrow-down::before { - content: "\e03f"; } +.fa-p { + --fa: "\50"; + --fa--fa: "\50\50"; } -.fa-temperature-down::before { - content: "\e03f"; } +.fa-snowflake { + --fa: "\f2dc"; + --fa--fa: "\f2dc\f2dc"; } -.fa-feather-pointed::before { - content: "\f56b"; } +.fa-newspaper { + --fa: "\f1ea"; + --fa--fa: "\f1ea\f1ea"; } -.fa-feather-alt::before { - content: "\f56b"; } +.fa-rectangle-ad { + --fa: "\f641"; + --fa--fa: "\f641\f641"; } -.fa-p::before { - content: "\50"; } +.fa-ad { + --fa: "\f641"; + --fa--fa: "\f641\f641"; } -.fa-snowflake::before { - content: "\f2dc"; } +.fa-circle-arrow-right { + --fa: "\f0a9"; + --fa--fa: "\f0a9\f0a9"; } -.fa-newspaper::before { - content: "\f1ea"; } +.fa-arrow-circle-right { + --fa: "\f0a9"; + --fa--fa: "\f0a9\f0a9"; } -.fa-rectangle-ad::before { - content: "\f641"; } +.fa-filter-circle-xmark { + --fa: "\e17b"; + --fa--fa: "\e17b\e17b"; } -.fa-ad::before { - content: "\f641"; } +.fa-locust { + --fa: "\e520"; + --fa--fa: "\e520\e520"; } -.fa-circle-arrow-right::before { - content: "\f0a9"; } +.fa-sort { + --fa: "\f0dc"; + --fa--fa: "\f0dc\f0dc"; } -.fa-arrow-circle-right::before { - content: "\f0a9"; } +.fa-unsorted { + --fa: "\f0dc"; + --fa--fa: "\f0dc\f0dc"; } -.fa-filter-circle-xmark::before { - content: "\e17b"; } +.fa-list-ol { + --fa: "\f0cb"; + --fa--fa: "\f0cb\f0cb"; } -.fa-locust::before { - content: "\e520"; } +.fa-list-1-2 { + --fa: "\f0cb"; + --fa--fa: "\f0cb\f0cb"; } -.fa-sort::before { - content: "\f0dc"; } +.fa-list-numeric { + --fa: "\f0cb"; + --fa--fa: "\f0cb\f0cb"; } -.fa-unsorted::before { - content: "\f0dc"; } +.fa-person-dress-burst { + --fa: "\e544"; + --fa--fa: "\e544\e544"; } -.fa-list-ol::before { - content: "\f0cb"; } +.fa-money-check-dollar { + --fa: "\f53d"; + --fa--fa: "\f53d\f53d"; } -.fa-list-1-2::before { - content: "\f0cb"; } +.fa-money-check-alt { + --fa: "\f53d"; + --fa--fa: "\f53d\f53d"; } -.fa-list-numeric::before { - content: "\f0cb"; } +.fa-vector-square { + --fa: "\f5cb"; + --fa--fa: "\f5cb\f5cb"; } -.fa-person-dress-burst::before { - content: "\e544"; } +.fa-bread-slice { + --fa: "\f7ec"; + --fa--fa: "\f7ec\f7ec"; } -.fa-money-check-dollar::before { - content: "\f53d"; } +.fa-language { + --fa: "\f1ab"; + --fa--fa: "\f1ab\f1ab"; } -.fa-money-check-alt::before { - content: "\f53d"; } +.fa-face-kiss-wink-heart { + --fa: "\f598"; + --fa--fa: "\f598\f598"; } -.fa-vector-square::before { - content: "\f5cb"; } +.fa-kiss-wink-heart { + --fa: "\f598"; + --fa--fa: "\f598\f598"; } -.fa-bread-slice::before { - content: "\f7ec"; } +.fa-filter { + --fa: "\f0b0"; + --fa--fa: "\f0b0\f0b0"; } -.fa-language::before { - content: "\f1ab"; } +.fa-question { + --fa: "\3f"; + --fa--fa: "\3f\3f"; } -.fa-face-kiss-wink-heart::before { - content: "\f598"; } +.fa-file-signature { + --fa: "\f573"; + --fa--fa: "\f573\f573"; } -.fa-kiss-wink-heart::before { - content: "\f598"; } +.fa-up-down-left-right { + --fa: "\f0b2"; + --fa--fa: "\f0b2\f0b2"; } -.fa-filter::before { - content: "\f0b0"; } +.fa-arrows-alt { + --fa: "\f0b2"; + --fa--fa: "\f0b2\f0b2"; } -.fa-question::before { - content: "\3f"; } +.fa-house-chimney-user { + --fa: "\e065"; + --fa--fa: "\e065\e065"; } -.fa-file-signature::before { - content: "\f573"; } +.fa-hand-holding-heart { + --fa: "\f4be"; + --fa--fa: "\f4be\f4be"; } -.fa-up-down-left-right::before { - content: "\f0b2"; } +.fa-puzzle-piece { + --fa: "\f12e"; + --fa--fa: "\f12e\f12e"; } -.fa-arrows-alt::before { - content: "\f0b2"; } +.fa-money-check { + --fa: "\f53c"; + --fa--fa: "\f53c\f53c"; } -.fa-house-chimney-user::before { - content: "\e065"; } +.fa-star-half-stroke { + --fa: "\f5c0"; + --fa--fa: "\f5c0\f5c0"; } -.fa-hand-holding-heart::before { - content: "\f4be"; } +.fa-star-half-alt { + --fa: "\f5c0"; + --fa--fa: "\f5c0\f5c0"; } -.fa-puzzle-piece::before { - content: "\f12e"; } +.fa-code { + --fa: "\f121"; + --fa--fa: "\f121\f121"; } -.fa-money-check::before { - content: "\f53c"; } +.fa-whiskey-glass { + --fa: "\f7a0"; + --fa--fa: "\f7a0\f7a0"; } -.fa-star-half-stroke::before { - content: "\f5c0"; } +.fa-glass-whiskey { + --fa: "\f7a0"; + --fa--fa: "\f7a0\f7a0"; } -.fa-star-half-alt::before { - content: "\f5c0"; } +.fa-building-circle-exclamation { + --fa: "\e4d3"; + --fa--fa: "\e4d3\e4d3"; } -.fa-code::before { - content: "\f121"; } +.fa-magnifying-glass-chart { + --fa: "\e522"; + --fa--fa: "\e522\e522"; } -.fa-whiskey-glass::before { - content: "\f7a0"; } +.fa-arrow-up-right-from-square { + --fa: "\f08e"; + --fa--fa: "\f08e\f08e"; } -.fa-glass-whiskey::before { - content: "\f7a0"; } +.fa-external-link { + --fa: "\f08e"; + --fa--fa: "\f08e\f08e"; } -.fa-building-circle-exclamation::before { - content: "\e4d3"; } +.fa-cubes-stacked { + --fa: "\e4e6"; + --fa--fa: "\e4e6\e4e6"; } -.fa-magnifying-glass-chart::before { - content: "\e522"; } +.fa-won-sign { + --fa: "\f159"; + --fa--fa: "\f159\f159"; } -.fa-arrow-up-right-from-square::before { - content: "\f08e"; } +.fa-krw { + --fa: "\f159"; + --fa--fa: "\f159\f159"; } -.fa-external-link::before { - content: "\f08e"; } +.fa-won { + --fa: "\f159"; + --fa--fa: "\f159\f159"; } -.fa-cubes-stacked::before { - content: "\e4e6"; } +.fa-virus-covid { + --fa: "\e4a8"; + --fa--fa: "\e4a8\e4a8"; } -.fa-won-sign::before { - content: "\f159"; } +.fa-austral-sign { + --fa: "\e0a9"; + --fa--fa: "\e0a9\e0a9"; } -.fa-krw::before { - content: "\f159"; } +.fa-f { + --fa: "\46"; + --fa--fa: "\46\46"; } -.fa-won::before { - content: "\f159"; } +.fa-leaf { + --fa: "\f06c"; + --fa--fa: "\f06c\f06c"; } -.fa-virus-covid::before { - content: "\e4a8"; } +.fa-road { + --fa: "\f018"; + --fa--fa: "\f018\f018"; } -.fa-austral-sign::before { - content: "\e0a9"; } +.fa-taxi { + --fa: "\f1ba"; + --fa--fa: "\f1ba\f1ba"; } -.fa-f::before { - content: "\46"; } +.fa-cab { + --fa: "\f1ba"; + --fa--fa: "\f1ba\f1ba"; } -.fa-leaf::before { - content: "\f06c"; } +.fa-person-circle-plus { + --fa: "\e541"; + --fa--fa: "\e541\e541"; } -.fa-road::before { - content: "\f018"; } +.fa-chart-pie { + --fa: "\f200"; + --fa--fa: "\f200\f200"; } -.fa-taxi::before { - content: "\f1ba"; } +.fa-pie-chart { + --fa: "\f200"; + --fa--fa: "\f200\f200"; } -.fa-cab::before { - content: "\f1ba"; } +.fa-bolt-lightning { + --fa: "\e0b7"; + --fa--fa: "\e0b7\e0b7"; } -.fa-person-circle-plus::before { - content: "\e541"; } +.fa-sack-xmark { + --fa: "\e56a"; + --fa--fa: "\e56a\e56a"; } -.fa-chart-pie::before { - content: "\f200"; } +.fa-file-excel { + --fa: "\f1c3"; + --fa--fa: "\f1c3\f1c3"; } -.fa-pie-chart::before { - content: "\f200"; } +.fa-file-contract { + --fa: "\f56c"; + --fa--fa: "\f56c\f56c"; } -.fa-bolt-lightning::before { - content: "\e0b7"; } +.fa-fish-fins { + --fa: "\e4f2"; + --fa--fa: "\e4f2\e4f2"; } -.fa-sack-xmark::before { - content: "\e56a"; } +.fa-building-flag { + --fa: "\e4d5"; + --fa--fa: "\e4d5\e4d5"; } -.fa-file-excel::before { - content: "\f1c3"; } +.fa-face-grin-beam { + --fa: "\f582"; + --fa--fa: "\f582\f582"; } -.fa-file-contract::before { - content: "\f56c"; } +.fa-grin-beam { + --fa: "\f582"; + --fa--fa: "\f582\f582"; } -.fa-fish-fins::before { - content: "\e4f2"; } +.fa-object-ungroup { + --fa: "\f248"; + --fa--fa: "\f248\f248"; } -.fa-building-flag::before { - content: "\e4d5"; } +.fa-poop { + --fa: "\f619"; + --fa--fa: "\f619\f619"; } -.fa-face-grin-beam::before { - content: "\f582"; } +.fa-location-pin { + --fa: "\f041"; + --fa--fa: "\f041\f041"; } -.fa-grin-beam::before { - content: "\f582"; } +.fa-map-marker { + --fa: "\f041"; + --fa--fa: "\f041\f041"; } -.fa-object-ungroup::before { - content: "\f248"; } +.fa-kaaba { + --fa: "\f66b"; + --fa--fa: "\f66b\f66b"; } -.fa-poop::before { - content: "\f619"; } +.fa-toilet-paper { + --fa: "\f71e"; + --fa--fa: "\f71e\f71e"; } -.fa-location-pin::before { - content: "\f041"; } +.fa-helmet-safety { + --fa: "\f807"; + --fa--fa: "\f807\f807"; } -.fa-map-marker::before { - content: "\f041"; } +.fa-hard-hat { + --fa: "\f807"; + --fa--fa: "\f807\f807"; } -.fa-kaaba::before { - content: "\f66b"; } +.fa-hat-hard { + --fa: "\f807"; + --fa--fa: "\f807\f807"; } -.fa-toilet-paper::before { - content: "\f71e"; } +.fa-eject { + --fa: "\f052"; + --fa--fa: "\f052\f052"; } -.fa-helmet-safety::before { - content: "\f807"; } +.fa-circle-right { + --fa: "\f35a"; + --fa--fa: "\f35a\f35a"; } -.fa-hard-hat::before { - content: "\f807"; } +.fa-arrow-alt-circle-right { + --fa: "\f35a"; + --fa--fa: "\f35a\f35a"; } -.fa-hat-hard::before { - content: "\f807"; } +.fa-plane-circle-check { + --fa: "\e555"; + --fa--fa: "\e555\e555"; } -.fa-eject::before { - content: "\f052"; } +.fa-face-rolling-eyes { + --fa: "\f5a5"; + --fa--fa: "\f5a5\f5a5"; } -.fa-circle-right::before { - content: "\f35a"; } +.fa-meh-rolling-eyes { + --fa: "\f5a5"; + --fa--fa: "\f5a5\f5a5"; } -.fa-arrow-alt-circle-right::before { - content: "\f35a"; } +.fa-object-group { + --fa: "\f247"; + --fa--fa: "\f247\f247"; } -.fa-plane-circle-check::before { - content: "\e555"; } +.fa-chart-line { + --fa: "\f201"; + --fa--fa: "\f201\f201"; } -.fa-face-rolling-eyes::before { - content: "\f5a5"; } +.fa-line-chart { + --fa: "\f201"; + --fa--fa: "\f201\f201"; } -.fa-meh-rolling-eyes::before { - content: "\f5a5"; } +.fa-mask-ventilator { + --fa: "\e524"; + --fa--fa: "\e524\e524"; } -.fa-object-group::before { - content: "\f247"; } +.fa-arrow-right { + --fa: "\f061"; + --fa--fa: "\f061\f061"; } -.fa-chart-line::before { - content: "\f201"; } +.fa-signs-post { + --fa: "\f277"; + --fa--fa: "\f277\f277"; } -.fa-line-chart::before { - content: "\f201"; } +.fa-map-signs { + --fa: "\f277"; + --fa--fa: "\f277\f277"; } -.fa-mask-ventilator::before { - content: "\e524"; } +.fa-cash-register { + --fa: "\f788"; + --fa--fa: "\f788\f788"; } -.fa-arrow-right::before { - content: "\f061"; } +.fa-person-circle-question { + --fa: "\e542"; + --fa--fa: "\e542\e542"; } -.fa-signs-post::before { - content: "\f277"; } +.fa-h { + --fa: "\48"; + --fa--fa: "\48\48"; } -.fa-map-signs::before { - content: "\f277"; } +.fa-tarp { + --fa: "\e57b"; + --fa--fa: "\e57b\e57b"; } -.fa-cash-register::before { - content: "\f788"; } +.fa-screwdriver-wrench { + --fa: "\f7d9"; + --fa--fa: "\f7d9\f7d9"; } -.fa-person-circle-question::before { - content: "\e542"; } +.fa-tools { + --fa: "\f7d9"; + --fa--fa: "\f7d9\f7d9"; } -.fa-h::before { - content: "\48"; } +.fa-arrows-to-eye { + --fa: "\e4bf"; + --fa--fa: "\e4bf\e4bf"; } -.fa-tarp::before { - content: "\e57b"; } +.fa-plug-circle-bolt { + --fa: "\e55b"; + --fa--fa: "\e55b\e55b"; } -.fa-screwdriver-wrench::before { - content: "\f7d9"; } +.fa-heart { + --fa: "\f004"; + --fa--fa: "\f004\f004"; } -.fa-tools::before { - content: "\f7d9"; } +.fa-mars-and-venus { + --fa: "\f224"; + --fa--fa: "\f224\f224"; } -.fa-arrows-to-eye::before { - content: "\e4bf"; } +.fa-house-user { + --fa: "\e1b0"; + --fa--fa: "\e1b0\e1b0"; } -.fa-plug-circle-bolt::before { - content: "\e55b"; } +.fa-home-user { + --fa: "\e1b0"; + --fa--fa: "\e1b0\e1b0"; } -.fa-heart::before { - content: "\f004"; } +.fa-dumpster-fire { + --fa: "\f794"; + --fa--fa: "\f794\f794"; } -.fa-mars-and-venus::before { - content: "\f224"; } +.fa-house-crack { + --fa: "\e3b1"; + --fa--fa: "\e3b1\e3b1"; } -.fa-house-user::before { - content: "\e1b0"; } +.fa-martini-glass-citrus { + --fa: "\f561"; + --fa--fa: "\f561\f561"; } -.fa-home-user::before { - content: "\e1b0"; } +.fa-cocktail { + --fa: "\f561"; + --fa--fa: "\f561\f561"; } -.fa-dumpster-fire::before { - content: "\f794"; } +.fa-face-surprise { + --fa: "\f5c2"; + --fa--fa: "\f5c2\f5c2"; } -.fa-house-crack::before { - content: "\e3b1"; } +.fa-surprise { + --fa: "\f5c2"; + --fa--fa: "\f5c2\f5c2"; } -.fa-martini-glass-citrus::before { - content: "\f561"; } +.fa-bottle-water { + --fa: "\e4c5"; + --fa--fa: "\e4c5\e4c5"; } -.fa-cocktail::before { - content: "\f561"; } +.fa-circle-pause { + --fa: "\f28b"; + --fa--fa: "\f28b\f28b"; } -.fa-face-surprise::before { - content: "\f5c2"; } +.fa-pause-circle { + --fa: "\f28b"; + --fa--fa: "\f28b\f28b"; } -.fa-surprise::before { - content: "\f5c2"; } +.fa-toilet-paper-slash { + --fa: "\e072"; + --fa--fa: "\e072\e072"; } -.fa-bottle-water::before { - content: "\e4c5"; } +.fa-apple-whole { + --fa: "\f5d1"; + --fa--fa: "\f5d1\f5d1"; } -.fa-circle-pause::before { - content: "\f28b"; } +.fa-apple-alt { + --fa: "\f5d1"; + --fa--fa: "\f5d1\f5d1"; } -.fa-pause-circle::before { - content: "\f28b"; } +.fa-kitchen-set { + --fa: "\e51a"; + --fa--fa: "\e51a\e51a"; } -.fa-toilet-paper-slash::before { - content: "\e072"; } +.fa-r { + --fa: "\52"; + --fa--fa: "\52\52"; } -.fa-apple-whole::before { - content: "\f5d1"; } +.fa-temperature-quarter { + --fa: "\f2ca"; + --fa--fa: "\f2ca\f2ca"; } -.fa-apple-alt::before { - content: "\f5d1"; } +.fa-temperature-1 { + --fa: "\f2ca"; + --fa--fa: "\f2ca\f2ca"; } -.fa-kitchen-set::before { - content: "\e51a"; } +.fa-thermometer-1 { + --fa: "\f2ca"; + --fa--fa: "\f2ca\f2ca"; } -.fa-r::before { - content: "\52"; } +.fa-thermometer-quarter { + --fa: "\f2ca"; + --fa--fa: "\f2ca\f2ca"; } -.fa-temperature-quarter::before { - content: "\f2ca"; } +.fa-cube { + --fa: "\f1b2"; + --fa--fa: "\f1b2\f1b2"; } -.fa-temperature-1::before { - content: "\f2ca"; } +.fa-bitcoin-sign { + --fa: "\e0b4"; + --fa--fa: "\e0b4\e0b4"; } -.fa-thermometer-1::before { - content: "\f2ca"; } +.fa-shield-dog { + --fa: "\e573"; + --fa--fa: "\e573\e573"; } -.fa-thermometer-quarter::before { - content: "\f2ca"; } +.fa-solar-panel { + --fa: "\f5ba"; + --fa--fa: "\f5ba\f5ba"; } -.fa-cube::before { - content: "\f1b2"; } +.fa-lock-open { + --fa: "\f3c1"; + --fa--fa: "\f3c1\f3c1"; } -.fa-bitcoin-sign::before { - content: "\e0b4"; } +.fa-elevator { + --fa: "\e16d"; + --fa--fa: "\e16d\e16d"; } -.fa-shield-dog::before { - content: "\e573"; } +.fa-money-bill-transfer { + --fa: "\e528"; + --fa--fa: "\e528\e528"; } -.fa-solar-panel::before { - content: "\f5ba"; } +.fa-money-bill-trend-up { + --fa: "\e529"; + --fa--fa: "\e529\e529"; } -.fa-lock-open::before { - content: "\f3c1"; } +.fa-house-flood-water-circle-arrow-right { + --fa: "\e50f"; + --fa--fa: "\e50f\e50f"; } -.fa-elevator::before { - content: "\e16d"; } +.fa-square-poll-horizontal { + --fa: "\f682"; + --fa--fa: "\f682\f682"; } -.fa-money-bill-transfer::before { - content: "\e528"; } +.fa-poll-h { + --fa: "\f682"; + --fa--fa: "\f682\f682"; } -.fa-money-bill-trend-up::before { - content: "\e529"; } +.fa-circle { + --fa: "\f111"; + --fa--fa: "\f111\f111"; } -.fa-house-flood-water-circle-arrow-right::before { - content: "\e50f"; } +.fa-backward-fast { + --fa: "\f049"; + --fa--fa: "\f049\f049"; } -.fa-square-poll-horizontal::before { - content: "\f682"; } +.fa-fast-backward { + --fa: "\f049"; + --fa--fa: "\f049\f049"; } -.fa-poll-h::before { - content: "\f682"; } +.fa-recycle { + --fa: "\f1b8"; + --fa--fa: "\f1b8\f1b8"; } -.fa-circle::before { - content: "\f111"; } +.fa-user-astronaut { + --fa: "\f4fb"; + --fa--fa: "\f4fb\f4fb"; } -.fa-backward-fast::before { - content: "\f049"; } +.fa-plane-slash { + --fa: "\e069"; + --fa--fa: "\e069\e069"; } -.fa-fast-backward::before { - content: "\f049"; } +.fa-trademark { + --fa: "\f25c"; + --fa--fa: "\f25c\f25c"; } -.fa-recycle::before { - content: "\f1b8"; } +.fa-basketball { + --fa: "\f434"; + --fa--fa: "\f434\f434"; } -.fa-user-astronaut::before { - content: "\f4fb"; } +.fa-basketball-ball { + --fa: "\f434"; + --fa--fa: "\f434\f434"; } -.fa-plane-slash::before { - content: "\e069"; } +.fa-satellite-dish { + --fa: "\f7c0"; + --fa--fa: "\f7c0\f7c0"; } -.fa-trademark::before { - content: "\f25c"; } +.fa-circle-up { + --fa: "\f35b"; + --fa--fa: "\f35b\f35b"; } -.fa-basketball::before { - content: "\f434"; } +.fa-arrow-alt-circle-up { + --fa: "\f35b"; + --fa--fa: "\f35b\f35b"; } -.fa-basketball-ball::before { - content: "\f434"; } +.fa-mobile-screen-button { + --fa: "\f3cd"; + --fa--fa: "\f3cd\f3cd"; } -.fa-satellite-dish::before { - content: "\f7c0"; } +.fa-mobile-alt { + --fa: "\f3cd"; + --fa--fa: "\f3cd\f3cd"; } -.fa-circle-up::before { - content: "\f35b"; } +.fa-volume-high { + --fa: "\f028"; + --fa--fa: "\f028\f028"; } -.fa-arrow-alt-circle-up::before { - content: "\f35b"; } +.fa-volume-up { + --fa: "\f028"; + --fa--fa: "\f028\f028"; } -.fa-mobile-screen-button::before { - content: "\f3cd"; } +.fa-users-rays { + --fa: "\e593"; + --fa--fa: "\e593\e593"; } -.fa-mobile-alt::before { - content: "\f3cd"; } +.fa-wallet { + --fa: "\f555"; + --fa--fa: "\f555\f555"; } -.fa-volume-high::before { - content: "\f028"; } +.fa-clipboard-check { + --fa: "\f46c"; + --fa--fa: "\f46c\f46c"; } -.fa-volume-up::before { - content: "\f028"; } +.fa-file-audio { + --fa: "\f1c7"; + --fa--fa: "\f1c7\f1c7"; } -.fa-users-rays::before { - content: "\e593"; } +.fa-burger { + --fa: "\f805"; + --fa--fa: "\f805\f805"; } -.fa-wallet::before { - content: "\f555"; } +.fa-hamburger { + --fa: "\f805"; + --fa--fa: "\f805\f805"; } -.fa-clipboard-check::before { - content: "\f46c"; } +.fa-wrench { + --fa: "\f0ad"; + --fa--fa: "\f0ad\f0ad"; } -.fa-file-audio::before { - content: "\f1c7"; } +.fa-bugs { + --fa: "\e4d0"; + --fa--fa: "\e4d0\e4d0"; } -.fa-burger::before { - content: "\f805"; } +.fa-rupee-sign { + --fa: "\f156"; + --fa--fa: "\f156\f156"; } -.fa-hamburger::before { - content: "\f805"; } +.fa-rupee { + --fa: "\f156"; + --fa--fa: "\f156\f156"; } -.fa-wrench::before { - content: "\f0ad"; } +.fa-file-image { + --fa: "\f1c5"; + --fa--fa: "\f1c5\f1c5"; } -.fa-bugs::before { - content: "\e4d0"; } +.fa-circle-question { + --fa: "\f059"; + --fa--fa: "\f059\f059"; } -.fa-rupee-sign::before { - content: "\f156"; } +.fa-question-circle { + --fa: "\f059"; + --fa--fa: "\f059\f059"; } -.fa-rupee::before { - content: "\f156"; } +.fa-plane-departure { + --fa: "\f5b0"; + --fa--fa: "\f5b0\f5b0"; } -.fa-file-image::before { - content: "\f1c5"; } +.fa-handshake-slash { + --fa: "\e060"; + --fa--fa: "\e060\e060"; } -.fa-circle-question::before { - content: "\f059"; } +.fa-book-bookmark { + --fa: "\e0bb"; + --fa--fa: "\e0bb\e0bb"; } -.fa-question-circle::before { - content: "\f059"; } +.fa-code-branch { + --fa: "\f126"; + --fa--fa: "\f126\f126"; } -.fa-plane-departure::before { - content: "\f5b0"; } +.fa-hat-cowboy { + --fa: "\f8c0"; + --fa--fa: "\f8c0\f8c0"; } -.fa-handshake-slash::before { - content: "\e060"; } +.fa-bridge { + --fa: "\e4c8"; + --fa--fa: "\e4c8\e4c8"; } -.fa-book-bookmark::before { - content: "\e0bb"; } +.fa-phone-flip { + --fa: "\f879"; + --fa--fa: "\f879\f879"; } -.fa-code-branch::before { - content: "\f126"; } +.fa-phone-alt { + --fa: "\f879"; + --fa--fa: "\f879\f879"; } -.fa-hat-cowboy::before { - content: "\f8c0"; } +.fa-truck-front { + --fa: "\e2b7"; + --fa--fa: "\e2b7\e2b7"; } -.fa-bridge::before { - content: "\e4c8"; } +.fa-cat { + --fa: "\f6be"; + --fa--fa: "\f6be\f6be"; } -.fa-phone-flip::before { - content: "\f879"; } +.fa-anchor-circle-exclamation { + --fa: "\e4ab"; + --fa--fa: "\e4ab\e4ab"; } -.fa-phone-alt::before { - content: "\f879"; } +.fa-truck-field { + --fa: "\e58d"; + --fa--fa: "\e58d\e58d"; } -.fa-truck-front::before { - content: "\e2b7"; } +.fa-route { + --fa: "\f4d7"; + --fa--fa: "\f4d7\f4d7"; } -.fa-cat::before { - content: "\f6be"; } +.fa-clipboard-question { + --fa: "\e4e3"; + --fa--fa: "\e4e3\e4e3"; } -.fa-anchor-circle-exclamation::before { - content: "\e4ab"; } +.fa-panorama { + --fa: "\e209"; + --fa--fa: "\e209\e209"; } -.fa-truck-field::before { - content: "\e58d"; } +.fa-comment-medical { + --fa: "\f7f5"; + --fa--fa: "\f7f5\f7f5"; } -.fa-route::before { - content: "\f4d7"; } +.fa-teeth-open { + --fa: "\f62f"; + --fa--fa: "\f62f\f62f"; } -.fa-clipboard-question::before { - content: "\e4e3"; } +.fa-file-circle-minus { + --fa: "\e4ed"; + --fa--fa: "\e4ed\e4ed"; } -.fa-panorama::before { - content: "\e209"; } +.fa-tags { + --fa: "\f02c"; + --fa--fa: "\f02c\f02c"; } -.fa-comment-medical::before { - content: "\f7f5"; } +.fa-wine-glass { + --fa: "\f4e3"; + --fa--fa: "\f4e3\f4e3"; } -.fa-teeth-open::before { - content: "\f62f"; } +.fa-forward-fast { + --fa: "\f050"; + --fa--fa: "\f050\f050"; } -.fa-file-circle-minus::before { - content: "\e4ed"; } +.fa-fast-forward { + --fa: "\f050"; + --fa--fa: "\f050\f050"; } -.fa-tags::before { - content: "\f02c"; } +.fa-face-meh-blank { + --fa: "\f5a4"; + --fa--fa: "\f5a4\f5a4"; } -.fa-wine-glass::before { - content: "\f4e3"; } +.fa-meh-blank { + --fa: "\f5a4"; + --fa--fa: "\f5a4\f5a4"; } -.fa-forward-fast::before { - content: "\f050"; } +.fa-square-parking { + --fa: "\f540"; + --fa--fa: "\f540\f540"; } -.fa-fast-forward::before { - content: "\f050"; } +.fa-parking { + --fa: "\f540"; + --fa--fa: "\f540\f540"; } -.fa-face-meh-blank::before { - content: "\f5a4"; } +.fa-house-signal { + --fa: "\e012"; + --fa--fa: "\e012\e012"; } -.fa-meh-blank::before { - content: "\f5a4"; } +.fa-bars-progress { + --fa: "\f828"; + --fa--fa: "\f828\f828"; } -.fa-square-parking::before { - content: "\f540"; } +.fa-tasks-alt { + --fa: "\f828"; + --fa--fa: "\f828\f828"; } -.fa-parking::before { - content: "\f540"; } +.fa-faucet-drip { + --fa: "\e006"; + --fa--fa: "\e006\e006"; } -.fa-house-signal::before { - content: "\e012"; } +.fa-cart-flatbed { + --fa: "\f474"; + --fa--fa: "\f474\f474"; } -.fa-bars-progress::before { - content: "\f828"; } +.fa-dolly-flatbed { + --fa: "\f474"; + --fa--fa: "\f474\f474"; } -.fa-tasks-alt::before { - content: "\f828"; } +.fa-ban-smoking { + --fa: "\f54d"; + --fa--fa: "\f54d\f54d"; } -.fa-faucet-drip::before { - content: "\e006"; } +.fa-smoking-ban { + --fa: "\f54d"; + --fa--fa: "\f54d\f54d"; } -.fa-cart-flatbed::before { - content: "\f474"; } +.fa-terminal { + --fa: "\f120"; + --fa--fa: "\f120\f120"; } -.fa-dolly-flatbed::before { - content: "\f474"; } +.fa-mobile-button { + --fa: "\f10b"; + --fa--fa: "\f10b\f10b"; } -.fa-ban-smoking::before { - content: "\f54d"; } +.fa-house-medical-flag { + --fa: "\e514"; + --fa--fa: "\e514\e514"; } -.fa-smoking-ban::before { - content: "\f54d"; } +.fa-basket-shopping { + --fa: "\f291"; + --fa--fa: "\f291\f291"; } -.fa-terminal::before { - content: "\f120"; } +.fa-shopping-basket { + --fa: "\f291"; + --fa--fa: "\f291\f291"; } -.fa-mobile-button::before { - content: "\f10b"; } +.fa-tape { + --fa: "\f4db"; + --fa--fa: "\f4db\f4db"; } -.fa-house-medical-flag::before { - content: "\e514"; } +.fa-bus-simple { + --fa: "\f55e"; + --fa--fa: "\f55e\f55e"; } -.fa-basket-shopping::before { - content: "\f291"; } +.fa-bus-alt { + --fa: "\f55e"; + --fa--fa: "\f55e\f55e"; } -.fa-shopping-basket::before { - content: "\f291"; } +.fa-eye { + --fa: "\f06e"; + --fa--fa: "\f06e\f06e"; } -.fa-tape::before { - content: "\f4db"; } +.fa-face-sad-cry { + --fa: "\f5b3"; + --fa--fa: "\f5b3\f5b3"; } -.fa-bus-simple::before { - content: "\f55e"; } +.fa-sad-cry { + --fa: "\f5b3"; + --fa--fa: "\f5b3\f5b3"; } -.fa-bus-alt::before { - content: "\f55e"; } +.fa-audio-description { + --fa: "\f29e"; + --fa--fa: "\f29e\f29e"; } -.fa-eye::before { - content: "\f06e"; } +.fa-person-military-to-person { + --fa: "\e54c"; + --fa--fa: "\e54c\e54c"; } -.fa-face-sad-cry::before { - content: "\f5b3"; } +.fa-file-shield { + --fa: "\e4f0"; + --fa--fa: "\e4f0\e4f0"; } -.fa-sad-cry::before { - content: "\f5b3"; } +.fa-user-slash { + --fa: "\f506"; + --fa--fa: "\f506\f506"; } -.fa-audio-description::before { - content: "\f29e"; } +.fa-pen { + --fa: "\f304"; + --fa--fa: "\f304\f304"; } -.fa-person-military-to-person::before { - content: "\e54c"; } +.fa-tower-observation { + --fa: "\e586"; + --fa--fa: "\e586\e586"; } -.fa-file-shield::before { - content: "\e4f0"; } +.fa-file-code { + --fa: "\f1c9"; + --fa--fa: "\f1c9\f1c9"; } -.fa-user-slash::before { - content: "\f506"; } +.fa-signal { + --fa: "\f012"; + --fa--fa: "\f012\f012"; } -.fa-pen::before { - content: "\f304"; } +.fa-signal-5 { + --fa: "\f012"; + --fa--fa: "\f012\f012"; } -.fa-tower-observation::before { - content: "\e586"; } +.fa-signal-perfect { + --fa: "\f012"; + --fa--fa: "\f012\f012"; } -.fa-file-code::before { - content: "\f1c9"; } +.fa-bus { + --fa: "\f207"; + --fa--fa: "\f207\f207"; } -.fa-signal::before { - content: "\f012"; } +.fa-heart-circle-xmark { + --fa: "\e501"; + --fa--fa: "\e501\e501"; } -.fa-signal-5::before { - content: "\f012"; } +.fa-house-chimney { + --fa: "\e3af"; + --fa--fa: "\e3af\e3af"; } -.fa-signal-perfect::before { - content: "\f012"; } +.fa-home-lg { + --fa: "\e3af"; + --fa--fa: "\e3af\e3af"; } -.fa-bus::before { - content: "\f207"; } +.fa-window-maximize { + --fa: "\f2d0"; + --fa--fa: "\f2d0\f2d0"; } -.fa-heart-circle-xmark::before { - content: "\e501"; } +.fa-face-frown { + --fa: "\f119"; + --fa--fa: "\f119\f119"; } -.fa-house-chimney::before { - content: "\e3af"; } +.fa-frown { + --fa: "\f119"; + --fa--fa: "\f119\f119"; } -.fa-home-lg::before { - content: "\e3af"; } +.fa-prescription { + --fa: "\f5b1"; + --fa--fa: "\f5b1\f5b1"; } -.fa-window-maximize::before { - content: "\f2d0"; } +.fa-shop { + --fa: "\f54f"; + --fa--fa: "\f54f\f54f"; } -.fa-face-frown::before { - content: "\f119"; } +.fa-store-alt { + --fa: "\f54f"; + --fa--fa: "\f54f\f54f"; } -.fa-frown::before { - content: "\f119"; } +.fa-floppy-disk { + --fa: "\f0c7"; + --fa--fa: "\f0c7\f0c7"; } -.fa-prescription::before { - content: "\f5b1"; } +.fa-save { + --fa: "\f0c7"; + --fa--fa: "\f0c7\f0c7"; } -.fa-shop::before { - content: "\f54f"; } +.fa-vihara { + --fa: "\f6a7"; + --fa--fa: "\f6a7\f6a7"; } -.fa-store-alt::before { - content: "\f54f"; } +.fa-scale-unbalanced { + --fa: "\f515"; + --fa--fa: "\f515\f515"; } -.fa-floppy-disk::before { - content: "\f0c7"; } +.fa-balance-scale-left { + --fa: "\f515"; + --fa--fa: "\f515\f515"; } -.fa-save::before { - content: "\f0c7"; } +.fa-sort-up { + --fa: "\f0de"; + --fa--fa: "\f0de\f0de"; } -.fa-vihara::before { - content: "\f6a7"; } +.fa-sort-asc { + --fa: "\f0de"; + --fa--fa: "\f0de\f0de"; } -.fa-scale-unbalanced::before { - content: "\f515"; } +.fa-comment-dots { + --fa: "\f4ad"; + --fa--fa: "\f4ad\f4ad"; } -.fa-balance-scale-left::before { - content: "\f515"; } +.fa-commenting { + --fa: "\f4ad"; + --fa--fa: "\f4ad\f4ad"; } -.fa-sort-up::before { - content: "\f0de"; } +.fa-plant-wilt { + --fa: "\e5aa"; + --fa--fa: "\e5aa\e5aa"; } -.fa-sort-asc::before { - content: "\f0de"; } +.fa-diamond { + --fa: "\f219"; + --fa--fa: "\f219\f219"; } -.fa-comment-dots::before { - content: "\f4ad"; } +.fa-face-grin-squint { + --fa: "\f585"; + --fa--fa: "\f585\f585"; } -.fa-commenting::before { - content: "\f4ad"; } +.fa-grin-squint { + --fa: "\f585"; + --fa--fa: "\f585\f585"; } -.fa-plant-wilt::before { - content: "\e5aa"; } +.fa-hand-holding-dollar { + --fa: "\f4c0"; + --fa--fa: "\f4c0\f4c0"; } -.fa-diamond::before { - content: "\f219"; } +.fa-hand-holding-usd { + --fa: "\f4c0"; + --fa--fa: "\f4c0\f4c0"; } -.fa-face-grin-squint::before { - content: "\f585"; } +.fa-chart-diagram { + --fa: "\e695"; + --fa--fa: "\e695\e695"; } -.fa-grin-squint::before { - content: "\f585"; } +.fa-bacterium { + --fa: "\e05a"; + --fa--fa: "\e05a\e05a"; } -.fa-hand-holding-dollar::before { - content: "\f4c0"; } +.fa-hand-pointer { + --fa: "\f25a"; + --fa--fa: "\f25a\f25a"; } -.fa-hand-holding-usd::before { - content: "\f4c0"; } +.fa-drum-steelpan { + --fa: "\f56a"; + --fa--fa: "\f56a\f56a"; } -.fa-bacterium::before { - content: "\e05a"; } +.fa-hand-scissors { + --fa: "\f257"; + --fa--fa: "\f257\f257"; } -.fa-hand-pointer::before { - content: "\f25a"; } +.fa-hands-praying { + --fa: "\f684"; + --fa--fa: "\f684\f684"; } -.fa-drum-steelpan::before { - content: "\f56a"; } +.fa-praying-hands { + --fa: "\f684"; + --fa--fa: "\f684\f684"; } -.fa-hand-scissors::before { - content: "\f257"; } +.fa-arrow-rotate-right { + --fa: "\f01e"; + --fa--fa: "\f01e\f01e"; } -.fa-hands-praying::before { - content: "\f684"; } +.fa-arrow-right-rotate { + --fa: "\f01e"; + --fa--fa: "\f01e\f01e"; } -.fa-praying-hands::before { - content: "\f684"; } +.fa-arrow-rotate-forward { + --fa: "\f01e"; + --fa--fa: "\f01e\f01e"; } -.fa-arrow-rotate-right::before { - content: "\f01e"; } +.fa-redo { + --fa: "\f01e"; + --fa--fa: "\f01e\f01e"; } -.fa-arrow-right-rotate::before { - content: "\f01e"; } +.fa-biohazard { + --fa: "\f780"; + --fa--fa: "\f780\f780"; } -.fa-arrow-rotate-forward::before { - content: "\f01e"; } +.fa-location-crosshairs { + --fa: "\f601"; + --fa--fa: "\f601\f601"; } -.fa-redo::before { - content: "\f01e"; } +.fa-location { + --fa: "\f601"; + --fa--fa: "\f601\f601"; } -.fa-biohazard::before { - content: "\f780"; } +.fa-mars-double { + --fa: "\f227"; + --fa--fa: "\f227\f227"; } -.fa-location-crosshairs::before { - content: "\f601"; } +.fa-child-dress { + --fa: "\e59c"; + --fa--fa: "\e59c\e59c"; } -.fa-location::before { - content: "\f601"; } +.fa-users-between-lines { + --fa: "\e591"; + --fa--fa: "\e591\e591"; } -.fa-mars-double::before { - content: "\f227"; } +.fa-lungs-virus { + --fa: "\e067"; + --fa--fa: "\e067\e067"; } -.fa-child-dress::before { - content: "\e59c"; } +.fa-face-grin-tears { + --fa: "\f588"; + --fa--fa: "\f588\f588"; } -.fa-users-between-lines::before { - content: "\e591"; } +.fa-grin-tears { + --fa: "\f588"; + --fa--fa: "\f588\f588"; } -.fa-lungs-virus::before { - content: "\e067"; } +.fa-phone { + --fa: "\f095"; + --fa--fa: "\f095\f095"; } -.fa-face-grin-tears::before { - content: "\f588"; } +.fa-calendar-xmark { + --fa: "\f273"; + --fa--fa: "\f273\f273"; } -.fa-grin-tears::before { - content: "\f588"; } +.fa-calendar-times { + --fa: "\f273"; + --fa--fa: "\f273\f273"; } -.fa-phone::before { - content: "\f095"; } +.fa-child-reaching { + --fa: "\e59d"; + --fa--fa: "\e59d\e59d"; } -.fa-calendar-xmark::before { - content: "\f273"; } +.fa-head-side-virus { + --fa: "\e064"; + --fa--fa: "\e064\e064"; } -.fa-calendar-times::before { - content: "\f273"; } +.fa-user-gear { + --fa: "\f4fe"; + --fa--fa: "\f4fe\f4fe"; } -.fa-child-reaching::before { - content: "\e59d"; } +.fa-user-cog { + --fa: "\f4fe"; + --fa--fa: "\f4fe\f4fe"; } -.fa-head-side-virus::before { - content: "\e064"; } +.fa-arrow-up-1-9 { + --fa: "\f163"; + --fa--fa: "\f163\f163"; } -.fa-user-gear::before { - content: "\f4fe"; } +.fa-sort-numeric-up { + --fa: "\f163"; + --fa--fa: "\f163\f163"; } -.fa-user-cog::before { - content: "\f4fe"; } +.fa-door-closed { + --fa: "\f52a"; + --fa--fa: "\f52a\f52a"; } -.fa-arrow-up-1-9::before { - content: "\f163"; } +.fa-shield-virus { + --fa: "\e06c"; + --fa--fa: "\e06c\e06c"; } -.fa-sort-numeric-up::before { - content: "\f163"; } +.fa-dice-six { + --fa: "\f526"; + --fa--fa: "\f526\f526"; } -.fa-door-closed::before { - content: "\f52a"; } +.fa-mosquito-net { + --fa: "\e52c"; + --fa--fa: "\e52c\e52c"; } -.fa-shield-virus::before { - content: "\e06c"; } +.fa-file-fragment { + --fa: "\e697"; + --fa--fa: "\e697\e697"; } -.fa-dice-six::before { - content: "\f526"; } +.fa-bridge-water { + --fa: "\e4ce"; + --fa--fa: "\e4ce\e4ce"; } -.fa-mosquito-net::before { - content: "\e52c"; } +.fa-person-booth { + --fa: "\f756"; + --fa--fa: "\f756\f756"; } -.fa-bridge-water::before { - content: "\e4ce"; } +.fa-text-width { + --fa: "\f035"; + --fa--fa: "\f035\f035"; } -.fa-person-booth::before { - content: "\f756"; } +.fa-hat-wizard { + --fa: "\f6e8"; + --fa--fa: "\f6e8\f6e8"; } -.fa-text-width::before { - content: "\f035"; } +.fa-pen-fancy { + --fa: "\f5ac"; + --fa--fa: "\f5ac\f5ac"; } -.fa-hat-wizard::before { - content: "\f6e8"; } +.fa-person-digging { + --fa: "\f85e"; + --fa--fa: "\f85e\f85e"; } -.fa-pen-fancy::before { - content: "\f5ac"; } +.fa-digging { + --fa: "\f85e"; + --fa--fa: "\f85e\f85e"; } -.fa-person-digging::before { - content: "\f85e"; } +.fa-trash { + --fa: "\f1f8"; + --fa--fa: "\f1f8\f1f8"; } -.fa-digging::before { - content: "\f85e"; } +.fa-gauge-simple { + --fa: "\f629"; + --fa--fa: "\f629\f629"; } -.fa-trash::before { - content: "\f1f8"; } +.fa-gauge-simple-med { + --fa: "\f629"; + --fa--fa: "\f629\f629"; } -.fa-gauge-simple::before { - content: "\f629"; } +.fa-tachometer-average { + --fa: "\f629"; + --fa--fa: "\f629\f629"; } -.fa-gauge-simple-med::before { - content: "\f629"; } +.fa-book-medical { + --fa: "\f7e6"; + --fa--fa: "\f7e6\f7e6"; } -.fa-tachometer-average::before { - content: "\f629"; } +.fa-poo { + --fa: "\f2fe"; + --fa--fa: "\f2fe\f2fe"; } -.fa-book-medical::before { - content: "\f7e6"; } +.fa-quote-right { + --fa: "\f10e"; + --fa--fa: "\f10e\f10e"; } -.fa-poo::before { - content: "\f2fe"; } +.fa-quote-right-alt { + --fa: "\f10e"; + --fa--fa: "\f10e\f10e"; } -.fa-quote-right::before { - content: "\f10e"; } +.fa-shirt { + --fa: "\f553"; + --fa--fa: "\f553\f553"; } -.fa-quote-right-alt::before { - content: "\f10e"; } +.fa-t-shirt { + --fa: "\f553"; + --fa--fa: "\f553\f553"; } -.fa-shirt::before { - content: "\f553"; } +.fa-tshirt { + --fa: "\f553"; + --fa--fa: "\f553\f553"; } -.fa-t-shirt::before { - content: "\f553"; } +.fa-cubes { + --fa: "\f1b3"; + --fa--fa: "\f1b3\f1b3"; } -.fa-tshirt::before { - content: "\f553"; } +.fa-divide { + --fa: "\f529"; + --fa--fa: "\f529\f529"; } -.fa-cubes::before { - content: "\f1b3"; } +.fa-tenge-sign { + --fa: "\f7d7"; + --fa--fa: "\f7d7\f7d7"; } -.fa-divide::before { - content: "\f529"; } +.fa-tenge { + --fa: "\f7d7"; + --fa--fa: "\f7d7\f7d7"; } -.fa-tenge-sign::before { - content: "\f7d7"; } +.fa-headphones { + --fa: "\f025"; + --fa--fa: "\f025\f025"; } -.fa-tenge::before { - content: "\f7d7"; } +.fa-hands-holding { + --fa: "\f4c2"; + --fa--fa: "\f4c2\f4c2"; } -.fa-headphones::before { - content: "\f025"; } +.fa-hands-clapping { + --fa: "\e1a8"; + --fa--fa: "\e1a8\e1a8"; } -.fa-hands-holding::before { - content: "\f4c2"; } +.fa-republican { + --fa: "\f75e"; + --fa--fa: "\f75e\f75e"; } -.fa-hands-clapping::before { - content: "\e1a8"; } +.fa-arrow-left { + --fa: "\f060"; + --fa--fa: "\f060\f060"; } -.fa-republican::before { - content: "\f75e"; } +.fa-person-circle-xmark { + --fa: "\e543"; + --fa--fa: "\e543\e543"; } -.fa-arrow-left::before { - content: "\f060"; } +.fa-ruler { + --fa: "\f545"; + --fa--fa: "\f545\f545"; } -.fa-person-circle-xmark::before { - content: "\e543"; } +.fa-align-left { + --fa: "\f036"; + --fa--fa: "\f036\f036"; } -.fa-ruler::before { - content: "\f545"; } +.fa-dice-d6 { + --fa: "\f6d1"; + --fa--fa: "\f6d1\f6d1"; } -.fa-align-left::before { - content: "\f036"; } +.fa-restroom { + --fa: "\f7bd"; + --fa--fa: "\f7bd\f7bd"; } -.fa-dice-d6::before { - content: "\f6d1"; } +.fa-j { + --fa: "\4a"; + --fa--fa: "\4a\4a"; } -.fa-restroom::before { - content: "\f7bd"; } +.fa-users-viewfinder { + --fa: "\e595"; + --fa--fa: "\e595\e595"; } -.fa-j::before { - content: "\4a"; } +.fa-file-video { + --fa: "\f1c8"; + --fa--fa: "\f1c8\f1c8"; } -.fa-users-viewfinder::before { - content: "\e595"; } +.fa-up-right-from-square { + --fa: "\f35d"; + --fa--fa: "\f35d\f35d"; } -.fa-file-video::before { - content: "\f1c8"; } +.fa-external-link-alt { + --fa: "\f35d"; + --fa--fa: "\f35d\f35d"; } -.fa-up-right-from-square::before { - content: "\f35d"; } +.fa-table-cells { + --fa: "\f00a"; + --fa--fa: "\f00a\f00a"; } -.fa-external-link-alt::before { - content: "\f35d"; } +.fa-th { + --fa: "\f00a"; + --fa--fa: "\f00a\f00a"; } -.fa-table-cells::before { - content: "\f00a"; } +.fa-file-pdf { + --fa: "\f1c1"; + --fa--fa: "\f1c1\f1c1"; } -.fa-th::before { - content: "\f00a"; } +.fa-book-bible { + --fa: "\f647"; + --fa--fa: "\f647\f647"; } -.fa-file-pdf::before { - content: "\f1c1"; } +.fa-bible { + --fa: "\f647"; + --fa--fa: "\f647\f647"; } -.fa-book-bible::before { - content: "\f647"; } +.fa-o { + --fa: "\4f"; + --fa--fa: "\4f\4f"; } -.fa-bible::before { - content: "\f647"; } +.fa-suitcase-medical { + --fa: "\f0fa"; + --fa--fa: "\f0fa\f0fa"; } -.fa-o::before { - content: "\4f"; } +.fa-medkit { + --fa: "\f0fa"; + --fa--fa: "\f0fa\f0fa"; } -.fa-suitcase-medical::before { - content: "\f0fa"; } +.fa-user-secret { + --fa: "\f21b"; + --fa--fa: "\f21b\f21b"; } -.fa-medkit::before { - content: "\f0fa"; } +.fa-otter { + --fa: "\f700"; + --fa--fa: "\f700\f700"; } -.fa-user-secret::before { - content: "\f21b"; } +.fa-person-dress { + --fa: "\f182"; + --fa--fa: "\f182\f182"; } -.fa-otter::before { - content: "\f700"; } +.fa-female { + --fa: "\f182"; + --fa--fa: "\f182\f182"; } -.fa-person-dress::before { - content: "\f182"; } +.fa-comment-dollar { + --fa: "\f651"; + --fa--fa: "\f651\f651"; } -.fa-female::before { - content: "\f182"; } +.fa-business-time { + --fa: "\f64a"; + --fa--fa: "\f64a\f64a"; } -.fa-comment-dollar::before { - content: "\f651"; } +.fa-briefcase-clock { + --fa: "\f64a"; + --fa--fa: "\f64a\f64a"; } -.fa-business-time::before { - content: "\f64a"; } +.fa-table-cells-large { + --fa: "\f009"; + --fa--fa: "\f009\f009"; } -.fa-briefcase-clock::before { - content: "\f64a"; } +.fa-th-large { + --fa: "\f009"; + --fa--fa: "\f009\f009"; } -.fa-table-cells-large::before { - content: "\f009"; } +.fa-book-tanakh { + --fa: "\f827"; + --fa--fa: "\f827\f827"; } -.fa-th-large::before { - content: "\f009"; } +.fa-tanakh { + --fa: "\f827"; + --fa--fa: "\f827\f827"; } -.fa-book-tanakh::before { - content: "\f827"; } +.fa-phone-volume { + --fa: "\f2a0"; + --fa--fa: "\f2a0\f2a0"; } -.fa-tanakh::before { - content: "\f827"; } +.fa-volume-control-phone { + --fa: "\f2a0"; + --fa--fa: "\f2a0\f2a0"; } -.fa-phone-volume::before { - content: "\f2a0"; } +.fa-hat-cowboy-side { + --fa: "\f8c1"; + --fa--fa: "\f8c1\f8c1"; } -.fa-volume-control-phone::before { - content: "\f2a0"; } +.fa-clipboard-user { + --fa: "\f7f3"; + --fa--fa: "\f7f3\f7f3"; } -.fa-hat-cowboy-side::before { - content: "\f8c1"; } +.fa-child { + --fa: "\f1ae"; + --fa--fa: "\f1ae\f1ae"; } -.fa-clipboard-user::before { - content: "\f7f3"; } +.fa-lira-sign { + --fa: "\f195"; + --fa--fa: "\f195\f195"; } -.fa-child::before { - content: "\f1ae"; } +.fa-satellite { + --fa: "\f7bf"; + --fa--fa: "\f7bf\f7bf"; } -.fa-lira-sign::before { - content: "\f195"; } +.fa-plane-lock { + --fa: "\e558"; + --fa--fa: "\e558\e558"; } -.fa-satellite::before { - content: "\f7bf"; } +.fa-tag { + --fa: "\f02b"; + --fa--fa: "\f02b\f02b"; } -.fa-plane-lock::before { - content: "\e558"; } +.fa-comment { + --fa: "\f075"; + --fa--fa: "\f075\f075"; } -.fa-tag::before { - content: "\f02b"; } +.fa-cake-candles { + --fa: "\f1fd"; + --fa--fa: "\f1fd\f1fd"; } -.fa-comment::before { - content: "\f075"; } +.fa-birthday-cake { + --fa: "\f1fd"; + --fa--fa: "\f1fd\f1fd"; } -.fa-cake-candles::before { - content: "\f1fd"; } +.fa-cake { + --fa: "\f1fd"; + --fa--fa: "\f1fd\f1fd"; } -.fa-birthday-cake::before { - content: "\f1fd"; } +.fa-envelope { + --fa: "\f0e0"; + --fa--fa: "\f0e0\f0e0"; } -.fa-cake::before { - content: "\f1fd"; } +.fa-angles-up { + --fa: "\f102"; + --fa--fa: "\f102\f102"; } -.fa-envelope::before { - content: "\f0e0"; } +.fa-angle-double-up { + --fa: "\f102"; + --fa--fa: "\f102\f102"; } -.fa-angles-up::before { - content: "\f102"; } +.fa-paperclip { + --fa: "\f0c6"; + --fa--fa: "\f0c6\f0c6"; } -.fa-angle-double-up::before { - content: "\f102"; } +.fa-arrow-right-to-city { + --fa: "\e4b3"; + --fa--fa: "\e4b3\e4b3"; } -.fa-paperclip::before { - content: "\f0c6"; } +.fa-ribbon { + --fa: "\f4d6"; + --fa--fa: "\f4d6\f4d6"; } -.fa-arrow-right-to-city::before { - content: "\e4b3"; } +.fa-lungs { + --fa: "\f604"; + --fa--fa: "\f604\f604"; } -.fa-ribbon::before { - content: "\f4d6"; } +.fa-arrow-up-9-1 { + --fa: "\f887"; + --fa--fa: "\f887\f887"; } -.fa-lungs::before { - content: "\f604"; } +.fa-sort-numeric-up-alt { + --fa: "\f887"; + --fa--fa: "\f887\f887"; } -.fa-arrow-up-9-1::before { - content: "\f887"; } +.fa-litecoin-sign { + --fa: "\e1d3"; + --fa--fa: "\e1d3\e1d3"; } -.fa-sort-numeric-up-alt::before { - content: "\f887"; } +.fa-border-none { + --fa: "\f850"; + --fa--fa: "\f850\f850"; } -.fa-litecoin-sign::before { - content: "\e1d3"; } +.fa-circle-nodes { + --fa: "\e4e2"; + --fa--fa: "\e4e2\e4e2"; } -.fa-border-none::before { - content: "\f850"; } +.fa-parachute-box { + --fa: "\f4cd"; + --fa--fa: "\f4cd\f4cd"; } -.fa-circle-nodes::before { - content: "\e4e2"; } +.fa-indent { + --fa: "\f03c"; + --fa--fa: "\f03c\f03c"; } -.fa-parachute-box::before { - content: "\f4cd"; } +.fa-truck-field-un { + --fa: "\e58e"; + --fa--fa: "\e58e\e58e"; } -.fa-indent::before { - content: "\f03c"; } +.fa-hourglass { + --fa: "\f254"; + --fa--fa: "\f254\f254"; } -.fa-truck-field-un::before { - content: "\e58e"; } +.fa-hourglass-empty { + --fa: "\f254"; + --fa--fa: "\f254\f254"; } -.fa-hourglass::before { - content: "\f254"; } +.fa-mountain { + --fa: "\f6fc"; + --fa--fa: "\f6fc\f6fc"; } -.fa-hourglass-empty::before { - content: "\f254"; } +.fa-user-doctor { + --fa: "\f0f0"; + --fa--fa: "\f0f0\f0f0"; } -.fa-mountain::before { - content: "\f6fc"; } +.fa-user-md { + --fa: "\f0f0"; + --fa--fa: "\f0f0\f0f0"; } -.fa-user-doctor::before { - content: "\f0f0"; } +.fa-circle-info { + --fa: "\f05a"; + --fa--fa: "\f05a\f05a"; } -.fa-user-md::before { - content: "\f0f0"; } +.fa-info-circle { + --fa: "\f05a"; + --fa--fa: "\f05a\f05a"; } -.fa-circle-info::before { - content: "\f05a"; } +.fa-cloud-meatball { + --fa: "\f73b"; + --fa--fa: "\f73b\f73b"; } -.fa-info-circle::before { - content: "\f05a"; } +.fa-camera { + --fa: "\f030"; + --fa--fa: "\f030\f030"; } -.fa-cloud-meatball::before { - content: "\f73b"; } +.fa-camera-alt { + --fa: "\f030"; + --fa--fa: "\f030\f030"; } -.fa-camera::before { - content: "\f030"; } +.fa-square-virus { + --fa: "\e578"; + --fa--fa: "\e578\e578"; } -.fa-camera-alt::before { - content: "\f030"; } +.fa-meteor { + --fa: "\f753"; + --fa--fa: "\f753\f753"; } -.fa-square-virus::before { - content: "\e578"; } +.fa-car-on { + --fa: "\e4dd"; + --fa--fa: "\e4dd\e4dd"; } -.fa-meteor::before { - content: "\f753"; } +.fa-sleigh { + --fa: "\f7cc"; + --fa--fa: "\f7cc\f7cc"; } -.fa-car-on::before { - content: "\e4dd"; } +.fa-arrow-down-1-9 { + --fa: "\f162"; + --fa--fa: "\f162\f162"; } -.fa-sleigh::before { - content: "\f7cc"; } +.fa-sort-numeric-asc { + --fa: "\f162"; + --fa--fa: "\f162\f162"; } -.fa-arrow-down-1-9::before { - content: "\f162"; } +.fa-sort-numeric-down { + --fa: "\f162"; + --fa--fa: "\f162\f162"; } -.fa-sort-numeric-asc::before { - content: "\f162"; } +.fa-hand-holding-droplet { + --fa: "\f4c1"; + --fa--fa: "\f4c1\f4c1"; } -.fa-sort-numeric-down::before { - content: "\f162"; } +.fa-hand-holding-water { + --fa: "\f4c1"; + --fa--fa: "\f4c1\f4c1"; } -.fa-hand-holding-droplet::before { - content: "\f4c1"; } +.fa-water { + --fa: "\f773"; + --fa--fa: "\f773\f773"; } -.fa-hand-holding-water::before { - content: "\f4c1"; } +.fa-calendar-check { + --fa: "\f274"; + --fa--fa: "\f274\f274"; } -.fa-water::before { - content: "\f773"; } +.fa-braille { + --fa: "\f2a1"; + --fa--fa: "\f2a1\f2a1"; } -.fa-calendar-check::before { - content: "\f274"; } +.fa-prescription-bottle-medical { + --fa: "\f486"; + --fa--fa: "\f486\f486"; } -.fa-braille::before { - content: "\f2a1"; } +.fa-prescription-bottle-alt { + --fa: "\f486"; + --fa--fa: "\f486\f486"; } -.fa-prescription-bottle-medical::before { - content: "\f486"; } +.fa-landmark { + --fa: "\f66f"; + --fa--fa: "\f66f\f66f"; } -.fa-prescription-bottle-alt::before { - content: "\f486"; } +.fa-truck { + --fa: "\f0d1"; + --fa--fa: "\f0d1\f0d1"; } -.fa-landmark::before { - content: "\f66f"; } +.fa-crosshairs { + --fa: "\f05b"; + --fa--fa: "\f05b\f05b"; } -.fa-truck::before { - content: "\f0d1"; } +.fa-person-cane { + --fa: "\e53c"; + --fa--fa: "\e53c\e53c"; } -.fa-crosshairs::before { - content: "\f05b"; } +.fa-tent { + --fa: "\e57d"; + --fa--fa: "\e57d\e57d"; } -.fa-person-cane::before { - content: "\e53c"; } +.fa-vest-patches { + --fa: "\e086"; + --fa--fa: "\e086\e086"; } -.fa-tent::before { - content: "\e57d"; } +.fa-check-double { + --fa: "\f560"; + --fa--fa: "\f560\f560"; } -.fa-vest-patches::before { - content: "\e086"; } +.fa-arrow-down-a-z { + --fa: "\f15d"; + --fa--fa: "\f15d\f15d"; } -.fa-check-double::before { - content: "\f560"; } +.fa-sort-alpha-asc { + --fa: "\f15d"; + --fa--fa: "\f15d\f15d"; } -.fa-arrow-down-a-z::before { - content: "\f15d"; } +.fa-sort-alpha-down { + --fa: "\f15d"; + --fa--fa: "\f15d\f15d"; } -.fa-sort-alpha-asc::before { - content: "\f15d"; } +.fa-money-bill-wheat { + --fa: "\e52a"; + --fa--fa: "\e52a\e52a"; } -.fa-sort-alpha-down::before { - content: "\f15d"; } +.fa-cookie { + --fa: "\f563"; + --fa--fa: "\f563\f563"; } -.fa-money-bill-wheat::before { - content: "\e52a"; } +.fa-arrow-rotate-left { + --fa: "\f0e2"; + --fa--fa: "\f0e2\f0e2"; } -.fa-cookie::before { - content: "\f563"; } +.fa-arrow-left-rotate { + --fa: "\f0e2"; + --fa--fa: "\f0e2\f0e2"; } -.fa-arrow-rotate-left::before { - content: "\f0e2"; } +.fa-arrow-rotate-back { + --fa: "\f0e2"; + --fa--fa: "\f0e2\f0e2"; } -.fa-arrow-left-rotate::before { - content: "\f0e2"; } +.fa-arrow-rotate-backward { + --fa: "\f0e2"; + --fa--fa: "\f0e2\f0e2"; } -.fa-arrow-rotate-back::before { - content: "\f0e2"; } +.fa-undo { + --fa: "\f0e2"; + --fa--fa: "\f0e2\f0e2"; } -.fa-arrow-rotate-backward::before { - content: "\f0e2"; } +.fa-hard-drive { + --fa: "\f0a0"; + --fa--fa: "\f0a0\f0a0"; } -.fa-undo::before { - content: "\f0e2"; } +.fa-hdd { + --fa: "\f0a0"; + --fa--fa: "\f0a0\f0a0"; } -.fa-hard-drive::before { - content: "\f0a0"; } +.fa-face-grin-squint-tears { + --fa: "\f586"; + --fa--fa: "\f586\f586"; } -.fa-hdd::before { - content: "\f0a0"; } +.fa-grin-squint-tears { + --fa: "\f586"; + --fa--fa: "\f586\f586"; } -.fa-face-grin-squint-tears::before { - content: "\f586"; } +.fa-dumbbell { + --fa: "\f44b"; + --fa--fa: "\f44b\f44b"; } -.fa-grin-squint-tears::before { - content: "\f586"; } +.fa-rectangle-list { + --fa: "\f022"; + --fa--fa: "\f022\f022"; } -.fa-dumbbell::before { - content: "\f44b"; } +.fa-list-alt { + --fa: "\f022"; + --fa--fa: "\f022\f022"; } -.fa-rectangle-list::before { - content: "\f022"; } +.fa-tarp-droplet { + --fa: "\e57c"; + --fa--fa: "\e57c\e57c"; } -.fa-list-alt::before { - content: "\f022"; } +.fa-house-medical-circle-check { + --fa: "\e511"; + --fa--fa: "\e511\e511"; } -.fa-tarp-droplet::before { - content: "\e57c"; } +.fa-person-skiing-nordic { + --fa: "\f7ca"; + --fa--fa: "\f7ca\f7ca"; } -.fa-house-medical-circle-check::before { - content: "\e511"; } +.fa-skiing-nordic { + --fa: "\f7ca"; + --fa--fa: "\f7ca\f7ca"; } -.fa-person-skiing-nordic::before { - content: "\f7ca"; } +.fa-calendar-plus { + --fa: "\f271"; + --fa--fa: "\f271\f271"; } -.fa-skiing-nordic::before { - content: "\f7ca"; } +.fa-plane-arrival { + --fa: "\f5af"; + --fa--fa: "\f5af\f5af"; } -.fa-calendar-plus::before { - content: "\f271"; } +.fa-circle-left { + --fa: "\f359"; + --fa--fa: "\f359\f359"; } -.fa-plane-arrival::before { - content: "\f5af"; } +.fa-arrow-alt-circle-left { + --fa: "\f359"; + --fa--fa: "\f359\f359"; } -.fa-circle-left::before { - content: "\f359"; } +.fa-train-subway { + --fa: "\f239"; + --fa--fa: "\f239\f239"; } -.fa-arrow-alt-circle-left::before { - content: "\f359"; } +.fa-subway { + --fa: "\f239"; + --fa--fa: "\f239\f239"; } -.fa-train-subway::before { - content: "\f239"; } +.fa-chart-gantt { + --fa: "\e0e4"; + --fa--fa: "\e0e4\e0e4"; } -.fa-subway::before { - content: "\f239"; } +.fa-indian-rupee-sign { + --fa: "\e1bc"; + --fa--fa: "\e1bc\e1bc"; } -.fa-chart-gantt::before { - content: "\e0e4"; } +.fa-indian-rupee { + --fa: "\e1bc"; + --fa--fa: "\e1bc\e1bc"; } -.fa-indian-rupee-sign::before { - content: "\e1bc"; } +.fa-inr { + --fa: "\e1bc"; + --fa--fa: "\e1bc\e1bc"; } -.fa-indian-rupee::before { - content: "\e1bc"; } +.fa-crop-simple { + --fa: "\f565"; + --fa--fa: "\f565\f565"; } -.fa-inr::before { - content: "\e1bc"; } +.fa-crop-alt { + --fa: "\f565"; + --fa--fa: "\f565\f565"; } -.fa-crop-simple::before { - content: "\f565"; } +.fa-money-bill-1 { + --fa: "\f3d1"; + --fa--fa: "\f3d1\f3d1"; } -.fa-crop-alt::before { - content: "\f565"; } +.fa-money-bill-alt { + --fa: "\f3d1"; + --fa--fa: "\f3d1\f3d1"; } -.fa-money-bill-1::before { - content: "\f3d1"; } +.fa-left-long { + --fa: "\f30a"; + --fa--fa: "\f30a\f30a"; } -.fa-money-bill-alt::before { - content: "\f3d1"; } +.fa-long-arrow-alt-left { + --fa: "\f30a"; + --fa--fa: "\f30a\f30a"; } -.fa-left-long::before { - content: "\f30a"; } +.fa-dna { + --fa: "\f471"; + --fa--fa: "\f471\f471"; } -.fa-long-arrow-alt-left::before { - content: "\f30a"; } +.fa-virus-slash { + --fa: "\e075"; + --fa--fa: "\e075\e075"; } -.fa-dna::before { - content: "\f471"; } +.fa-minus { + --fa: "\f068"; + --fa--fa: "\f068\f068"; } -.fa-virus-slash::before { - content: "\e075"; } +.fa-subtract { + --fa: "\f068"; + --fa--fa: "\f068\f068"; } -.fa-minus::before { - content: "\f068"; } +.fa-chess { + --fa: "\f439"; + --fa--fa: "\f439\f439"; } -.fa-subtract::before { - content: "\f068"; } +.fa-arrow-left-long { + --fa: "\f177"; + --fa--fa: "\f177\f177"; } -.fa-chess::before { - content: "\f439"; } +.fa-long-arrow-left { + --fa: "\f177"; + --fa--fa: "\f177\f177"; } -.fa-arrow-left-long::before { - content: "\f177"; } +.fa-plug-circle-check { + --fa: "\e55c"; + --fa--fa: "\e55c\e55c"; } -.fa-long-arrow-left::before { - content: "\f177"; } +.fa-street-view { + --fa: "\f21d"; + --fa--fa: "\f21d\f21d"; } -.fa-plug-circle-check::before { - content: "\e55c"; } +.fa-franc-sign { + --fa: "\e18f"; + --fa--fa: "\e18f\e18f"; } -.fa-street-view::before { - content: "\f21d"; } +.fa-volume-off { + --fa: "\f026"; + --fa--fa: "\f026\f026"; } -.fa-franc-sign::before { - content: "\e18f"; } +.fa-hands-asl-interpreting { + --fa: "\f2a3"; + --fa--fa: "\f2a3\f2a3"; } -.fa-volume-off::before { - content: "\f026"; } +.fa-american-sign-language-interpreting { + --fa: "\f2a3"; + --fa--fa: "\f2a3\f2a3"; } -.fa-hands-asl-interpreting::before { - content: "\f2a3"; } +.fa-asl-interpreting { + --fa: "\f2a3"; + --fa--fa: "\f2a3\f2a3"; } -.fa-american-sign-language-interpreting::before { - content: "\f2a3"; } +.fa-hands-american-sign-language-interpreting { + --fa: "\f2a3"; + --fa--fa: "\f2a3\f2a3"; } -.fa-asl-interpreting::before { - content: "\f2a3"; } +.fa-gear { + --fa: "\f013"; + --fa--fa: "\f013\f013"; } -.fa-hands-american-sign-language-interpreting::before { - content: "\f2a3"; } +.fa-cog { + --fa: "\f013"; + --fa--fa: "\f013\f013"; } -.fa-gear::before { - content: "\f013"; } +.fa-droplet-slash { + --fa: "\f5c7"; + --fa--fa: "\f5c7\f5c7"; } -.fa-cog::before { - content: "\f013"; } +.fa-tint-slash { + --fa: "\f5c7"; + --fa--fa: "\f5c7\f5c7"; } -.fa-droplet-slash::before { - content: "\f5c7"; } +.fa-mosque { + --fa: "\f678"; + --fa--fa: "\f678\f678"; } -.fa-tint-slash::before { - content: "\f5c7"; } +.fa-mosquito { + --fa: "\e52b"; + --fa--fa: "\e52b\e52b"; } -.fa-mosque::before { - content: "\f678"; } +.fa-star-of-david { + --fa: "\f69a"; + --fa--fa: "\f69a\f69a"; } -.fa-mosquito::before { - content: "\e52b"; } +.fa-person-military-rifle { + --fa: "\e54b"; + --fa--fa: "\e54b\e54b"; } -.fa-star-of-david::before { - content: "\f69a"; } +.fa-cart-shopping { + --fa: "\f07a"; + --fa--fa: "\f07a\f07a"; } -.fa-person-military-rifle::before { - content: "\e54b"; } +.fa-shopping-cart { + --fa: "\f07a"; + --fa--fa: "\f07a\f07a"; } -.fa-cart-shopping::before { - content: "\f07a"; } +.fa-vials { + --fa: "\f493"; + --fa--fa: "\f493\f493"; } -.fa-shopping-cart::before { - content: "\f07a"; } +.fa-plug-circle-plus { + --fa: "\e55f"; + --fa--fa: "\e55f\e55f"; } -.fa-vials::before { - content: "\f493"; } +.fa-place-of-worship { + --fa: "\f67f"; + --fa--fa: "\f67f\f67f"; } -.fa-plug-circle-plus::before { - content: "\e55f"; } +.fa-grip-vertical { + --fa: "\f58e"; + --fa--fa: "\f58e\f58e"; } -.fa-place-of-worship::before { - content: "\f67f"; } +.fa-hexagon-nodes { + --fa: "\e699"; + --fa--fa: "\e699\e699"; } -.fa-grip-vertical::before { - content: "\f58e"; } +.fa-arrow-turn-up { + --fa: "\f148"; + --fa--fa: "\f148\f148"; } -.fa-arrow-turn-up::before { - content: "\f148"; } +.fa-level-up { + --fa: "\f148"; + --fa--fa: "\f148\f148"; } -.fa-level-up::before { - content: "\f148"; } +.fa-u { + --fa: "\55"; + --fa--fa: "\55\55"; } -.fa-u::before { - content: "\55"; } +.fa-square-root-variable { + --fa: "\f698"; + --fa--fa: "\f698\f698"; } -.fa-square-root-variable::before { - content: "\f698"; } +.fa-square-root-alt { + --fa: "\f698"; + --fa--fa: "\f698\f698"; } -.fa-square-root-alt::before { - content: "\f698"; } +.fa-clock { + --fa: "\f017"; + --fa--fa: "\f017\f017"; } -.fa-clock::before { - content: "\f017"; } +.fa-clock-four { + --fa: "\f017"; + --fa--fa: "\f017\f017"; } -.fa-clock-four::before { - content: "\f017"; } +.fa-backward-step { + --fa: "\f048"; + --fa--fa: "\f048\f048"; } -.fa-backward-step::before { - content: "\f048"; } +.fa-step-backward { + --fa: "\f048"; + --fa--fa: "\f048\f048"; } -.fa-step-backward::before { - content: "\f048"; } +.fa-pallet { + --fa: "\f482"; + --fa--fa: "\f482\f482"; } -.fa-pallet::before { - content: "\f482"; } +.fa-faucet { + --fa: "\e005"; + --fa--fa: "\e005\e005"; } -.fa-faucet::before { - content: "\e005"; } +.fa-baseball-bat-ball { + --fa: "\f432"; + --fa--fa: "\f432\f432"; } -.fa-baseball-bat-ball::before { - content: "\f432"; } +.fa-s { + --fa: "\53"; + --fa--fa: "\53\53"; } -.fa-s::before { - content: "\53"; } +.fa-timeline { + --fa: "\e29c"; + --fa--fa: "\e29c\e29c"; } -.fa-timeline::before { - content: "\e29c"; } +.fa-keyboard { + --fa: "\f11c"; + --fa--fa: "\f11c\f11c"; } -.fa-keyboard::before { - content: "\f11c"; } +.fa-caret-down { + --fa: "\f0d7"; + --fa--fa: "\f0d7\f0d7"; } -.fa-caret-down::before { - content: "\f0d7"; } +.fa-house-chimney-medical { + --fa: "\f7f2"; + --fa--fa: "\f7f2\f7f2"; } -.fa-house-chimney-medical::before { - content: "\f7f2"; } +.fa-clinic-medical { + --fa: "\f7f2"; + --fa--fa: "\f7f2\f7f2"; } -.fa-clinic-medical::before { - content: "\f7f2"; } +.fa-temperature-three-quarters { + --fa: "\f2c8"; + --fa--fa: "\f2c8\f2c8"; } -.fa-temperature-three-quarters::before { - content: "\f2c8"; } +.fa-temperature-3 { + --fa: "\f2c8"; + --fa--fa: "\f2c8\f2c8"; } -.fa-temperature-3::before { - content: "\f2c8"; } +.fa-thermometer-3 { + --fa: "\f2c8"; + --fa--fa: "\f2c8\f2c8"; } -.fa-thermometer-3::before { - content: "\f2c8"; } +.fa-thermometer-three-quarters { + --fa: "\f2c8"; + --fa--fa: "\f2c8\f2c8"; } -.fa-thermometer-three-quarters::before { - content: "\f2c8"; } +.fa-mobile-screen { + --fa: "\f3cf"; + --fa--fa: "\f3cf\f3cf"; } -.fa-mobile-screen::before { - content: "\f3cf"; } +.fa-mobile-android-alt { + --fa: "\f3cf"; + --fa--fa: "\f3cf\f3cf"; } -.fa-mobile-android-alt::before { - content: "\f3cf"; } +.fa-plane-up { + --fa: "\e22d"; + --fa--fa: "\e22d\e22d"; } -.fa-plane-up::before { - content: "\e22d"; } +.fa-piggy-bank { + --fa: "\f4d3"; + --fa--fa: "\f4d3\f4d3"; } -.fa-piggy-bank::before { - content: "\f4d3"; } +.fa-battery-half { + --fa: "\f242"; + --fa--fa: "\f242\f242"; } -.fa-battery-half::before { - content: "\f242"; } +.fa-battery-3 { + --fa: "\f242"; + --fa--fa: "\f242\f242"; } -.fa-battery-3::before { - content: "\f242"; } +.fa-mountain-city { + --fa: "\e52e"; + --fa--fa: "\e52e\e52e"; } -.fa-mountain-city::before { - content: "\e52e"; } +.fa-coins { + --fa: "\f51e"; + --fa--fa: "\f51e\f51e"; } -.fa-coins::before { - content: "\f51e"; } +.fa-khanda { + --fa: "\f66d"; + --fa--fa: "\f66d\f66d"; } -.fa-khanda::before { - content: "\f66d"; } +.fa-sliders { + --fa: "\f1de"; + --fa--fa: "\f1de\f1de"; } -.fa-sliders::before { - content: "\f1de"; } +.fa-sliders-h { + --fa: "\f1de"; + --fa--fa: "\f1de\f1de"; } -.fa-sliders-h::before { - content: "\f1de"; } +.fa-folder-tree { + --fa: "\f802"; + --fa--fa: "\f802\f802"; } -.fa-folder-tree::before { - content: "\f802"; } +.fa-network-wired { + --fa: "\f6ff"; + --fa--fa: "\f6ff\f6ff"; } -.fa-network-wired::before { - content: "\f6ff"; } +.fa-map-pin { + --fa: "\f276"; + --fa--fa: "\f276\f276"; } -.fa-map-pin::before { - content: "\f276"; } +.fa-hamsa { + --fa: "\f665"; + --fa--fa: "\f665\f665"; } -.fa-hamsa::before { - content: "\f665"; } +.fa-cent-sign { + --fa: "\e3f5"; + --fa--fa: "\e3f5\e3f5"; } -.fa-cent-sign::before { - content: "\e3f5"; } +.fa-flask { + --fa: "\f0c3"; + --fa--fa: "\f0c3\f0c3"; } -.fa-flask::before { - content: "\f0c3"; } +.fa-person-pregnant { + --fa: "\e31e"; + --fa--fa: "\e31e\e31e"; } -.fa-person-pregnant::before { - content: "\e31e"; } +.fa-wand-sparkles { + --fa: "\f72b"; + --fa--fa: "\f72b\f72b"; } -.fa-wand-sparkles::before { - content: "\f72b"; } +.fa-ellipsis-vertical { + --fa: "\f142"; + --fa--fa: "\f142\f142"; } -.fa-ellipsis-vertical::before { - content: "\f142"; } +.fa-ellipsis-v { + --fa: "\f142"; + --fa--fa: "\f142\f142"; } -.fa-ellipsis-v::before { - content: "\f142"; } +.fa-ticket { + --fa: "\f145"; + --fa--fa: "\f145\f145"; } -.fa-ticket::before { - content: "\f145"; } +.fa-power-off { + --fa: "\f011"; + --fa--fa: "\f011\f011"; } -.fa-power-off::before { - content: "\f011"; } +.fa-right-long { + --fa: "\f30b"; + --fa--fa: "\f30b\f30b"; } -.fa-right-long::before { - content: "\f30b"; } +.fa-long-arrow-alt-right { + --fa: "\f30b"; + --fa--fa: "\f30b\f30b"; } -.fa-long-arrow-alt-right::before { - content: "\f30b"; } +.fa-flag-usa { + --fa: "\f74d"; + --fa--fa: "\f74d\f74d"; } -.fa-flag-usa::before { - content: "\f74d"; } +.fa-laptop-file { + --fa: "\e51d"; + --fa--fa: "\e51d\e51d"; } -.fa-laptop-file::before { - content: "\e51d"; } +.fa-tty { + --fa: "\f1e4"; + --fa--fa: "\f1e4\f1e4"; } -.fa-tty::before { - content: "\f1e4"; } +.fa-teletype { + --fa: "\f1e4"; + --fa--fa: "\f1e4\f1e4"; } -.fa-teletype::before { - content: "\f1e4"; } +.fa-diagram-next { + --fa: "\e476"; + --fa--fa: "\e476\e476"; } -.fa-diagram-next::before { - content: "\e476"; } +.fa-person-rifle { + --fa: "\e54e"; + --fa--fa: "\e54e\e54e"; } -.fa-person-rifle::before { - content: "\e54e"; } +.fa-house-medical-circle-exclamation { + --fa: "\e512"; + --fa--fa: "\e512\e512"; } -.fa-house-medical-circle-exclamation::before { - content: "\e512"; } +.fa-closed-captioning { + --fa: "\f20a"; + --fa--fa: "\f20a\f20a"; } -.fa-closed-captioning::before { - content: "\f20a"; } +.fa-person-hiking { + --fa: "\f6ec"; + --fa--fa: "\f6ec\f6ec"; } -.fa-person-hiking::before { - content: "\f6ec"; } +.fa-hiking { + --fa: "\f6ec"; + --fa--fa: "\f6ec\f6ec"; } -.fa-hiking::before { - content: "\f6ec"; } +.fa-venus-double { + --fa: "\f226"; + --fa--fa: "\f226\f226"; } -.fa-venus-double::before { - content: "\f226"; } +.fa-images { + --fa: "\f302"; + --fa--fa: "\f302\f302"; } -.fa-images::before { - content: "\f302"; } +.fa-calculator { + --fa: "\f1ec"; + --fa--fa: "\f1ec\f1ec"; } -.fa-calculator::before { - content: "\f1ec"; } +.fa-people-pulling { + --fa: "\e535"; + --fa--fa: "\e535\e535"; } -.fa-people-pulling::before { - content: "\e535"; } +.fa-n { + --fa: "\4e"; + --fa--fa: "\4e\4e"; } -.fa-n::before { - content: "\4e"; } +.fa-cable-car { + --fa: "\f7da"; + --fa--fa: "\f7da\f7da"; } -.fa-cable-car::before { - content: "\f7da"; } +.fa-tram { + --fa: "\f7da"; + --fa--fa: "\f7da\f7da"; } -.fa-tram::before { - content: "\f7da"; } +.fa-cloud-rain { + --fa: "\f73d"; + --fa--fa: "\f73d\f73d"; } -.fa-cloud-rain::before { - content: "\f73d"; } +.fa-building-circle-xmark { + --fa: "\e4d4"; + --fa--fa: "\e4d4\e4d4"; } -.fa-building-circle-xmark::before { - content: "\e4d4"; } +.fa-ship { + --fa: "\f21a"; + --fa--fa: "\f21a\f21a"; } -.fa-ship::before { - content: "\f21a"; } +.fa-arrows-down-to-line { + --fa: "\e4b8"; + --fa--fa: "\e4b8\e4b8"; } -.fa-arrows-down-to-line::before { - content: "\e4b8"; } +.fa-download { + --fa: "\f019"; + --fa--fa: "\f019\f019"; } -.fa-download::before { - content: "\f019"; } +.fa-face-grin { + --fa: "\f580"; + --fa--fa: "\f580\f580"; } -.fa-face-grin::before { - content: "\f580"; } +.fa-grin { + --fa: "\f580"; + --fa--fa: "\f580\f580"; } -.fa-grin::before { - content: "\f580"; } +.fa-delete-left { + --fa: "\f55a"; + --fa--fa: "\f55a\f55a"; } -.fa-delete-left::before { - content: "\f55a"; } +.fa-backspace { + --fa: "\f55a"; + --fa--fa: "\f55a\f55a"; } -.fa-backspace::before { - content: "\f55a"; } +.fa-eye-dropper { + --fa: "\f1fb"; + --fa--fa: "\f1fb\f1fb"; } -.fa-eye-dropper::before { - content: "\f1fb"; } +.fa-eye-dropper-empty { + --fa: "\f1fb"; + --fa--fa: "\f1fb\f1fb"; } -.fa-eye-dropper-empty::before { - content: "\f1fb"; } +.fa-eyedropper { + --fa: "\f1fb"; + --fa--fa: "\f1fb\f1fb"; } -.fa-eyedropper::before { - content: "\f1fb"; } +.fa-file-circle-check { + --fa: "\e5a0"; + --fa--fa: "\e5a0\e5a0"; } -.fa-file-circle-check::before { - content: "\e5a0"; } +.fa-forward { + --fa: "\f04e"; + --fa--fa: "\f04e\f04e"; } -.fa-forward::before { - content: "\f04e"; } +.fa-mobile { + --fa: "\f3ce"; + --fa--fa: "\f3ce\f3ce"; } -.fa-mobile::before { - content: "\f3ce"; } +.fa-mobile-android { + --fa: "\f3ce"; + --fa--fa: "\f3ce\f3ce"; } -.fa-mobile-android::before { - content: "\f3ce"; } +.fa-mobile-phone { + --fa: "\f3ce"; + --fa--fa: "\f3ce\f3ce"; } -.fa-mobile-phone::before { - content: "\f3ce"; } +.fa-face-meh { + --fa: "\f11a"; + --fa--fa: "\f11a\f11a"; } -.fa-face-meh::before { - content: "\f11a"; } +.fa-meh { + --fa: "\f11a"; + --fa--fa: "\f11a\f11a"; } -.fa-meh::before { - content: "\f11a"; } +.fa-align-center { + --fa: "\f037"; + --fa--fa: "\f037\f037"; } -.fa-align-center::before { - content: "\f037"; } +.fa-book-skull { + --fa: "\f6b7"; + --fa--fa: "\f6b7\f6b7"; } -.fa-book-skull::before { - content: "\f6b7"; } +.fa-book-dead { + --fa: "\f6b7"; + --fa--fa: "\f6b7\f6b7"; } -.fa-book-dead::before { - content: "\f6b7"; } +.fa-id-card { + --fa: "\f2c2"; + --fa--fa: "\f2c2\f2c2"; } -.fa-id-card::before { - content: "\f2c2"; } +.fa-drivers-license { + --fa: "\f2c2"; + --fa--fa: "\f2c2\f2c2"; } -.fa-drivers-license::before { - content: "\f2c2"; } +.fa-outdent { + --fa: "\f03b"; + --fa--fa: "\f03b\f03b"; } -.fa-outdent::before { - content: "\f03b"; } +.fa-dedent { + --fa: "\f03b"; + --fa--fa: "\f03b\f03b"; } -.fa-dedent::before { - content: "\f03b"; } +.fa-heart-circle-exclamation { + --fa: "\e4fe"; + --fa--fa: "\e4fe\e4fe"; } -.fa-heart-circle-exclamation::before { - content: "\e4fe"; } +.fa-house { + --fa: "\f015"; + --fa--fa: "\f015\f015"; } -.fa-house::before { - content: "\f015"; } +.fa-home { + --fa: "\f015"; + --fa--fa: "\f015\f015"; } -.fa-home::before { - content: "\f015"; } +.fa-home-alt { + --fa: "\f015"; + --fa--fa: "\f015\f015"; } -.fa-home-alt::before { - content: "\f015"; } +.fa-home-lg-alt { + --fa: "\f015"; + --fa--fa: "\f015\f015"; } -.fa-home-lg-alt::before { - content: "\f015"; } +.fa-calendar-week { + --fa: "\f784"; + --fa--fa: "\f784\f784"; } -.fa-calendar-week::before { - content: "\f784"; } +.fa-laptop-medical { + --fa: "\f812"; + --fa--fa: "\f812\f812"; } -.fa-laptop-medical::before { - content: "\f812"; } +.fa-b { + --fa: "\42"; + --fa--fa: "\42\42"; } -.fa-b::before { - content: "\42"; } +.fa-file-medical { + --fa: "\f477"; + --fa--fa: "\f477\f477"; } -.fa-file-medical::before { - content: "\f477"; } +.fa-dice-one { + --fa: "\f525"; + --fa--fa: "\f525\f525"; } -.fa-dice-one::before { - content: "\f525"; } +.fa-kiwi-bird { + --fa: "\f535"; + --fa--fa: "\f535\f535"; } -.fa-kiwi-bird::before { - content: "\f535"; } +.fa-arrow-right-arrow-left { + --fa: "\f0ec"; + --fa--fa: "\f0ec\f0ec"; } -.fa-arrow-right-arrow-left::before { - content: "\f0ec"; } +.fa-exchange { + --fa: "\f0ec"; + --fa--fa: "\f0ec\f0ec"; } -.fa-exchange::before { - content: "\f0ec"; } +.fa-rotate-right { + --fa: "\f2f9"; + --fa--fa: "\f2f9\f2f9"; } -.fa-rotate-right::before { - content: "\f2f9"; } +.fa-redo-alt { + --fa: "\f2f9"; + --fa--fa: "\f2f9\f2f9"; } -.fa-redo-alt::before { - content: "\f2f9"; } +.fa-rotate-forward { + --fa: "\f2f9"; + --fa--fa: "\f2f9\f2f9"; } -.fa-rotate-forward::before { - content: "\f2f9"; } +.fa-utensils { + --fa: "\f2e7"; + --fa--fa: "\f2e7\f2e7"; } -.fa-utensils::before { - content: "\f2e7"; } +.fa-cutlery { + --fa: "\f2e7"; + --fa--fa: "\f2e7\f2e7"; } -.fa-cutlery::before { - content: "\f2e7"; } +.fa-arrow-up-wide-short { + --fa: "\f161"; + --fa--fa: "\f161\f161"; } -.fa-arrow-up-wide-short::before { - content: "\f161"; } +.fa-sort-amount-up { + --fa: "\f161"; + --fa--fa: "\f161\f161"; } -.fa-sort-amount-up::before { - content: "\f161"; } +.fa-mill-sign { + --fa: "\e1ed"; + --fa--fa: "\e1ed\e1ed"; } -.fa-mill-sign::before { - content: "\e1ed"; } +.fa-bowl-rice { + --fa: "\e2eb"; + --fa--fa: "\e2eb\e2eb"; } -.fa-bowl-rice::before { - content: "\e2eb"; } +.fa-skull { + --fa: "\f54c"; + --fa--fa: "\f54c\f54c"; } -.fa-skull::before { - content: "\f54c"; } +.fa-tower-broadcast { + --fa: "\f519"; + --fa--fa: "\f519\f519"; } -.fa-tower-broadcast::before { - content: "\f519"; } +.fa-broadcast-tower { + --fa: "\f519"; + --fa--fa: "\f519\f519"; } -.fa-broadcast-tower::before { - content: "\f519"; } +.fa-truck-pickup { + --fa: "\f63c"; + --fa--fa: "\f63c\f63c"; } -.fa-truck-pickup::before { - content: "\f63c"; } +.fa-up-long { + --fa: "\f30c"; + --fa--fa: "\f30c\f30c"; } -.fa-up-long::before { - content: "\f30c"; } +.fa-long-arrow-alt-up { + --fa: "\f30c"; + --fa--fa: "\f30c\f30c"; } -.fa-long-arrow-alt-up::before { - content: "\f30c"; } +.fa-stop { + --fa: "\f04d"; + --fa--fa: "\f04d\f04d"; } -.fa-stop::before { - content: "\f04d"; } +.fa-code-merge { + --fa: "\f387"; + --fa--fa: "\f387\f387"; } -.fa-code-merge::before { - content: "\f387"; } +.fa-upload { + --fa: "\f093"; + --fa--fa: "\f093\f093"; } -.fa-upload::before { - content: "\f093"; } +.fa-hurricane { + --fa: "\f751"; + --fa--fa: "\f751\f751"; } -.fa-hurricane::before { - content: "\f751"; } +.fa-mound { + --fa: "\e52d"; + --fa--fa: "\e52d\e52d"; } -.fa-mound::before { - content: "\e52d"; } +.fa-toilet-portable { + --fa: "\e583"; + --fa--fa: "\e583\e583"; } -.fa-toilet-portable::before { - content: "\e583"; } +.fa-compact-disc { + --fa: "\f51f"; + --fa--fa: "\f51f\f51f"; } -.fa-compact-disc::before { - content: "\f51f"; } +.fa-file-arrow-down { + --fa: "\f56d"; + --fa--fa: "\f56d\f56d"; } -.fa-file-arrow-down::before { - content: "\f56d"; } +.fa-file-download { + --fa: "\f56d"; + --fa--fa: "\f56d\f56d"; } -.fa-file-download::before { - content: "\f56d"; } +.fa-caravan { + --fa: "\f8ff"; + --fa--fa: "\f8ff\f8ff"; } -.fa-caravan::before { - content: "\f8ff"; } +.fa-shield-cat { + --fa: "\e572"; + --fa--fa: "\e572\e572"; } -.fa-shield-cat::before { - content: "\e572"; } +.fa-bolt { + --fa: "\f0e7"; + --fa--fa: "\f0e7\f0e7"; } -.fa-bolt::before { - content: "\f0e7"; } +.fa-zap { + --fa: "\f0e7"; + --fa--fa: "\f0e7\f0e7"; } -.fa-zap::before { - content: "\f0e7"; } +.fa-glass-water { + --fa: "\e4f4"; + --fa--fa: "\e4f4\e4f4"; } -.fa-glass-water::before { - content: "\e4f4"; } +.fa-oil-well { + --fa: "\e532"; + --fa--fa: "\e532\e532"; } -.fa-oil-well::before { - content: "\e532"; } +.fa-vault { + --fa: "\e2c5"; + --fa--fa: "\e2c5\e2c5"; } -.fa-vault::before { - content: "\e2c5"; } +.fa-mars { + --fa: "\f222"; + --fa--fa: "\f222\f222"; } -.fa-mars::before { - content: "\f222"; } +.fa-toilet { + --fa: "\f7d8"; + --fa--fa: "\f7d8\f7d8"; } -.fa-toilet::before { - content: "\f7d8"; } +.fa-plane-circle-xmark { + --fa: "\e557"; + --fa--fa: "\e557\e557"; } -.fa-plane-circle-xmark::before { - content: "\e557"; } +.fa-yen-sign { + --fa: "\f157"; + --fa--fa: "\f157\f157"; } -.fa-yen-sign::before { - content: "\f157"; } +.fa-cny { + --fa: "\f157"; + --fa--fa: "\f157\f157"; } -.fa-cny::before { - content: "\f157"; } +.fa-jpy { + --fa: "\f157"; + --fa--fa: "\f157\f157"; } -.fa-jpy::before { - content: "\f157"; } +.fa-rmb { + --fa: "\f157"; + --fa--fa: "\f157\f157"; } -.fa-rmb::before { - content: "\f157"; } +.fa-yen { + --fa: "\f157"; + --fa--fa: "\f157\f157"; } -.fa-yen::before { - content: "\f157"; } +.fa-ruble-sign { + --fa: "\f158"; + --fa--fa: "\f158\f158"; } -.fa-ruble-sign::before { - content: "\f158"; } +.fa-rouble { + --fa: "\f158"; + --fa--fa: "\f158\f158"; } -.fa-rouble::before { - content: "\f158"; } +.fa-rub { + --fa: "\f158"; + --fa--fa: "\f158\f158"; } -.fa-rub::before { - content: "\f158"; } +.fa-ruble { + --fa: "\f158"; + --fa--fa: "\f158\f158"; } -.fa-ruble::before { - content: "\f158"; } +.fa-sun { + --fa: "\f185"; + --fa--fa: "\f185\f185"; } -.fa-sun::before { - content: "\f185"; } +.fa-guitar { + --fa: "\f7a6"; + --fa--fa: "\f7a6\f7a6"; } -.fa-guitar::before { - content: "\f7a6"; } +.fa-face-laugh-wink { + --fa: "\f59c"; + --fa--fa: "\f59c\f59c"; } -.fa-face-laugh-wink::before { - content: "\f59c"; } +.fa-laugh-wink { + --fa: "\f59c"; + --fa--fa: "\f59c\f59c"; } -.fa-laugh-wink::before { - content: "\f59c"; } +.fa-horse-head { + --fa: "\f7ab"; + --fa--fa: "\f7ab\f7ab"; } -.fa-horse-head::before { - content: "\f7ab"; } +.fa-bore-hole { + --fa: "\e4c3"; + --fa--fa: "\e4c3\e4c3"; } -.fa-bore-hole::before { - content: "\e4c3"; } +.fa-industry { + --fa: "\f275"; + --fa--fa: "\f275\f275"; } -.fa-industry::before { - content: "\f275"; } +.fa-circle-down { + --fa: "\f358"; + --fa--fa: "\f358\f358"; } -.fa-circle-down::before { - content: "\f358"; } +.fa-arrow-alt-circle-down { + --fa: "\f358"; + --fa--fa: "\f358\f358"; } -.fa-arrow-alt-circle-down::before { - content: "\f358"; } +.fa-arrows-turn-to-dots { + --fa: "\e4c1"; + --fa--fa: "\e4c1\e4c1"; } -.fa-arrows-turn-to-dots::before { - content: "\e4c1"; } +.fa-florin-sign { + --fa: "\e184"; + --fa--fa: "\e184\e184"; } -.fa-florin-sign::before { - content: "\e184"; } +.fa-arrow-down-short-wide { + --fa: "\f884"; + --fa--fa: "\f884\f884"; } -.fa-arrow-down-short-wide::before { - content: "\f884"; } +.fa-sort-amount-desc { + --fa: "\f884"; + --fa--fa: "\f884\f884"; } -.fa-sort-amount-desc::before { - content: "\f884"; } +.fa-sort-amount-down-alt { + --fa: "\f884"; + --fa--fa: "\f884\f884"; } -.fa-sort-amount-down-alt::before { - content: "\f884"; } +.fa-less-than { + --fa: "\3c"; + --fa--fa: "\3c\3c"; } -.fa-less-than::before { - content: "\3c"; } +.fa-angle-down { + --fa: "\f107"; + --fa--fa: "\f107\f107"; } -.fa-angle-down::before { - content: "\f107"; } +.fa-car-tunnel { + --fa: "\e4de"; + --fa--fa: "\e4de\e4de"; } -.fa-car-tunnel::before { - content: "\e4de"; } +.fa-head-side-cough { + --fa: "\e061"; + --fa--fa: "\e061\e061"; } -.fa-head-side-cough::before { - content: "\e061"; } +.fa-grip-lines { + --fa: "\f7a4"; + --fa--fa: "\f7a4\f7a4"; } -.fa-grip-lines::before { - content: "\f7a4"; } +.fa-thumbs-down { + --fa: "\f165"; + --fa--fa: "\f165\f165"; } -.fa-thumbs-down::before { - content: "\f165"; } +.fa-user-lock { + --fa: "\f502"; + --fa--fa: "\f502\f502"; } -.fa-user-lock::before { - content: "\f502"; } +.fa-arrow-right-long { + --fa: "\f178"; + --fa--fa: "\f178\f178"; } -.fa-arrow-right-long::before { - content: "\f178"; } +.fa-long-arrow-right { + --fa: "\f178"; + --fa--fa: "\f178\f178"; } -.fa-long-arrow-right::before { - content: "\f178"; } +.fa-anchor-circle-xmark { + --fa: "\e4ac"; + --fa--fa: "\e4ac\e4ac"; } -.fa-anchor-circle-xmark::before { - content: "\e4ac"; } +.fa-ellipsis { + --fa: "\f141"; + --fa--fa: "\f141\f141"; } -.fa-ellipsis::before { - content: "\f141"; } +.fa-ellipsis-h { + --fa: "\f141"; + --fa--fa: "\f141\f141"; } -.fa-ellipsis-h::before { - content: "\f141"; } +.fa-chess-pawn { + --fa: "\f443"; + --fa--fa: "\f443\f443"; } -.fa-chess-pawn::before { - content: "\f443"; } +.fa-kit-medical { + --fa: "\f479"; + --fa--fa: "\f479\f479"; } -.fa-kit-medical::before { - content: "\f479"; } +.fa-first-aid { + --fa: "\f479"; + --fa--fa: "\f479\f479"; } -.fa-first-aid::before { - content: "\f479"; } +.fa-person-through-window { + --fa: "\e5a9"; + --fa--fa: "\e5a9\e5a9"; } -.fa-person-through-window::before { - content: "\e5a9"; } +.fa-toolbox { + --fa: "\f552"; + --fa--fa: "\f552\f552"; } -.fa-toolbox::before { - content: "\f552"; } +.fa-hands-holding-circle { + --fa: "\e4fb"; + --fa--fa: "\e4fb\e4fb"; } -.fa-hands-holding-circle::before { - content: "\e4fb"; } +.fa-bug { + --fa: "\f188"; + --fa--fa: "\f188\f188"; } -.fa-bug::before { - content: "\f188"; } +.fa-credit-card { + --fa: "\f09d"; + --fa--fa: "\f09d\f09d"; } -.fa-credit-card::before { - content: "\f09d"; } +.fa-credit-card-alt { + --fa: "\f09d"; + --fa--fa: "\f09d\f09d"; } -.fa-credit-card-alt::before { - content: "\f09d"; } +.fa-car { + --fa: "\f1b9"; + --fa--fa: "\f1b9\f1b9"; } -.fa-car::before { - content: "\f1b9"; } +.fa-automobile { + --fa: "\f1b9"; + --fa--fa: "\f1b9\f1b9"; } -.fa-automobile::before { - content: "\f1b9"; } +.fa-hand-holding-hand { + --fa: "\e4f7"; + --fa--fa: "\e4f7\e4f7"; } -.fa-hand-holding-hand::before { - content: "\e4f7"; } +.fa-book-open-reader { + --fa: "\f5da"; + --fa--fa: "\f5da\f5da"; } -.fa-book-open-reader::before { - content: "\f5da"; } +.fa-book-reader { + --fa: "\f5da"; + --fa--fa: "\f5da\f5da"; } -.fa-book-reader::before { - content: "\f5da"; } +.fa-mountain-sun { + --fa: "\e52f"; + --fa--fa: "\e52f\e52f"; } -.fa-mountain-sun::before { - content: "\e52f"; } +.fa-arrows-left-right-to-line { + --fa: "\e4ba"; + --fa--fa: "\e4ba\e4ba"; } -.fa-arrows-left-right-to-line::before { - content: "\e4ba"; } +.fa-dice-d20 { + --fa: "\f6cf"; + --fa--fa: "\f6cf\f6cf"; } -.fa-dice-d20::before { - content: "\f6cf"; } +.fa-truck-droplet { + --fa: "\e58c"; + --fa--fa: "\e58c\e58c"; } -.fa-truck-droplet::before { - content: "\e58c"; } +.fa-file-circle-xmark { + --fa: "\e5a1"; + --fa--fa: "\e5a1\e5a1"; } -.fa-file-circle-xmark::before { - content: "\e5a1"; } +.fa-temperature-arrow-up { + --fa: "\e040"; + --fa--fa: "\e040\e040"; } -.fa-temperature-arrow-up::before { - content: "\e040"; } +.fa-temperature-up { + --fa: "\e040"; + --fa--fa: "\e040\e040"; } -.fa-temperature-up::before { - content: "\e040"; } +.fa-medal { + --fa: "\f5a2"; + --fa--fa: "\f5a2\f5a2"; } -.fa-medal::before { - content: "\f5a2"; } +.fa-bed { + --fa: "\f236"; + --fa--fa: "\f236\f236"; } -.fa-bed::before { - content: "\f236"; } +.fa-square-h { + --fa: "\f0fd"; + --fa--fa: "\f0fd\f0fd"; } -.fa-square-h::before { - content: "\f0fd"; } +.fa-h-square { + --fa: "\f0fd"; + --fa--fa: "\f0fd\f0fd"; } -.fa-h-square::before { - content: "\f0fd"; } +.fa-podcast { + --fa: "\f2ce"; + --fa--fa: "\f2ce\f2ce"; } -.fa-podcast::before { - content: "\f2ce"; } +.fa-temperature-full { + --fa: "\f2c7"; + --fa--fa: "\f2c7\f2c7"; } -.fa-temperature-full::before { - content: "\f2c7"; } +.fa-temperature-4 { + --fa: "\f2c7"; + --fa--fa: "\f2c7\f2c7"; } -.fa-temperature-4::before { - content: "\f2c7"; } +.fa-thermometer-4 { + --fa: "\f2c7"; + --fa--fa: "\f2c7\f2c7"; } -.fa-thermometer-4::before { - content: "\f2c7"; } +.fa-thermometer-full { + --fa: "\f2c7"; + --fa--fa: "\f2c7\f2c7"; } -.fa-thermometer-full::before { - content: "\f2c7"; } +.fa-bell { + --fa: "\f0f3"; + --fa--fa: "\f0f3\f0f3"; } -.fa-bell::before { - content: "\f0f3"; } +.fa-superscript { + --fa: "\f12b"; + --fa--fa: "\f12b\f12b"; } -.fa-superscript::before { - content: "\f12b"; } +.fa-plug-circle-xmark { + --fa: "\e560"; + --fa--fa: "\e560\e560"; } -.fa-plug-circle-xmark::before { - content: "\e560"; } +.fa-star-of-life { + --fa: "\f621"; + --fa--fa: "\f621\f621"; } -.fa-star-of-life::before { - content: "\f621"; } +.fa-phone-slash { + --fa: "\f3dd"; + --fa--fa: "\f3dd\f3dd"; } -.fa-phone-slash::before { - content: "\f3dd"; } +.fa-paint-roller { + --fa: "\f5aa"; + --fa--fa: "\f5aa\f5aa"; } -.fa-paint-roller::before { - content: "\f5aa"; } +.fa-handshake-angle { + --fa: "\f4c4"; + --fa--fa: "\f4c4\f4c4"; } -.fa-handshake-angle::before { - content: "\f4c4"; } +.fa-hands-helping { + --fa: "\f4c4"; + --fa--fa: "\f4c4\f4c4"; } -.fa-hands-helping::before { - content: "\f4c4"; } +.fa-location-dot { + --fa: "\f3c5"; + --fa--fa: "\f3c5\f3c5"; } -.fa-location-dot::before { - content: "\f3c5"; } +.fa-map-marker-alt { + --fa: "\f3c5"; + --fa--fa: "\f3c5\f3c5"; } -.fa-map-marker-alt::before { - content: "\f3c5"; } +.fa-file { + --fa: "\f15b"; + --fa--fa: "\f15b\f15b"; } -.fa-file::before { - content: "\f15b"; } +.fa-greater-than { + --fa: "\3e"; + --fa--fa: "\3e\3e"; } -.fa-greater-than::before { - content: "\3e"; } +.fa-person-swimming { + --fa: "\f5c4"; + --fa--fa: "\f5c4\f5c4"; } -.fa-person-swimming::before { - content: "\f5c4"; } +.fa-swimmer { + --fa: "\f5c4"; + --fa--fa: "\f5c4\f5c4"; } -.fa-swimmer::before { - content: "\f5c4"; } +.fa-arrow-down { + --fa: "\f063"; + --fa--fa: "\f063\f063"; } -.fa-arrow-down::before { - content: "\f063"; } +.fa-droplet { + --fa: "\f043"; + --fa--fa: "\f043\f043"; } -.fa-droplet::before { - content: "\f043"; } +.fa-tint { + --fa: "\f043"; + --fa--fa: "\f043\f043"; } -.fa-tint::before { - content: "\f043"; } +.fa-eraser { + --fa: "\f12d"; + --fa--fa: "\f12d\f12d"; } -.fa-eraser::before { - content: "\f12d"; } +.fa-earth-americas { + --fa: "\f57d"; + --fa--fa: "\f57d\f57d"; } -.fa-earth-americas::before { - content: "\f57d"; } +.fa-earth { + --fa: "\f57d"; + --fa--fa: "\f57d\f57d"; } -.fa-earth::before { - content: "\f57d"; } +.fa-earth-america { + --fa: "\f57d"; + --fa--fa: "\f57d\f57d"; } -.fa-earth-america::before { - content: "\f57d"; } +.fa-globe-americas { + --fa: "\f57d"; + --fa--fa: "\f57d\f57d"; } -.fa-globe-americas::before { - content: "\f57d"; } +.fa-person-burst { + --fa: "\e53b"; + --fa--fa: "\e53b\e53b"; } -.fa-person-burst::before { - content: "\e53b"; } +.fa-dove { + --fa: "\f4ba"; + --fa--fa: "\f4ba\f4ba"; } -.fa-dove::before { - content: "\f4ba"; } +.fa-battery-empty { + --fa: "\f244"; + --fa--fa: "\f244\f244"; } -.fa-battery-empty::before { - content: "\f244"; } +.fa-battery-0 { + --fa: "\f244"; + --fa--fa: "\f244\f244"; } -.fa-battery-0::before { - content: "\f244"; } +.fa-socks { + --fa: "\f696"; + --fa--fa: "\f696\f696"; } -.fa-socks::before { - content: "\f696"; } +.fa-inbox { + --fa: "\f01c"; + --fa--fa: "\f01c\f01c"; } -.fa-inbox::before { - content: "\f01c"; } +.fa-section { + --fa: "\e447"; + --fa--fa: "\e447\e447"; } -.fa-section::before { - content: "\e447"; } +.fa-gauge-high { + --fa: "\f625"; + --fa--fa: "\f625\f625"; } -.fa-gauge-high::before { - content: "\f625"; } +.fa-tachometer-alt { + --fa: "\f625"; + --fa--fa: "\f625\f625"; } -.fa-tachometer-alt::before { - content: "\f625"; } +.fa-tachometer-alt-fast { + --fa: "\f625"; + --fa--fa: "\f625\f625"; } -.fa-tachometer-alt-fast::before { - content: "\f625"; } +.fa-envelope-open-text { + --fa: "\f658"; + --fa--fa: "\f658\f658"; } -.fa-envelope-open-text::before { - content: "\f658"; } +.fa-hospital { + --fa: "\f0f8"; + --fa--fa: "\f0f8\f0f8"; } -.fa-hospital::before { - content: "\f0f8"; } +.fa-hospital-alt { + --fa: "\f0f8"; + --fa--fa: "\f0f8\f0f8"; } -.fa-hospital-alt::before { - content: "\f0f8"; } +.fa-hospital-wide { + --fa: "\f0f8"; + --fa--fa: "\f0f8\f0f8"; } -.fa-hospital-wide::before { - content: "\f0f8"; } +.fa-wine-bottle { + --fa: "\f72f"; + --fa--fa: "\f72f\f72f"; } -.fa-wine-bottle::before { - content: "\f72f"; } +.fa-chess-rook { + --fa: "\f447"; + --fa--fa: "\f447\f447"; } -.fa-chess-rook::before { - content: "\f447"; } +.fa-bars-staggered { + --fa: "\f550"; + --fa--fa: "\f550\f550"; } -.fa-bars-staggered::before { - content: "\f550"; } +.fa-reorder { + --fa: "\f550"; + --fa--fa: "\f550\f550"; } -.fa-reorder::before { - content: "\f550"; } +.fa-stream { + --fa: "\f550"; + --fa--fa: "\f550\f550"; } -.fa-stream::before { - content: "\f550"; } +.fa-dharmachakra { + --fa: "\f655"; + --fa--fa: "\f655\f655"; } -.fa-dharmachakra::before { - content: "\f655"; } +.fa-hotdog { + --fa: "\f80f"; + --fa--fa: "\f80f\f80f"; } -.fa-hotdog::before { - content: "\f80f"; } +.fa-person-walking-with-cane { + --fa: "\f29d"; + --fa--fa: "\f29d\f29d"; } -.fa-person-walking-with-cane::before { - content: "\f29d"; } +.fa-blind { + --fa: "\f29d"; + --fa--fa: "\f29d\f29d"; } -.fa-blind::before { - content: "\f29d"; } +.fa-drum { + --fa: "\f569"; + --fa--fa: "\f569\f569"; } -.fa-drum::before { - content: "\f569"; } +.fa-ice-cream { + --fa: "\f810"; + --fa--fa: "\f810\f810"; } -.fa-ice-cream::before { - content: "\f810"; } +.fa-heart-circle-bolt { + --fa: "\e4fc"; + --fa--fa: "\e4fc\e4fc"; } -.fa-heart-circle-bolt::before { - content: "\e4fc"; } +.fa-fax { + --fa: "\f1ac"; + --fa--fa: "\f1ac\f1ac"; } -.fa-fax::before { - content: "\f1ac"; } +.fa-paragraph { + --fa: "\f1dd"; + --fa--fa: "\f1dd\f1dd"; } -.fa-paragraph::before { - content: "\f1dd"; } +.fa-check-to-slot { + --fa: "\f772"; + --fa--fa: "\f772\f772"; } -.fa-check-to-slot::before { - content: "\f772"; } +.fa-vote-yea { + --fa: "\f772"; + --fa--fa: "\f772\f772"; } -.fa-vote-yea::before { - content: "\f772"; } +.fa-star-half { + --fa: "\f089"; + --fa--fa: "\f089\f089"; } -.fa-star-half::before { - content: "\f089"; } +.fa-boxes-stacked { + --fa: "\f468"; + --fa--fa: "\f468\f468"; } -.fa-boxes-stacked::before { - content: "\f468"; } +.fa-boxes { + --fa: "\f468"; + --fa--fa: "\f468\f468"; } -.fa-boxes::before { - content: "\f468"; } +.fa-boxes-alt { + --fa: "\f468"; + --fa--fa: "\f468\f468"; } -.fa-boxes-alt::before { - content: "\f468"; } +.fa-link { + --fa: "\f0c1"; + --fa--fa: "\f0c1\f0c1"; } -.fa-link::before { - content: "\f0c1"; } +.fa-chain { + --fa: "\f0c1"; + --fa--fa: "\f0c1\f0c1"; } -.fa-chain::before { - content: "\f0c1"; } +.fa-ear-listen { + --fa: "\f2a2"; + --fa--fa: "\f2a2\f2a2"; } -.fa-ear-listen::before { - content: "\f2a2"; } +.fa-assistive-listening-systems { + --fa: "\f2a2"; + --fa--fa: "\f2a2\f2a2"; } -.fa-assistive-listening-systems::before { - content: "\f2a2"; } +.fa-tree-city { + --fa: "\e587"; + --fa--fa: "\e587\e587"; } -.fa-tree-city::before { - content: "\e587"; } +.fa-play { + --fa: "\f04b"; + --fa--fa: "\f04b\f04b"; } -.fa-play::before { - content: "\f04b"; } +.fa-font { + --fa: "\f031"; + --fa--fa: "\f031\f031"; } -.fa-font::before { - content: "\f031"; } +.fa-table-cells-row-lock { + --fa: "\e67a"; + --fa--fa: "\e67a\e67a"; } -.fa-table-cells-row-lock::before { - content: "\e67a"; } +.fa-rupiah-sign { + --fa: "\e23d"; + --fa--fa: "\e23d\e23d"; } -.fa-rupiah-sign::before { - content: "\e23d"; } +.fa-magnifying-glass { + --fa: "\f002"; + --fa--fa: "\f002\f002"; } -.fa-magnifying-glass::before { - content: "\f002"; } +.fa-search { + --fa: "\f002"; + --fa--fa: "\f002\f002"; } -.fa-search::before { - content: "\f002"; } +.fa-table-tennis-paddle-ball { + --fa: "\f45d"; + --fa--fa: "\f45d\f45d"; } -.fa-table-tennis-paddle-ball::before { - content: "\f45d"; } +.fa-ping-pong-paddle-ball { + --fa: "\f45d"; + --fa--fa: "\f45d\f45d"; } -.fa-ping-pong-paddle-ball::before { - content: "\f45d"; } +.fa-table-tennis { + --fa: "\f45d"; + --fa--fa: "\f45d\f45d"; } -.fa-table-tennis::before { - content: "\f45d"; } +.fa-person-dots-from-line { + --fa: "\f470"; + --fa--fa: "\f470\f470"; } -.fa-person-dots-from-line::before { - content: "\f470"; } +.fa-diagnoses { + --fa: "\f470"; + --fa--fa: "\f470\f470"; } -.fa-diagnoses::before { - content: "\f470"; } +.fa-trash-can-arrow-up { + --fa: "\f82a"; + --fa--fa: "\f82a\f82a"; } -.fa-trash-can-arrow-up::before { - content: "\f82a"; } +.fa-trash-restore-alt { + --fa: "\f82a"; + --fa--fa: "\f82a\f82a"; } -.fa-trash-restore-alt::before { - content: "\f82a"; } +.fa-naira-sign { + --fa: "\e1f6"; + --fa--fa: "\e1f6\e1f6"; } -.fa-naira-sign::before { - content: "\e1f6"; } +.fa-cart-arrow-down { + --fa: "\f218"; + --fa--fa: "\f218\f218"; } -.fa-cart-arrow-down::before { - content: "\f218"; } +.fa-walkie-talkie { + --fa: "\f8ef"; + --fa--fa: "\f8ef\f8ef"; } -.fa-walkie-talkie::before { - content: "\f8ef"; } +.fa-file-pen { + --fa: "\f31c"; + --fa--fa: "\f31c\f31c"; } -.fa-file-pen::before { - content: "\f31c"; } +.fa-file-edit { + --fa: "\f31c"; + --fa--fa: "\f31c\f31c"; } -.fa-file-edit::before { - content: "\f31c"; } +.fa-receipt { + --fa: "\f543"; + --fa--fa: "\f543\f543"; } -.fa-receipt::before { - content: "\f543"; } +.fa-square-pen { + --fa: "\f14b"; + --fa--fa: "\f14b\f14b"; } -.fa-square-pen::before { - content: "\f14b"; } +.fa-pen-square { + --fa: "\f14b"; + --fa--fa: "\f14b\f14b"; } -.fa-pen-square::before { - content: "\f14b"; } +.fa-pencil-square { + --fa: "\f14b"; + --fa--fa: "\f14b\f14b"; } -.fa-pencil-square::before { - content: "\f14b"; } +.fa-suitcase-rolling { + --fa: "\f5c1"; + --fa--fa: "\f5c1\f5c1"; } -.fa-suitcase-rolling::before { - content: "\f5c1"; } +.fa-person-circle-exclamation { + --fa: "\e53f"; + --fa--fa: "\e53f\e53f"; } -.fa-person-circle-exclamation::before { - content: "\e53f"; } +.fa-chevron-down { + --fa: "\f078"; + --fa--fa: "\f078\f078"; } -.fa-chevron-down::before { - content: "\f078"; } +.fa-battery-full { + --fa: "\f240"; + --fa--fa: "\f240\f240"; } -.fa-battery-full::before { - content: "\f240"; } +.fa-battery { + --fa: "\f240"; + --fa--fa: "\f240\f240"; } -.fa-battery::before { - content: "\f240"; } +.fa-battery-5 { + --fa: "\f240"; + --fa--fa: "\f240\f240"; } -.fa-battery-5::before { - content: "\f240"; } +.fa-skull-crossbones { + --fa: "\f714"; + --fa--fa: "\f714\f714"; } -.fa-skull-crossbones::before { - content: "\f714"; } +.fa-code-compare { + --fa: "\e13a"; + --fa--fa: "\e13a\e13a"; } -.fa-code-compare::before { - content: "\e13a"; } +.fa-list-ul { + --fa: "\f0ca"; + --fa--fa: "\f0ca\f0ca"; } -.fa-list-ul::before { - content: "\f0ca"; } +.fa-list-dots { + --fa: "\f0ca"; + --fa--fa: "\f0ca\f0ca"; } -.fa-list-dots::before { - content: "\f0ca"; } +.fa-school-lock { + --fa: "\e56f"; + --fa--fa: "\e56f\e56f"; } -.fa-school-lock::before { - content: "\e56f"; } +.fa-tower-cell { + --fa: "\e585"; + --fa--fa: "\e585\e585"; } -.fa-tower-cell::before { - content: "\e585"; } +.fa-down-long { + --fa: "\f309"; + --fa--fa: "\f309\f309"; } -.fa-down-long::before { - content: "\f309"; } +.fa-long-arrow-alt-down { + --fa: "\f309"; + --fa--fa: "\f309\f309"; } -.fa-long-arrow-alt-down::before { - content: "\f309"; } +.fa-ranking-star { + --fa: "\e561"; + --fa--fa: "\e561\e561"; } -.fa-ranking-star::before { - content: "\e561"; } +.fa-chess-king { + --fa: "\f43f"; + --fa--fa: "\f43f\f43f"; } -.fa-chess-king::before { - content: "\f43f"; } +.fa-person-harassing { + --fa: "\e549"; + --fa--fa: "\e549\e549"; } -.fa-person-harassing::before { - content: "\e549"; } +.fa-brazilian-real-sign { + --fa: "\e46c"; + --fa--fa: "\e46c\e46c"; } -.fa-brazilian-real-sign::before { - content: "\e46c"; } +.fa-landmark-dome { + --fa: "\f752"; + --fa--fa: "\f752\f752"; } -.fa-landmark-dome::before { - content: "\f752"; } +.fa-landmark-alt { + --fa: "\f752"; + --fa--fa: "\f752\f752"; } -.fa-landmark-alt::before { - content: "\f752"; } +.fa-arrow-up { + --fa: "\f062"; + --fa--fa: "\f062\f062"; } -.fa-arrow-up::before { - content: "\f062"; } +.fa-tv { + --fa: "\f26c"; + --fa--fa: "\f26c\f26c"; } -.fa-tv::before { - content: "\f26c"; } +.fa-television { + --fa: "\f26c"; + --fa--fa: "\f26c\f26c"; } -.fa-television::before { - content: "\f26c"; } +.fa-tv-alt { + --fa: "\f26c"; + --fa--fa: "\f26c\f26c"; } -.fa-tv-alt::before { - content: "\f26c"; } +.fa-shrimp { + --fa: "\e448"; + --fa--fa: "\e448\e448"; } -.fa-shrimp::before { - content: "\e448"; } +.fa-list-check { + --fa: "\f0ae"; + --fa--fa: "\f0ae\f0ae"; } -.fa-list-check::before { - content: "\f0ae"; } +.fa-tasks { + --fa: "\f0ae"; + --fa--fa: "\f0ae\f0ae"; } -.fa-tasks::before { - content: "\f0ae"; } +.fa-jug-detergent { + --fa: "\e519"; + --fa--fa: "\e519\e519"; } -.fa-jug-detergent::before { - content: "\e519"; } +.fa-circle-user { + --fa: "\f2bd"; + --fa--fa: "\f2bd\f2bd"; } -.fa-circle-user::before { - content: "\f2bd"; } +.fa-user-circle { + --fa: "\f2bd"; + --fa--fa: "\f2bd\f2bd"; } -.fa-user-circle::before { - content: "\f2bd"; } +.fa-user-shield { + --fa: "\f505"; + --fa--fa: "\f505\f505"; } -.fa-user-shield::before { - content: "\f505"; } +.fa-wind { + --fa: "\f72e"; + --fa--fa: "\f72e\f72e"; } -.fa-wind::before { - content: "\f72e"; } +.fa-car-burst { + --fa: "\f5e1"; + --fa--fa: "\f5e1\f5e1"; } -.fa-car-burst::before { - content: "\f5e1"; } +.fa-car-crash { + --fa: "\f5e1"; + --fa--fa: "\f5e1\f5e1"; } -.fa-car-crash::before { - content: "\f5e1"; } +.fa-y { + --fa: "\59"; + --fa--fa: "\59\59"; } -.fa-y::before { - content: "\59"; } +.fa-person-snowboarding { + --fa: "\f7ce"; + --fa--fa: "\f7ce\f7ce"; } -.fa-person-snowboarding::before { - content: "\f7ce"; } +.fa-snowboarding { + --fa: "\f7ce"; + --fa--fa: "\f7ce\f7ce"; } -.fa-snowboarding::before { - content: "\f7ce"; } +.fa-truck-fast { + --fa: "\f48b"; + --fa--fa: "\f48b\f48b"; } -.fa-truck-fast::before { - content: "\f48b"; } +.fa-shipping-fast { + --fa: "\f48b"; + --fa--fa: "\f48b\f48b"; } -.fa-shipping-fast::before { - content: "\f48b"; } +.fa-fish { + --fa: "\f578"; + --fa--fa: "\f578\f578"; } -.fa-fish::before { - content: "\f578"; } +.fa-user-graduate { + --fa: "\f501"; + --fa--fa: "\f501\f501"; } -.fa-user-graduate::before { - content: "\f501"; } +.fa-circle-half-stroke { + --fa: "\f042"; + --fa--fa: "\f042\f042"; } -.fa-circle-half-stroke::before { - content: "\f042"; } +.fa-adjust { + --fa: "\f042"; + --fa--fa: "\f042\f042"; } -.fa-adjust::before { - content: "\f042"; } +.fa-clapperboard { + --fa: "\e131"; + --fa--fa: "\e131\e131"; } -.fa-clapperboard::before { - content: "\e131"; } +.fa-circle-radiation { + --fa: "\f7ba"; + --fa--fa: "\f7ba\f7ba"; } -.fa-circle-radiation::before { - content: "\f7ba"; } +.fa-radiation-alt { + --fa: "\f7ba"; + --fa--fa: "\f7ba\f7ba"; } -.fa-radiation-alt::before { - content: "\f7ba"; } +.fa-baseball { + --fa: "\f433"; + --fa--fa: "\f433\f433"; } -.fa-baseball::before { - content: "\f433"; } +.fa-baseball-ball { + --fa: "\f433"; + --fa--fa: "\f433\f433"; } -.fa-baseball-ball::before { - content: "\f433"; } +.fa-jet-fighter-up { + --fa: "\e518"; + --fa--fa: "\e518\e518"; } -.fa-jet-fighter-up::before { - content: "\e518"; } +.fa-diagram-project { + --fa: "\f542"; + --fa--fa: "\f542\f542"; } -.fa-diagram-project::before { - content: "\f542"; } +.fa-project-diagram { + --fa: "\f542"; + --fa--fa: "\f542\f542"; } -.fa-project-diagram::before { - content: "\f542"; } +.fa-copy { + --fa: "\f0c5"; + --fa--fa: "\f0c5\f0c5"; } -.fa-copy::before { - content: "\f0c5"; } +.fa-volume-xmark { + --fa: "\f6a9"; + --fa--fa: "\f6a9\f6a9"; } -.fa-volume-xmark::before { - content: "\f6a9"; } +.fa-volume-mute { + --fa: "\f6a9"; + --fa--fa: "\f6a9\f6a9"; } -.fa-volume-mute::before { - content: "\f6a9"; } +.fa-volume-times { + --fa: "\f6a9"; + --fa--fa: "\f6a9\f6a9"; } -.fa-volume-times::before { - content: "\f6a9"; } +.fa-hand-sparkles { + --fa: "\e05d"; + --fa--fa: "\e05d\e05d"; } -.fa-hand-sparkles::before { - content: "\e05d"; } +.fa-grip { + --fa: "\f58d"; + --fa--fa: "\f58d\f58d"; } -.fa-grip::before { - content: "\f58d"; } +.fa-grip-horizontal { + --fa: "\f58d"; + --fa--fa: "\f58d\f58d"; } -.fa-grip-horizontal::before { - content: "\f58d"; } +.fa-share-from-square { + --fa: "\f14d"; + --fa--fa: "\f14d\f14d"; } -.fa-share-from-square::before { - content: "\f14d"; } +.fa-share-square { + --fa: "\f14d"; + --fa--fa: "\f14d\f14d"; } -.fa-share-square::before { - content: "\f14d"; } +.fa-child-combatant { + --fa: "\e4e0"; + --fa--fa: "\e4e0\e4e0"; } -.fa-child-combatant::before { - content: "\e4e0"; } +.fa-child-rifle { + --fa: "\e4e0"; + --fa--fa: "\e4e0\e4e0"; } -.fa-child-rifle::before { - content: "\e4e0"; } +.fa-gun { + --fa: "\e19b"; + --fa--fa: "\e19b\e19b"; } -.fa-gun::before { - content: "\e19b"; } +.fa-square-phone { + --fa: "\f098"; + --fa--fa: "\f098\f098"; } -.fa-square-phone::before { - content: "\f098"; } +.fa-phone-square { + --fa: "\f098"; + --fa--fa: "\f098\f098"; } -.fa-phone-square::before { - content: "\f098"; } +.fa-plus { + --fa: "\2b"; + --fa--fa: "\2b\2b"; } -.fa-plus::before { - content: "\2b"; } +.fa-add { + --fa: "\2b"; + --fa--fa: "\2b\2b"; } -.fa-add::before { - content: "\2b"; } +.fa-expand { + --fa: "\f065"; + --fa--fa: "\f065\f065"; } -.fa-expand::before { - content: "\f065"; } +.fa-computer { + --fa: "\e4e5"; + --fa--fa: "\e4e5\e4e5"; } -.fa-computer::before { - content: "\e4e5"; } +.fa-xmark { + --fa: "\f00d"; + --fa--fa: "\f00d\f00d"; } -.fa-xmark::before { - content: "\f00d"; } +.fa-close { + --fa: "\f00d"; + --fa--fa: "\f00d\f00d"; } -.fa-close::before { - content: "\f00d"; } +.fa-multiply { + --fa: "\f00d"; + --fa--fa: "\f00d\f00d"; } -.fa-multiply::before { - content: "\f00d"; } +.fa-remove { + --fa: "\f00d"; + --fa--fa: "\f00d\f00d"; } -.fa-remove::before { - content: "\f00d"; } +.fa-times { + --fa: "\f00d"; + --fa--fa: "\f00d\f00d"; } -.fa-times::before { - content: "\f00d"; } +.fa-arrows-up-down-left-right { + --fa: "\f047"; + --fa--fa: "\f047\f047"; } -.fa-arrows-up-down-left-right::before { - content: "\f047"; } +.fa-arrows { + --fa: "\f047"; + --fa--fa: "\f047\f047"; } -.fa-arrows::before { - content: "\f047"; } +.fa-chalkboard-user { + --fa: "\f51c"; + --fa--fa: "\f51c\f51c"; } -.fa-chalkboard-user::before { - content: "\f51c"; } +.fa-chalkboard-teacher { + --fa: "\f51c"; + --fa--fa: "\f51c\f51c"; } -.fa-chalkboard-teacher::before { - content: "\f51c"; } +.fa-peso-sign { + --fa: "\e222"; + --fa--fa: "\e222\e222"; } -.fa-peso-sign::before { - content: "\e222"; } +.fa-building-shield { + --fa: "\e4d8"; + --fa--fa: "\e4d8\e4d8"; } -.fa-building-shield::before { - content: "\e4d8"; } +.fa-baby { + --fa: "\f77c"; + --fa--fa: "\f77c\f77c"; } -.fa-baby::before { - content: "\f77c"; } +.fa-users-line { + --fa: "\e592"; + --fa--fa: "\e592\e592"; } -.fa-users-line::before { - content: "\e592"; } +.fa-quote-left { + --fa: "\f10d"; + --fa--fa: "\f10d\f10d"; } -.fa-quote-left::before { - content: "\f10d"; } +.fa-quote-left-alt { + --fa: "\f10d"; + --fa--fa: "\f10d\f10d"; } -.fa-quote-left-alt::before { - content: "\f10d"; } +.fa-tractor { + --fa: "\f722"; + --fa--fa: "\f722\f722"; } -.fa-tractor::before { - content: "\f722"; } +.fa-trash-arrow-up { + --fa: "\f829"; + --fa--fa: "\f829\f829"; } -.fa-trash-arrow-up::before { - content: "\f829"; } +.fa-trash-restore { + --fa: "\f829"; + --fa--fa: "\f829\f829"; } -.fa-trash-restore::before { - content: "\f829"; } +.fa-arrow-down-up-lock { + --fa: "\e4b0"; + --fa--fa: "\e4b0\e4b0"; } -.fa-arrow-down-up-lock::before { - content: "\e4b0"; } +.fa-lines-leaning { + --fa: "\e51e"; + --fa--fa: "\e51e\e51e"; } -.fa-lines-leaning::before { - content: "\e51e"; } +.fa-ruler-combined { + --fa: "\f546"; + --fa--fa: "\f546\f546"; } -.fa-ruler-combined::before { - content: "\f546"; } +.fa-copyright { + --fa: "\f1f9"; + --fa--fa: "\f1f9\f1f9"; } -.fa-copyright::before { - content: "\f1f9"; } +.fa-equals { + --fa: "\3d"; + --fa--fa: "\3d\3d"; } -.fa-equals::before { - content: "\3d"; } +.fa-blender { + --fa: "\f517"; + --fa--fa: "\f517\f517"; } -.fa-blender::before { - content: "\f517"; } +.fa-teeth { + --fa: "\f62e"; + --fa--fa: "\f62e\f62e"; } -.fa-teeth::before { - content: "\f62e"; } +.fa-shekel-sign { + --fa: "\f20b"; + --fa--fa: "\f20b\f20b"; } -.fa-shekel-sign::before { - content: "\f20b"; } +.fa-ils { + --fa: "\f20b"; + --fa--fa: "\f20b\f20b"; } -.fa-ils::before { - content: "\f20b"; } +.fa-shekel { + --fa: "\f20b"; + --fa--fa: "\f20b\f20b"; } -.fa-shekel::before { - content: "\f20b"; } +.fa-sheqel { + --fa: "\f20b"; + --fa--fa: "\f20b\f20b"; } -.fa-sheqel::before { - content: "\f20b"; } +.fa-sheqel-sign { + --fa: "\f20b"; + --fa--fa: "\f20b\f20b"; } -.fa-sheqel-sign::before { - content: "\f20b"; } +.fa-map { + --fa: "\f279"; + --fa--fa: "\f279\f279"; } -.fa-map::before { - content: "\f279"; } +.fa-rocket { + --fa: "\f135"; + --fa--fa: "\f135\f135"; } -.fa-rocket::before { - content: "\f135"; } +.fa-photo-film { + --fa: "\f87c"; + --fa--fa: "\f87c\f87c"; } -.fa-photo-film::before { - content: "\f87c"; } +.fa-photo-video { + --fa: "\f87c"; + --fa--fa: "\f87c\f87c"; } -.fa-photo-video::before { - content: "\f87c"; } +.fa-folder-minus { + --fa: "\f65d"; + --fa--fa: "\f65d\f65d"; } -.fa-folder-minus::before { - content: "\f65d"; } +.fa-hexagon-nodes-bolt { + --fa: "\e69a"; + --fa--fa: "\e69a\e69a"; } -.fa-store::before { - content: "\f54e"; } +.fa-store { + --fa: "\f54e"; + --fa--fa: "\f54e\f54e"; } -.fa-arrow-trend-up::before { - content: "\e098"; } +.fa-arrow-trend-up { + --fa: "\e098"; + --fa--fa: "\e098\e098"; } -.fa-plug-circle-minus::before { - content: "\e55e"; } +.fa-plug-circle-minus { + --fa: "\e55e"; + --fa--fa: "\e55e\e55e"; } -.fa-sign-hanging::before { - content: "\f4d9"; } +.fa-sign-hanging { + --fa: "\f4d9"; + --fa--fa: "\f4d9\f4d9"; } -.fa-sign::before { - content: "\f4d9"; } +.fa-sign { + --fa: "\f4d9"; + --fa--fa: "\f4d9\f4d9"; } -.fa-bezier-curve::before { - content: "\f55b"; } +.fa-bezier-curve { + --fa: "\f55b"; + --fa--fa: "\f55b\f55b"; } -.fa-bell-slash::before { - content: "\f1f6"; } +.fa-bell-slash { + --fa: "\f1f6"; + --fa--fa: "\f1f6\f1f6"; } -.fa-tablet::before { - content: "\f3fb"; } +.fa-tablet { + --fa: "\f3fb"; + --fa--fa: "\f3fb\f3fb"; } -.fa-tablet-android::before { - content: "\f3fb"; } +.fa-tablet-android { + --fa: "\f3fb"; + --fa--fa: "\f3fb\f3fb"; } -.fa-school-flag::before { - content: "\e56e"; } +.fa-school-flag { + --fa: "\e56e"; + --fa--fa: "\e56e\e56e"; } -.fa-fill::before { - content: "\f575"; } +.fa-fill { + --fa: "\f575"; + --fa--fa: "\f575\f575"; } -.fa-angle-up::before { - content: "\f106"; } +.fa-angle-up { + --fa: "\f106"; + --fa--fa: "\f106\f106"; } -.fa-drumstick-bite::before { - content: "\f6d7"; } +.fa-drumstick-bite { + --fa: "\f6d7"; + --fa--fa: "\f6d7\f6d7"; } -.fa-holly-berry::before { - content: "\f7aa"; } +.fa-holly-berry { + --fa: "\f7aa"; + --fa--fa: "\f7aa\f7aa"; } -.fa-chevron-left::before { - content: "\f053"; } +.fa-chevron-left { + --fa: "\f053"; + --fa--fa: "\f053\f053"; } -.fa-bacteria::before { - content: "\e059"; } +.fa-bacteria { + --fa: "\e059"; + --fa--fa: "\e059\e059"; } -.fa-hand-lizard::before { - content: "\f258"; } +.fa-hand-lizard { + --fa: "\f258"; + --fa--fa: "\f258\f258"; } -.fa-notdef::before { - content: "\e1fe"; } +.fa-notdef { + --fa: "\e1fe"; + --fa--fa: "\e1fe\e1fe"; } -.fa-disease::before { - content: "\f7fa"; } +.fa-disease { + --fa: "\f7fa"; + --fa--fa: "\f7fa\f7fa"; } -.fa-briefcase-medical::before { - content: "\f469"; } +.fa-briefcase-medical { + --fa: "\f469"; + --fa--fa: "\f469\f469"; } -.fa-genderless::before { - content: "\f22d"; } +.fa-genderless { + --fa: "\f22d"; + --fa--fa: "\f22d\f22d"; } -.fa-chevron-right::before { - content: "\f054"; } +.fa-chevron-right { + --fa: "\f054"; + --fa--fa: "\f054\f054"; } -.fa-retweet::before { - content: "\f079"; } +.fa-retweet { + --fa: "\f079"; + --fa--fa: "\f079\f079"; } -.fa-car-rear::before { - content: "\f5de"; } +.fa-car-rear { + --fa: "\f5de"; + --fa--fa: "\f5de\f5de"; } -.fa-car-alt::before { - content: "\f5de"; } +.fa-car-alt { + --fa: "\f5de"; + --fa--fa: "\f5de\f5de"; } -.fa-pump-soap::before { - content: "\e06b"; } +.fa-pump-soap { + --fa: "\e06b"; + --fa--fa: "\e06b\e06b"; } -.fa-video-slash::before { - content: "\f4e2"; } +.fa-video-slash { + --fa: "\f4e2"; + --fa--fa: "\f4e2\f4e2"; } -.fa-battery-quarter::before { - content: "\f243"; } +.fa-battery-quarter { + --fa: "\f243"; + --fa--fa: "\f243\f243"; } -.fa-battery-2::before { - content: "\f243"; } +.fa-battery-2 { + --fa: "\f243"; + --fa--fa: "\f243\f243"; } -.fa-radio::before { - content: "\f8d7"; } +.fa-radio { + --fa: "\f8d7"; + --fa--fa: "\f8d7\f8d7"; } -.fa-baby-carriage::before { - content: "\f77d"; } +.fa-baby-carriage { + --fa: "\f77d"; + --fa--fa: "\f77d\f77d"; } -.fa-carriage-baby::before { - content: "\f77d"; } +.fa-carriage-baby { + --fa: "\f77d"; + --fa--fa: "\f77d\f77d"; } -.fa-traffic-light::before { - content: "\f637"; } +.fa-traffic-light { + --fa: "\f637"; + --fa--fa: "\f637\f637"; } -.fa-thermometer::before { - content: "\f491"; } +.fa-thermometer { + --fa: "\f491"; + --fa--fa: "\f491\f491"; } -.fa-vr-cardboard::before { - content: "\f729"; } +.fa-vr-cardboard { + --fa: "\f729"; + --fa--fa: "\f729\f729"; } -.fa-hand-middle-finger::before { - content: "\f806"; } +.fa-hand-middle-finger { + --fa: "\f806"; + --fa--fa: "\f806\f806"; } -.fa-percent::before { - content: "\25"; } +.fa-percent { + --fa: "\25"; + --fa--fa: "\25\25"; } -.fa-percentage::before { - content: "\25"; } +.fa-percentage { + --fa: "\25"; + --fa--fa: "\25\25"; } -.fa-truck-moving::before { - content: "\f4df"; } +.fa-truck-moving { + --fa: "\f4df"; + --fa--fa: "\f4df\f4df"; } -.fa-glass-water-droplet::before { - content: "\e4f5"; } +.fa-glass-water-droplet { + --fa: "\e4f5"; + --fa--fa: "\e4f5\e4f5"; } -.fa-display::before { - content: "\e163"; } +.fa-display { + --fa: "\e163"; + --fa--fa: "\e163\e163"; } -.fa-face-smile::before { - content: "\f118"; } +.fa-face-smile { + --fa: "\f118"; + --fa--fa: "\f118\f118"; } -.fa-smile::before { - content: "\f118"; } +.fa-smile { + --fa: "\f118"; + --fa--fa: "\f118\f118"; } -.fa-thumbtack::before { - content: "\f08d"; } +.fa-thumbtack { + --fa: "\f08d"; + --fa--fa: "\f08d\f08d"; } -.fa-thumb-tack::before { - content: "\f08d"; } +.fa-thumb-tack { + --fa: "\f08d"; + --fa--fa: "\f08d\f08d"; } -.fa-trophy::before { - content: "\f091"; } +.fa-trophy { + --fa: "\f091"; + --fa--fa: "\f091\f091"; } -.fa-person-praying::before { - content: "\f683"; } +.fa-person-praying { + --fa: "\f683"; + --fa--fa: "\f683\f683"; } -.fa-pray::before { - content: "\f683"; } +.fa-pray { + --fa: "\f683"; + --fa--fa: "\f683\f683"; } -.fa-hammer::before { - content: "\f6e3"; } +.fa-hammer { + --fa: "\f6e3"; + --fa--fa: "\f6e3\f6e3"; } -.fa-hand-peace::before { - content: "\f25b"; } +.fa-hand-peace { + --fa: "\f25b"; + --fa--fa: "\f25b\f25b"; } -.fa-rotate::before { - content: "\f2f1"; } +.fa-rotate { + --fa: "\f2f1"; + --fa--fa: "\f2f1\f2f1"; } -.fa-sync-alt::before { - content: "\f2f1"; } +.fa-sync-alt { + --fa: "\f2f1"; + --fa--fa: "\f2f1\f2f1"; } -.fa-spinner::before { - content: "\f110"; } +.fa-spinner { + --fa: "\f110"; + --fa--fa: "\f110\f110"; } -.fa-robot::before { - content: "\f544"; } +.fa-robot { + --fa: "\f544"; + --fa--fa: "\f544\f544"; } -.fa-peace::before { - content: "\f67c"; } +.fa-peace { + --fa: "\f67c"; + --fa--fa: "\f67c\f67c"; } -.fa-gears::before { - content: "\f085"; } +.fa-gears { + --fa: "\f085"; + --fa--fa: "\f085\f085"; } -.fa-cogs::before { - content: "\f085"; } +.fa-cogs { + --fa: "\f085"; + --fa--fa: "\f085\f085"; } -.fa-warehouse::before { - content: "\f494"; } +.fa-warehouse { + --fa: "\f494"; + --fa--fa: "\f494\f494"; } -.fa-arrow-up-right-dots::before { - content: "\e4b7"; } +.fa-arrow-up-right-dots { + --fa: "\e4b7"; + --fa--fa: "\e4b7\e4b7"; } -.fa-splotch::before { - content: "\f5bc"; } +.fa-splotch { + --fa: "\f5bc"; + --fa--fa: "\f5bc\f5bc"; } -.fa-face-grin-hearts::before { - content: "\f584"; } +.fa-face-grin-hearts { + --fa: "\f584"; + --fa--fa: "\f584\f584"; } -.fa-grin-hearts::before { - content: "\f584"; } +.fa-grin-hearts { + --fa: "\f584"; + --fa--fa: "\f584\f584"; } -.fa-dice-four::before { - content: "\f524"; } +.fa-dice-four { + --fa: "\f524"; + --fa--fa: "\f524\f524"; } -.fa-sim-card::before { - content: "\f7c4"; } +.fa-sim-card { + --fa: "\f7c4"; + --fa--fa: "\f7c4\f7c4"; } -.fa-transgender::before { - content: "\f225"; } +.fa-transgender { + --fa: "\f225"; + --fa--fa: "\f225\f225"; } -.fa-transgender-alt::before { - content: "\f225"; } +.fa-transgender-alt { + --fa: "\f225"; + --fa--fa: "\f225\f225"; } -.fa-mercury::before { - content: "\f223"; } +.fa-mercury { + --fa: "\f223"; + --fa--fa: "\f223\f223"; } -.fa-arrow-turn-down::before { - content: "\f149"; } +.fa-arrow-turn-down { + --fa: "\f149"; + --fa--fa: "\f149\f149"; } -.fa-level-down::before { - content: "\f149"; } +.fa-level-down { + --fa: "\f149"; + --fa--fa: "\f149\f149"; } -.fa-person-falling-burst::before { - content: "\e547"; } +.fa-person-falling-burst { + --fa: "\e547"; + --fa--fa: "\e547\e547"; } -.fa-award::before { - content: "\f559"; } +.fa-award { + --fa: "\f559"; + --fa--fa: "\f559\f559"; } -.fa-ticket-simple::before { - content: "\f3ff"; } +.fa-ticket-simple { + --fa: "\f3ff"; + --fa--fa: "\f3ff\f3ff"; } -.fa-ticket-alt::before { - content: "\f3ff"; } +.fa-ticket-alt { + --fa: "\f3ff"; + --fa--fa: "\f3ff\f3ff"; } -.fa-building::before { - content: "\f1ad"; } +.fa-building { + --fa: "\f1ad"; + --fa--fa: "\f1ad\f1ad"; } -.fa-angles-left::before { - content: "\f100"; } +.fa-angles-left { + --fa: "\f100"; + --fa--fa: "\f100\f100"; } -.fa-angle-double-left::before { - content: "\f100"; } +.fa-angle-double-left { + --fa: "\f100"; + --fa--fa: "\f100\f100"; } -.fa-qrcode::before { - content: "\f029"; } +.fa-qrcode { + --fa: "\f029"; + --fa--fa: "\f029\f029"; } -.fa-clock-rotate-left::before { - content: "\f1da"; } +.fa-clock-rotate-left { + --fa: "\f1da"; + --fa--fa: "\f1da\f1da"; } -.fa-history::before { - content: "\f1da"; } +.fa-history { + --fa: "\f1da"; + --fa--fa: "\f1da\f1da"; } -.fa-face-grin-beam-sweat::before { - content: "\f583"; } +.fa-face-grin-beam-sweat { + --fa: "\f583"; + --fa--fa: "\f583\f583"; } -.fa-grin-beam-sweat::before { - content: "\f583"; } +.fa-grin-beam-sweat { + --fa: "\f583"; + --fa--fa: "\f583\f583"; } -.fa-file-export::before { - content: "\f56e"; } +.fa-file-export { + --fa: "\f56e"; + --fa--fa: "\f56e\f56e"; } -.fa-arrow-right-from-file::before { - content: "\f56e"; } +.fa-arrow-right-from-file { + --fa: "\f56e"; + --fa--fa: "\f56e\f56e"; } -.fa-shield::before { - content: "\f132"; } +.fa-shield { + --fa: "\f132"; + --fa--fa: "\f132\f132"; } -.fa-shield-blank::before { - content: "\f132"; } +.fa-shield-blank { + --fa: "\f132"; + --fa--fa: "\f132\f132"; } -.fa-arrow-up-short-wide::before { - content: "\f885"; } +.fa-arrow-up-short-wide { + --fa: "\f885"; + --fa--fa: "\f885\f885"; } -.fa-sort-amount-up-alt::before { - content: "\f885"; } +.fa-sort-amount-up-alt { + --fa: "\f885"; + --fa--fa: "\f885\f885"; } -.fa-house-medical::before { - content: "\e3b2"; } +.fa-comment-nodes { + --fa: "\e696"; + --fa--fa: "\e696\e696"; } -.fa-golf-ball-tee::before { - content: "\f450"; } +.fa-house-medical { + --fa: "\e3b2"; + --fa--fa: "\e3b2\e3b2"; } -.fa-golf-ball::before { - content: "\f450"; } +.fa-golf-ball-tee { + --fa: "\f450"; + --fa--fa: "\f450\f450"; } -.fa-circle-chevron-left::before { - content: "\f137"; } +.fa-golf-ball { + --fa: "\f450"; + --fa--fa: "\f450\f450"; } -.fa-chevron-circle-left::before { - content: "\f137"; } +.fa-circle-chevron-left { + --fa: "\f137"; + --fa--fa: "\f137\f137"; } -.fa-house-chimney-window::before { - content: "\e00d"; } +.fa-chevron-circle-left { + --fa: "\f137"; + --fa--fa: "\f137\f137"; } -.fa-pen-nib::before { - content: "\f5ad"; } +.fa-house-chimney-window { + --fa: "\e00d"; + --fa--fa: "\e00d\e00d"; } -.fa-tent-arrow-turn-left::before { - content: "\e580"; } +.fa-pen-nib { + --fa: "\f5ad"; + --fa--fa: "\f5ad\f5ad"; } -.fa-tents::before { - content: "\e582"; } +.fa-tent-arrow-turn-left { + --fa: "\e580"; + --fa--fa: "\e580\e580"; } -.fa-wand-magic::before { - content: "\f0d0"; } +.fa-tents { + --fa: "\e582"; + --fa--fa: "\e582\e582"; } -.fa-magic::before { - content: "\f0d0"; } +.fa-wand-magic { + --fa: "\f0d0"; + --fa--fa: "\f0d0\f0d0"; } -.fa-dog::before { - content: "\f6d3"; } +.fa-magic { + --fa: "\f0d0"; + --fa--fa: "\f0d0\f0d0"; } -.fa-carrot::before { - content: "\f787"; } +.fa-dog { + --fa: "\f6d3"; + --fa--fa: "\f6d3\f6d3"; } -.fa-moon::before { - content: "\f186"; } +.fa-carrot { + --fa: "\f787"; + --fa--fa: "\f787\f787"; } -.fa-wine-glass-empty::before { - content: "\f5ce"; } +.fa-moon { + --fa: "\f186"; + --fa--fa: "\f186\f186"; } -.fa-wine-glass-alt::before { - content: "\f5ce"; } +.fa-wine-glass-empty { + --fa: "\f5ce"; + --fa--fa: "\f5ce\f5ce"; } -.fa-cheese::before { - content: "\f7ef"; } +.fa-wine-glass-alt { + --fa: "\f5ce"; + --fa--fa: "\f5ce\f5ce"; } -.fa-yin-yang::before { - content: "\f6ad"; } +.fa-cheese { + --fa: "\f7ef"; + --fa--fa: "\f7ef\f7ef"; } -.fa-music::before { - content: "\f001"; } +.fa-yin-yang { + --fa: "\f6ad"; + --fa--fa: "\f6ad\f6ad"; } -.fa-code-commit::before { - content: "\f386"; } +.fa-music { + --fa: "\f001"; + --fa--fa: "\f001\f001"; } -.fa-temperature-low::before { - content: "\f76b"; } +.fa-code-commit { + --fa: "\f386"; + --fa--fa: "\f386\f386"; } -.fa-person-biking::before { - content: "\f84a"; } +.fa-temperature-low { + --fa: "\f76b"; + --fa--fa: "\f76b\f76b"; } -.fa-biking::before { - content: "\f84a"; } +.fa-person-biking { + --fa: "\f84a"; + --fa--fa: "\f84a\f84a"; } -.fa-broom::before { - content: "\f51a"; } +.fa-biking { + --fa: "\f84a"; + --fa--fa: "\f84a\f84a"; } -.fa-shield-heart::before { - content: "\e574"; } +.fa-broom { + --fa: "\f51a"; + --fa--fa: "\f51a\f51a"; } -.fa-gopuram::before { - content: "\f664"; } +.fa-shield-heart { + --fa: "\e574"; + --fa--fa: "\e574\e574"; } -.fa-earth-oceania::before { - content: "\e47b"; } +.fa-gopuram { + --fa: "\f664"; + --fa--fa: "\f664\f664"; } -.fa-globe-oceania::before { - content: "\e47b"; } +.fa-earth-oceania { + --fa: "\e47b"; + --fa--fa: "\e47b\e47b"; } -.fa-square-xmark::before { - content: "\f2d3"; } +.fa-globe-oceania { + --fa: "\e47b"; + --fa--fa: "\e47b\e47b"; } -.fa-times-square::before { - content: "\f2d3"; } +.fa-square-xmark { + --fa: "\f2d3"; + --fa--fa: "\f2d3\f2d3"; } -.fa-xmark-square::before { - content: "\f2d3"; } +.fa-times-square { + --fa: "\f2d3"; + --fa--fa: "\f2d3\f2d3"; } -.fa-hashtag::before { - content: "\23"; } +.fa-xmark-square { + --fa: "\f2d3"; + --fa--fa: "\f2d3\f2d3"; } -.fa-up-right-and-down-left-from-center::before { - content: "\f424"; } +.fa-hashtag { + --fa: "\23"; + --fa--fa: "\23\23"; } -.fa-expand-alt::before { - content: "\f424"; } +.fa-up-right-and-down-left-from-center { + --fa: "\f424"; + --fa--fa: "\f424\f424"; } -.fa-oil-can::before { - content: "\f613"; } +.fa-expand-alt { + --fa: "\f424"; + --fa--fa: "\f424\f424"; } -.fa-t::before { - content: "\54"; } +.fa-oil-can { + --fa: "\f613"; + --fa--fa: "\f613\f613"; } -.fa-hippo::before { - content: "\f6ed"; } +.fa-t { + --fa: "\54"; + --fa--fa: "\54\54"; } -.fa-chart-column::before { - content: "\e0e3"; } +.fa-hippo { + --fa: "\f6ed"; + --fa--fa: "\f6ed\f6ed"; } -.fa-infinity::before { - content: "\f534"; } +.fa-chart-column { + --fa: "\e0e3"; + --fa--fa: "\e0e3\e0e3"; } -.fa-vial-circle-check::before { - content: "\e596"; } +.fa-infinity { + --fa: "\f534"; + --fa--fa: "\f534\f534"; } -.fa-person-arrow-down-to-line::before { - content: "\e538"; } +.fa-vial-circle-check { + --fa: "\e596"; + --fa--fa: "\e596\e596"; } -.fa-voicemail::before { - content: "\f897"; } +.fa-person-arrow-down-to-line { + --fa: "\e538"; + --fa--fa: "\e538\e538"; } -.fa-fan::before { - content: "\f863"; } +.fa-voicemail { + --fa: "\f897"; + --fa--fa: "\f897\f897"; } -.fa-person-walking-luggage::before { - content: "\e554"; } +.fa-fan { + --fa: "\f863"; + --fa--fa: "\f863\f863"; } -.fa-up-down::before { - content: "\f338"; } +.fa-person-walking-luggage { + --fa: "\e554"; + --fa--fa: "\e554\e554"; } -.fa-arrows-alt-v::before { - content: "\f338"; } +.fa-up-down { + --fa: "\f338"; + --fa--fa: "\f338\f338"; } -.fa-cloud-moon-rain::before { - content: "\f73c"; } +.fa-arrows-alt-v { + --fa: "\f338"; + --fa--fa: "\f338\f338"; } -.fa-calendar::before { - content: "\f133"; } +.fa-cloud-moon-rain { + --fa: "\f73c"; + --fa--fa: "\f73c\f73c"; } -.fa-trailer::before { - content: "\e041"; } +.fa-calendar { + --fa: "\f133"; + --fa--fa: "\f133\f133"; } -.fa-bahai::before { - content: "\f666"; } +.fa-trailer { + --fa: "\e041"; + --fa--fa: "\e041\e041"; } -.fa-haykal::before { - content: "\f666"; } +.fa-bahai { + --fa: "\f666"; + --fa--fa: "\f666\f666"; } -.fa-sd-card::before { - content: "\f7c2"; } +.fa-haykal { + --fa: "\f666"; + --fa--fa: "\f666\f666"; } -.fa-dragon::before { - content: "\f6d5"; } +.fa-sd-card { + --fa: "\f7c2"; + --fa--fa: "\f7c2\f7c2"; } -.fa-shoe-prints::before { - content: "\f54b"; } +.fa-dragon { + --fa: "\f6d5"; + --fa--fa: "\f6d5\f6d5"; } -.fa-circle-plus::before { - content: "\f055"; } +.fa-shoe-prints { + --fa: "\f54b"; + --fa--fa: "\f54b\f54b"; } -.fa-plus-circle::before { - content: "\f055"; } +.fa-circle-plus { + --fa: "\f055"; + --fa--fa: "\f055\f055"; } -.fa-face-grin-tongue-wink::before { - content: "\f58b"; } +.fa-plus-circle { + --fa: "\f055"; + --fa--fa: "\f055\f055"; } -.fa-grin-tongue-wink::before { - content: "\f58b"; } +.fa-face-grin-tongue-wink { + --fa: "\f58b"; + --fa--fa: "\f58b\f58b"; } -.fa-hand-holding::before { - content: "\f4bd"; } +.fa-grin-tongue-wink { + --fa: "\f58b"; + --fa--fa: "\f58b\f58b"; } -.fa-plug-circle-exclamation::before { - content: "\e55d"; } +.fa-hand-holding { + --fa: "\f4bd"; + --fa--fa: "\f4bd\f4bd"; } -.fa-link-slash::before { - content: "\f127"; } +.fa-plug-circle-exclamation { + --fa: "\e55d"; + --fa--fa: "\e55d\e55d"; } -.fa-chain-broken::before { - content: "\f127"; } +.fa-link-slash { + --fa: "\f127"; + --fa--fa: "\f127\f127"; } -.fa-chain-slash::before { - content: "\f127"; } +.fa-chain-broken { + --fa: "\f127"; + --fa--fa: "\f127\f127"; } -.fa-unlink::before { - content: "\f127"; } +.fa-chain-slash { + --fa: "\f127"; + --fa--fa: "\f127\f127"; } -.fa-clone::before { - content: "\f24d"; } +.fa-unlink { + --fa: "\f127"; + --fa--fa: "\f127\f127"; } -.fa-person-walking-arrow-loop-left::before { - content: "\e551"; } +.fa-clone { + --fa: "\f24d"; + --fa--fa: "\f24d\f24d"; } -.fa-arrow-up-z-a::before { - content: "\f882"; } +.fa-person-walking-arrow-loop-left { + --fa: "\e551"; + --fa--fa: "\e551\e551"; } -.fa-sort-alpha-up-alt::before { - content: "\f882"; } +.fa-arrow-up-z-a { + --fa: "\f882"; + --fa--fa: "\f882\f882"; } -.fa-fire-flame-curved::before { - content: "\f7e4"; } +.fa-sort-alpha-up-alt { + --fa: "\f882"; + --fa--fa: "\f882\f882"; } -.fa-fire-alt::before { - content: "\f7e4"; } +.fa-fire-flame-curved { + --fa: "\f7e4"; + --fa--fa: "\f7e4\f7e4"; } -.fa-tornado::before { - content: "\f76f"; } +.fa-fire-alt { + --fa: "\f7e4"; + --fa--fa: "\f7e4\f7e4"; } -.fa-file-circle-plus::before { - content: "\e494"; } +.fa-tornado { + --fa: "\f76f"; + --fa--fa: "\f76f\f76f"; } -.fa-book-quran::before { - content: "\f687"; } +.fa-file-circle-plus { + --fa: "\e494"; + --fa--fa: "\e494\e494"; } -.fa-quran::before { - content: "\f687"; } +.fa-book-quran { + --fa: "\f687"; + --fa--fa: "\f687\f687"; } -.fa-anchor::before { - content: "\f13d"; } +.fa-quran { + --fa: "\f687"; + --fa--fa: "\f687\f687"; } -.fa-border-all::before { - content: "\f84c"; } +.fa-anchor { + --fa: "\f13d"; + --fa--fa: "\f13d\f13d"; } -.fa-face-angry::before { - content: "\f556"; } +.fa-border-all { + --fa: "\f84c"; + --fa--fa: "\f84c\f84c"; } -.fa-angry::before { - content: "\f556"; } +.fa-face-angry { + --fa: "\f556"; + --fa--fa: "\f556\f556"; } -.fa-cookie-bite::before { - content: "\f564"; } +.fa-angry { + --fa: "\f556"; + --fa--fa: "\f556\f556"; } -.fa-arrow-trend-down::before { - content: "\e097"; } +.fa-cookie-bite { + --fa: "\f564"; + --fa--fa: "\f564\f564"; } -.fa-rss::before { - content: "\f09e"; } +.fa-arrow-trend-down { + --fa: "\e097"; + --fa--fa: "\e097\e097"; } -.fa-feed::before { - content: "\f09e"; } +.fa-rss { + --fa: "\f09e"; + --fa--fa: "\f09e\f09e"; } -.fa-draw-polygon::before { - content: "\f5ee"; } +.fa-feed { + --fa: "\f09e"; + --fa--fa: "\f09e\f09e"; } -.fa-scale-balanced::before { - content: "\f24e"; } +.fa-draw-polygon { + --fa: "\f5ee"; + --fa--fa: "\f5ee\f5ee"; } -.fa-balance-scale::before { - content: "\f24e"; } +.fa-scale-balanced { + --fa: "\f24e"; + --fa--fa: "\f24e\f24e"; } -.fa-gauge-simple-high::before { - content: "\f62a"; } +.fa-balance-scale { + --fa: "\f24e"; + --fa--fa: "\f24e\f24e"; } -.fa-tachometer::before { - content: "\f62a"; } +.fa-gauge-simple-high { + --fa: "\f62a"; + --fa--fa: "\f62a\f62a"; } -.fa-tachometer-fast::before { - content: "\f62a"; } +.fa-tachometer { + --fa: "\f62a"; + --fa--fa: "\f62a\f62a"; } -.fa-shower::before { - content: "\f2cc"; } +.fa-tachometer-fast { + --fa: "\f62a"; + --fa--fa: "\f62a\f62a"; } -.fa-desktop::before { - content: "\f390"; } +.fa-shower { + --fa: "\f2cc"; + --fa--fa: "\f2cc\f2cc"; } -.fa-desktop-alt::before { - content: "\f390"; } +.fa-desktop { + --fa: "\f390"; + --fa--fa: "\f390\f390"; } -.fa-m::before { - content: "\4d"; } +.fa-desktop-alt { + --fa: "\f390"; + --fa--fa: "\f390\f390"; } -.fa-table-list::before { - content: "\f00b"; } +.fa-m { + --fa: "\4d"; + --fa--fa: "\4d\4d"; } -.fa-th-list::before { - content: "\f00b"; } +.fa-table-list { + --fa: "\f00b"; + --fa--fa: "\f00b\f00b"; } -.fa-comment-sms::before { - content: "\f7cd"; } +.fa-th-list { + --fa: "\f00b"; + --fa--fa: "\f00b\f00b"; } -.fa-sms::before { - content: "\f7cd"; } +.fa-comment-sms { + --fa: "\f7cd"; + --fa--fa: "\f7cd\f7cd"; } -.fa-book::before { - content: "\f02d"; } +.fa-sms { + --fa: "\f7cd"; + --fa--fa: "\f7cd\f7cd"; } -.fa-user-plus::before { - content: "\f234"; } +.fa-book { + --fa: "\f02d"; + --fa--fa: "\f02d\f02d"; } -.fa-check::before { - content: "\f00c"; } +.fa-user-plus { + --fa: "\f234"; + --fa--fa: "\f234\f234"; } -.fa-battery-three-quarters::before { - content: "\f241"; } +.fa-check { + --fa: "\f00c"; + --fa--fa: "\f00c\f00c"; } -.fa-battery-4::before { - content: "\f241"; } +.fa-battery-three-quarters { + --fa: "\f241"; + --fa--fa: "\f241\f241"; } -.fa-house-circle-check::before { - content: "\e509"; } +.fa-battery-4 { + --fa: "\f241"; + --fa--fa: "\f241\f241"; } -.fa-angle-left::before { - content: "\f104"; } +.fa-house-circle-check { + --fa: "\e509"; + --fa--fa: "\e509\e509"; } -.fa-diagram-successor::before { - content: "\e47a"; } +.fa-angle-left { + --fa: "\f104"; + --fa--fa: "\f104\f104"; } -.fa-truck-arrow-right::before { - content: "\e58b"; } +.fa-diagram-successor { + --fa: "\e47a"; + --fa--fa: "\e47a\e47a"; } -.fa-arrows-split-up-and-left::before { - content: "\e4bc"; } +.fa-truck-arrow-right { + --fa: "\e58b"; + --fa--fa: "\e58b\e58b"; } -.fa-hand-fist::before { - content: "\f6de"; } +.fa-arrows-split-up-and-left { + --fa: "\e4bc"; + --fa--fa: "\e4bc\e4bc"; } -.fa-fist-raised::before { - content: "\f6de"; } +.fa-hand-fist { + --fa: "\f6de"; + --fa--fa: "\f6de\f6de"; } -.fa-cloud-moon::before { - content: "\f6c3"; } +.fa-fist-raised { + --fa: "\f6de"; + --fa--fa: "\f6de\f6de"; } -.fa-briefcase::before { - content: "\f0b1"; } +.fa-cloud-moon { + --fa: "\f6c3"; + --fa--fa: "\f6c3\f6c3"; } -.fa-person-falling::before { - content: "\e546"; } +.fa-briefcase { + --fa: "\f0b1"; + --fa--fa: "\f0b1\f0b1"; } -.fa-image-portrait::before { - content: "\f3e0"; } +.fa-person-falling { + --fa: "\e546"; + --fa--fa: "\e546\e546"; } -.fa-portrait::before { - content: "\f3e0"; } +.fa-image-portrait { + --fa: "\f3e0"; + --fa--fa: "\f3e0\f3e0"; } -.fa-user-tag::before { - content: "\f507"; } +.fa-portrait { + --fa: "\f3e0"; + --fa--fa: "\f3e0\f3e0"; } -.fa-rug::before { - content: "\e569"; } +.fa-user-tag { + --fa: "\f507"; + --fa--fa: "\f507\f507"; } -.fa-earth-europe::before { - content: "\f7a2"; } +.fa-rug { + --fa: "\e569"; + --fa--fa: "\e569\e569"; } -.fa-globe-europe::before { - content: "\f7a2"; } +.fa-earth-europe { + --fa: "\f7a2"; + --fa--fa: "\f7a2\f7a2"; } -.fa-cart-flatbed-suitcase::before { - content: "\f59d"; } +.fa-globe-europe { + --fa: "\f7a2"; + --fa--fa: "\f7a2\f7a2"; } -.fa-luggage-cart::before { - content: "\f59d"; } +.fa-cart-flatbed-suitcase { + --fa: "\f59d"; + --fa--fa: "\f59d\f59d"; } -.fa-rectangle-xmark::before { - content: "\f410"; } +.fa-luggage-cart { + --fa: "\f59d"; + --fa--fa: "\f59d\f59d"; } -.fa-rectangle-times::before { - content: "\f410"; } +.fa-rectangle-xmark { + --fa: "\f410"; + --fa--fa: "\f410\f410"; } -.fa-times-rectangle::before { - content: "\f410"; } +.fa-rectangle-times { + --fa: "\f410"; + --fa--fa: "\f410\f410"; } -.fa-window-close::before { - content: "\f410"; } +.fa-times-rectangle { + --fa: "\f410"; + --fa--fa: "\f410\f410"; } -.fa-baht-sign::before { - content: "\e0ac"; } +.fa-window-close { + --fa: "\f410"; + --fa--fa: "\f410\f410"; } -.fa-book-open::before { - content: "\f518"; } +.fa-baht-sign { + --fa: "\e0ac"; + --fa--fa: "\e0ac\e0ac"; } -.fa-book-journal-whills::before { - content: "\f66a"; } +.fa-book-open { + --fa: "\f518"; + --fa--fa: "\f518\f518"; } -.fa-journal-whills::before { - content: "\f66a"; } +.fa-book-journal-whills { + --fa: "\f66a"; + --fa--fa: "\f66a\f66a"; } -.fa-handcuffs::before { - content: "\e4f8"; } +.fa-journal-whills { + --fa: "\f66a"; + --fa--fa: "\f66a\f66a"; } -.fa-triangle-exclamation::before { - content: "\f071"; } +.fa-handcuffs { + --fa: "\e4f8"; + --fa--fa: "\e4f8\e4f8"; } -.fa-exclamation-triangle::before { - content: "\f071"; } +.fa-triangle-exclamation { + --fa: "\f071"; + --fa--fa: "\f071\f071"; } -.fa-warning::before { - content: "\f071"; } +.fa-exclamation-triangle { + --fa: "\f071"; + --fa--fa: "\f071\f071"; } -.fa-database::before { - content: "\f1c0"; } +.fa-warning { + --fa: "\f071"; + --fa--fa: "\f071\f071"; } -.fa-share::before { - content: "\f064"; } +.fa-database { + --fa: "\f1c0"; + --fa--fa: "\f1c0\f1c0"; } -.fa-mail-forward::before { - content: "\f064"; } +.fa-share { + --fa: "\f064"; + --fa--fa: "\f064\f064"; } -.fa-bottle-droplet::before { - content: "\e4c4"; } +.fa-mail-forward { + --fa: "\f064"; + --fa--fa: "\f064\f064"; } -.fa-mask-face::before { - content: "\e1d7"; } +.fa-bottle-droplet { + --fa: "\e4c4"; + --fa--fa: "\e4c4\e4c4"; } -.fa-hill-rockslide::before { - content: "\e508"; } +.fa-mask-face { + --fa: "\e1d7"; + --fa--fa: "\e1d7\e1d7"; } -.fa-right-left::before { - content: "\f362"; } +.fa-hill-rockslide { + --fa: "\e508"; + --fa--fa: "\e508\e508"; } -.fa-exchange-alt::before { - content: "\f362"; } +.fa-right-left { + --fa: "\f362"; + --fa--fa: "\f362\f362"; } -.fa-paper-plane::before { - content: "\f1d8"; } +.fa-exchange-alt { + --fa: "\f362"; + --fa--fa: "\f362\f362"; } -.fa-road-circle-exclamation::before { - content: "\e565"; } +.fa-paper-plane { + --fa: "\f1d8"; + --fa--fa: "\f1d8\f1d8"; } -.fa-dungeon::before { - content: "\f6d9"; } +.fa-road-circle-exclamation { + --fa: "\e565"; + --fa--fa: "\e565\e565"; } -.fa-align-right::before { - content: "\f038"; } +.fa-dungeon { + --fa: "\f6d9"; + --fa--fa: "\f6d9\f6d9"; } -.fa-money-bill-1-wave::before { - content: "\f53b"; } +.fa-align-right { + --fa: "\f038"; + --fa--fa: "\f038\f038"; } -.fa-money-bill-wave-alt::before { - content: "\f53b"; } +.fa-money-bill-1-wave { + --fa: "\f53b"; + --fa--fa: "\f53b\f53b"; } -.fa-life-ring::before { - content: "\f1cd"; } +.fa-money-bill-wave-alt { + --fa: "\f53b"; + --fa--fa: "\f53b\f53b"; } -.fa-hands::before { - content: "\f2a7"; } +.fa-life-ring { + --fa: "\f1cd"; + --fa--fa: "\f1cd\f1cd"; } -.fa-sign-language::before { - content: "\f2a7"; } +.fa-hands { + --fa: "\f2a7"; + --fa--fa: "\f2a7\f2a7"; } -.fa-signing::before { - content: "\f2a7"; } +.fa-sign-language { + --fa: "\f2a7"; + --fa--fa: "\f2a7\f2a7"; } -.fa-calendar-day::before { - content: "\f783"; } +.fa-signing { + --fa: "\f2a7"; + --fa--fa: "\f2a7\f2a7"; } -.fa-water-ladder::before { - content: "\f5c5"; } +.fa-calendar-day { + --fa: "\f783"; + --fa--fa: "\f783\f783"; } -.fa-ladder-water::before { - content: "\f5c5"; } +.fa-water-ladder { + --fa: "\f5c5"; + --fa--fa: "\f5c5\f5c5"; } -.fa-swimming-pool::before { - content: "\f5c5"; } +.fa-ladder-water { + --fa: "\f5c5"; + --fa--fa: "\f5c5\f5c5"; } -.fa-arrows-up-down::before { - content: "\f07d"; } +.fa-swimming-pool { + --fa: "\f5c5"; + --fa--fa: "\f5c5\f5c5"; } -.fa-arrows-v::before { - content: "\f07d"; } +.fa-arrows-up-down { + --fa: "\f07d"; + --fa--fa: "\f07d\f07d"; } -.fa-face-grimace::before { - content: "\f57f"; } +.fa-arrows-v { + --fa: "\f07d"; + --fa--fa: "\f07d\f07d"; } -.fa-grimace::before { - content: "\f57f"; } +.fa-face-grimace { + --fa: "\f57f"; + --fa--fa: "\f57f\f57f"; } -.fa-wheelchair-move::before { - content: "\e2ce"; } +.fa-grimace { + --fa: "\f57f"; + --fa--fa: "\f57f\f57f"; } -.fa-wheelchair-alt::before { - content: "\e2ce"; } +.fa-wheelchair-move { + --fa: "\e2ce"; + --fa--fa: "\e2ce\e2ce"; } -.fa-turn-down::before { - content: "\f3be"; } +.fa-wheelchair-alt { + --fa: "\e2ce"; + --fa--fa: "\e2ce\e2ce"; } -.fa-level-down-alt::before { - content: "\f3be"; } +.fa-turn-down { + --fa: "\f3be"; + --fa--fa: "\f3be\f3be"; } -.fa-person-walking-arrow-right::before { - content: "\e552"; } +.fa-level-down-alt { + --fa: "\f3be"; + --fa--fa: "\f3be\f3be"; } -.fa-square-envelope::before { - content: "\f199"; } +.fa-person-walking-arrow-right { + --fa: "\e552"; + --fa--fa: "\e552\e552"; } -.fa-envelope-square::before { - content: "\f199"; } +.fa-square-envelope { + --fa: "\f199"; + --fa--fa: "\f199\f199"; } -.fa-dice::before { - content: "\f522"; } +.fa-envelope-square { + --fa: "\f199"; + --fa--fa: "\f199\f199"; } -.fa-bowling-ball::before { - content: "\f436"; } +.fa-dice { + --fa: "\f522"; + --fa--fa: "\f522\f522"; } -.fa-brain::before { - content: "\f5dc"; } +.fa-bowling-ball { + --fa: "\f436"; + --fa--fa: "\f436\f436"; } -.fa-bandage::before { - content: "\f462"; } +.fa-brain { + --fa: "\f5dc"; + --fa--fa: "\f5dc\f5dc"; } -.fa-band-aid::before { - content: "\f462"; } +.fa-bandage { + --fa: "\f462"; + --fa--fa: "\f462\f462"; } -.fa-calendar-minus::before { - content: "\f272"; } +.fa-band-aid { + --fa: "\f462"; + --fa--fa: "\f462\f462"; } -.fa-circle-xmark::before { - content: "\f057"; } +.fa-calendar-minus { + --fa: "\f272"; + --fa--fa: "\f272\f272"; } -.fa-times-circle::before { - content: "\f057"; } +.fa-circle-xmark { + --fa: "\f057"; + --fa--fa: "\f057\f057"; } -.fa-xmark-circle::before { - content: "\f057"; } +.fa-times-circle { + --fa: "\f057"; + --fa--fa: "\f057\f057"; } -.fa-gifts::before { - content: "\f79c"; } +.fa-xmark-circle { + --fa: "\f057"; + --fa--fa: "\f057\f057"; } -.fa-hotel::before { - content: "\f594"; } +.fa-gifts { + --fa: "\f79c"; + --fa--fa: "\f79c\f79c"; } -.fa-earth-asia::before { - content: "\f57e"; } +.fa-hotel { + --fa: "\f594"; + --fa--fa: "\f594\f594"; } -.fa-globe-asia::before { - content: "\f57e"; } +.fa-earth-asia { + --fa: "\f57e"; + --fa--fa: "\f57e\f57e"; } -.fa-id-card-clip::before { - content: "\f47f"; } +.fa-globe-asia { + --fa: "\f57e"; + --fa--fa: "\f57e\f57e"; } -.fa-id-card-alt::before { - content: "\f47f"; } +.fa-id-card-clip { + --fa: "\f47f"; + --fa--fa: "\f47f\f47f"; } -.fa-magnifying-glass-plus::before { - content: "\f00e"; } +.fa-id-card-alt { + --fa: "\f47f"; + --fa--fa: "\f47f\f47f"; } -.fa-search-plus::before { - content: "\f00e"; } +.fa-magnifying-glass-plus { + --fa: "\f00e"; + --fa--fa: "\f00e\f00e"; } -.fa-thumbs-up::before { - content: "\f164"; } +.fa-search-plus { + --fa: "\f00e"; + --fa--fa: "\f00e\f00e"; } -.fa-user-clock::before { - content: "\f4fd"; } +.fa-thumbs-up { + --fa: "\f164"; + --fa--fa: "\f164\f164"; } -.fa-hand-dots::before { - content: "\f461"; } +.fa-user-clock { + --fa: "\f4fd"; + --fa--fa: "\f4fd\f4fd"; } -.fa-allergies::before { - content: "\f461"; } +.fa-hand-dots { + --fa: "\f461"; + --fa--fa: "\f461\f461"; } -.fa-file-invoice::before { - content: "\f570"; } +.fa-allergies { + --fa: "\f461"; + --fa--fa: "\f461\f461"; } -.fa-window-minimize::before { - content: "\f2d1"; } +.fa-file-invoice { + --fa: "\f570"; + --fa--fa: "\f570\f570"; } -.fa-mug-saucer::before { - content: "\f0f4"; } +.fa-window-minimize { + --fa: "\f2d1"; + --fa--fa: "\f2d1\f2d1"; } -.fa-coffee::before { - content: "\f0f4"; } +.fa-mug-saucer { + --fa: "\f0f4"; + --fa--fa: "\f0f4\f0f4"; } -.fa-brush::before { - content: "\f55d"; } +.fa-coffee { + --fa: "\f0f4"; + --fa--fa: "\f0f4\f0f4"; } -.fa-mask::before { - content: "\f6fa"; } +.fa-brush { + --fa: "\f55d"; + --fa--fa: "\f55d\f55d"; } -.fa-magnifying-glass-minus::before { - content: "\f010"; } +.fa-file-half-dashed { + --fa: "\e698"; + --fa--fa: "\e698\e698"; } -.fa-search-minus::before { - content: "\f010"; } +.fa-mask { + --fa: "\f6fa"; + --fa--fa: "\f6fa\f6fa"; } -.fa-ruler-vertical::before { - content: "\f548"; } +.fa-magnifying-glass-minus { + --fa: "\f010"; + --fa--fa: "\f010\f010"; } -.fa-user-large::before { - content: "\f406"; } +.fa-search-minus { + --fa: "\f010"; + --fa--fa: "\f010\f010"; } -.fa-user-alt::before { - content: "\f406"; } +.fa-ruler-vertical { + --fa: "\f548"; + --fa--fa: "\f548\f548"; } -.fa-train-tram::before { - content: "\e5b4"; } +.fa-user-large { + --fa: "\f406"; + --fa--fa: "\f406\f406"; } -.fa-user-nurse::before { - content: "\f82f"; } +.fa-user-alt { + --fa: "\f406"; + --fa--fa: "\f406\f406"; } -.fa-syringe::before { - content: "\f48e"; } +.fa-train-tram { + --fa: "\e5b4"; + --fa--fa: "\e5b4\e5b4"; } -.fa-cloud-sun::before { - content: "\f6c4"; } +.fa-user-nurse { + --fa: "\f82f"; + --fa--fa: "\f82f\f82f"; } -.fa-stopwatch-20::before { - content: "\e06f"; } +.fa-syringe { + --fa: "\f48e"; + --fa--fa: "\f48e\f48e"; } -.fa-square-full::before { - content: "\f45c"; } +.fa-cloud-sun { + --fa: "\f6c4"; + --fa--fa: "\f6c4\f6c4"; } -.fa-magnet::before { - content: "\f076"; } +.fa-stopwatch-20 { + --fa: "\e06f"; + --fa--fa: "\e06f\e06f"; } -.fa-jar::before { - content: "\e516"; } +.fa-square-full { + --fa: "\f45c"; + --fa--fa: "\f45c\f45c"; } -.fa-note-sticky::before { - content: "\f249"; } +.fa-magnet { + --fa: "\f076"; + --fa--fa: "\f076\f076"; } -.fa-sticky-note::before { - content: "\f249"; } +.fa-jar { + --fa: "\e516"; + --fa--fa: "\e516\e516"; } -.fa-bug-slash::before { - content: "\e490"; } +.fa-note-sticky { + --fa: "\f249"; + --fa--fa: "\f249\f249"; } -.fa-arrow-up-from-water-pump::before { - content: "\e4b6"; } +.fa-sticky-note { + --fa: "\f249"; + --fa--fa: "\f249\f249"; } -.fa-bone::before { - content: "\f5d7"; } +.fa-bug-slash { + --fa: "\e490"; + --fa--fa: "\e490\e490"; } -.fa-table-cells-row-unlock::before { - content: "\e691"; } +.fa-arrow-up-from-water-pump { + --fa: "\e4b6"; + --fa--fa: "\e4b6\e4b6"; } -.fa-user-injured::before { - content: "\f728"; } +.fa-bone { + --fa: "\f5d7"; + --fa--fa: "\f5d7\f5d7"; } -.fa-face-sad-tear::before { - content: "\f5b4"; } +.fa-table-cells-row-unlock { + --fa: "\e691"; + --fa--fa: "\e691\e691"; } -.fa-sad-tear::before { - content: "\f5b4"; } +.fa-user-injured { + --fa: "\f728"; + --fa--fa: "\f728\f728"; } -.fa-plane::before { - content: "\f072"; } +.fa-face-sad-tear { + --fa: "\f5b4"; + --fa--fa: "\f5b4\f5b4"; } -.fa-tent-arrows-down::before { - content: "\e581"; } +.fa-sad-tear { + --fa: "\f5b4"; + --fa--fa: "\f5b4\f5b4"; } -.fa-exclamation::before { - content: "\21"; } +.fa-plane { + --fa: "\f072"; + --fa--fa: "\f072\f072"; } -.fa-arrows-spin::before { - content: "\e4bb"; } +.fa-tent-arrows-down { + --fa: "\e581"; + --fa--fa: "\e581\e581"; } -.fa-print::before { - content: "\f02f"; } +.fa-exclamation { + --fa: "\21"; + --fa--fa: "\21\21"; } -.fa-turkish-lira-sign::before { - content: "\e2bb"; } +.fa-arrows-spin { + --fa: "\e4bb"; + --fa--fa: "\e4bb\e4bb"; } -.fa-try::before { - content: "\e2bb"; } +.fa-print { + --fa: "\f02f"; + --fa--fa: "\f02f\f02f"; } -.fa-turkish-lira::before { - content: "\e2bb"; } +.fa-turkish-lira-sign { + --fa: "\e2bb"; + --fa--fa: "\e2bb\e2bb"; } -.fa-dollar-sign::before { - content: "\24"; } +.fa-try { + --fa: "\e2bb"; + --fa--fa: "\e2bb\e2bb"; } -.fa-dollar::before { - content: "\24"; } +.fa-turkish-lira { + --fa: "\e2bb"; + --fa--fa: "\e2bb\e2bb"; } -.fa-usd::before { - content: "\24"; } +.fa-dollar-sign { + --fa: "\24"; + --fa--fa: "\24\24"; } -.fa-x::before { - content: "\58"; } +.fa-dollar { + --fa: "\24"; + --fa--fa: "\24\24"; } -.fa-magnifying-glass-dollar::before { - content: "\f688"; } +.fa-usd { + --fa: "\24"; + --fa--fa: "\24\24"; } -.fa-search-dollar::before { - content: "\f688"; } +.fa-x { + --fa: "\58"; + --fa--fa: "\58\58"; } -.fa-users-gear::before { - content: "\f509"; } +.fa-magnifying-glass-dollar { + --fa: "\f688"; + --fa--fa: "\f688\f688"; } -.fa-users-cog::before { - content: "\f509"; } +.fa-search-dollar { + --fa: "\f688"; + --fa--fa: "\f688\f688"; } -.fa-person-military-pointing::before { - content: "\e54a"; } +.fa-users-gear { + --fa: "\f509"; + --fa--fa: "\f509\f509"; } -.fa-building-columns::before { - content: "\f19c"; } +.fa-users-cog { + --fa: "\f509"; + --fa--fa: "\f509\f509"; } -.fa-bank::before { - content: "\f19c"; } +.fa-person-military-pointing { + --fa: "\e54a"; + --fa--fa: "\e54a\e54a"; } -.fa-institution::before { - content: "\f19c"; } +.fa-building-columns { + --fa: "\f19c"; + --fa--fa: "\f19c\f19c"; } -.fa-museum::before { - content: "\f19c"; } +.fa-bank { + --fa: "\f19c"; + --fa--fa: "\f19c\f19c"; } -.fa-university::before { - content: "\f19c"; } +.fa-institution { + --fa: "\f19c"; + --fa--fa: "\f19c\f19c"; } -.fa-umbrella::before { - content: "\f0e9"; } +.fa-museum { + --fa: "\f19c"; + --fa--fa: "\f19c\f19c"; } -.fa-trowel::before { - content: "\e589"; } +.fa-university { + --fa: "\f19c"; + --fa--fa: "\f19c\f19c"; } -.fa-d::before { - content: "\44"; } +.fa-umbrella { + --fa: "\f0e9"; + --fa--fa: "\f0e9\f0e9"; } -.fa-stapler::before { - content: "\e5af"; } +.fa-trowel { + --fa: "\e589"; + --fa--fa: "\e589\e589"; } -.fa-masks-theater::before { - content: "\f630"; } +.fa-d { + --fa: "\44"; + --fa--fa: "\44\44"; } -.fa-theater-masks::before { - content: "\f630"; } +.fa-stapler { + --fa: "\e5af"; + --fa--fa: "\e5af\e5af"; } -.fa-kip-sign::before { - content: "\e1c4"; } +.fa-masks-theater { + --fa: "\f630"; + --fa--fa: "\f630\f630"; } -.fa-hand-point-left::before { - content: "\f0a5"; } +.fa-theater-masks { + --fa: "\f630"; + --fa--fa: "\f630\f630"; } -.fa-handshake-simple::before { - content: "\f4c6"; } +.fa-kip-sign { + --fa: "\e1c4"; + --fa--fa: "\e1c4\e1c4"; } -.fa-handshake-alt::before { - content: "\f4c6"; } +.fa-hand-point-left { + --fa: "\f0a5"; + --fa--fa: "\f0a5\f0a5"; } -.fa-jet-fighter::before { - content: "\f0fb"; } +.fa-handshake-simple { + --fa: "\f4c6"; + --fa--fa: "\f4c6\f4c6"; } -.fa-fighter-jet::before { - content: "\f0fb"; } +.fa-handshake-alt { + --fa: "\f4c6"; + --fa--fa: "\f4c6\f4c6"; } -.fa-square-share-nodes::before { - content: "\f1e1"; } +.fa-jet-fighter { + --fa: "\f0fb"; + --fa--fa: "\f0fb\f0fb"; } -.fa-share-alt-square::before { - content: "\f1e1"; } +.fa-fighter-jet { + --fa: "\f0fb"; + --fa--fa: "\f0fb\f0fb"; } -.fa-barcode::before { - content: "\f02a"; } +.fa-square-share-nodes { + --fa: "\f1e1"; + --fa--fa: "\f1e1\f1e1"; } -.fa-plus-minus::before { - content: "\e43c"; } +.fa-share-alt-square { + --fa: "\f1e1"; + --fa--fa: "\f1e1\f1e1"; } -.fa-video::before { - content: "\f03d"; } +.fa-barcode { + --fa: "\f02a"; + --fa--fa: "\f02a\f02a"; } -.fa-video-camera::before { - content: "\f03d"; } +.fa-plus-minus { + --fa: "\e43c"; + --fa--fa: "\e43c\e43c"; } -.fa-graduation-cap::before { - content: "\f19d"; } +.fa-video { + --fa: "\f03d"; + --fa--fa: "\f03d\f03d"; } -.fa-mortar-board::before { - content: "\f19d"; } +.fa-video-camera { + --fa: "\f03d"; + --fa--fa: "\f03d\f03d"; } -.fa-hand-holding-medical::before { - content: "\e05c"; } +.fa-graduation-cap { + --fa: "\f19d"; + --fa--fa: "\f19d\f19d"; } -.fa-person-circle-check::before { - content: "\e53e"; } +.fa-mortar-board { + --fa: "\f19d"; + --fa--fa: "\f19d\f19d"; } -.fa-turn-up::before { - content: "\f3bf"; } +.fa-hand-holding-medical { + --fa: "\e05c"; + --fa--fa: "\e05c\e05c"; } -.fa-level-up-alt::before { - content: "\f3bf"; } +.fa-person-circle-check { + --fa: "\e53e"; + --fa--fa: "\e53e\e53e"; } + +.fa-turn-up { + --fa: "\f3bf"; + --fa--fa: "\f3bf\f3bf"; } + +.fa-level-up-alt { + --fa: "\f3bf"; + --fa--fa: "\f3bf\f3bf"; } .sr-only, .fa-sr-only { @@ -6228,1586 +8218,1595 @@ readers do not read off random characters that represent icons */ .fa-brands { font-weight: 400; } -.fa-monero:before { - content: "\f3d0"; } +.fa-monero { + --fa: "\f3d0"; } + +.fa-hooli { + --fa: "\f427"; } + +.fa-yelp { + --fa: "\f1e9"; } + +.fa-cc-visa { + --fa: "\f1f0"; } -.fa-hooli:before { - content: "\f427"; } +.fa-lastfm { + --fa: "\f202"; } -.fa-yelp:before { - content: "\f1e9"; } +.fa-shopware { + --fa: "\f5b5"; } -.fa-cc-visa:before { - content: "\f1f0"; } +.fa-creative-commons-nc { + --fa: "\f4e8"; } -.fa-lastfm:before { - content: "\f202"; } +.fa-aws { + --fa: "\f375"; } -.fa-shopware:before { - content: "\f5b5"; } +.fa-redhat { + --fa: "\f7bc"; } -.fa-creative-commons-nc:before { - content: "\f4e8"; } +.fa-yoast { + --fa: "\f2b1"; } -.fa-aws:before { - content: "\f375"; } +.fa-cloudflare { + --fa: "\e07d"; } -.fa-redhat:before { - content: "\f7bc"; } +.fa-ups { + --fa: "\f7e0"; } -.fa-yoast:before { - content: "\f2b1"; } +.fa-pixiv { + --fa: "\e640"; } -.fa-cloudflare:before { - content: "\e07d"; } +.fa-wpexplorer { + --fa: "\f2de"; } -.fa-ups:before { - content: "\f7e0"; } +.fa-dyalog { + --fa: "\f399"; } -.fa-pixiv:before { - content: "\e640"; } +.fa-bity { + --fa: "\f37a"; } -.fa-wpexplorer:before { - content: "\f2de"; } +.fa-stackpath { + --fa: "\f842"; } -.fa-dyalog:before { - content: "\f399"; } +.fa-buysellads { + --fa: "\f20d"; } -.fa-bity:before { - content: "\f37a"; } +.fa-first-order { + --fa: "\f2b0"; } -.fa-stackpath:before { - content: "\f842"; } +.fa-modx { + --fa: "\f285"; } -.fa-buysellads:before { - content: "\f20d"; } +.fa-guilded { + --fa: "\e07e"; } -.fa-first-order:before { - content: "\f2b0"; } +.fa-vnv { + --fa: "\f40b"; } -.fa-modx:before { - content: "\f285"; } +.fa-square-js { + --fa: "\f3b9"; } -.fa-guilded:before { - content: "\e07e"; } +.fa-js-square { + --fa: "\f3b9"; } -.fa-vnv:before { - content: "\f40b"; } +.fa-microsoft { + --fa: "\f3ca"; } -.fa-square-js:before { - content: "\f3b9"; } +.fa-qq { + --fa: "\f1d6"; } -.fa-js-square:before { - content: "\f3b9"; } +.fa-orcid { + --fa: "\f8d2"; } -.fa-microsoft:before { - content: "\f3ca"; } +.fa-java { + --fa: "\f4e4"; } -.fa-qq:before { - content: "\f1d6"; } +.fa-invision { + --fa: "\f7b0"; } -.fa-orcid:before { - content: "\f8d2"; } +.fa-creative-commons-pd-alt { + --fa: "\f4ed"; } -.fa-java:before { - content: "\f4e4"; } +.fa-centercode { + --fa: "\f380"; } -.fa-invision:before { - content: "\f7b0"; } +.fa-glide-g { + --fa: "\f2a6"; } -.fa-creative-commons-pd-alt:before { - content: "\f4ed"; } +.fa-drupal { + --fa: "\f1a9"; } -.fa-centercode:before { - content: "\f380"; } +.fa-jxl { + --fa: "\e67b"; } -.fa-glide-g:before { - content: "\f2a6"; } +.fa-dart-lang { + --fa: "\e693"; } -.fa-drupal:before { - content: "\f1a9"; } +.fa-hire-a-helper { + --fa: "\f3b0"; } -.fa-jxl:before { - content: "\e67b"; } +.fa-creative-commons-by { + --fa: "\f4e7"; } -.fa-dart-lang:before { - content: "\e693"; } +.fa-unity { + --fa: "\e049"; } -.fa-hire-a-helper:before { - content: "\f3b0"; } +.fa-whmcs { + --fa: "\f40d"; } -.fa-creative-commons-by:before { - content: "\f4e7"; } +.fa-rocketchat { + --fa: "\f3e8"; } -.fa-unity:before { - content: "\e049"; } +.fa-vk { + --fa: "\f189"; } -.fa-whmcs:before { - content: "\f40d"; } +.fa-untappd { + --fa: "\f405"; } -.fa-rocketchat:before { - content: "\f3e8"; } +.fa-mailchimp { + --fa: "\f59e"; } -.fa-vk:before { - content: "\f189"; } +.fa-css3-alt { + --fa: "\f38b"; } -.fa-untappd:before { - content: "\f405"; } +.fa-square-reddit { + --fa: "\f1a2"; } -.fa-mailchimp:before { - content: "\f59e"; } +.fa-reddit-square { + --fa: "\f1a2"; } -.fa-css3-alt:before { - content: "\f38b"; } +.fa-vimeo-v { + --fa: "\f27d"; } -.fa-square-reddit:before { - content: "\f1a2"; } +.fa-contao { + --fa: "\f26d"; } -.fa-reddit-square:before { - content: "\f1a2"; } +.fa-square-font-awesome { + --fa: "\e5ad"; } -.fa-vimeo-v:before { - content: "\f27d"; } +.fa-deskpro { + --fa: "\f38f"; } -.fa-contao:before { - content: "\f26d"; } +.fa-brave { + --fa: "\e63c"; } -.fa-square-font-awesome:before { - content: "\e5ad"; } +.fa-sistrix { + --fa: "\f3ee"; } -.fa-deskpro:before { - content: "\f38f"; } +.fa-square-instagram { + --fa: "\e055"; } -.fa-brave:before { - content: "\e63c"; } +.fa-instagram-square { + --fa: "\e055"; } -.fa-sistrix:before { - content: "\f3ee"; } +.fa-battle-net { + --fa: "\f835"; } -.fa-square-instagram:before { - content: "\e055"; } +.fa-the-red-yeti { + --fa: "\f69d"; } -.fa-instagram-square:before { - content: "\e055"; } +.fa-square-hacker-news { + --fa: "\f3af"; } -.fa-battle-net:before { - content: "\f835"; } +.fa-hacker-news-square { + --fa: "\f3af"; } -.fa-the-red-yeti:before { - content: "\f69d"; } +.fa-edge { + --fa: "\f282"; } -.fa-square-hacker-news:before { - content: "\f3af"; } +.fa-threads { + --fa: "\e618"; } -.fa-hacker-news-square:before { - content: "\f3af"; } +.fa-napster { + --fa: "\f3d2"; } -.fa-edge:before { - content: "\f282"; } +.fa-square-snapchat { + --fa: "\f2ad"; } -.fa-threads:before { - content: "\e618"; } +.fa-snapchat-square { + --fa: "\f2ad"; } -.fa-napster:before { - content: "\f3d2"; } +.fa-google-plus-g { + --fa: "\f0d5"; } -.fa-square-snapchat:before { - content: "\f2ad"; } +.fa-artstation { + --fa: "\f77a"; } -.fa-snapchat-square:before { - content: "\f2ad"; } +.fa-markdown { + --fa: "\f60f"; } -.fa-google-plus-g:before { - content: "\f0d5"; } +.fa-sourcetree { + --fa: "\f7d3"; } -.fa-artstation:before { - content: "\f77a"; } +.fa-google-plus { + --fa: "\f2b3"; } -.fa-markdown:before { - content: "\f60f"; } +.fa-diaspora { + --fa: "\f791"; } -.fa-sourcetree:before { - content: "\f7d3"; } +.fa-foursquare { + --fa: "\f180"; } -.fa-google-plus:before { - content: "\f2b3"; } +.fa-stack-overflow { + --fa: "\f16c"; } -.fa-diaspora:before { - content: "\f791"; } +.fa-github-alt { + --fa: "\f113"; } -.fa-foursquare:before { - content: "\f180"; } +.fa-phoenix-squadron { + --fa: "\f511"; } -.fa-stack-overflow:before { - content: "\f16c"; } +.fa-pagelines { + --fa: "\f18c"; } -.fa-github-alt:before { - content: "\f113"; } +.fa-algolia { + --fa: "\f36c"; } -.fa-phoenix-squadron:before { - content: "\f511"; } +.fa-red-river { + --fa: "\f3e3"; } -.fa-pagelines:before { - content: "\f18c"; } +.fa-creative-commons-sa { + --fa: "\f4ef"; } -.fa-algolia:before { - content: "\f36c"; } +.fa-safari { + --fa: "\f267"; } -.fa-red-river:before { - content: "\f3e3"; } +.fa-google { + --fa: "\f1a0"; } -.fa-creative-commons-sa:before { - content: "\f4ef"; } +.fa-square-font-awesome-stroke { + --fa: "\f35c"; } -.fa-safari:before { - content: "\f267"; } +.fa-font-awesome-alt { + --fa: "\f35c"; } -.fa-google:before { - content: "\f1a0"; } +.fa-atlassian { + --fa: "\f77b"; } -.fa-square-font-awesome-stroke:before { - content: "\f35c"; } +.fa-linkedin-in { + --fa: "\f0e1"; } -.fa-font-awesome-alt:before { - content: "\f35c"; } +.fa-digital-ocean { + --fa: "\f391"; } -.fa-atlassian:before { - content: "\f77b"; } +.fa-nimblr { + --fa: "\f5a8"; } -.fa-linkedin-in:before { - content: "\f0e1"; } +.fa-chromecast { + --fa: "\f838"; } -.fa-digital-ocean:before { - content: "\f391"; } +.fa-evernote { + --fa: "\f839"; } -.fa-nimblr:before { - content: "\f5a8"; } +.fa-hacker-news { + --fa: "\f1d4"; } -.fa-chromecast:before { - content: "\f838"; } +.fa-creative-commons-sampling { + --fa: "\f4f0"; } -.fa-evernote:before { - content: "\f839"; } +.fa-adversal { + --fa: "\f36a"; } -.fa-hacker-news:before { - content: "\f1d4"; } +.fa-creative-commons { + --fa: "\f25e"; } -.fa-creative-commons-sampling:before { - content: "\f4f0"; } +.fa-watchman-monitoring { + --fa: "\e087"; } -.fa-adversal:before { - content: "\f36a"; } +.fa-fonticons { + --fa: "\f280"; } -.fa-creative-commons:before { - content: "\f25e"; } +.fa-weixin { + --fa: "\f1d7"; } -.fa-watchman-monitoring:before { - content: "\e087"; } +.fa-shirtsinbulk { + --fa: "\f214"; } -.fa-fonticons:before { - content: "\f280"; } +.fa-codepen { + --fa: "\f1cb"; } -.fa-weixin:before { - content: "\f1d7"; } +.fa-git-alt { + --fa: "\f841"; } -.fa-shirtsinbulk:before { - content: "\f214"; } +.fa-lyft { + --fa: "\f3c3"; } -.fa-codepen:before { - content: "\f1cb"; } +.fa-rev { + --fa: "\f5b2"; } -.fa-git-alt:before { - content: "\f841"; } +.fa-windows { + --fa: "\f17a"; } -.fa-lyft:before { - content: "\f3c3"; } +.fa-wizards-of-the-coast { + --fa: "\f730"; } -.fa-rev:before { - content: "\f5b2"; } +.fa-square-viadeo { + --fa: "\f2aa"; } -.fa-windows:before { - content: "\f17a"; } +.fa-viadeo-square { + --fa: "\f2aa"; } -.fa-wizards-of-the-coast:before { - content: "\f730"; } +.fa-meetup { + --fa: "\f2e0"; } -.fa-square-viadeo:before { - content: "\f2aa"; } +.fa-centos { + --fa: "\f789"; } -.fa-viadeo-square:before { - content: "\f2aa"; } +.fa-adn { + --fa: "\f170"; } -.fa-meetup:before { - content: "\f2e0"; } +.fa-cloudsmith { + --fa: "\f384"; } -.fa-centos:before { - content: "\f789"; } +.fa-opensuse { + --fa: "\e62b"; } -.fa-adn:before { - content: "\f170"; } +.fa-pied-piper-alt { + --fa: "\f1a8"; } -.fa-cloudsmith:before { - content: "\f384"; } +.fa-square-dribbble { + --fa: "\f397"; } -.fa-opensuse:before { - content: "\e62b"; } +.fa-dribbble-square { + --fa: "\f397"; } -.fa-pied-piper-alt:before { - content: "\f1a8"; } +.fa-codiepie { + --fa: "\f284"; } -.fa-square-dribbble:before { - content: "\f397"; } +.fa-node { + --fa: "\f419"; } -.fa-dribbble-square:before { - content: "\f397"; } +.fa-mix { + --fa: "\f3cb"; } -.fa-codiepie:before { - content: "\f284"; } +.fa-steam { + --fa: "\f1b6"; } -.fa-node:before { - content: "\f419"; } +.fa-cc-apple-pay { + --fa: "\f416"; } -.fa-mix:before { - content: "\f3cb"; } +.fa-scribd { + --fa: "\f28a"; } -.fa-steam:before { - content: "\f1b6"; } +.fa-debian { + --fa: "\e60b"; } -.fa-cc-apple-pay:before { - content: "\f416"; } +.fa-openid { + --fa: "\f19b"; } -.fa-scribd:before { - content: "\f28a"; } +.fa-instalod { + --fa: "\e081"; } -.fa-debian:before { - content: "\e60b"; } +.fa-files-pinwheel { + --fa: "\e69f"; } -.fa-openid:before { - content: "\f19b"; } +.fa-expeditedssl { + --fa: "\f23e"; } -.fa-instalod:before { - content: "\e081"; } +.fa-sellcast { + --fa: "\f2da"; } -.fa-expeditedssl:before { - content: "\f23e"; } +.fa-square-twitter { + --fa: "\f081"; } -.fa-sellcast:before { - content: "\f2da"; } +.fa-twitter-square { + --fa: "\f081"; } -.fa-square-twitter:before { - content: "\f081"; } +.fa-r-project { + --fa: "\f4f7"; } -.fa-twitter-square:before { - content: "\f081"; } +.fa-delicious { + --fa: "\f1a5"; } -.fa-r-project:before { - content: "\f4f7"; } +.fa-freebsd { + --fa: "\f3a4"; } -.fa-delicious:before { - content: "\f1a5"; } +.fa-vuejs { + --fa: "\f41f"; } -.fa-freebsd:before { - content: "\f3a4"; } +.fa-accusoft { + --fa: "\f369"; } -.fa-vuejs:before { - content: "\f41f"; } +.fa-ioxhost { + --fa: "\f208"; } -.fa-accusoft:before { - content: "\f369"; } +.fa-fonticons-fi { + --fa: "\f3a2"; } -.fa-ioxhost:before { - content: "\f208"; } +.fa-app-store { + --fa: "\f36f"; } -.fa-fonticons-fi:before { - content: "\f3a2"; } +.fa-cc-mastercard { + --fa: "\f1f1"; } -.fa-app-store:before { - content: "\f36f"; } +.fa-itunes-note { + --fa: "\f3b5"; } -.fa-cc-mastercard:before { - content: "\f1f1"; } +.fa-golang { + --fa: "\e40f"; } -.fa-itunes-note:before { - content: "\f3b5"; } +.fa-kickstarter { + --fa: "\f3bb"; } -.fa-golang:before { - content: "\e40f"; } +.fa-square-kickstarter { + --fa: "\f3bb"; } -.fa-kickstarter:before { - content: "\f3bb"; } +.fa-grav { + --fa: "\f2d6"; } -.fa-square-kickstarter:before { - content: "\f3bb"; } +.fa-weibo { + --fa: "\f18a"; } -.fa-grav:before { - content: "\f2d6"; } +.fa-uncharted { + --fa: "\e084"; } -.fa-weibo:before { - content: "\f18a"; } +.fa-firstdraft { + --fa: "\f3a1"; } -.fa-uncharted:before { - content: "\e084"; } +.fa-square-youtube { + --fa: "\f431"; } -.fa-firstdraft:before { - content: "\f3a1"; } +.fa-youtube-square { + --fa: "\f431"; } -.fa-square-youtube:before { - content: "\f431"; } +.fa-wikipedia-w { + --fa: "\f266"; } -.fa-youtube-square:before { - content: "\f431"; } +.fa-wpressr { + --fa: "\f3e4"; } -.fa-wikipedia-w:before { - content: "\f266"; } +.fa-rendact { + --fa: "\f3e4"; } -.fa-wpressr:before { - content: "\f3e4"; } +.fa-angellist { + --fa: "\f209"; } -.fa-rendact:before { - content: "\f3e4"; } +.fa-galactic-republic { + --fa: "\f50c"; } -.fa-angellist:before { - content: "\f209"; } +.fa-nfc-directional { + --fa: "\e530"; } -.fa-galactic-republic:before { - content: "\f50c"; } +.fa-skype { + --fa: "\f17e"; } -.fa-nfc-directional:before { - content: "\e530"; } +.fa-joget { + --fa: "\f3b7"; } -.fa-skype:before { - content: "\f17e"; } +.fa-fedora { + --fa: "\f798"; } -.fa-joget:before { - content: "\f3b7"; } +.fa-stripe-s { + --fa: "\f42a"; } -.fa-fedora:before { - content: "\f798"; } +.fa-meta { + --fa: "\e49b"; } -.fa-stripe-s:before { - content: "\f42a"; } +.fa-laravel { + --fa: "\f3bd"; } -.fa-meta:before { - content: "\e49b"; } +.fa-hotjar { + --fa: "\f3b1"; } -.fa-laravel:before { - content: "\f3bd"; } +.fa-bluetooth-b { + --fa: "\f294"; } -.fa-hotjar:before { - content: "\f3b1"; } +.fa-square-letterboxd { + --fa: "\e62e"; } -.fa-bluetooth-b:before { - content: "\f294"; } +.fa-sticker-mule { + --fa: "\f3f7"; } -.fa-square-letterboxd:before { - content: "\e62e"; } +.fa-creative-commons-zero { + --fa: "\f4f3"; } -.fa-sticker-mule:before { - content: "\f3f7"; } +.fa-hips { + --fa: "\f452"; } -.fa-creative-commons-zero:before { - content: "\f4f3"; } +.fa-css { + --fa: "\e6a2"; } -.fa-hips:before { - content: "\f452"; } +.fa-behance { + --fa: "\f1b4"; } -.fa-behance:before { - content: "\f1b4"; } +.fa-reddit { + --fa: "\f1a1"; } -.fa-reddit:before { - content: "\f1a1"; } +.fa-discord { + --fa: "\f392"; } -.fa-discord:before { - content: "\f392"; } +.fa-chrome { + --fa: "\f268"; } -.fa-chrome:before { - content: "\f268"; } +.fa-app-store-ios { + --fa: "\f370"; } -.fa-app-store-ios:before { - content: "\f370"; } +.fa-cc-discover { + --fa: "\f1f2"; } -.fa-cc-discover:before { - content: "\f1f2"; } +.fa-wpbeginner { + --fa: "\f297"; } -.fa-wpbeginner:before { - content: "\f297"; } +.fa-confluence { + --fa: "\f78d"; } -.fa-confluence:before { - content: "\f78d"; } +.fa-shoelace { + --fa: "\e60c"; } -.fa-shoelace:before { - content: "\e60c"; } +.fa-mdb { + --fa: "\f8ca"; } -.fa-mdb:before { - content: "\f8ca"; } +.fa-dochub { + --fa: "\f394"; } -.fa-dochub:before { - content: "\f394"; } +.fa-accessible-icon { + --fa: "\f368"; } -.fa-accessible-icon:before { - content: "\f368"; } +.fa-ebay { + --fa: "\f4f4"; } -.fa-ebay:before { - content: "\f4f4"; } +.fa-amazon { + --fa: "\f270"; } -.fa-amazon:before { - content: "\f270"; } +.fa-unsplash { + --fa: "\e07c"; } -.fa-unsplash:before { - content: "\e07c"; } +.fa-yarn { + --fa: "\f7e3"; } -.fa-yarn:before { - content: "\f7e3"; } +.fa-square-steam { + --fa: "\f1b7"; } -.fa-square-steam:before { - content: "\f1b7"; } +.fa-steam-square { + --fa: "\f1b7"; } -.fa-steam-square:before { - content: "\f1b7"; } +.fa-500px { + --fa: "\f26e"; } -.fa-500px:before { - content: "\f26e"; } +.fa-square-vimeo { + --fa: "\f194"; } -.fa-square-vimeo:before { - content: "\f194"; } +.fa-vimeo-square { + --fa: "\f194"; } -.fa-vimeo-square:before { - content: "\f194"; } +.fa-asymmetrik { + --fa: "\f372"; } -.fa-asymmetrik:before { - content: "\f372"; } +.fa-font-awesome { + --fa: "\f2b4"; } -.fa-font-awesome:before { - content: "\f2b4"; } +.fa-font-awesome-flag { + --fa: "\f2b4"; } -.fa-font-awesome-flag:before { - content: "\f2b4"; } +.fa-font-awesome-logo-full { + --fa: "\f2b4"; } -.fa-font-awesome-logo-full:before { - content: "\f2b4"; } +.fa-gratipay { + --fa: "\f184"; } -.fa-gratipay:before { - content: "\f184"; } +.fa-apple { + --fa: "\f179"; } -.fa-apple:before { - content: "\f179"; } +.fa-hive { + --fa: "\e07f"; } -.fa-hive:before { - content: "\e07f"; } +.fa-gitkraken { + --fa: "\f3a6"; } -.fa-gitkraken:before { - content: "\f3a6"; } +.fa-keybase { + --fa: "\f4f5"; } -.fa-keybase:before { - content: "\f4f5"; } +.fa-apple-pay { + --fa: "\f415"; } -.fa-apple-pay:before { - content: "\f415"; } +.fa-padlet { + --fa: "\e4a0"; } -.fa-padlet:before { - content: "\e4a0"; } +.fa-amazon-pay { + --fa: "\f42c"; } -.fa-amazon-pay:before { - content: "\f42c"; } +.fa-square-github { + --fa: "\f092"; } -.fa-square-github:before { - content: "\f092"; } +.fa-github-square { + --fa: "\f092"; } -.fa-github-square:before { - content: "\f092"; } +.fa-stumbleupon { + --fa: "\f1a4"; } -.fa-stumbleupon:before { - content: "\f1a4"; } +.fa-fedex { + --fa: "\f797"; } -.fa-fedex:before { - content: "\f797"; } +.fa-phoenix-framework { + --fa: "\f3dc"; } -.fa-phoenix-framework:before { - content: "\f3dc"; } +.fa-shopify { + --fa: "\e057"; } -.fa-shopify:before { - content: "\e057"; } +.fa-neos { + --fa: "\f612"; } -.fa-neos:before { - content: "\f612"; } +.fa-square-threads { + --fa: "\e619"; } -.fa-square-threads:before { - content: "\e619"; } +.fa-hackerrank { + --fa: "\f5f7"; } -.fa-hackerrank:before { - content: "\f5f7"; } +.fa-researchgate { + --fa: "\f4f8"; } -.fa-researchgate:before { - content: "\f4f8"; } +.fa-swift { + --fa: "\f8e1"; } -.fa-swift:before { - content: "\f8e1"; } +.fa-angular { + --fa: "\f420"; } -.fa-angular:before { - content: "\f420"; } +.fa-speakap { + --fa: "\f3f3"; } -.fa-speakap:before { - content: "\f3f3"; } +.fa-angrycreative { + --fa: "\f36e"; } -.fa-angrycreative:before { - content: "\f36e"; } +.fa-y-combinator { + --fa: "\f23b"; } -.fa-y-combinator:before { - content: "\f23b"; } +.fa-empire { + --fa: "\f1d1"; } -.fa-empire:before { - content: "\f1d1"; } +.fa-envira { + --fa: "\f299"; } -.fa-envira:before { - content: "\f299"; } +.fa-google-scholar { + --fa: "\e63b"; } -.fa-google-scholar:before { - content: "\e63b"; } +.fa-square-gitlab { + --fa: "\e5ae"; } -.fa-square-gitlab:before { - content: "\e5ae"; } +.fa-gitlab-square { + --fa: "\e5ae"; } -.fa-gitlab-square:before { - content: "\e5ae"; } +.fa-studiovinari { + --fa: "\f3f8"; } -.fa-studiovinari:before { - content: "\f3f8"; } +.fa-pied-piper { + --fa: "\f2ae"; } -.fa-pied-piper:before { - content: "\f2ae"; } +.fa-wordpress { + --fa: "\f19a"; } -.fa-wordpress:before { - content: "\f19a"; } +.fa-product-hunt { + --fa: "\f288"; } -.fa-product-hunt:before { - content: "\f288"; } +.fa-firefox { + --fa: "\f269"; } -.fa-firefox:before { - content: "\f269"; } +.fa-linode { + --fa: "\f2b8"; } -.fa-linode:before { - content: "\f2b8"; } +.fa-goodreads { + --fa: "\f3a8"; } -.fa-goodreads:before { - content: "\f3a8"; } +.fa-square-odnoklassniki { + --fa: "\f264"; } -.fa-square-odnoklassniki:before { - content: "\f264"; } +.fa-odnoklassniki-square { + --fa: "\f264"; } -.fa-odnoklassniki-square:before { - content: "\f264"; } +.fa-jsfiddle { + --fa: "\f1cc"; } -.fa-jsfiddle:before { - content: "\f1cc"; } +.fa-sith { + --fa: "\f512"; } -.fa-sith:before { - content: "\f512"; } +.fa-themeisle { + --fa: "\f2b2"; } -.fa-themeisle:before { - content: "\f2b2"; } +.fa-page4 { + --fa: "\f3d7"; } -.fa-page4:before { - content: "\f3d7"; } +.fa-hashnode { + --fa: "\e499"; } -.fa-hashnode:before { - content: "\e499"; } +.fa-react { + --fa: "\f41b"; } -.fa-react:before { - content: "\f41b"; } +.fa-cc-paypal { + --fa: "\f1f4"; } -.fa-cc-paypal:before { - content: "\f1f4"; } +.fa-squarespace { + --fa: "\f5be"; } -.fa-squarespace:before { - content: "\f5be"; } +.fa-cc-stripe { + --fa: "\f1f5"; } -.fa-cc-stripe:before { - content: "\f1f5"; } +.fa-creative-commons-share { + --fa: "\f4f2"; } -.fa-creative-commons-share:before { - content: "\f4f2"; } +.fa-bitcoin { + --fa: "\f379"; } -.fa-bitcoin:before { - content: "\f379"; } +.fa-keycdn { + --fa: "\f3ba"; } -.fa-keycdn:before { - content: "\f3ba"; } +.fa-opera { + --fa: "\f26a"; } -.fa-opera:before { - content: "\f26a"; } +.fa-itch-io { + --fa: "\f83a"; } -.fa-itch-io:before { - content: "\f83a"; } +.fa-umbraco { + --fa: "\f8e8"; } -.fa-umbraco:before { - content: "\f8e8"; } +.fa-galactic-senate { + --fa: "\f50d"; } -.fa-galactic-senate:before { - content: "\f50d"; } +.fa-ubuntu { + --fa: "\f7df"; } -.fa-ubuntu:before { - content: "\f7df"; } +.fa-draft2digital { + --fa: "\f396"; } -.fa-draft2digital:before { - content: "\f396"; } +.fa-stripe { + --fa: "\f429"; } -.fa-stripe:before { - content: "\f429"; } +.fa-houzz { + --fa: "\f27c"; } -.fa-houzz:before { - content: "\f27c"; } +.fa-gg { + --fa: "\f260"; } -.fa-gg:before { - content: "\f260"; } +.fa-dhl { + --fa: "\f790"; } -.fa-dhl:before { - content: "\f790"; } +.fa-square-pinterest { + --fa: "\f0d3"; } -.fa-square-pinterest:before { - content: "\f0d3"; } +.fa-pinterest-square { + --fa: "\f0d3"; } -.fa-pinterest-square:before { - content: "\f0d3"; } +.fa-xing { + --fa: "\f168"; } -.fa-xing:before { - content: "\f168"; } +.fa-blackberry { + --fa: "\f37b"; } -.fa-blackberry:before { - content: "\f37b"; } +.fa-creative-commons-pd { + --fa: "\f4ec"; } -.fa-creative-commons-pd:before { - content: "\f4ec"; } +.fa-playstation { + --fa: "\f3df"; } -.fa-playstation:before { - content: "\f3df"; } +.fa-quinscape { + --fa: "\f459"; } -.fa-quinscape:before { - content: "\f459"; } +.fa-less { + --fa: "\f41d"; } -.fa-less:before { - content: "\f41d"; } +.fa-blogger-b { + --fa: "\f37d"; } -.fa-blogger-b:before { - content: "\f37d"; } +.fa-opencart { + --fa: "\f23d"; } -.fa-opencart:before { - content: "\f23d"; } +.fa-vine { + --fa: "\f1ca"; } -.fa-vine:before { - content: "\f1ca"; } +.fa-signal-messenger { + --fa: "\e663"; } -.fa-signal-messenger:before { - content: "\e663"; } +.fa-paypal { + --fa: "\f1ed"; } -.fa-paypal:before { - content: "\f1ed"; } +.fa-gitlab { + --fa: "\f296"; } -.fa-gitlab:before { - content: "\f296"; } +.fa-typo3 { + --fa: "\f42b"; } -.fa-typo3:before { - content: "\f42b"; } +.fa-reddit-alien { + --fa: "\f281"; } -.fa-reddit-alien:before { - content: "\f281"; } +.fa-yahoo { + --fa: "\f19e"; } -.fa-yahoo:before { - content: "\f19e"; } +.fa-dailymotion { + --fa: "\e052"; } -.fa-dailymotion:before { - content: "\e052"; } +.fa-affiliatetheme { + --fa: "\f36b"; } -.fa-affiliatetheme:before { - content: "\f36b"; } +.fa-pied-piper-pp { + --fa: "\f1a7"; } -.fa-pied-piper-pp:before { - content: "\f1a7"; } +.fa-bootstrap { + --fa: "\f836"; } -.fa-bootstrap:before { - content: "\f836"; } +.fa-odnoklassniki { + --fa: "\f263"; } -.fa-odnoklassniki:before { - content: "\f263"; } +.fa-nfc-symbol { + --fa: "\e531"; } -.fa-nfc-symbol:before { - content: "\e531"; } +.fa-mintbit { + --fa: "\e62f"; } -.fa-mintbit:before { - content: "\e62f"; } +.fa-ethereum { + --fa: "\f42e"; } -.fa-ethereum:before { - content: "\f42e"; } +.fa-speaker-deck { + --fa: "\f83c"; } -.fa-speaker-deck:before { - content: "\f83c"; } +.fa-creative-commons-nc-eu { + --fa: "\f4e9"; } -.fa-creative-commons-nc-eu:before { - content: "\f4e9"; } +.fa-patreon { + --fa: "\f3d9"; } -.fa-patreon:before { - content: "\f3d9"; } +.fa-avianex { + --fa: "\f374"; } -.fa-avianex:before { - content: "\f374"; } +.fa-ello { + --fa: "\f5f1"; } -.fa-ello:before { - content: "\f5f1"; } +.fa-gofore { + --fa: "\f3a7"; } -.fa-gofore:before { - content: "\f3a7"; } +.fa-bimobject { + --fa: "\f378"; } -.fa-bimobject:before { - content: "\f378"; } +.fa-brave-reverse { + --fa: "\e63d"; } -.fa-brave-reverse:before { - content: "\e63d"; } +.fa-facebook-f { + --fa: "\f39e"; } -.fa-facebook-f:before { - content: "\f39e"; } +.fa-square-google-plus { + --fa: "\f0d4"; } -.fa-square-google-plus:before { - content: "\f0d4"; } +.fa-google-plus-square { + --fa: "\f0d4"; } -.fa-google-plus-square:before { - content: "\f0d4"; } +.fa-web-awesome { + --fa: "\e682"; } -.fa-web-awesome:before { - content: "\e682"; } +.fa-mandalorian { + --fa: "\f50f"; } -.fa-mandalorian:before { - content: "\f50f"; } +.fa-first-order-alt { + --fa: "\f50a"; } -.fa-first-order-alt:before { - content: "\f50a"; } +.fa-osi { + --fa: "\f41a"; } -.fa-osi:before { - content: "\f41a"; } +.fa-google-wallet { + --fa: "\f1ee"; } -.fa-google-wallet:before { - content: "\f1ee"; } +.fa-d-and-d-beyond { + --fa: "\f6ca"; } -.fa-d-and-d-beyond:before { - content: "\f6ca"; } +.fa-periscope { + --fa: "\f3da"; } -.fa-periscope:before { - content: "\f3da"; } +.fa-fulcrum { + --fa: "\f50b"; } -.fa-fulcrum:before { - content: "\f50b"; } +.fa-cloudscale { + --fa: "\f383"; } -.fa-cloudscale:before { - content: "\f383"; } +.fa-forumbee { + --fa: "\f211"; } -.fa-forumbee:before { - content: "\f211"; } +.fa-mizuni { + --fa: "\f3cc"; } -.fa-mizuni:before { - content: "\f3cc"; } +.fa-schlix { + --fa: "\f3ea"; } -.fa-schlix:before { - content: "\f3ea"; } +.fa-square-xing { + --fa: "\f169"; } -.fa-square-xing:before { - content: "\f169"; } +.fa-xing-square { + --fa: "\f169"; } -.fa-xing-square:before { - content: "\f169"; } +.fa-bandcamp { + --fa: "\f2d5"; } -.fa-bandcamp:before { - content: "\f2d5"; } +.fa-wpforms { + --fa: "\f298"; } -.fa-wpforms:before { - content: "\f298"; } +.fa-cloudversify { + --fa: "\f385"; } -.fa-cloudversify:before { - content: "\f385"; } +.fa-usps { + --fa: "\f7e1"; } -.fa-usps:before { - content: "\f7e1"; } +.fa-megaport { + --fa: "\f5a3"; } -.fa-megaport:before { - content: "\f5a3"; } +.fa-magento { + --fa: "\f3c4"; } -.fa-magento:before { - content: "\f3c4"; } +.fa-spotify { + --fa: "\f1bc"; } -.fa-spotify:before { - content: "\f1bc"; } +.fa-optin-monster { + --fa: "\f23c"; } -.fa-optin-monster:before { - content: "\f23c"; } +.fa-fly { + --fa: "\f417"; } -.fa-fly:before { - content: "\f417"; } +.fa-square-bluesky { + --fa: "\e6a3"; } -.fa-aviato:before { - content: "\f421"; } +.fa-aviato { + --fa: "\f421"; } -.fa-itunes:before { - content: "\f3b4"; } +.fa-itunes { + --fa: "\f3b4"; } -.fa-cuttlefish:before { - content: "\f38c"; } +.fa-cuttlefish { + --fa: "\f38c"; } -.fa-blogger:before { - content: "\f37c"; } +.fa-blogger { + --fa: "\f37c"; } -.fa-flickr:before { - content: "\f16e"; } +.fa-flickr { + --fa: "\f16e"; } -.fa-viber:before { - content: "\f409"; } +.fa-viber { + --fa: "\f409"; } -.fa-soundcloud:before { - content: "\f1be"; } +.fa-soundcloud { + --fa: "\f1be"; } -.fa-digg:before { - content: "\f1a6"; } +.fa-digg { + --fa: "\f1a6"; } -.fa-tencent-weibo:before { - content: "\f1d5"; } +.fa-tencent-weibo { + --fa: "\f1d5"; } -.fa-letterboxd:before { - content: "\e62d"; } +.fa-letterboxd { + --fa: "\e62d"; } -.fa-symfony:before { - content: "\f83d"; } +.fa-symfony { + --fa: "\f83d"; } -.fa-maxcdn:before { - content: "\f136"; } +.fa-maxcdn { + --fa: "\f136"; } -.fa-etsy:before { - content: "\f2d7"; } +.fa-etsy { + --fa: "\f2d7"; } -.fa-facebook-messenger:before { - content: "\f39f"; } +.fa-facebook-messenger { + --fa: "\f39f"; } -.fa-audible:before { - content: "\f373"; } +.fa-audible { + --fa: "\f373"; } -.fa-think-peaks:before { - content: "\f731"; } +.fa-think-peaks { + --fa: "\f731"; } -.fa-bilibili:before { - content: "\e3d9"; } +.fa-bilibili { + --fa: "\e3d9"; } -.fa-erlang:before { - content: "\f39d"; } +.fa-erlang { + --fa: "\f39d"; } -.fa-x-twitter:before { - content: "\e61b"; } +.fa-x-twitter { + --fa: "\e61b"; } -.fa-cotton-bureau:before { - content: "\f89e"; } +.fa-cotton-bureau { + --fa: "\f89e"; } -.fa-dashcube:before { - content: "\f210"; } +.fa-dashcube { + --fa: "\f210"; } -.fa-42-group:before { - content: "\e080"; } +.fa-42-group { + --fa: "\e080"; } -.fa-innosoft:before { - content: "\e080"; } +.fa-innosoft { + --fa: "\e080"; } -.fa-stack-exchange:before { - content: "\f18d"; } +.fa-stack-exchange { + --fa: "\f18d"; } -.fa-elementor:before { - content: "\f430"; } +.fa-elementor { + --fa: "\f430"; } -.fa-square-pied-piper:before { - content: "\e01e"; } +.fa-square-pied-piper { + --fa: "\e01e"; } -.fa-pied-piper-square:before { - content: "\e01e"; } +.fa-pied-piper-square { + --fa: "\e01e"; } -.fa-creative-commons-nd:before { - content: "\f4eb"; } +.fa-creative-commons-nd { + --fa: "\f4eb"; } -.fa-palfed:before { - content: "\f3d8"; } +.fa-palfed { + --fa: "\f3d8"; } -.fa-superpowers:before { - content: "\f2dd"; } +.fa-superpowers { + --fa: "\f2dd"; } -.fa-resolving:before { - content: "\f3e7"; } +.fa-resolving { + --fa: "\f3e7"; } -.fa-xbox:before { - content: "\f412"; } +.fa-xbox { + --fa: "\f412"; } -.fa-square-web-awesome-stroke:before { - content: "\e684"; } +.fa-square-web-awesome-stroke { + --fa: "\e684"; } -.fa-searchengin:before { - content: "\f3eb"; } +.fa-searchengin { + --fa: "\f3eb"; } -.fa-tiktok:before { - content: "\e07b"; } +.fa-tiktok { + --fa: "\e07b"; } -.fa-square-facebook:before { - content: "\f082"; } +.fa-square-facebook { + --fa: "\f082"; } -.fa-facebook-square:before { - content: "\f082"; } +.fa-facebook-square { + --fa: "\f082"; } -.fa-renren:before { - content: "\f18b"; } +.fa-renren { + --fa: "\f18b"; } -.fa-linux:before { - content: "\f17c"; } +.fa-linux { + --fa: "\f17c"; } -.fa-glide:before { - content: "\f2a5"; } +.fa-glide { + --fa: "\f2a5"; } -.fa-linkedin:before { - content: "\f08c"; } +.fa-linkedin { + --fa: "\f08c"; } -.fa-hubspot:before { - content: "\f3b2"; } +.fa-hubspot { + --fa: "\f3b2"; } -.fa-deploydog:before { - content: "\f38e"; } +.fa-deploydog { + --fa: "\f38e"; } -.fa-twitch:before { - content: "\f1e8"; } +.fa-twitch { + --fa: "\f1e8"; } -.fa-flutter:before { - content: "\e694"; } +.fa-flutter { + --fa: "\e694"; } -.fa-ravelry:before { - content: "\f2d9"; } +.fa-ravelry { + --fa: "\f2d9"; } -.fa-mixer:before { - content: "\e056"; } +.fa-mixer { + --fa: "\e056"; } -.fa-square-lastfm:before { - content: "\f203"; } +.fa-square-lastfm { + --fa: "\f203"; } -.fa-lastfm-square:before { - content: "\f203"; } +.fa-lastfm-square { + --fa: "\f203"; } -.fa-vimeo:before { - content: "\f40a"; } +.fa-vimeo { + --fa: "\f40a"; } -.fa-mendeley:before { - content: "\f7b3"; } +.fa-mendeley { + --fa: "\f7b3"; } -.fa-uniregistry:before { - content: "\f404"; } +.fa-uniregistry { + --fa: "\f404"; } -.fa-figma:before { - content: "\f799"; } +.fa-figma { + --fa: "\f799"; } -.fa-creative-commons-remix:before { - content: "\f4ee"; } +.fa-creative-commons-remix { + --fa: "\f4ee"; } -.fa-cc-amazon-pay:before { - content: "\f42d"; } +.fa-cc-amazon-pay { + --fa: "\f42d"; } -.fa-dropbox:before { - content: "\f16b"; } +.fa-dropbox { + --fa: "\f16b"; } -.fa-instagram:before { - content: "\f16d"; } +.fa-instagram { + --fa: "\f16d"; } -.fa-cmplid:before { - content: "\e360"; } +.fa-cmplid { + --fa: "\e360"; } -.fa-upwork:before { - content: "\e641"; } +.fa-upwork { + --fa: "\e641"; } -.fa-facebook:before { - content: "\f09a"; } +.fa-facebook { + --fa: "\f09a"; } -.fa-gripfire:before { - content: "\f3ac"; } +.fa-gripfire { + --fa: "\f3ac"; } -.fa-jedi-order:before { - content: "\f50e"; } +.fa-jedi-order { + --fa: "\f50e"; } -.fa-uikit:before { - content: "\f403"; } +.fa-uikit { + --fa: "\f403"; } -.fa-fort-awesome-alt:before { - content: "\f3a3"; } +.fa-fort-awesome-alt { + --fa: "\f3a3"; } -.fa-phabricator:before { - content: "\f3db"; } +.fa-phabricator { + --fa: "\f3db"; } -.fa-ussunnah:before { - content: "\f407"; } +.fa-ussunnah { + --fa: "\f407"; } -.fa-earlybirds:before { - content: "\f39a"; } +.fa-earlybirds { + --fa: "\f39a"; } -.fa-trade-federation:before { - content: "\f513"; } +.fa-trade-federation { + --fa: "\f513"; } -.fa-autoprefixer:before { - content: "\f41c"; } +.fa-autoprefixer { + --fa: "\f41c"; } -.fa-whatsapp:before { - content: "\f232"; } +.fa-whatsapp { + --fa: "\f232"; } -.fa-square-upwork:before { - content: "\e67c"; } +.fa-square-upwork { + --fa: "\e67c"; } -.fa-slideshare:before { - content: "\f1e7"; } +.fa-slideshare { + --fa: "\f1e7"; } -.fa-google-play:before { - content: "\f3ab"; } +.fa-google-play { + --fa: "\f3ab"; } -.fa-viadeo:before { - content: "\f2a9"; } +.fa-viadeo { + --fa: "\f2a9"; } -.fa-line:before { - content: "\f3c0"; } +.fa-line { + --fa: "\f3c0"; } -.fa-google-drive:before { - content: "\f3aa"; } +.fa-google-drive { + --fa: "\f3aa"; } -.fa-servicestack:before { - content: "\f3ec"; } +.fa-servicestack { + --fa: "\f3ec"; } -.fa-simplybuilt:before { - content: "\f215"; } +.fa-simplybuilt { + --fa: "\f215"; } -.fa-bitbucket:before { - content: "\f171"; } +.fa-bitbucket { + --fa: "\f171"; } -.fa-imdb:before { - content: "\f2d8"; } +.fa-imdb { + --fa: "\f2d8"; } -.fa-deezer:before { - content: "\e077"; } +.fa-deezer { + --fa: "\e077"; } -.fa-raspberry-pi:before { - content: "\f7bb"; } +.fa-raspberry-pi { + --fa: "\f7bb"; } -.fa-jira:before { - content: "\f7b1"; } +.fa-jira { + --fa: "\f7b1"; } -.fa-docker:before { - content: "\f395"; } +.fa-docker { + --fa: "\f395"; } -.fa-screenpal:before { - content: "\e570"; } +.fa-screenpal { + --fa: "\e570"; } -.fa-bluetooth:before { - content: "\f293"; } +.fa-bluetooth { + --fa: "\f293"; } -.fa-gitter:before { - content: "\f426"; } +.fa-gitter { + --fa: "\f426"; } -.fa-d-and-d:before { - content: "\f38d"; } +.fa-d-and-d { + --fa: "\f38d"; } -.fa-microblog:before { - content: "\e01a"; } +.fa-microblog { + --fa: "\e01a"; } -.fa-cc-diners-club:before { - content: "\f24c"; } +.fa-cc-diners-club { + --fa: "\f24c"; } -.fa-gg-circle:before { - content: "\f261"; } +.fa-gg-circle { + --fa: "\f261"; } -.fa-pied-piper-hat:before { - content: "\f4e5"; } +.fa-pied-piper-hat { + --fa: "\f4e5"; } -.fa-kickstarter-k:before { - content: "\f3bc"; } +.fa-kickstarter-k { + --fa: "\f3bc"; } -.fa-yandex:before { - content: "\f413"; } +.fa-yandex { + --fa: "\f413"; } -.fa-readme:before { - content: "\f4d5"; } +.fa-readme { + --fa: "\f4d5"; } -.fa-html5:before { - content: "\f13b"; } +.fa-html5 { + --fa: "\f13b"; } -.fa-sellsy:before { - content: "\f213"; } +.fa-sellsy { + --fa: "\f213"; } -.fa-square-web-awesome:before { - content: "\e683"; } +.fa-square-web-awesome { + --fa: "\e683"; } -.fa-sass:before { - content: "\f41e"; } +.fa-sass { + --fa: "\f41e"; } -.fa-wirsindhandwerk:before { - content: "\e2d0"; } +.fa-wirsindhandwerk { + --fa: "\e2d0"; } -.fa-wsh:before { - content: "\e2d0"; } +.fa-wsh { + --fa: "\e2d0"; } -.fa-buromobelexperte:before { - content: "\f37f"; } +.fa-buromobelexperte { + --fa: "\f37f"; } -.fa-salesforce:before { - content: "\f83b"; } +.fa-salesforce { + --fa: "\f83b"; } -.fa-octopus-deploy:before { - content: "\e082"; } +.fa-octopus-deploy { + --fa: "\e082"; } -.fa-medapps:before { - content: "\f3c6"; } +.fa-medapps { + --fa: "\f3c6"; } -.fa-ns8:before { - content: "\f3d5"; } +.fa-ns8 { + --fa: "\f3d5"; } -.fa-pinterest-p:before { - content: "\f231"; } +.fa-pinterest-p { + --fa: "\f231"; } -.fa-apper:before { - content: "\f371"; } +.fa-apper { + --fa: "\f371"; } -.fa-fort-awesome:before { - content: "\f286"; } +.fa-fort-awesome { + --fa: "\f286"; } -.fa-waze:before { - content: "\f83f"; } +.fa-waze { + --fa: "\f83f"; } -.fa-bluesky:before { - content: "\e671"; } +.fa-bluesky { + --fa: "\e671"; } -.fa-cc-jcb:before { - content: "\f24b"; } +.fa-cc-jcb { + --fa: "\f24b"; } -.fa-snapchat:before { - content: "\f2ab"; } +.fa-snapchat { + --fa: "\f2ab"; } -.fa-snapchat-ghost:before { - content: "\f2ab"; } +.fa-snapchat-ghost { + --fa: "\f2ab"; } -.fa-fantasy-flight-games:before { - content: "\f6dc"; } +.fa-fantasy-flight-games { + --fa: "\f6dc"; } -.fa-rust:before { - content: "\e07a"; } +.fa-rust { + --fa: "\e07a"; } -.fa-wix:before { - content: "\f5cf"; } +.fa-wix { + --fa: "\f5cf"; } -.fa-square-behance:before { - content: "\f1b5"; } +.fa-square-behance { + --fa: "\f1b5"; } -.fa-behance-square:before { - content: "\f1b5"; } +.fa-behance-square { + --fa: "\f1b5"; } -.fa-supple:before { - content: "\f3f9"; } +.fa-supple { + --fa: "\f3f9"; } -.fa-webflow:before { - content: "\e65c"; } +.fa-webflow { + --fa: "\e65c"; } -.fa-rebel:before { - content: "\f1d0"; } +.fa-rebel { + --fa: "\f1d0"; } -.fa-css3:before { - content: "\f13c"; } +.fa-css3 { + --fa: "\f13c"; } -.fa-staylinked:before { - content: "\f3f5"; } +.fa-staylinked { + --fa: "\f3f5"; } -.fa-kaggle:before { - content: "\f5fa"; } +.fa-kaggle { + --fa: "\f5fa"; } -.fa-space-awesome:before { - content: "\e5ac"; } +.fa-space-awesome { + --fa: "\e5ac"; } -.fa-deviantart:before { - content: "\f1bd"; } +.fa-deviantart { + --fa: "\f1bd"; } -.fa-cpanel:before { - content: "\f388"; } +.fa-cpanel { + --fa: "\f388"; } -.fa-goodreads-g:before { - content: "\f3a9"; } +.fa-goodreads-g { + --fa: "\f3a9"; } -.fa-square-git:before { - content: "\f1d2"; } +.fa-square-git { + --fa: "\f1d2"; } -.fa-git-square:before { - content: "\f1d2"; } +.fa-git-square { + --fa: "\f1d2"; } -.fa-square-tumblr:before { - content: "\f174"; } +.fa-square-tumblr { + --fa: "\f174"; } -.fa-tumblr-square:before { - content: "\f174"; } +.fa-tumblr-square { + --fa: "\f174"; } -.fa-trello:before { - content: "\f181"; } +.fa-trello { + --fa: "\f181"; } -.fa-creative-commons-nc-jp:before { - content: "\f4ea"; } +.fa-creative-commons-nc-jp { + --fa: "\f4ea"; } -.fa-get-pocket:before { - content: "\f265"; } +.fa-get-pocket { + --fa: "\f265"; } -.fa-perbyte:before { - content: "\e083"; } +.fa-perbyte { + --fa: "\e083"; } -.fa-grunt:before { - content: "\f3ad"; } +.fa-grunt { + --fa: "\f3ad"; } -.fa-weebly:before { - content: "\f5cc"; } +.fa-weebly { + --fa: "\f5cc"; } -.fa-connectdevelop:before { - content: "\f20e"; } +.fa-connectdevelop { + --fa: "\f20e"; } -.fa-leanpub:before { - content: "\f212"; } +.fa-leanpub { + --fa: "\f212"; } -.fa-black-tie:before { - content: "\f27e"; } +.fa-black-tie { + --fa: "\f27e"; } -.fa-themeco:before { - content: "\f5c6"; } +.fa-themeco { + --fa: "\f5c6"; } -.fa-python:before { - content: "\f3e2"; } +.fa-python { + --fa: "\f3e2"; } -.fa-android:before { - content: "\f17b"; } +.fa-android { + --fa: "\f17b"; } -.fa-bots:before { - content: "\e340"; } +.fa-bots { + --fa: "\e340"; } -.fa-free-code-camp:before { - content: "\f2c5"; } +.fa-free-code-camp { + --fa: "\f2c5"; } -.fa-hornbill:before { - content: "\f592"; } +.fa-hornbill { + --fa: "\f592"; } -.fa-js:before { - content: "\f3b8"; } +.fa-js { + --fa: "\f3b8"; } -.fa-ideal:before { - content: "\e013"; } +.fa-ideal { + --fa: "\e013"; } -.fa-git:before { - content: "\f1d3"; } +.fa-git { + --fa: "\f1d3"; } -.fa-dev:before { - content: "\f6cc"; } +.fa-dev { + --fa: "\f6cc"; } -.fa-sketch:before { - content: "\f7c6"; } +.fa-sketch { + --fa: "\f7c6"; } -.fa-yandex-international:before { - content: "\f414"; } +.fa-yandex-international { + --fa: "\f414"; } -.fa-cc-amex:before { - content: "\f1f3"; } +.fa-cc-amex { + --fa: "\f1f3"; } -.fa-uber:before { - content: "\f402"; } +.fa-uber { + --fa: "\f402"; } -.fa-github:before { - content: "\f09b"; } +.fa-github { + --fa: "\f09b"; } -.fa-php:before { - content: "\f457"; } +.fa-php { + --fa: "\f457"; } -.fa-alipay:before { - content: "\f642"; } +.fa-alipay { + --fa: "\f642"; } -.fa-youtube:before { - content: "\f167"; } +.fa-youtube { + --fa: "\f167"; } -.fa-skyatlas:before { - content: "\f216"; } +.fa-skyatlas { + --fa: "\f216"; } -.fa-firefox-browser:before { - content: "\e007"; } +.fa-firefox-browser { + --fa: "\e007"; } -.fa-replyd:before { - content: "\f3e6"; } +.fa-replyd { + --fa: "\f3e6"; } -.fa-suse:before { - content: "\f7d6"; } +.fa-suse { + --fa: "\f7d6"; } -.fa-jenkins:before { - content: "\f3b6"; } +.fa-jenkins { + --fa: "\f3b6"; } -.fa-twitter:before { - content: "\f099"; } +.fa-twitter { + --fa: "\f099"; } -.fa-rockrms:before { - content: "\f3e9"; } +.fa-rockrms { + --fa: "\f3e9"; } -.fa-pinterest:before { - content: "\f0d2"; } +.fa-pinterest { + --fa: "\f0d2"; } -.fa-buffer:before { - content: "\f837"; } +.fa-buffer { + --fa: "\f837"; } -.fa-npm:before { - content: "\f3d4"; } +.fa-npm { + --fa: "\f3d4"; } -.fa-yammer:before { - content: "\f840"; } +.fa-yammer { + --fa: "\f840"; } -.fa-btc:before { - content: "\f15a"; } +.fa-btc { + --fa: "\f15a"; } -.fa-dribbble:before { - content: "\f17d"; } +.fa-dribbble { + --fa: "\f17d"; } -.fa-stumbleupon-circle:before { - content: "\f1a3"; } +.fa-stumbleupon-circle { + --fa: "\f1a3"; } -.fa-internet-explorer:before { - content: "\f26b"; } +.fa-internet-explorer { + --fa: "\f26b"; } -.fa-stubber:before { - content: "\e5c7"; } +.fa-stubber { + --fa: "\e5c7"; } -.fa-telegram:before { - content: "\f2c6"; } +.fa-telegram { + --fa: "\f2c6"; } -.fa-telegram-plane:before { - content: "\f2c6"; } +.fa-telegram-plane { + --fa: "\f2c6"; } -.fa-old-republic:before { - content: "\f510"; } +.fa-old-republic { + --fa: "\f510"; } -.fa-odysee:before { - content: "\e5c6"; } +.fa-odysee { + --fa: "\e5c6"; } -.fa-square-whatsapp:before { - content: "\f40c"; } +.fa-square-whatsapp { + --fa: "\f40c"; } -.fa-whatsapp-square:before { - content: "\f40c"; } +.fa-whatsapp-square { + --fa: "\f40c"; } -.fa-node-js:before { - content: "\f3d3"; } +.fa-node-js { + --fa: "\f3d3"; } -.fa-edge-legacy:before { - content: "\e078"; } +.fa-edge-legacy { + --fa: "\e078"; } -.fa-slack:before { - content: "\f198"; } +.fa-slack { + --fa: "\f198"; } -.fa-slack-hash:before { - content: "\f198"; } +.fa-slack-hash { + --fa: "\f198"; } -.fa-medrt:before { - content: "\f3c8"; } +.fa-medrt { + --fa: "\f3c8"; } -.fa-usb:before { - content: "\f287"; } +.fa-usb { + --fa: "\f287"; } -.fa-tumblr:before { - content: "\f173"; } +.fa-tumblr { + --fa: "\f173"; } -.fa-vaadin:before { - content: "\f408"; } +.fa-vaadin { + --fa: "\f408"; } -.fa-quora:before { - content: "\f2c4"; } +.fa-quora { + --fa: "\f2c4"; } -.fa-square-x-twitter:before { - content: "\e61a"; } +.fa-square-x-twitter { + --fa: "\e61a"; } -.fa-reacteurope:before { - content: "\f75d"; } +.fa-reacteurope { + --fa: "\f75d"; } -.fa-medium:before { - content: "\f23a"; } +.fa-medium { + --fa: "\f23a"; } -.fa-medium-m:before { - content: "\f23a"; } +.fa-medium-m { + --fa: "\f23a"; } -.fa-amilia:before { - content: "\f36d"; } +.fa-amilia { + --fa: "\f36d"; } -.fa-mixcloud:before { - content: "\f289"; } +.fa-mixcloud { + --fa: "\f289"; } -.fa-flipboard:before { - content: "\f44d"; } +.fa-flipboard { + --fa: "\f44d"; } -.fa-viacoin:before { - content: "\f237"; } +.fa-viacoin { + --fa: "\f237"; } -.fa-critical-role:before { - content: "\f6c9"; } +.fa-critical-role { + --fa: "\f6c9"; } -.fa-sitrox:before { - content: "\e44a"; } +.fa-sitrox { + --fa: "\e44a"; } -.fa-discourse:before { - content: "\f393"; } +.fa-discourse { + --fa: "\f393"; } -.fa-joomla:before { - content: "\f1aa"; } +.fa-joomla { + --fa: "\f1aa"; } -.fa-mastodon:before { - content: "\f4f6"; } +.fa-mastodon { + --fa: "\f4f6"; } -.fa-airbnb:before { - content: "\f834"; } +.fa-airbnb { + --fa: "\f834"; } -.fa-wolf-pack-battalion:before { - content: "\f514"; } +.fa-wolf-pack-battalion { + --fa: "\f514"; } -.fa-buy-n-large:before { - content: "\f8a6"; } +.fa-buy-n-large { + --fa: "\f8a6"; } -.fa-gulp:before { - content: "\f3ae"; } +.fa-gulp { + --fa: "\f3ae"; } -.fa-creative-commons-sampling-plus:before { - content: "\f4f1"; } +.fa-creative-commons-sampling-plus { + --fa: "\f4f1"; } -.fa-strava:before { - content: "\f428"; } +.fa-strava { + --fa: "\f428"; } -.fa-ember:before { - content: "\f423"; } +.fa-ember { + --fa: "\f423"; } -.fa-canadian-maple-leaf:before { - content: "\f785"; } +.fa-canadian-maple-leaf { + --fa: "\f785"; } -.fa-teamspeak:before { - content: "\f4f9"; } +.fa-teamspeak { + --fa: "\f4f9"; } -.fa-pushed:before { - content: "\f3e1"; } +.fa-pushed { + --fa: "\f3e1"; } -.fa-wordpress-simple:before { - content: "\f411"; } +.fa-wordpress-simple { + --fa: "\f411"; } -.fa-nutritionix:before { - content: "\f3d6"; } +.fa-nutritionix { + --fa: "\f3d6"; } -.fa-wodu:before { - content: "\e088"; } +.fa-wodu { + --fa: "\e088"; } -.fa-google-pay:before { - content: "\e079"; } +.fa-google-pay { + --fa: "\e079"; } -.fa-intercom:before { - content: "\f7af"; } +.fa-intercom { + --fa: "\f7af"; } -.fa-zhihu:before { - content: "\f63f"; } +.fa-zhihu { + --fa: "\f63f"; } -.fa-korvue:before { - content: "\f42f"; } +.fa-korvue { + --fa: "\f42f"; } -.fa-pix:before { - content: "\e43a"; } +.fa-pix { + --fa: "\e43a"; } -.fa-steam-symbol:before { - content: "\f3f6"; } +.fa-steam-symbol { + --fa: "\f3f6"; } :root, :host { --fa-style-family-classic: 'Font Awesome 6 Free'; --fa-font-regular: normal 400 1em/1 'Font Awesome 6 Free'; } diff --git a/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/css/v4-shims.css b/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/css/v4-shims.css index 239be56..f6546f5 100644 --- a/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/css/v4-shims.css +++ b/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/css/v4-shims.css @@ -1,174 +1,174 @@ /*! - * Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com + * Font Awesome Free 6.7.1 by @fontawesome - https://fontawesome.com * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) * Copyright 2024 Fonticons, Inc. */ -.fa.fa-glass:before { - content: "\f000"; } +.fa.fa-glass { + --fa: "\f000"; } .fa.fa-envelope-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-envelope-o:before { - content: "\f0e0"; } +.fa.fa-envelope-o { + --fa: "\f0e0"; } .fa.fa-star-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-star-o:before { - content: "\f005"; } +.fa.fa-star-o { + --fa: "\f005"; } -.fa.fa-remove:before { - content: "\f00d"; } +.fa.fa-remove { + --fa: "\f00d"; } -.fa.fa-close:before { - content: "\f00d"; } +.fa.fa-close { + --fa: "\f00d"; } -.fa.fa-gear:before { - content: "\f013"; } +.fa.fa-gear { + --fa: "\f013"; } .fa.fa-trash-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-trash-o:before { - content: "\f2ed"; } +.fa.fa-trash-o { + --fa: "\f2ed"; } -.fa.fa-home:before { - content: "\f015"; } +.fa.fa-home { + --fa: "\f015"; } .fa.fa-file-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-o:before { - content: "\f15b"; } +.fa.fa-file-o { + --fa: "\f15b"; } .fa.fa-clock-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-clock-o:before { - content: "\f017"; } +.fa.fa-clock-o { + --fa: "\f017"; } .fa.fa-arrow-circle-o-down { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-arrow-circle-o-down:before { - content: "\f358"; } +.fa.fa-arrow-circle-o-down { + --fa: "\f358"; } .fa.fa-arrow-circle-o-up { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-arrow-circle-o-up:before { - content: "\f35b"; } +.fa.fa-arrow-circle-o-up { + --fa: "\f35b"; } .fa.fa-play-circle-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-play-circle-o:before { - content: "\f144"; } +.fa.fa-play-circle-o { + --fa: "\f144"; } -.fa.fa-repeat:before { - content: "\f01e"; } +.fa.fa-repeat { + --fa: "\f01e"; } -.fa.fa-rotate-right:before { - content: "\f01e"; } +.fa.fa-rotate-right { + --fa: "\f01e"; } -.fa.fa-refresh:before { - content: "\f021"; } +.fa.fa-refresh { + --fa: "\f021"; } .fa.fa-list-alt { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-list-alt:before { - content: "\f022"; } +.fa.fa-list-alt { + --fa: "\f022"; } -.fa.fa-dedent:before { - content: "\f03b"; } +.fa.fa-dedent { + --fa: "\f03b"; } -.fa.fa-video-camera:before { - content: "\f03d"; } +.fa.fa-video-camera { + --fa: "\f03d"; } .fa.fa-picture-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-picture-o:before { - content: "\f03e"; } +.fa.fa-picture-o { + --fa: "\f03e"; } .fa.fa-photo { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-photo:before { - content: "\f03e"; } +.fa.fa-photo { + --fa: "\f03e"; } .fa.fa-image { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-image:before { - content: "\f03e"; } +.fa.fa-image { + --fa: "\f03e"; } -.fa.fa-map-marker:before { - content: "\f3c5"; } +.fa.fa-map-marker { + --fa: "\f3c5"; } .fa.fa-pencil-square-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-pencil-square-o:before { - content: "\f044"; } +.fa.fa-pencil-square-o { + --fa: "\f044"; } .fa.fa-edit { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-edit:before { - content: "\f044"; } +.fa.fa-edit { + --fa: "\f044"; } -.fa.fa-share-square-o:before { - content: "\f14d"; } +.fa.fa-share-square-o { + --fa: "\f14d"; } .fa.fa-check-square-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-check-square-o:before { - content: "\f14a"; } +.fa.fa-check-square-o { + --fa: "\f14a"; } -.fa.fa-arrows:before { - content: "\f0b2"; } +.fa.fa-arrows { + --fa: "\f0b2"; } .fa.fa-times-circle-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-times-circle-o:before { - content: "\f057"; } +.fa.fa-times-circle-o { + --fa: "\f057"; } .fa.fa-check-circle-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-check-circle-o:before { - content: "\f058"; } +.fa.fa-check-circle-o { + --fa: "\f058"; } -.fa.fa-mail-forward:before { - content: "\f064"; } +.fa.fa-mail-forward { + --fa: "\f064"; } -.fa.fa-expand:before { - content: "\f424"; } +.fa.fa-expand { + --fa: "\f424"; } -.fa.fa-compress:before { - content: "\f422"; } +.fa.fa-compress { + --fa: "\f422"; } .fa.fa-eye { font-family: 'Font Awesome 6 Free'; @@ -178,108 +178,108 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-warning:before { - content: "\f071"; } +.fa.fa-warning { + --fa: "\f071"; } -.fa.fa-calendar:before { - content: "\f073"; } +.fa.fa-calendar { + --fa: "\f073"; } -.fa.fa-arrows-v:before { - content: "\f338"; } +.fa.fa-arrows-v { + --fa: "\f338"; } -.fa.fa-arrows-h:before { - content: "\f337"; } +.fa.fa-arrows-h { + --fa: "\f337"; } -.fa.fa-bar-chart:before { - content: "\e0e3"; } +.fa.fa-bar-chart { + --fa: "\e0e3"; } -.fa.fa-bar-chart-o:before { - content: "\e0e3"; } +.fa.fa-bar-chart-o { + --fa: "\e0e3"; } .fa.fa-twitter-square { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-twitter-square:before { - content: "\f081"; } +.fa.fa-twitter-square { + --fa: "\f081"; } .fa.fa-facebook-square { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-facebook-square:before { - content: "\f082"; } +.fa.fa-facebook-square { + --fa: "\f082"; } -.fa.fa-gears:before { - content: "\f085"; } +.fa.fa-gears { + --fa: "\f085"; } .fa.fa-thumbs-o-up { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-thumbs-o-up:before { - content: "\f164"; } +.fa.fa-thumbs-o-up { + --fa: "\f164"; } .fa.fa-thumbs-o-down { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-thumbs-o-down:before { - content: "\f165"; } +.fa.fa-thumbs-o-down { + --fa: "\f165"; } .fa.fa-heart-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-heart-o:before { - content: "\f004"; } +.fa.fa-heart-o { + --fa: "\f004"; } -.fa.fa-sign-out:before { - content: "\f2f5"; } +.fa.fa-sign-out { + --fa: "\f2f5"; } .fa.fa-linkedin-square { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-linkedin-square:before { - content: "\f08c"; } +.fa.fa-linkedin-square { + --fa: "\f08c"; } -.fa.fa-thumb-tack:before { - content: "\f08d"; } +.fa.fa-thumb-tack { + --fa: "\f08d"; } -.fa.fa-external-link:before { - content: "\f35d"; } +.fa.fa-external-link { + --fa: "\f35d"; } -.fa.fa-sign-in:before { - content: "\f2f6"; } +.fa.fa-sign-in { + --fa: "\f2f6"; } .fa.fa-github-square { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-github-square:before { - content: "\f092"; } +.fa.fa-github-square { + --fa: "\f092"; } .fa.fa-lemon-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-lemon-o:before { - content: "\f094"; } +.fa.fa-lemon-o { + --fa: "\f094"; } .fa.fa-square-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-square-o:before { - content: "\f0c8"; } +.fa.fa-square-o { + --fa: "\f0c8"; } .fa.fa-bookmark-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-bookmark-o:before { - content: "\f02e"; } +.fa.fa-bookmark-o { + --fa: "\f02e"; } .fa.fa-twitter { font-family: 'Font Awesome 6 Brands'; @@ -289,15 +289,15 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-facebook:before { - content: "\f39e"; } +.fa.fa-facebook { + --fa: "\f39e"; } .fa.fa-facebook-f { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-facebook-f:before { - content: "\f39e"; } +.fa.fa-facebook-f { + --fa: "\f39e"; } .fa.fa-github { font-family: 'Font Awesome 6 Brands'; @@ -307,91 +307,91 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-feed:before { - content: "\f09e"; } +.fa.fa-feed { + --fa: "\f09e"; } .fa.fa-hdd-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hdd-o:before { - content: "\f0a0"; } +.fa.fa-hdd-o { + --fa: "\f0a0"; } .fa.fa-hand-o-right { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-o-right:before { - content: "\f0a4"; } +.fa.fa-hand-o-right { + --fa: "\f0a4"; } .fa.fa-hand-o-left { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-o-left:before { - content: "\f0a5"; } +.fa.fa-hand-o-left { + --fa: "\f0a5"; } .fa.fa-hand-o-up { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-o-up:before { - content: "\f0a6"; } +.fa.fa-hand-o-up { + --fa: "\f0a6"; } .fa.fa-hand-o-down { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-o-down:before { - content: "\f0a7"; } +.fa.fa-hand-o-down { + --fa: "\f0a7"; } -.fa.fa-globe:before { - content: "\f57d"; } +.fa.fa-globe { + --fa: "\f57d"; } -.fa.fa-tasks:before { - content: "\f828"; } +.fa.fa-tasks { + --fa: "\f828"; } -.fa.fa-arrows-alt:before { - content: "\f31e"; } +.fa.fa-arrows-alt { + --fa: "\f31e"; } -.fa.fa-group:before { - content: "\f0c0"; } +.fa.fa-group { + --fa: "\f0c0"; } -.fa.fa-chain:before { - content: "\f0c1"; } +.fa.fa-chain { + --fa: "\f0c1"; } -.fa.fa-cut:before { - content: "\f0c4"; } +.fa.fa-cut { + --fa: "\f0c4"; } .fa.fa-files-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-files-o:before { - content: "\f0c5"; } +.fa.fa-files-o { + --fa: "\f0c5"; } .fa.fa-floppy-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-floppy-o:before { - content: "\f0c7"; } +.fa.fa-floppy-o { + --fa: "\f0c7"; } .fa.fa-save { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-save:before { - content: "\f0c7"; } +.fa.fa-save { + --fa: "\f0c7"; } -.fa.fa-navicon:before { - content: "\f0c9"; } +.fa.fa-navicon { + --fa: "\f0c9"; } -.fa.fa-reorder:before { - content: "\f0c9"; } +.fa.fa-reorder { + --fa: "\f0c9"; } -.fa.fa-magic:before { - content: "\e2ca"; } +.fa.fa-magic { + --fa: "\e2ca"; } .fa.fa-pinterest { font-family: 'Font Awesome 6 Brands'; @@ -401,139 +401,139 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-pinterest-square:before { - content: "\f0d3"; } +.fa.fa-pinterest-square { + --fa: "\f0d3"; } .fa.fa-google-plus-square { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-google-plus-square:before { - content: "\f0d4"; } +.fa.fa-google-plus-square { + --fa: "\f0d4"; } .fa.fa-google-plus { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-google-plus:before { - content: "\f0d5"; } +.fa.fa-google-plus { + --fa: "\f0d5"; } -.fa.fa-money:before { - content: "\f3d1"; } +.fa.fa-money { + --fa: "\f3d1"; } -.fa.fa-unsorted:before { - content: "\f0dc"; } +.fa.fa-unsorted { + --fa: "\f0dc"; } -.fa.fa-sort-desc:before { - content: "\f0dd"; } +.fa.fa-sort-desc { + --fa: "\f0dd"; } -.fa.fa-sort-asc:before { - content: "\f0de"; } +.fa.fa-sort-asc { + --fa: "\f0de"; } .fa.fa-linkedin { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-linkedin:before { - content: "\f0e1"; } +.fa.fa-linkedin { + --fa: "\f0e1"; } -.fa.fa-rotate-left:before { - content: "\f0e2"; } +.fa.fa-rotate-left { + --fa: "\f0e2"; } -.fa.fa-legal:before { - content: "\f0e3"; } +.fa.fa-legal { + --fa: "\f0e3"; } -.fa.fa-tachometer:before { - content: "\f625"; } +.fa.fa-tachometer { + --fa: "\f625"; } -.fa.fa-dashboard:before { - content: "\f625"; } +.fa.fa-dashboard { + --fa: "\f625"; } .fa.fa-comment-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-comment-o:before { - content: "\f075"; } +.fa.fa-comment-o { + --fa: "\f075"; } .fa.fa-comments-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-comments-o:before { - content: "\f086"; } +.fa.fa-comments-o { + --fa: "\f086"; } -.fa.fa-flash:before { - content: "\f0e7"; } +.fa.fa-flash { + --fa: "\f0e7"; } -.fa.fa-clipboard:before { - content: "\f0ea"; } +.fa.fa-clipboard { + --fa: "\f0ea"; } .fa.fa-lightbulb-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-lightbulb-o:before { - content: "\f0eb"; } +.fa.fa-lightbulb-o { + --fa: "\f0eb"; } -.fa.fa-exchange:before { - content: "\f362"; } +.fa.fa-exchange { + --fa: "\f362"; } -.fa.fa-cloud-download:before { - content: "\f0ed"; } +.fa.fa-cloud-download { + --fa: "\f0ed"; } -.fa.fa-cloud-upload:before { - content: "\f0ee"; } +.fa.fa-cloud-upload { + --fa: "\f0ee"; } .fa.fa-bell-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-bell-o:before { - content: "\f0f3"; } +.fa.fa-bell-o { + --fa: "\f0f3"; } -.fa.fa-cutlery:before { - content: "\f2e7"; } +.fa.fa-cutlery { + --fa: "\f2e7"; } .fa.fa-file-text-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-text-o:before { - content: "\f15c"; } +.fa.fa-file-text-o { + --fa: "\f15c"; } .fa.fa-building-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-building-o:before { - content: "\f1ad"; } +.fa.fa-building-o { + --fa: "\f1ad"; } .fa.fa-hospital-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hospital-o:before { - content: "\f0f8"; } +.fa.fa-hospital-o { + --fa: "\f0f8"; } -.fa.fa-tablet:before { - content: "\f3fa"; } +.fa.fa-tablet { + --fa: "\f3fa"; } -.fa.fa-mobile:before { - content: "\f3cd"; } +.fa.fa-mobile { + --fa: "\f3cd"; } -.fa.fa-mobile-phone:before { - content: "\f3cd"; } +.fa.fa-mobile-phone { + --fa: "\f3cd"; } .fa.fa-circle-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-circle-o:before { - content: "\f111"; } +.fa.fa-circle-o { + --fa: "\f111"; } -.fa.fa-mail-reply:before { - content: "\f3e5"; } +.fa.fa-mail-reply { + --fa: "\f3e5"; } .fa.fa-github-alt { font-family: 'Font Awesome 6 Brands'; @@ -543,90 +543,90 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-folder-o:before { - content: "\f07b"; } +.fa.fa-folder-o { + --fa: "\f07b"; } .fa.fa-folder-open-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-folder-open-o:before { - content: "\f07c"; } +.fa.fa-folder-open-o { + --fa: "\f07c"; } .fa.fa-smile-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-smile-o:before { - content: "\f118"; } +.fa.fa-smile-o { + --fa: "\f118"; } .fa.fa-frown-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-frown-o:before { - content: "\f119"; } +.fa.fa-frown-o { + --fa: "\f119"; } .fa.fa-meh-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-meh-o:before { - content: "\f11a"; } +.fa.fa-meh-o { + --fa: "\f11a"; } .fa.fa-keyboard-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-keyboard-o:before { - content: "\f11c"; } +.fa.fa-keyboard-o { + --fa: "\f11c"; } .fa.fa-flag-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-flag-o:before { - content: "\f024"; } +.fa.fa-flag-o { + --fa: "\f024"; } -.fa.fa-mail-reply-all:before { - content: "\f122"; } +.fa.fa-mail-reply-all { + --fa: "\f122"; } .fa.fa-star-half-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-star-half-o:before { - content: "\f5c0"; } +.fa.fa-star-half-o { + --fa: "\f5c0"; } .fa.fa-star-half-empty { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-star-half-empty:before { - content: "\f5c0"; } +.fa.fa-star-half-empty { + --fa: "\f5c0"; } .fa.fa-star-half-full { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-star-half-full:before { - content: "\f5c0"; } +.fa.fa-star-half-full { + --fa: "\f5c0"; } -.fa.fa-code-fork:before { - content: "\f126"; } +.fa.fa-code-fork { + --fa: "\f126"; } -.fa.fa-chain-broken:before { - content: "\f127"; } +.fa.fa-chain-broken { + --fa: "\f127"; } -.fa.fa-unlink:before { - content: "\f127"; } +.fa.fa-unlink { + --fa: "\f127"; } .fa.fa-calendar-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-calendar-o:before { - content: "\f133"; } +.fa.fa-calendar-o { + --fa: "\f133"; } .fa.fa-maxcdn { font-family: 'Font Awesome 6 Brands'; @@ -640,27 +640,27 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-unlock-alt:before { - content: "\f09c"; } +.fa.fa-unlock-alt { + --fa: "\f09c"; } .fa.fa-minus-square-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-minus-square-o:before { - content: "\f146"; } +.fa.fa-minus-square-o { + --fa: "\f146"; } -.fa.fa-level-up:before { - content: "\f3bf"; } +.fa.fa-level-up { + --fa: "\f3bf"; } -.fa.fa-level-down:before { - content: "\f3be"; } +.fa.fa-level-down { + --fa: "\f3be"; } -.fa.fa-pencil-square:before { - content: "\f14b"; } +.fa.fa-pencil-square { + --fa: "\f14b"; } -.fa.fa-external-link-square:before { - content: "\f360"; } +.fa.fa-external-link-square { + --fa: "\f360"; } .fa.fa-compass { font-family: 'Font Awesome 6 Free'; @@ -670,91 +670,91 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-caret-square-o-down:before { - content: "\f150"; } +.fa.fa-caret-square-o-down { + --fa: "\f150"; } .fa.fa-toggle-down { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-toggle-down:before { - content: "\f150"; } +.fa.fa-toggle-down { + --fa: "\f150"; } .fa.fa-caret-square-o-up { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-caret-square-o-up:before { - content: "\f151"; } +.fa.fa-caret-square-o-up { + --fa: "\f151"; } .fa.fa-toggle-up { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-toggle-up:before { - content: "\f151"; } +.fa.fa-toggle-up { + --fa: "\f151"; } .fa.fa-caret-square-o-right { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-caret-square-o-right:before { - content: "\f152"; } +.fa.fa-caret-square-o-right { + --fa: "\f152"; } .fa.fa-toggle-right { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-toggle-right:before { - content: "\f152"; } +.fa.fa-toggle-right { + --fa: "\f152"; } -.fa.fa-eur:before { - content: "\f153"; } +.fa.fa-eur { + --fa: "\f153"; } -.fa.fa-euro:before { - content: "\f153"; } +.fa.fa-euro { + --fa: "\f153"; } -.fa.fa-gbp:before { - content: "\f154"; } +.fa.fa-gbp { + --fa: "\f154"; } -.fa.fa-usd:before { - content: "\24"; } +.fa.fa-usd { + --fa: "\24"; } -.fa.fa-dollar:before { - content: "\24"; } +.fa.fa-dollar { + --fa: "\24"; } -.fa.fa-inr:before { - content: "\e1bc"; } +.fa.fa-inr { + --fa: "\e1bc"; } -.fa.fa-rupee:before { - content: "\e1bc"; } +.fa.fa-rupee { + --fa: "\e1bc"; } -.fa.fa-jpy:before { - content: "\f157"; } +.fa.fa-jpy { + --fa: "\f157"; } -.fa.fa-cny:before { - content: "\f157"; } +.fa.fa-cny { + --fa: "\f157"; } -.fa.fa-rmb:before { - content: "\f157"; } +.fa.fa-rmb { + --fa: "\f157"; } -.fa.fa-yen:before { - content: "\f157"; } +.fa.fa-yen { + --fa: "\f157"; } -.fa.fa-rub:before { - content: "\f158"; } +.fa.fa-rub { + --fa: "\f158"; } -.fa.fa-ruble:before { - content: "\f158"; } +.fa.fa-ruble { + --fa: "\f158"; } -.fa.fa-rouble:before { - content: "\f158"; } +.fa.fa-rouble { + --fa: "\f158"; } -.fa.fa-krw:before { - content: "\f159"; } +.fa.fa-krw { + --fa: "\f159"; } -.fa.fa-won:before { - content: "\f159"; } +.fa.fa-won { + --fa: "\f159"; } .fa.fa-btc { font-family: 'Font Awesome 6 Brands'; @@ -764,36 +764,36 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-bitcoin:before { - content: "\f15a"; } +.fa.fa-bitcoin { + --fa: "\f15a"; } -.fa.fa-file-text:before { - content: "\f15c"; } +.fa.fa-file-text { + --fa: "\f15c"; } -.fa.fa-sort-alpha-asc:before { - content: "\f15d"; } +.fa.fa-sort-alpha-asc { + --fa: "\f15d"; } -.fa.fa-sort-alpha-desc:before { - content: "\f881"; } +.fa.fa-sort-alpha-desc { + --fa: "\f881"; } -.fa.fa-sort-amount-asc:before { - content: "\f884"; } +.fa.fa-sort-amount-asc { + --fa: "\f884"; } -.fa.fa-sort-amount-desc:before { - content: "\f160"; } +.fa.fa-sort-amount-desc { + --fa: "\f160"; } -.fa.fa-sort-numeric-asc:before { - content: "\f162"; } +.fa.fa-sort-numeric-asc { + --fa: "\f162"; } -.fa.fa-sort-numeric-desc:before { - content: "\f886"; } +.fa.fa-sort-numeric-desc { + --fa: "\f886"; } .fa.fa-youtube-square { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-youtube-square:before { - content: "\f431"; } +.fa.fa-youtube-square { + --fa: "\f431"; } .fa.fa-youtube { font-family: 'Font Awesome 6 Brands'; @@ -807,15 +807,15 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-xing-square:before { - content: "\f169"; } +.fa.fa-xing-square { + --fa: "\f169"; } .fa.fa-youtube-play { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-youtube-play:before { - content: "\f167"; } +.fa.fa-youtube-play { + --fa: "\f167"; } .fa.fa-dropbox { font-family: 'Font Awesome 6 Brands'; @@ -845,8 +845,8 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-bitbucket-square:before { - content: "\f171"; } +.fa.fa-bitbucket-square { + --fa: "\f171"; } .fa.fa-tumblr { font-family: 'Font Awesome 6 Brands'; @@ -856,20 +856,20 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-tumblr-square:before { - content: "\f174"; } +.fa.fa-tumblr-square { + --fa: "\f174"; } -.fa.fa-long-arrow-down:before { - content: "\f309"; } +.fa.fa-long-arrow-down { + --fa: "\f309"; } -.fa.fa-long-arrow-up:before { - content: "\f30c"; } +.fa.fa-long-arrow-up { + --fa: "\f30c"; } -.fa.fa-long-arrow-left:before { - content: "\f30a"; } +.fa.fa-long-arrow-left { + --fa: "\f30a"; } -.fa.fa-long-arrow-right:before { - content: "\f30b"; } +.fa.fa-long-arrow-right { + --fa: "\f30b"; } .fa.fa-apple { font-family: 'Font Awesome 6 Brands'; @@ -911,22 +911,22 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-gittip:before { - content: "\f184"; } +.fa.fa-gittip { + --fa: "\f184"; } .fa.fa-sun-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-sun-o:before { - content: "\f185"; } +.fa.fa-sun-o { + --fa: "\f185"; } .fa.fa-moon-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-moon-o:before { - content: "\f186"; } +.fa.fa-moon-o { + --fa: "\f186"; } .fa.fa-vk { font-family: 'Font Awesome 6 Brands'; @@ -952,56 +952,56 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-arrow-circle-o-right:before { - content: "\f35a"; } +.fa.fa-arrow-circle-o-right { + --fa: "\f35a"; } .fa.fa-arrow-circle-o-left { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-arrow-circle-o-left:before { - content: "\f359"; } +.fa.fa-arrow-circle-o-left { + --fa: "\f359"; } .fa.fa-caret-square-o-left { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-caret-square-o-left:before { - content: "\f191"; } +.fa.fa-caret-square-o-left { + --fa: "\f191"; } .fa.fa-toggle-left { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-toggle-left:before { - content: "\f191"; } +.fa.fa-toggle-left { + --fa: "\f191"; } .fa.fa-dot-circle-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-dot-circle-o:before { - content: "\f192"; } +.fa.fa-dot-circle-o { + --fa: "\f192"; } .fa.fa-vimeo-square { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-vimeo-square:before { - content: "\f194"; } +.fa.fa-vimeo-square { + --fa: "\f194"; } -.fa.fa-try:before { - content: "\e2bb"; } +.fa.fa-try { + --fa: "\e2bb"; } -.fa.fa-turkish-lira:before { - content: "\e2bb"; } +.fa.fa-turkish-lira { + --fa: "\e2bb"; } .fa.fa-plus-square-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-plus-square-o:before { - content: "\f0fe"; } +.fa.fa-plus-square-o { + --fa: "\f0fe"; } .fa.fa-slack { font-family: 'Font Awesome 6 Brands'; @@ -1015,14 +1015,14 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-institution:before { - content: "\f19c"; } +.fa.fa-institution { + --fa: "\f19c"; } -.fa.fa-bank:before { - content: "\f19c"; } +.fa.fa-bank { + --fa: "\f19c"; } -.fa.fa-mortar-board:before { - content: "\f19d"; } +.fa.fa-mortar-board { + --fa: "\f19d"; } .fa.fa-yahoo { font-family: 'Font Awesome 6 Brands'; @@ -1040,8 +1040,8 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-reddit-square:before { - content: "\f1a2"; } +.fa.fa-reddit-square { + --fa: "\f1a2"; } .fa.fa-stumbleupon-circle { font-family: 'Font Awesome 6 Brands'; @@ -1083,8 +1083,8 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-behance-square:before { - content: "\f1b5"; } +.fa.fa-behance-square { + --fa: "\f1b5"; } .fa.fa-steam { font-family: 'Font Awesome 6 Brands'; @@ -1094,14 +1094,14 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-steam-square:before { - content: "\f1b7"; } +.fa.fa-steam-square { + --fa: "\f1b7"; } -.fa.fa-automobile:before { - content: "\f1b9"; } +.fa.fa-automobile { + --fa: "\f1b9"; } -.fa.fa-cab:before { - content: "\f1ba"; } +.fa.fa-cab { + --fa: "\f1ba"; } .fa.fa-spotify { font-family: 'Font Awesome 6 Brands'; @@ -1119,99 +1119,99 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-pdf-o:before { - content: "\f1c1"; } +.fa.fa-file-pdf-o { + --fa: "\f1c1"; } .fa.fa-file-word-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-word-o:before { - content: "\f1c2"; } +.fa.fa-file-word-o { + --fa: "\f1c2"; } .fa.fa-file-excel-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-excel-o:before { - content: "\f1c3"; } +.fa.fa-file-excel-o { + --fa: "\f1c3"; } .fa.fa-file-powerpoint-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-powerpoint-o:before { - content: "\f1c4"; } +.fa.fa-file-powerpoint-o { + --fa: "\f1c4"; } .fa.fa-file-image-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-image-o:before { - content: "\f1c5"; } +.fa.fa-file-image-o { + --fa: "\f1c5"; } .fa.fa-file-photo-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-photo-o:before { - content: "\f1c5"; } +.fa.fa-file-photo-o { + --fa: "\f1c5"; } .fa.fa-file-picture-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-picture-o:before { - content: "\f1c5"; } +.fa.fa-file-picture-o { + --fa: "\f1c5"; } .fa.fa-file-archive-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-archive-o:before { - content: "\f1c6"; } +.fa.fa-file-archive-o { + --fa: "\f1c6"; } .fa.fa-file-zip-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-zip-o:before { - content: "\f1c6"; } +.fa.fa-file-zip-o { + --fa: "\f1c6"; } .fa.fa-file-audio-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-audio-o:before { - content: "\f1c7"; } +.fa.fa-file-audio-o { + --fa: "\f1c7"; } .fa.fa-file-sound-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-sound-o:before { - content: "\f1c7"; } +.fa.fa-file-sound-o { + --fa: "\f1c7"; } .fa.fa-file-video-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-video-o:before { - content: "\f1c8"; } +.fa.fa-file-video-o { + --fa: "\f1c8"; } .fa.fa-file-movie-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-movie-o:before { - content: "\f1c8"; } +.fa.fa-file-movie-o { + --fa: "\f1c8"; } .fa.fa-file-code-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-file-code-o:before { - content: "\f1c9"; } +.fa.fa-file-code-o { + --fa: "\f1c9"; } .fa.fa-vine { font-family: 'Font Awesome 6 Brands'; @@ -1225,20 +1225,20 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-life-bouy:before { - content: "\f1cd"; } +.fa.fa-life-bouy { + --fa: "\f1cd"; } -.fa.fa-life-buoy:before { - content: "\f1cd"; } +.fa.fa-life-buoy { + --fa: "\f1cd"; } -.fa.fa-life-saver:before { - content: "\f1cd"; } +.fa.fa-life-saver { + --fa: "\f1cd"; } -.fa.fa-support:before { - content: "\f1cd"; } +.fa.fa-support { + --fa: "\f1cd"; } -.fa.fa-circle-o-notch:before { - content: "\f1ce"; } +.fa.fa-circle-o-notch { + --fa: "\f1ce"; } .fa.fa-rebel { font-family: 'Font Awesome 6 Brands'; @@ -1248,15 +1248,15 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-ra:before { - content: "\f1d0"; } +.fa.fa-ra { + --fa: "\f1d0"; } .fa.fa-resistance { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-resistance:before { - content: "\f1d0"; } +.fa.fa-resistance { + --fa: "\f1d0"; } .fa.fa-empire { font-family: 'Font Awesome 6 Brands'; @@ -1266,15 +1266,15 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-ge:before { - content: "\f1d1"; } +.fa.fa-ge { + --fa: "\f1d1"; } .fa.fa-git-square { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-git-square:before { - content: "\f1d2"; } +.fa.fa-git-square { + --fa: "\f1d2"; } .fa.fa-git { font-family: 'Font Awesome 6 Brands'; @@ -1288,15 +1288,15 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-y-combinator-square:before { - content: "\f1d4"; } +.fa.fa-y-combinator-square { + --fa: "\f1d4"; } .fa.fa-yc-square { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-yc-square:before { - content: "\f1d4"; } +.fa.fa-yc-square { + --fa: "\f1d4"; } .fa.fa-tencent-weibo { font-family: 'Font Awesome 6 Brands'; @@ -1314,49 +1314,49 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-wechat:before { - content: "\f1d7"; } +.fa.fa-wechat { + --fa: "\f1d7"; } -.fa.fa-send:before { - content: "\f1d8"; } +.fa.fa-send { + --fa: "\f1d8"; } .fa.fa-paper-plane-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-paper-plane-o:before { - content: "\f1d8"; } +.fa.fa-paper-plane-o { + --fa: "\f1d8"; } .fa.fa-send-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-send-o:before { - content: "\f1d8"; } +.fa.fa-send-o { + --fa: "\f1d8"; } .fa.fa-circle-thin { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-circle-thin:before { - content: "\f111"; } +.fa.fa-circle-thin { + --fa: "\f111"; } -.fa.fa-header:before { - content: "\f1dc"; } +.fa.fa-header { + --fa: "\f1dc"; } .fa.fa-futbol-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-futbol-o:before { - content: "\f1e3"; } +.fa.fa-futbol-o { + --fa: "\f1e3"; } .fa.fa-soccer-ball-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-soccer-ball-o:before { - content: "\f1e3"; } +.fa.fa-soccer-ball-o { + --fa: "\f1e3"; } .fa.fa-slideshare { font-family: 'Font Awesome 6 Brands'; @@ -1374,8 +1374,8 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-newspaper-o:before { - content: "\f1ea"; } +.fa.fa-newspaper-o { + --fa: "\f1ea"; } .fa.fa-paypal { font-family: 'Font Awesome 6 Brands'; @@ -1413,27 +1413,27 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-bell-slash-o:before { - content: "\f1f6"; } +.fa.fa-bell-slash-o { + --fa: "\f1f6"; } -.fa.fa-trash:before { - content: "\f2ed"; } +.fa.fa-trash { + --fa: "\f2ed"; } .fa.fa-copyright { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-eyedropper:before { - content: "\f1fb"; } +.fa.fa-eyedropper { + --fa: "\f1fb"; } -.fa.fa-area-chart:before { - content: "\f1fe"; } +.fa.fa-area-chart { + --fa: "\f1fe"; } -.fa.fa-pie-chart:before { - content: "\f200"; } +.fa.fa-pie-chart { + --fa: "\f200"; } -.fa.fa-line-chart:before { - content: "\f201"; } +.fa.fa-line-chart { + --fa: "\f201"; } .fa.fa-lastfm { font-family: 'Font Awesome 6 Brands'; @@ -1443,8 +1443,8 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-lastfm-square:before { - content: "\f203"; } +.fa.fa-lastfm-square { + --fa: "\f203"; } .fa.fa-ioxhost { font-family: 'Font Awesome 6 Brands'; @@ -1458,17 +1458,17 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-cc:before { - content: "\f20a"; } +.fa.fa-cc { + --fa: "\f20a"; } -.fa.fa-ils:before { - content: "\f20b"; } +.fa.fa-ils { + --fa: "\f20b"; } -.fa.fa-shekel:before { - content: "\f20b"; } +.fa.fa-shekel { + --fa: "\f20b"; } -.fa.fa-sheqel:before { - content: "\f20b"; } +.fa.fa-sheqel { + --fa: "\f20b"; } .fa.fa-buysellads { font-family: 'Font Awesome 6 Brands'; @@ -1510,24 +1510,24 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-diamond:before { - content: "\f3a5"; } +.fa.fa-diamond { + --fa: "\f3a5"; } -.fa.fa-transgender:before { - content: "\f224"; } +.fa.fa-transgender { + --fa: "\f224"; } -.fa.fa-intersex:before { - content: "\f224"; } +.fa.fa-intersex { + --fa: "\f224"; } -.fa.fa-transgender-alt:before { - content: "\f225"; } +.fa.fa-transgender-alt { + --fa: "\f225"; } .fa.fa-facebook-official { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-facebook-official:before { - content: "\f09a"; } +.fa.fa-facebook-official { + --fa: "\f09a"; } .fa.fa-pinterest-p { font-family: 'Font Awesome 6 Brands'; @@ -1537,8 +1537,8 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-hotel:before { - content: "\f236"; } +.fa.fa-hotel { + --fa: "\f236"; } .fa.fa-viacoin { font-family: 'Font Awesome 6 Brands'; @@ -1556,8 +1556,8 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-yc:before { - content: "\f23b"; } +.fa.fa-yc { + --fa: "\f23b"; } .fa.fa-optin-monster { font-family: 'Font Awesome 6 Brands'; @@ -1571,23 +1571,23 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-battery-4:before { - content: "\f240"; } +.fa.fa-battery-4 { + --fa: "\f240"; } -.fa.fa-battery:before { - content: "\f240"; } +.fa.fa-battery { + --fa: "\f240"; } -.fa.fa-battery-3:before { - content: "\f241"; } +.fa.fa-battery-3 { + --fa: "\f241"; } -.fa.fa-battery-2:before { - content: "\f242"; } +.fa.fa-battery-2 { + --fa: "\f242"; } -.fa.fa-battery-1:before { - content: "\f243"; } +.fa.fa-battery-1 { + --fa: "\f243"; } -.fa.fa-battery-0:before { - content: "\f244"; } +.fa.fa-battery-0 { + --fa: "\f244"; } .fa.fa-object-group { font-family: 'Font Awesome 6 Free'; @@ -1601,8 +1601,8 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-sticky-note-o:before { - content: "\f249"; } +.fa.fa-sticky-note-o { + --fa: "\f249"; } .fa.fa-cc-jcb { font-family: 'Font Awesome 6 Brands'; @@ -1616,80 +1616,80 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hourglass-o:before { - content: "\f254"; } +.fa.fa-hourglass-o { + --fa: "\f254"; } -.fa.fa-hourglass-1:before { - content: "\f251"; } +.fa.fa-hourglass-1 { + --fa: "\f251"; } -.fa.fa-hourglass-2:before { - content: "\f252"; } +.fa.fa-hourglass-2 { + --fa: "\f252"; } -.fa.fa-hourglass-3:before { - content: "\f253"; } +.fa.fa-hourglass-3 { + --fa: "\f253"; } .fa.fa-hand-rock-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-rock-o:before { - content: "\f255"; } +.fa.fa-hand-rock-o { + --fa: "\f255"; } .fa.fa-hand-grab-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-grab-o:before { - content: "\f255"; } +.fa.fa-hand-grab-o { + --fa: "\f255"; } .fa.fa-hand-paper-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-paper-o:before { - content: "\f256"; } +.fa.fa-hand-paper-o { + --fa: "\f256"; } .fa.fa-hand-stop-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-stop-o:before { - content: "\f256"; } +.fa.fa-hand-stop-o { + --fa: "\f256"; } .fa.fa-hand-scissors-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-scissors-o:before { - content: "\f257"; } +.fa.fa-hand-scissors-o { + --fa: "\f257"; } .fa.fa-hand-lizard-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-lizard-o:before { - content: "\f258"; } +.fa.fa-hand-lizard-o { + --fa: "\f258"; } .fa.fa-hand-spock-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-spock-o:before { - content: "\f259"; } +.fa.fa-hand-spock-o { + --fa: "\f259"; } .fa.fa-hand-pointer-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-pointer-o:before { - content: "\f25a"; } +.fa.fa-hand-pointer-o { + --fa: "\f25a"; } .fa.fa-hand-peace-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-hand-peace-o:before { - content: "\f25b"; } +.fa.fa-hand-peace-o { + --fa: "\f25b"; } .fa.fa-registered { font-family: 'Font Awesome 6 Free'; @@ -1715,8 +1715,8 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-odnoklassniki-square:before { - content: "\f264"; } +.fa.fa-odnoklassniki-square { + --fa: "\f264"; } .fa.fa-get-pocket { font-family: 'Font Awesome 6 Brands'; @@ -1746,8 +1746,8 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-television:before { - content: "\f26c"; } +.fa.fa-television { + --fa: "\f26c"; } .fa.fa-contao { font-family: 'Font Awesome 6 Brands'; @@ -1765,46 +1765,46 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-calendar-plus-o:before { - content: "\f271"; } +.fa.fa-calendar-plus-o { + --fa: "\f271"; } .fa.fa-calendar-minus-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-calendar-minus-o:before { - content: "\f272"; } +.fa.fa-calendar-minus-o { + --fa: "\f272"; } .fa.fa-calendar-times-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-calendar-times-o:before { - content: "\f273"; } +.fa.fa-calendar-times-o { + --fa: "\f273"; } .fa.fa-calendar-check-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-calendar-check-o:before { - content: "\f274"; } +.fa.fa-calendar-check-o { + --fa: "\f274"; } .fa.fa-map-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-map-o:before { - content: "\f279"; } +.fa.fa-map-o { + --fa: "\f279"; } -.fa.fa-commenting:before { - content: "\f4ad"; } +.fa.fa-commenting { + --fa: "\f4ad"; } .fa.fa-commenting-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-commenting-o:before { - content: "\f4ad"; } +.fa.fa-commenting-o { + --fa: "\f4ad"; } .fa.fa-houzz { font-family: 'Font Awesome 6 Brands'; @@ -1814,8 +1814,8 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-vimeo:before { - content: "\f27d"; } +.fa.fa-vimeo { + --fa: "\f27d"; } .fa.fa-black-tie { font-family: 'Font Awesome 6 Brands'; @@ -1833,8 +1833,8 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-credit-card-alt:before { - content: "\f09d"; } +.fa.fa-credit-card-alt { + --fa: "\f09d"; } .fa.fa-codiepie { font-family: 'Font Awesome 6 Brands'; @@ -1868,15 +1868,15 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-pause-circle-o:before { - content: "\f28b"; } +.fa.fa-pause-circle-o { + --fa: "\f28b"; } .fa.fa-stop-circle-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-stop-circle-o:before { - content: "\f28d"; } +.fa.fa-stop-circle-o { + --fa: "\f28d"; } .fa.fa-bluetooth { font-family: 'Font Awesome 6 Brands'; @@ -1906,27 +1906,27 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-wheelchair-alt:before { - content: "\f368"; } +.fa.fa-wheelchair-alt { + --fa: "\f368"; } .fa.fa-question-circle-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-question-circle-o:before { - content: "\f059"; } +.fa.fa-question-circle-o { + --fa: "\f059"; } -.fa.fa-volume-control-phone:before { - content: "\f2a0"; } +.fa.fa-volume-control-phone { + --fa: "\f2a0"; } -.fa.fa-asl-interpreting:before { - content: "\f2a3"; } +.fa.fa-asl-interpreting { + --fa: "\f2a3"; } -.fa.fa-deafness:before { - content: "\f2a4"; } +.fa.fa-deafness { + --fa: "\f2a4"; } -.fa.fa-hard-of-hearing:before { - content: "\f2a4"; } +.fa.fa-hard-of-hearing { + --fa: "\f2a4"; } .fa.fa-glide { font-family: 'Font Awesome 6 Brands'; @@ -1936,8 +1936,8 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-signing:before { - content: "\f2a7"; } +.fa.fa-signing { + --fa: "\f2a7"; } .fa.fa-viadeo { font-family: 'Font Awesome 6 Brands'; @@ -1947,8 +1947,8 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-viadeo-square:before { - content: "\f2aa"; } +.fa.fa-viadeo-square { + --fa: "\f2aa"; } .fa.fa-snapchat { font-family: 'Font Awesome 6 Brands'; @@ -1958,15 +1958,15 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-snapchat-ghost:before { - content: "\f2ab"; } +.fa.fa-snapchat-ghost { + --fa: "\f2ab"; } .fa.fa-snapchat-square { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-snapchat-square:before { - content: "\f2ad"; } +.fa.fa-snapchat-square { + --fa: "\f2ad"; } .fa.fa-pied-piper { font-family: 'Font Awesome 6 Brands'; @@ -1988,15 +1988,15 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-google-plus-official:before { - content: "\f2b3"; } +.fa.fa-google-plus-official { + --fa: "\f2b3"; } .fa.fa-google-plus-circle { font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-google-plus-circle:before { - content: "\f2b3"; } +.fa.fa-google-plus-circle { + --fa: "\f2b3"; } .fa.fa-font-awesome { font-family: 'Font Awesome 6 Brands'; @@ -2006,22 +2006,22 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-fa:before { - content: "\f2b4"; } +.fa.fa-fa { + --fa: "\f2b4"; } .fa.fa-handshake-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-handshake-o:before { - content: "\f2b5"; } +.fa.fa-handshake-o { + --fa: "\f2b5"; } .fa.fa-envelope-open-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-envelope-open-o:before { - content: "\f2b6"; } +.fa.fa-envelope-open-o { + --fa: "\f2b6"; } .fa.fa-linode { font-family: 'Font Awesome 6 Brands'; @@ -2031,60 +2031,60 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-address-book-o:before { - content: "\f2b9"; } +.fa.fa-address-book-o { + --fa: "\f2b9"; } -.fa.fa-vcard:before { - content: "\f2bb"; } +.fa.fa-vcard { + --fa: "\f2bb"; } .fa.fa-address-card-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-address-card-o:before { - content: "\f2bb"; } +.fa.fa-address-card-o { + --fa: "\f2bb"; } .fa.fa-vcard-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-vcard-o:before { - content: "\f2bb"; } +.fa.fa-vcard-o { + --fa: "\f2bb"; } .fa.fa-user-circle-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-user-circle-o:before { - content: "\f2bd"; } +.fa.fa-user-circle-o { + --fa: "\f2bd"; } .fa.fa-user-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-user-o:before { - content: "\f007"; } +.fa.fa-user-o { + --fa: "\f007"; } .fa.fa-id-badge { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-drivers-license:before { - content: "\f2c2"; } +.fa.fa-drivers-license { + --fa: "\f2c2"; } .fa.fa-id-card-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-id-card-o:before { - content: "\f2c2"; } +.fa.fa-id-card-o { + --fa: "\f2c2"; } .fa.fa-drivers-license-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-drivers-license-o:before { - content: "\f2c2"; } +.fa.fa-drivers-license-o { + --fa: "\f2c2"; } .fa.fa-quora { font-family: 'Font Awesome 6 Brands'; @@ -2098,29 +2098,29 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-thermometer-4:before { - content: "\f2c7"; } +.fa.fa-thermometer-4 { + --fa: "\f2c7"; } -.fa.fa-thermometer:before { - content: "\f2c7"; } +.fa.fa-thermometer { + --fa: "\f2c7"; } -.fa.fa-thermometer-3:before { - content: "\f2c8"; } +.fa.fa-thermometer-3 { + --fa: "\f2c8"; } -.fa.fa-thermometer-2:before { - content: "\f2c9"; } +.fa.fa-thermometer-2 { + --fa: "\f2c9"; } -.fa.fa-thermometer-1:before { - content: "\f2ca"; } +.fa.fa-thermometer-1 { + --fa: "\f2ca"; } -.fa.fa-thermometer-0:before { - content: "\f2cb"; } +.fa.fa-thermometer-0 { + --fa: "\f2cb"; } -.fa.fa-bathtub:before { - content: "\f2cd"; } +.fa.fa-bathtub { + --fa: "\f2cd"; } -.fa.fa-s15:before { - content: "\f2cd"; } +.fa.fa-s15 { + --fa: "\f2cd"; } .fa.fa-window-maximize { font-family: 'Font Awesome 6 Free'; @@ -2130,22 +2130,22 @@ font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-times-rectangle:before { - content: "\f410"; } +.fa.fa-times-rectangle { + --fa: "\f410"; } .fa.fa-window-close-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-window-close-o:before { - content: "\f410"; } +.fa.fa-window-close-o { + --fa: "\f410"; } .fa.fa-times-rectangle-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-times-rectangle-o:before { - content: "\f410"; } +.fa.fa-times-rectangle-o { + --fa: "\f410"; } .fa.fa-bandcamp { font-family: 'Font Awesome 6 Brands'; @@ -2171,15 +2171,15 @@ font-family: 'Font Awesome 6 Brands'; font-weight: 400; } -.fa.fa-eercast:before { - content: "\f2da"; } +.fa.fa-eercast { + --fa: "\f2da"; } .fa.fa-snowflake-o { font-family: 'Font Awesome 6 Free'; font-weight: 400; } -.fa.fa-snowflake-o:before { - content: "\f2dc"; } +.fa.fa-snowflake-o { + --fa: "\f2dc"; } .fa.fa-superpowers { font-family: 'Font Awesome 6 Brands'; diff --git a/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/webfonts/fa-brands-400.ttf b/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/webfonts/fa-brands-400.ttf index 08362f3424c6932efba0af7041f531553f4de176..c739a396546d2dc499ea533bd917d34268801490 100644 GIT binary patch delta 7029 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 PwCb*9t?QGO=~4d#a*bE3 delta 5722 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 BHkkkb literal 118072 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≶ws+2+-PuOKxw3bzuPfiP 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 Cz2{f} delta 889 zcmYk3ZAep57{~wj?oDTw;>%2J+!}@RW!|~%PQ$=5LMbbl+XzJ7D0WnZJo_4dCxuP{Lb_I&;Q|^^OeZQiTnni z`J-s#C7_i9>!VK5(N}oz$l%23;_g@L!*f8s9bl&1j>|r5skSL60pL6iw`j{weFAKU z0J*~F4FoGbF1-h0<3Ms03?Nf7xLf-%+;yPxH&R%-4cJ`#IkG!Xudd}g!u6H)vkk=! zqmBC-FE!;f-D(z^pS4uAgj?Cxr8E6)TwB;Sb+*o)V_!Vi*^H|$)o2e!8`SJ`| zmL*GLv>Gi&U7}|hb>z*vLRBafYU*xEBiEdnWM)41Pz)T$g+la)jGk(l1+$D?SWpXC z$-URPBz++-^Qg|GQyDcz6ZMLB>dEg~sQ+7#=25+Jr^3vqh3x9Ft@s7ek3n8yj57-r zDy6s#hiPU#p|tuJ~O8&LCINtLOFf>XiTh diff --git a/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/webfonts/fa-regular-400.woff2 b/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/webfonts/fa-regular-400.woff2 index 452b49c0407e7ec42821f8d8799ad0327e2c2282..fc0a2168aa569ed45fb1b9e8402ffbc14814c91b 100644 GIT binary patch delta 25137 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 delta 25076 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 b&o`V9;Q@gH28J*~2tWb9{MJ4OHv<3wr`Lc= diff --git a/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/webfonts/fa-solid-900.ttf b/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/webfonts/fa-solid-900.ttf index e7e2ecfa341157f2a42ec210bf82cc0156a5540b..f3b468e5b25582f4c0042e950826284ab9b708d9 100644 GIT binary patch delta 19382 zcmb`P3z$~p{`Y_PVLhGZIn~rmI+&WwOjKq%P3$lwR6>ZIgoz?_k|c>|kR%~0(T^L&5nUiWGJ?%%!Ey4PCS z|8v`l8xC2Jms>n>OySYV8GFQK9bOQTmC$!Q z3HFpGk6`bBF5@Roo6%xK><$q%SETjs36n1x6Tdw(L!^8P+tm}t%$O3~-Q;HWHzj}G zq%jl6B~HJgKq5Uhh?t+JOun*Y+MI9hc}5~VSBadmMHIC-rdF<=mvf@lKis!^OWT!!{$cUzS%*Fzqz(0rciH4R*;s0>yy_dXC-HbskkC}b#i+0sw57^o|>GToPh$Dr5>A6tlczK$p2XIP$rJb;1joa`iNnDUPFEJ`HGI4g|jKpb)VTofB{S&>|dsrfp2ofd{ z4tG4YJ-#)*F}^bXM0`d3;rO!nL-Bj!i{cC7x5jBAJ~KWoetCRU{2c6I@ss02;)CNS z#!rY3iXR^z7(Xt4OuT>m=y>0FuXxXRNxVnAd;Ey_;qfAJcZui6JI4==cZ_$4w~ynS zc+I1tB&o7?M}sZiNrpNz0L0?cnjWyH)0!Oug6}CZHT=RdpY(} zY<=v-*bA}eW6#D`$DWBj9a|N9Dz-BASnSc*y|K#J;@G^{+}KUA>tol&u8qxzT@{-g zn-CixyEryBc46%N*m<$hu~D(JV`s+Bhz*aO7CSXIG&UqQICfGjbwX@VY+$T!tWT^Y z)-85KtSFWj>kw-fJ0zAHYaNTnVzFo}E7l^`Jk}&;V>+gy2cr9(KXShqkoG&5`8%O*XXk7z0oDn%IH1Oh0)ui z^P{&!Z;sB6-W0td6|IQQjLwKok6sm>7QHe$B|14eDLOHFX|z0gZuFe!pQC3-&x)QI zJtcaw8)cE`iP00HgQ5eY1ER-7dq<0-oufI?HqlnmWVA`tWc`};OV*yOpR#skeUr5< zYfaYUSyfpNie$~p3MaC!gE_gb@o(y1#{Y#z21kZQ#z*oZ3nHTbd(Nax7@CRvd#k;{UO!JENr!N$lO{@xLM9yr!T)&;KApkPmMZ*Xs9Wh%Hn zSP;w$DuTJe%*e<{k6_+ zdOUD{tAZ6&@d$rM1ZU82MX)P!B9-(F@*-V=bfjOTb8sL?P-RwdY!Hj&(%rei%Ahvb zW1q4s`TKZK9qhAbbCmP#1Hl}7wjE*1?6G#99b`AskwqM41vOXMTFa^GUw;<<);Xbr zj~3Q+o~g|?q}%Eb4u9ID7OQ(yrCO@)S5<16`m0)@R;uUJTD4AXQtztw)cb0S`iJ^J zeW*TGpQumO=jsc!O>I}-sBhJG>PNLl)vA4}L5o&8OSjUUbiOXsN9v>W(Yn7Lpa<&X z^+|e&K1~nTr|S{=EPb~Avp!dk*5~VTeNjqZt8dUZ={fpVeTTkNFVJ`CyY)i7NH5k) z_5FIeepo-DpV4deTl(+%ef^2vs(0ug_0M{b{zX^o8eOaFbXsS0z22+$nP#SiiJ7=b znl>iK1nn#E?BdDi@3cAKBg9`lQ-HZ`W!>@~mHL+u1R(cWgO z>@xefU1guP>+S3IJ^Q}>zoc36JJtB2RftF8Z8D{~dkNqfbXa^{D&Ny&hA`b-R^E z{fM^r=yTByA}RNyN3(I1M{^O&JKCeqLYI3qoyp_!;m`|EI_c00(Z@Y{2g;p>L*Id} z@mQ`@dFwnu8Tyh(-z_QW)LBAI4obxiwH?J94)ra{)!d=JL21yTzC#yz3V&r(ii7C1(UD@u0FlluJQSGdhkMkg=n)=!DEb$VT8pOM=Lgis=s!K`19X>1y@&qnQ6HkX(xKi( zYdnUK%CGa7IJ(cHwxA6j^$*k?5U48jfG4F1zAlW1!z>dyjGYc$h!SWHMF$USM4yjM z#SXOzr9wxTe?K-jyFfg8IjTIm6N*P2!Lg`i{P~ff85>ED=Dw_;wI?V>J9u;}G|yw} zQR2oC^hEPL0kfmvFpniD3m5{2#ft^qJa#?W!((4({0olsScagWpT|CpG9w(i96ipX ze?iMUnqesz=+O*G!6=Wp89moy=As0r!`zAzoDOpniYE(F{1|t{7kJDq=s1renhP%W z=pWIk9!=mB%=Cozwb&5a*JFbV-hv8`ah&N9Y>(NEx}yN& zj+p7@(5|6-Jf;OoBs(8*^|$TEGd*5!%mSgJxzF5a zre7hr3rV4?3_`mDHrQ1tbJ<~WV_}I$T!#mF%!z0tp*@Uk2hE1QV z6X0C?Ac|`pW+>X)qX_?M-0IMa&>U#X=};}lIK*S2IMYc=W9(W8`o_R(%rFpqhbE@1S_8`dsV}(a|3D zIf|DZ>I>9$5ERp*x*RUX-i}`4aidv1-s48I`cjVzlxjw=b9A>I#qA zkKP3IO#P1D;?YadxgLE#>W%`mLg#tHp>ab9njx&d9qzz(!?*zM!gifl2n?fcf-;0D z_v0>K)ou(yJ%=vw=;o+v`~mW`K&#*(Y{tBLnMa?5y0LwVbQc4w;2G@p=mvNX`%rWX z`~$lO`U!l6UCj7bJNH2tXy0OghkZ1v=G2_u@z>({bC}$gon^85)z?v8~ z@lun3BsMWp)6!$ELYV;$MME{MJ*olC1-zp#KvNy~0ksnC=+R@*Jm^fOacI8Bjdx8K zV7RpFT#-jyLtQ<30(!VdT>c{fm+OgWG4#Q{0xbo+e5}42;}|%W9oM2|a3c0~C}Zo; zH=%>!RP5QP^U?_H+ZKK`ASbneE$0XP;%0VDInZsr1a*Fxf&Bn_BT$oOKx=M>x!B9m zJ3Pjfb9I4nzPSqsSG@vV>~S~cHTQV*X=o)O?0&TK-(NiXNtCdyxu5i>P*(`mtI$UD z8tkV%#vLXRQL~yn&!X$#MeMcc26!8r?V5MtJ?uBotsecBTrM@Au>ovI4QC98-h_VP z2_t43_E)4+SM_mGQ{Yt6UERa+ zxBGFo-LiaBiIyg~V?Lbe!shr;8vgg`B^XNu4&Al}U3=%YYfnIlm` zq4qiK5_GM{I3GRlF}=|jJfTe})Pm`QuJ?rYOU^g^7@S-CvM01RV1v6%*1ig_k*5@W z-DBJ!5IVKQmSHezw*cW_2B05#jPutQz(JW4P&cUHVz>534`;iS)b3&f3?o_VMjPC9 zxV8oe8*?(6fqLvy&<2lTHr2W)0K)*+X$Y`SM~Q+u2FIL*w)dEG(2gE63dO^9MVwB} zxfne?Y8}dv)^UVx$yzrO*zd0MbwrNCT!@x?-14=~ZKGx^dV@y~L~r!y<58}Vb+?e` zVw3=IxYKoA>S2DsT#CL7uV7z>;&z82OzYn8n2G4y9y1Aj7v3k&Wb_{%GZp>PW3EKE zd(1TSdyhNU*WqPH%1p=j6@H_ltI^**whBGyG1rKsBOb$iNGCjQjMJSxW)@0#JIr7l)aLp6W47()4hTVUniL^qAWj|1@LlFig-iW1eV4g(pflBOWP}d-sHRwa0uyZaSxYJj9wZ}Zi_@~#g z@d7*6qA$VA*leen|LNDT*P|Of<`wi!k8%6oh4;wwD$4wKnAg!y;0tV5?ko5j`|s$t z@E!JM^oNjk;aM#Gt4O99JE$zv8jisJYT?U6a@uCtB7_{$3hfDf*xRsh&ybwd?`#e5 zh(!ki!)2SG3*mn3Kcl!lvkdz}bU8eV%@AhrYUXL|%h1(;*DOPr!7~{gV;RB>&dA^x z%P?keK;{i>0zdN>-pjnh#*J*?i42{$3|nRke1J_bW;f-dv9$KH-^^H_#6gNHJB z$P#mzZ#{IBOa29p`4NWm^>%l&Qo(Jb+uSOYX zhkX_u3yig8OzSU&%dwwFCwkn|ruxYq%Q)9F<_`NZI^APmL1zHd*b?~ljDP(s#^1h% zffpQhBYFeO#wJMWiG_M%z`l*TApuL|*SjIX<(8PKuL3-1|A9I$f&CD5UIP0O>O27M z=~ulwh_%?Cpf581{D^yWQSW*S_A}J=5G(;#&vdM(WA+PllgECEzVESLp{{YTU!$&Z zu-j4BAlPqE0@-1|MO_;qT?+Gm9znAEB1mxO#iYJJmr^A_~H$l(#1kKS= za4zZYNX~}~u%qauo*<4ApnE5fo+SjMhROd4`}ajvzQ0-RlX4 zp}zug5-_~`v?n+XWyn+e7~fzx8;q^PJv7?K*gE7+G|LmFGtT=UI1`Nn;~R`XTY7@C z(bmw0^gp8vrz1EA?cfPUp}2k@9uLlC{P!Kn1_T$Nc*7BtqeDHx7?h)M1Q(*Nvk+W_ zx{g3F79|)R!8p|IgWzIxq9?cny~Y!aN3VtJ82^CC-AC~4yAgW=IvZ}mo`l}z38tcz zp5RK9ao_hUd8VP8J;8L8;d2C6qn~+#8R+*Ow^rNtizjfMNgd<|f|;UfcrpiKBcke> zhDeZwwg{1+6&ei@I{=M^h#iQ=L&P4BCPGBFMLnV)#_kj%=1*urh@?0PsJg-s;pwxg z>lz|K5kd`-K!~U%xV-Mc5YeuZM?*wCiLM9{8=!9cNruL`@tF`YKcUZth;of?2oY0(z8WGt zS5kGag-CD=`g(}iH2MalI8oSf7|xY%a$D`jep85W&#&tK9wOFN>OAl+d3K?E2L-~d zy{h{#M9c#8qY&Z3qv}2h5qmTGS%`2mqUxNNzM$QgcoHbk^L!tX=e zeZH#O86wt=t2^qSDC~mI9Yvb5E783nqE?Ga6H_2urd7IWh`X$-bh8k5IaX=PL&{w` zRl0SEyJoBOp&?>%7b_=+D3|Ay5aH3RVpZf29?h!s=^Lv{^<%fi1zfYA!0Zh7AX$5s8uXd9PS#S(gYE>$MPzDZ-}?=!@jRE z-F1))QJCi;?1$)R8H$HN^m{0A2KfJNjK@OUGXRx#jjyC(0xP{LL^x%tG(!UHK%I+M zQ&ATBVu*WMs?zI2M0Y@64iQ~|z7isaVN7ob@isx4N^=(Daj9aZ zzY!vO8cLA5)l+D{gZ&QuITzg=;+}jfR#Xl#ZW!H>a>dh!q3?%?ZH~HO_=vWiW&Wp$ zQV`>UVq1v2BT{J>JYSN24*FGy=w|5GA?^aB(%VBsKaINb-!M#lPy*R4)ih^CmT3-Q zv8&R|3UE*URJz8&>DElas1Fh4#*0V>_dY4%MgSh>Hyj@MAQ>#s}T1-KxMK+gm(an zb*95TyHuGrA?{s*%H)KI&O@0AAetDgru)I>4-XZSs zyJE@e@V0CGBxa2}vLPX2Uqy$8h?&AGVV8MbNH}*h&c)A@ z?izM3ei7Tbm$~lN_-;yP+>p5G-GIImB5q2v%y)<@o65LeeT;htqMwAgr=TjcHN?H+ zQ<={~+VpumgV9KcSOTlQS%{cTX!8)Uc&?rq1Y(Dvi4f6aP-X#$9fjtGh#if#4H0`T z+K%zBZ%3w6(e@!?hoc=r#GZ!cg@|p3b`BAHC0Y<7_Biy25V1F*%pedu2<;x?9?2-4 zF*w9tkM;`TB6loC-w^jaN7XY7;NDaz9x^z@UV`2bA_h0t&k5lT!orTDb5h^3wIIYj z?NRl2g@|@OyC+06(NbR-B0P*yEZ`lY*P-`@2%j6M`lTVl3RBfT6e4_8rs|i4h~9}l z5+XbvQT30DI-DOdb!L7!sf?-1K^;a7C`8@32`5N_=i&jTD{-LSkA zBEbOkl@Kw`L9d30ah~2BBKmifKnAgeDCZLp`xg2^h^W1&YmduUgim6)v zQ;66p=c5}p9}QYm;F|L=9z8UlPT4S=_IVDD(OzsF_? zz(d)TVoB$48*1;5A>PKhdv`XbGt2fe%fdXnuy-}ubb2p$UoO3Yz=!bM(-6asHQH^k z+u#W%Ov51|?$Zs`KukAua2LD{82KS$Pe!|jh#iLFdJs#nHV}*8R?w<}C;$l#Ly1dp zFG5tqsUhy;7S(WOhy*8~XN5@M8XXlPfy_H5%-|%yY=y~WbA)>EBi3t#!gSt-D(f}df;1PWyc0-65VxWPz0pY2QYSLY~ zPZo*#6y2I7>a%I0z8K8gxRs*5EQXDuzM25rnVchG2VXg^67}tHzHp>lJMv(bC?ZsS zPnjPm^J6w&P4r`RMY&znyK6J|4Y+7GzW=!k5UsxyiK?DJNb~+))zAT6Q!3u^DPBIQ z^a$n-74Bsp&u|oLcGb`guz#h4zhVFOk*NJt`g?nBdT8`u8P}3-d}Wc#7Zn!LqHP{u zQS@eEG#s|`6-AX>Q^G7R@d?q*oAP~Ei~g{ZJ7P3z4eS#goevaqTFZ#a9^AeJOhB3elHQ z_VP`P|3orP8ZCMbGis-!9LN`QBFwuYRb&m zE_!A*(2;A&JBxDH(TVG+w_+2I2q<^sI=;?WDtb2Qvsa3~IYq`ft3=;IWpfvZzI6#F zkSfu)(ct_kqHpidm&&<7Wp`4+0_+7ebQg`>MVY&2i(Z)E)(jUf?k4&k((l35m2_+g z_7d#B>=b=34c=QV`abGengttK0FP$;ADAZkK^l3GgsNfik?4mu^VP>vzV;Z-v!8CF zAF-kzZ3=W~#bDM0b45Q+o|QEGWH}#gY~f=K>Ug>f%YX7cGXr*uUQGk5*|&zepIs#S zIqF_J9ICmi7zSGy{}-l+esPuP^=m}Gv{LlT<3+zhrVTXoD%-Dj6TOknyg~Y#>-lJd zf}5uCVa86;tReO0V%RGBUGluQU-bK%L~ofZ`X3`$C9&_r(V{<^#T_)|KB0r3vdxK3 zZ=Egrv+<1o=VO7&w$XtvvA?46ugSc9yy$N!@Ew`I+stYe` zsN$NvKuk;QR@m9pk-c9`>lI?!lmVKvQB3YWF1?53@!`i(G3{ue{R}Z3$k34rJ8owg zzFAD(d~VCfis_sU>%`=*;X95^VhSk73CR?aR#Yyg>j=KopxhC;Kzg?cV!HE>;=0q( z9@Ai(m?Nvi6!+tuXO@_rbhcL(Z{T}VQ6K1ACgvy#|Eaf_{`5c8b6PPEMd-lk3&fm39cOS5 zXAXn3n6t?H=aH}>C1xZ?a}EikXz*MZO`-Dyw(;S^T)u7EDW;r4W2(hmNF^6h*+mtw zUCh`)utLl@I&m@kE-8X4mT?@&_>DXQqC=OphfQKGC*K4*Fww#eo+Zxa+lAB;o*|S0 z30IT@jZUo)b7fO8)3RZun5(+LDlyaP#MM+XgM2gS%r!JRlgejO$F+Gto>?5#to?k0 zuw2abBN*SgVk#E#y#aY|B>g7x%-$g8=J{ggjAs9weSA-_Tg=?;d_O>?^R|hZp9@ra z`xHR$pt3vZ$X&g~++74qx%F7jQxVb@j}&vyU@?{L#VqMB<}ak(yHCu0TgBXOVWXG_ zW{G)_d{t~elr3f%x{L$)>wLz4`5-Y5Q}~f#Vjf*5<}oUHyc?uh0nqc6H25S1o}|L3 zHi=nP40QCFT-YXN^(ryXjurD9tR>&t-C~}n!52o0d9g~&`psfqBJE|$ZkWs4di1p= zJl1UwYZ(7GrtvVkLd;v`tPe+ud3z17>&J_EhsxfW&$Hv+;hTB$ep4}9DEtrhf3Qx> zhwS@kftZg6i}_@@m`?`*jcsM$XEd;leP3=B^L3t>?PWZJp!~PA^IbRCB4!75eVD}Db?H998 zU@0F4tYDcpm(T0z&~NPfoq7(?nS(3D%6_qGlUOrItj!V|j1-%SwCA0{PQDq~!A<{I z9Ac)bSsZ*$8#GwLu_Ii4?EYf7@IG)6_vEwC${xwv27@uvq)_2MwVhz z#2&Jo1@B<7?b+9HuGm9+i_N24C-QWz5Szb3Y?t+74;#%pQrt~!Nx9gbbg(BC_oCw7tHk!Dq0$jz`(Yn7TI|u;V*f;* z{?%fSp;2yP>~ZUP>_3PX9}C0|r0zjWcy!QI>`C1J*}++?|0#U(N>(vDSkBY%X*NODKO?H?f!J z@i>Sw6E}*Tw2t*6+gFfxY8RkmSEfE<;k`iYRaHEY=m*=yUQMIdWB~#bm0a(IphVw^-bl5%#`~VwY|c`v8R>q_QdsKD3UH z9jN@Tb*1j;7=Y5OBu3yf}g&BN+!1gOE#J<)=?CVSUrl1`5iQSYX_HEMMUM2SL z~GAx!t#fwc2jp zrVj)3cPc(WM-JvnAhRUk1w>$WN??~t5G;})vW*wxE5yAJ4_Yw)gQ%5&^>+~4AVJG6 zys9gcAe(}1`b&^AT7q2C+K%LS&HI+6J} z(g)D+KpH%r?Gq?`Vis(c;G~Tb45sp-Gk9-I{$UlY)9J`*gCrQ90O~n|yk}7Fh*jcV z@djt_=M^7$&zT^+!sQ*}XbOy8B*FPqbUr&TpflxVutkCkt0dr38;qs0vAZQ0H(!E_ z*GO;)67>u-C&4w_B$!G4 z*HX`{O%hz+g>MM1$4IS^fXifXLl#Vt;Kp(ZZW<}U>|qkzTqMC9(r%%_TXsrtYXUY( zFpr9ETO+~kV<9cU9n^E@QVAB&=v`G3EX8A?1yRa(f$&w$dll)atR)1-xJjmJlR`Z1a)l`C~sq`5- z{LD@XRxgrZ4feC}9A(xHl3-o=!r^-!zUletYoDL427g$fL=JA(qN-#uUz0_el$1o8 zw8?3c)2pO)Nt2R%wjxbhmsCFVrfpSO+(8Ag{E|K;y-WM{>Q$0MmjBvOTGFeeXHJ{e zf83FBB?<})3iC?}v3iyCE$v(CwmS{ajzyJ<#NTr zS6XquWQ(l-N>gpy9@ejT$-gQ)P^GF|rEa^ZShY>HJ*@bDYIT(tQ%7;pf2I``)7*dO zbDb(K`d4Kl+=?GKxL(i3Tm6OC0EhJ~#TBKcB?W!lLG{dWhvhuxeCRd1WI}OC=hh`9 z#f^U>Ic<8m%x!v=Msi9@@HHEKOM5xX+tg9eq!7>NKt8T3E%8PEReN?$lad13P?AVQ z4>>Z~M73+zHI|h>k!bT|%T~!`ZZg6@ERJ-F zG-=nerBW?hwsYE|b9OS>oaYj44i7peT6JyLPT9fTdsI%Oy1{v_Dp#fDkE_Ym*s^I; zb7;$^?VIxFsDIbv>dQ_XW12Qg;x0pQZBP|zgLIN28CY3dW!tv;pKwS9`MvV{l;i}J zdH0*PJn*A%6~j{DjK-e|_vb)Wd3m{yibhctuGbZ$9oQaP;lW5*Ma6b1_(NWL(e&TF zXf5sKFzF$sQYJ&>jDH7wvZPZs!@^ii(3$#vhe8oIg{-AGgT?DsdUZog3UX zUv7j4A0BXdSy`Uj_3tcX2oppd+>cK;;?orU_cO@{Tx-Imu%s`+!?p{i9GB8)m-Z!$ z3JM9F!amHvoRaL;e!t7-4xk{_xPzi>QVoAy)<&Bun-HVKVpwfqN$)=F-`7#Acp^79 z5m&mSwZnDC)~(xQWkn*{nm^f*NLChSgO0jqGSbUM4;dOu#1sEjBK3bRqRvX>yCz&y z`H2g)>Cq{>1#Qq4Cy-J6!+si}u@>2#Iwae6FnSbOv?lBSR<4!n+kcnKYDKx!e-tEc zxLV_CU52aAlWBarwDSM2!yEmZgO8mz+u=@5ASG^UH@doK>%P5u_Uc<`Dog5A>FEC_ zXSZk)X=-irX0c|vHx7F2Hk!L+ZeTcQr> z*`zm@o1R=%vh$gvefpHT^J{A&v2UrnwB-NimOFD+-teYv+p?4i{D)#Cy?a%j)>5}V zaY3uBXf&%;UZYr>=l+}Dl33O)TWZ}hvFP7cOI`kltd!`MmltNYm9I|IZ3bKR7W;~v zbhEaY|GH6!9pcx_kEvVc78m~^JB57#J7=h#Gt|r(YM&b#yzxb9qi|*BkHRVC zjkf0A@!Uq+$f5i%7o=loGtMp2n}0tRZm_$jdbZKl(wuJye7fP^o*ma{+dt$97{N?qdPKUZa~kdDGLnB$ z>C3i|9=wD0c7lIxe{-XqboHNo!MLecUOIVFUTJBc9>pakr6v7J`{Wg!IC;{vya88_ zyK?fxae32ymZS6f_9*R9($(#2+|~EQspH0VKXdYgOUM34iN1MmN0?rjDvY$PrH=N=Yt}u9dGAM!Hvy?HVbl9Mv__zp|nzGP1H~*GSJ6-KB4MDI#0t zr$v!Im3s;!Jt~)VjpVCq*S^^`va@+CG9_|FWNPHf$h62+k?Cun>Kz%_`m*Rn4Naq{(B)T^YUj(h1|bUp#fpB`z%yZjB!^;o|ON$6Psn x+}P;&aWlqTGI^5E-10xRx?ebX0{`EgE3O(dbzJugFP$`I>NRVtheWcv|1VPxjhX-e delta 17240 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

jwicFM;mt~nKS6zuK0vKlD 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

8BC^!BI#_0UW9ia1p5G*c|qTx5tf3z)F zX&JAOJklXSf!;=9=0&Zddz=6Jx8DV1Qrp&2ffrOO<=A8l45d8n&*e-rzfi54n45AJ zj$^z_njD+;>O$T$b927-lrn%ZGcH%Efd@)z+omRrxnC;Rr{`_yOJxA%W>hJsxmal` zq~R!&)FfxLd^E;5K3X;ylQm*0hYCTpigRhX5}BNWp`-WiimI>OMR8(kQ;2QfPME)m zUxw+C5D=sDdgzD4;=x{CSh7kWt$uR8t4hdII?^0 z)Rc(LLuPB4A5Ts)7mS;vzhLDSjwhh$FDQ0pXg{&-cw%vg?q?I>lz48m(T`hSxF4GJ z?EAl9X(R{QJ;g#Wj)ZYyMLVI7Fq;sP6J>_Er&m`ojPdH~X|ZbbbhH6sO713;Hn?(a zNKNhCbMD-py{d+DTeu8M+ioE1>aW4S!j~glVd@0hLOw9E+z5{Rv((81?z?MC@sAE* z+P-Q3QLkKEai<)nS$;iVKeejRx;uTGx%=;2_4Cx7cB{v$^^^77?u1(3E>$~K&+W=l z>*cTZSpxg}_0vJHF%jLqnNuR){BdRe|9Ajn@yAyXHe02VB-U)X%scu30*P`u9})QX zS0^wl7Md2}2|z6D#^D= zoDRFARaxj6v%Mi+2Ia8Ehp^SEcpN@{2NA+U#FvMO44XJ!c z#6k^}Pfa}c@&k2lDA?@?icCCfdH zpUlR5#aE!Y%X?nDjAf~F>Sy|;D%YXtSssOu&klXT?MhXcoLP*Qpi+nAMdgeVbZB=ufq(O)4(?sqD_-IMSvZX27%%U|ag6sa<2c5L2|0e~ zd&A+-lR9`&?3YXdV4BrEcipw8YMKDTEUjNC=HR6|@Z@1pDDK{FSMP~2jvvtELX2^I zf#?TfjN^N%?d?5epXH0%;0K9|LTI+Xiobq?vnCvPC+hLaCJei@zx zrRt?-N%?Xitt$mzVxAkvuE)x0TK;mgRPTaZT2B|GuS%;xCGGPAm0GO=+fb{okN4E- z_1d2Cdc6iC)7Fl~=lrM`D${nfZJr1%+qObN-ppwvU(2+$W1A{0M*f`1cy2bu86o(? z|0V#xgpL9(E`&2&8T9Fax$DG@Z1|C09mFF3p*W`Odb_LR@-}M3L1KPK$1(vUXj4KQ~r%0KWt4sPu zNPaFHEXji=ay1n$i}vn``JVJuW)RGSOv}(b2)MGGylwP1{o<8|AdC?~r6QiWbM3Iu zQ47f=#lP<&mwf=gB_S4W@X{V*o&dR8YtJWTG!;2E%TF_~dd1k35{Rv=2TkuEzn-?_ zt=R~QHi~oojK?$kv%BxUyBgGOBnn8adN*xlz^3StK$Hmu2kLoJ zNYj>=iIuF!w8?dt1*ut=|3pn-Wb{J6W?qEnY2A9E8!gD~gYm^9KV~#}w%u+!P_s#E z&ud+=la2#d(@XFDmwD|M#oj@UqD*9+UW6V*z>HDj{ckV=XJ3?j?tMp}%S@p&j`RK* zx%~{jU%dFPYdbr3DA3y`-T~~Ke}5%6qdQ{dVrB2KY~nnrC_xY4gskQ8220bX&krfV zj@?$F88<^tG4pk-4dg>f2ko8RV9UR+JX9B7i&`2H&&Rybf%p=)e-v;C0sa&O7}M-R z!5Vo~Uyj7w7Pi(NI!u-nw&R@3d+?t{j~uX-CRBTlmL`}g@cjrwY}w#A;Auj%!L&gj za2;WqG63HT367PW@~VPvhYK&;1~?uj)X{`8!=#i^Dpj#;bL=?)j!zf>(>6hc`G--# zX+x-DS#2hDZgp<-tv)qqa=IHn?z9%=vy}6DmUG-BX5v{SD;T3NOI0HJOGu;Y4_rk9yo@VBwIrSa)N(`IrLEJ$@QAN!rMF{SJz&Nua2=QD@iUe5q0P^Nw)_Lh*2 zP?S>S&GanSPjPyl2vDh-@utG$c@7q;8u=zR`5yeE&DhC@YpyIeX%zPODxh#81egsw zSdreb=BkF9foM0^d-8m_{IW{3S$QUk-Vv9}aqos3I-Sl2`!Dwxdk3YnlV8H@yp%WB zd&Bukvsrmrx%^CAF30bPqTb2REH5wjSq|&;D18TGvnD@324OI*Av5jCWAPfVhl`*_ zBuHl)NLCF};VhmsE6NZj-B39|&&~IN%=FA#G`+WGo_VVWoIfeV{FgpQF|Oe{~p*ldgFw_FYw1qGlm23P$H zmB$e=a2#X$-{ri8iD~(+*KbUL0i0QZL2+mK*uAEZd>Pfb}uf;%^tpGkdJL9sZK@2@B!K=0m@*QFK)s_!*r_IP-ZzskGkpq@bPx*0W`6aaN3prS@@!q(l9KkP0OK7a)Yw61>jC8 zl~Sri%LU#44kv_mW!`2i0JFxJu$)jayBPHQ*UV0R@hshjCw$-MVul$~d4h7n4N4rQ zJt~M{57U^p>`2N`_`&Gg)9LuJEimxNlCwfc!dPHocFDGF;6Bhz?6qT~D`-5B&vXe; z6|f^nTT~2Th$0b+jjc>9bsU1PrZuBkR?KD|%~(uYF^1Oj#7kLiyOdH+byvN*_McTL zWmhE@6`6veCR*^_j=;?2+DeTS(zvc?G-2$(cpSqUpjxvTqaOF0c$#1E|J8yEp68{) zSIt2nWsuo|V^y{44l@lI8ERxig{KIkf?Bra#Zl--6b6IUi*_t(W?9aPPo*(Q>E@Bi z7~Ld~+}LZ-J0p*bQVC?p%p|31lc97^kUo|x*>I=Bbd<8bpUj<$Hz!h4F7=)#`quZQ z{KV8m*}q3qm?_t)N1wCWd;afxSOr#~I%Hvb*ueZ;g~hE3b0HxT18iH%F;osRUlV}!?@ zH*?O3@+8Jq-~vcxMYdMpd&b0;ZBa_Cc?<8}eO(kX0H9bA*VP0^(zwPkoHO7WmJV&d z)a?ylbc~qjojgA=?Z4zs+X(Ko9f^>2FU;0ZAFasdrH@IMclysmugU4f*V;$8;C|OO zE1vZyB?xT1U^4;oZ2S>r-uO4eEp-Rx>OqU0PI*HcQp%DzPOw~-r3@U099aE9uRo}i zaVkqR@I#vUuS`Izs)CYTQY@;`~b7UxtWb$7-rz! zVBUyhjN`b$S7qJ;eV`PBY`fObZnTcxi2f2G$d-;Bm7{S!oQ%WHM1qT~Btp;(h_Jv& zQ`)#vhFKc8sR1))bJiCpa!XQ9)OPSgqeKsl-*w2CMk=0x?KIG9~COt{P=Mxj|;}h+#KOdz`}1r zenQFYA}L#7st~=WcHZq|qw%C1`FNUg6UIz3W#v9M5b)}Vp|GiD4nw?YZroGp%1$O(Uw9)u`eMIh@L@NKT-VsOS_A-~fNsth1M(7T{&G&uyq;cISa5OD~?{hw$IY@Ld<;IXZlh>Kt(fEduO-*y9(rFrD!mvsIOFaZfR-zVFGLiB@BbO zMRAUsgmd=5Ew|jFIVUS>gntI>IH!LCy|BNi#wISHD)x(qjj~R}eUzjDEllvWCBuzB zv?wD^+UMnsRB*lL;DNnLa1sp$!_i<6{)%D0&j8bg07_}6Ln#$?3YhhM%(k|8G7PjX zzNg-g_HZT1t2ljU{&Uu0z!<6b7$Gu;;xPs=fRcT0)1=o#^@KtLPU| z#^MycW^$_twM8efIfB=4hvajhZJPWiI%XMF%d;WKS~hBKDp?gyCdP2GuK9R=mrg4nJ=`(_Q-2iz&hQ9%@0UWulzD*e;6sv0ioO(S_0F*E$Oc=Tj zfUPdGcf##;fn%4@8aj%es!J-1-owQfa09l*MI`voqY}9KvM&^(!p2>QE+L))6r^tk zf;>Os_5#9%-gDsK9?b;}dhU@t2ReEz&tMj3yFQPHt2kgpDZ&C=#rk;_TgTSc>S<%S zzAXhWwXMF~Nb75B$0}SI{qTCN^NWj%RSbbr0pRLl^QVZ?@ZZjd&|}c^?a0I|;aUN_ z@zgE;=Rqe)y8Y>#iQ2-y3JA^~+}(far_~Vt;Z#ZXS~9Y*K&d8#hzi8XOuwGUdG_60 zWE0#1nsGRs!%TC*#kiN3X*J>^O2eVHYPS>7qRDV2?XHtii&zAvG-%4jLymcsVKIT) zAgWU7$1lhWL7rb}dO`kig`j6*?O3upH&>OGphJaMg6mojXfTkx%01zw!>cmm_4@!Q zEwl(kg+B1^krys5CZc=g+P@j_xJ&veSfW^0RHR?FY^9%O&Np#vK4zrl=&#>`E6`Ij zepL{NiL^ypyY6r5*Jb|&4^+{-5yP+?Mm_}Ei(vhGi=XYWj6A%%=XEoiw&mw6`BEO1 zv^Q9@&0qUq$G)D(w)}i+)z&=EH|pefs>|qeew6dmJEH|5dmBE>w(jRm^TjUSIpyoh z2gkLN2@y`H{Kf|1hs!u;%Q&OJ`vmh{LjKIJKI4sd{rdKy>(En=8#24$5QUhH+>oa4``>Us_9gK%Q3e>i_qg2E2n;Us-s%SFJ({)ccf)NS2?##hj#TFZ}#A|>s`K?bNmbTmmWA5ce$rbm~_Escv&3A^9% zj(0R4KK3OD!M9A{l(zhysT`bG0=IKT>+0PXU3Afb8KL(lSiJb*haYaf;}|=}TCdE3%;+`SACD8J1(FwjRZrFRh{({#r6@P|$+QF<2^rV~&m|H`I|kZb z0w~9*%`CmaPA=lq3yxaaKbU5%?C| z%4FFs*Wz0n!s-_pOt2B56un@LeCaE3BK*`}h2DWaDO0f!A^?d4++>b~#ZVo>k?MWf zLD{o9u~l$C;5+GneLO~*42NPD+p{;IBWEpCmLYnc@oBoAp7s1)f9AM83U;@z4D82>8*pj9%eW##nsT&EJH==J)S&m~QPkSVy;e4CZ z{mD{}C7Pf_jJrx*s{QGtGBw3h*h-zTJ+Vor@pe2PF(;vC7Ej+Np zeZ_@cogXaciM&@))|R5`b~7*_Vr_5U^p42ORC zqi$q(<*%udYda2Cd?ffTxZYN9=$QLuG||zh`Qzw8^cUzSwhZvjCHj5!igw!WII5jL}?zKY->up(9ZdcFCVT69BuM}gh8yq*d!dx#{R}#b9 zaxA`N{pid3RYofy4*;XQ0%gYEs(2?6+=9sBg18F{yLK%sxXUF#t0klq*2t3zBcne~ zixlXfz;XY}`1}cs~B+eF)upSB&JR zCE|nA`#W?^uKwF2`0r)Q!RvH27wb%$A#KVhb-7MR6S~YhvqN%(X8tEv%cKT^ppBDU zhOYjv*FpSp+S|gs8h(o(o&&SRHNgrstX2kd{zn ztXmaB_?fg~B9#{a_1<-rva&w+gNpY)cadqS=x_3!Z!}PWF44UZ*O%vc6O0(s#NHrR zGJy@@9-@du6m#JN&O6IsH{H(!8wlG!F4AHQ%YLOAh7g0BF9O1_TJgD3{3-X{cb@^! z%6U34HhuE)p`XW?q^IC1v#Fn^emc8#Pu%JDdX3lrc6K_$Mz7cH#6o;+*REaM1J@CP zEdc;%J^d5dBfRNP4HtCyd#$6SxU^`5VWW7k{0(gjIp!os7tb*eky<1!hVP^olKyy>6=i7_V`gQr{EaQ45bWX%4C zGpD|q&Tb`vKOr&daPZ$is#Mmsxa4}tGKb$fKk@i3Sl*XJTK|4X1vg+kQ9Rfvep5bJ zG{W%HZWLx4evJPfz8v+&9KjO`9-hJK`_cmW)DUbywZ&(nEa4v;y}Az^~pxUG}FbByw*T0uvl^>KE=0bKg%e^ z=@SFB|MHdF;Mcd^cH7G3`&ID76w~QZb29&D&d*DkVzy$7Iie`#iT0Lj8kd~M!OahK$q}H zfESe++Q*4XLNOXwh!-DGmCi;wI{#3W%MmL?Dq-okUWGho&kl?IZ~XvWf^I5i)DHMR zuOzrZX)_}EH9pFc=}{Masy7ajU0Ai^SKJ;3uFmnde?~rsH&+6-I!j_Hs+TG*^2Xl6ml^8=vk zO;)4T^^=+);fqSJsa+Gkr1d&w)33tCjIK|Afp8a}tt5j0lF(sG9zdQ};%Ijnp`mF1 zD07ZU6b<*wU@EdtJLYZhoJNY+jkIU>`hqBFwv1Fn_j%f6+hB(A^un0lNnE$#bs>BaR@)dPYlf-v6>9y8)$-gU;s_){?+ zYNMef$fWV^wmm0J3QZpDCZkj%@M%ibPP@jNB?j;cl{{WuAi)oe=emcM_6c37w1sEw zb3HPl1DlB6cykrCQI1NRmnKKilVcv1jwmG`Y*YE}0>s5z%6^ulUE%K>is4MF zGBe3>_Zm!>&*O9Px$Qcm);whv&8fxcyhSs;-KExco$a8^qRZr&t{~#CR z814vnj|dz3ZK}NUpC1{TFC3o+TpSDrkFC1yq94cprV!#%)jG@Uchfgwua13!-aMb|xnF`k#z$Lu|6nnQEu8Joi- z4YVO+P}qOG9}K|eg_~kDvN_$(+7Wk|iRDhaXWNy5dglqV0(T|!30~#_{BACn^Zm7# ztObR9I5~Uu>eZKARrUof1*sVF*WUc*H=oh^IwuI65L6Rh01Mj-3kxeuxWysPycs^5 z%jJSXK3sdrn(t4(xVt}}G%7?$eL>6r`em^b1kQC@hoGRae9Tu$h#`cZBWK=BqY!ia zGue-BoLljuy{MPLSCfv(l}vXzj`??(#-L0FFUzO;B&d8@Y?yCbg#FB8{>x{GKOKk{ z+?NY8kC1q{fAV{teNv`@UhcELz2E4&6Y_W5afb({;kKJ^_6RuNOSxNgqgdp;6V$p< z*pvS+c5uJVg8MAf_S8@PH$0|#5b?F5YdQ{j4RQU9Kx|B-bB}bfVG^G%QwTzY{=Nl| zegFI4FXR_ZFyC^=E^XJexJEj!F*$fg%Ur2wty;V=c}j$o>-PYhxaOK`q#aWs=xxgd z#$D;$q{wR;$3n*i-J87SNF18vdMtyx=O0*aj4kSBA6yG54)iyQ2emH4Wp?k{^bf3q z7hda*=naQMAamk$Gnc692@k=_{Y;XIOWZB3I~=`I*6nv%mMhckY6{z1xj}%YCbVgu zel9{(`;;oaCjfL8Vg&_EK2f%rzzH8S;Q}CT{?Ald-#sP4C9f)dh z@Y+Ya-ktQ~O5bQMcR%wjw2rPvw_A8cCp!zQz@wJ)VgMg0doaod3l&AZH(qW7r!~|Y zI#Z!@_h-R5ydTQ=%w3z13#&&xpbsaukNWFa(_h9R2{;I5^FoK;4)#SYzE z;vhwx9oqVeep`fbEMvwup`lQS%5iv*yN62^W!R-@$w+83CF2dXA}APxI#VuikF9lO z6YHjYlbD4M*m2Ns>nsQO%NuUE;f4?W<S%t5xbSrW_8Ff!h3-Hv z%BTxI-T2MD9;Ol;5iw^~$4_ad<5MxWW*f5h0Cd<5*?>2%zJCX@rjA26F10xNjI zxoXwJ+OL_S~Js6-(^mOpxZx#{Sr?ONLRwQV%2RdaU=CH=#F!Ev1KQqBOr zk(m2%9Am?nCZ@M;E=T+K-})YU6n!acoFV*?({i6Jei7bb{hrHgv5l~b=VGZYV~sY% z5xF|XkI`vt>_tb>X3U1$7hN@}_$nNXg*>o#d@~!1s1>@IL?4^-64USyiKel~W&!VH zok4f8Opq9>(4qS(ypuefc)qbh1Hbx*2PMM~{FlVxA65gOcB$_rlb62k{`>EjuT#74 zyz|cR7WKk=@4Z*PGj{IDU! zNfl7+=%FH(wf2RZ31b)NnM1BPUH6c+pah^53x`acNm{@V?qYsWTKV@ucRBf5H0_A6_N*TZ!(;1vvMIp6yy?&bcA*gLnx5Vj6bhP}Ci~sANK zrH^6uht|yO;aaa(J3KpMF~%3%?9U`wGjN?~oP_ZOmr{vE3CPr&7Oh+8s}l7LKJg!q z@t{BWtx~BJq_O96-&>ikVTcYk2*G|(N&EpfbH!7IFaTR6Zc~8o7rLc<-h(F_jYbY^ zE85+U96eQZyOnlai6YPo)Uc>yxNb3W?P6BW?b2?+aSfA786#9@rt^aKY;4##hHgbK zjv%?NpYmmrZ{l~U|I=m1S1@4pL4msiGJ18uXbqerkR%*r3_~=BwRIxOPqE4#xU$LnN!)^oTYiVC|A78e@t@@VMlQYoq>uLX zKY)vdNP%Nm>kJb8#sePpSpV82?HnI~RqO}4ShPdnV{n|L?k)hzJy-aLzEZ(yZ*z^r zap1ya48wmfMEUwxKU>d7g(Nym#%or$NLcM!uH&3=oaFb?6=wwD_*2yd-Iqo?olfme za&`qjpSjcV5|WqEpso&z$R^mI;?5o?Bvhy2&_0&&3jR-Ds@t#tvIXDVRXv=tx$5dl6BO%6L?$! z^u+CaYywe-L8t@2+bbvk99`=3(wDg-^S=tz5z&f}{|c`%(i5BA5w}F5>9)K(@~S+pr8OVudz7Qnn`MtklDN ziDc7=2PAQ9O505UGwYMl8RzC;G`XKrV8^7qS=zSvozvs- z_z}!F8dIa6Z-M;p-A=AfPz4`=dq+_fZh1-=XNc_R+<;j+JW)+*b?&eeP|hn3dFZbX|TF*laM#IuYx&UzT2w zsG4-~n`;yb42+HX%m6KDA;!zTgagLq%D7U-B=IL)@_2Wqn{{L=o{ z01$3%g&6*N@?YLmaeVTmrMJ>r5bX~do$DQ=Z`&sB86_r>8w$0I^#cq@h+_GAV0f}W z`Mnax{r<^sa2zs+XX#w7_;H2o#vh;je`{Uxh3pzI#Dl+Gn>*R><2U3B5p;N#TdU1J zr3OZHyY!=cK@^!ky?WTc4g1hJ^b*@|xRg#=)1qm|*tI06(Op4-<8R~K;^vZ4DapB> zl$@L4%$zYd6PlcZkX{vvC;FO5*xK`j?%&)|VmgjVC^dcG_r6Mx19rh0+lK9^^^p3z z6u2FV&`v9Wkd+1TXHd_sw!Vp@a{E-m$rSYiS~g21vrGe@P7$6cD3#_KB_mX(v~vx3 zedyJ+S1cDTY5f~M2Jhhl#)XGH!2WM&y%gohY^ek};wVd*LHTt~hVU&|34Pp32}A(c zAwcQ1$5sd3#1;mL5Z%fle8Ww3Fx|}R9f81^di7|lN6p|$bLh*aHo=yg*VorKzIq}x zm>=H{*W|y34-rBRY0Cl{MRSByC^$L?0Qr30H~K~LQ&J+6_nDOHqolmc5Nf@*GIcqQ z;~$kbe@HJ2A##*6XT9H_v21qw6nIMLu7SrNq!b-NwRRL`LQ)r@w}=et{ovNbK&y*Q>E zK-Gl4IBuA*vaGTG*mzTXchJCxPw6 z(R71awzt5>J4#bZ5;1vufRyfJCkcE%NFa3$f$Hh667O%VxR?7s?$>2W)yZ;mRBplr za-!L44wMwhsKE*`+5U?4l~S)%I8L%Gi7|{-S$SQSFn{%RuY29=vV0C8m(Sw++o|_9 z&Y_3UyRwj$TU{LtW=>>Qv@H6pX_*!juEo(n%~XK>2nlmfnUq{InZA0D$=&Hbt7<)n z-HKPZ!c5(lYQz1*1%cm3cW^~I^}Y(8DnCB=F>%E*e=mls@g2zHMcjc>GO7a;xoJ-% z_w}#f?LHR9i}?4hcP{9jXfY}u{kG|tG|w0SV|m8kSg+MeJvkjGNjxokrCO~%_Zx69 z4yi$ivSJ}VAH+h$mLkNU(B9Z)lb&1CymYPehOrQx1?l-iF!Atfb25Z2KU3ynOFYUE zXOmj8I`ZUXqmDp95fKmb41YJ3(jMDVQW=CMv})jK#-;_M|JCHfK&~F2KSF{kgxRs@Ci1w%JdFSNkU`~FXbBUzIU)4guVD9S#a{xlT^4ewUmS6P+6Wbd=i_z6T_K4|xDzuwL=8M_W~faJ?% zB#ySNNNXKqZAZj$<4dvYkjU0J)>=oFt)0a1ljJmU+;}t1Fb2oXO%k0a(K;qu^LbEG zgkd2U1ky_q&ts-YJeS2riE8vbdPM~WRu+t7t$=0t-_Y;M)$buuDiJFhMNsv zT`6(n;l!HX*!1-%(t_rJC1S35vNY_+{@y&9hFo06T6&!{uV=lB6(`7Yw@kJb&TmkI&5>Uj-qs@RuztH_@ zDr%$aqwabzMfmCu@m=tB)JA*JgXjrK>KNMDp?fE{sk|dqlv=arc4SKFG#%Saa(2+^ zCoSvo#r*yt;9i!@vjeUvXg`_YjB`QkV9(%cKbf)7WtI6~w_!>sJwM|WfXfqQLycec zs#htXzmjrwq}^_3O1TM;^p{RYD`lAfVG_n|$5zS^t~84ryKer~`6O|?keG2u%=nLp zwxu-8C^F#d^4cU5Y=+db)}mg|*#Jo-^NoJ@)YKGFYyBlbDu)jrW?6G@)mF+d49@K8 zf$2l+ZB4~D7J`6JabdGkV_wR=~tj>P?>q;ZCN+M zV~;(Sf#()4n649D)IwxQ@Mg2yR}wwis4ZKbT zoGGB^B64H&J|${r5QYj(`py(u9Rjpwgv!H)S&}{+_cfg+cTrz&+VzyB8K%xBO^1>Q za=z<;>*TRL1IT1tcfS3QAo*R&Am&9OCxxq&S0I_YWGOF|6zzdW%`ht3JOH=az)6cy zXg+%49Bt(D;s<_JoZ{-3l;##^Tpa_U_!eid!i7C?a#R*^J6bPkc7b4@#$D^B@9ei) z|HuDS^DOHR&TuJYFwqyeQ)eh8-;{C_zPuvcvFSCOP`PTva%0o6p`hGbL0)4#C?%Ye)PR|v{`9A&V}6Mz6#Zb;)Z&-H z>(#wOnXReI6>*vZ{ZYvhypYp zgSY?_rLra!NKAi_F$v5jS&NwJPwL`*KqR?8vH|QrzP;mjdcEGv=iYl~qw&snzVn^$ zT(S>*OUk>r%Tm-~F~xg)N7x;JqX9)bjolGD7Oa5 z*+}}=rM-eIm2o;@(h-~Aw+lE)#ea0q+^ib2EkdSlp2DU+FC>Gs(2*@ZxPMI2+oGtxh6eo@FZ?KU$I%kVuX<$77{0kBp0^UUG zZzQ%f?^S};sz4MgTH#?g=G&we25^fln0o%a5<<=2W?Nj?w?GiqHk2AMW3(LF6=;V& z?WYS4TP%-&G2hxEpRZrDiz!kshjVNt zv*@JM2wvIM!QOB%I2>YNhU9S;zzfll;vS99rB-h>dnq4f-NudopKiAS*D{DU=Ob zP>P>~kzMB9`0dYSZIzTqP=;N@OrnpWm@;3=vSdaE%`;U;Bs6qTQA{eLW2JNuA@!?( zl!LFCjO&jtYv+b^r`-lnlW#28I^18;l_=CU#J^!Fg{Sg7-8_BzbhIDFNFTs)0vui3 zeI@XU$n^;vd;trBa-Q5~li+xA9H_r;blr9bwiDYlB1 z@-ERLe9}vvvbIkwu%ndSwtm#v+mk=Ibm@MNX({g~2se;{d?vg)hQHGl*MA?eSmTV6 zQ0E=s6i7|!<3=$8EO-deb(O$dVE3}AB3jGu|q})ohF7#`CgN%D^)J?6-D=9z5?>7_~2ma-1lD1R_MC? z*JF(1Uw61z;qsk*)D53bhOb+WzkibjbZt&1E`#2Dm&P7rD7?5S%9O7A0S!IjUC16z zQ#oMG8Xx}G1R$iP-jD~88UmE!{CJP?5m^HA@Tc$P!uEcuPR1|ef;UBq2X8Ls27u>2 zv`Ynq*GPU|Ux8ycqcm7)$6NXrmgUe1JjV~C>%Po36YP39&u|~m$3+lYCkT1ejL&jO z&VNg2iQp|?3*;$|1>EgdejY8L1L!om54{|{6@3DI2Zz!pR0u$Z+@Sx=S=f!P%*O2# z0)_zN&kaD()xr!bcVw%O@JfMB0fYVP3V$_n>y+f95x`V8FpBscN* z7_7AFz>GElYOk)YI!i*3Xh>j0XLfBfmj!dO&OMi%Pi5B;xcRH3y~b)TZ-M=vDX;zW zFQNnJ47v}!0=*l34t*c}zH|obMjaBQQB4-oLekiq?|YxmS=hC;@&}^^(uRy5#C8f~ zQ*qL3zHPm}Jv|8fU1uJtS=N!20k7l;q)f*~ucH_H{#Q!iNT^OO8;@2t443+y0gA<$ ze+u}}%6#}#V4J9^yrJo{WO#Hai=JS1iTmn?jtxB-(F;`bM4WEZy;tyfSxtK#$>rc- zPr{GTGCGEyhn}(uK4Wp z4FYbP0Xb8!(;4F(7PewZtKDPML2Q~DVTW}Xu^w6cem&D37;FgWimf+5ZJ+$0(M$2)u0AksmDpU>;rA0d4-P@o`mu>44bY*o0FGmhY=zWN#kFmM=_jbY^1k4}IGL@` zHUs(~pO}u?n@^oMabmNYzBI1Yrl)JQcsPMYi4fWd-rqO3(qQs$uIq+|Qm&(H#Ylj0 zK$xx$p60w3O+qQz~k5CJx@2VrNVuCz-_bDriE#u7t#SBJGFodD?-!;lA&v*x|qW#Ds z@YLx@P1=qnNyyNxN;5mi!HR+eOc+77Hj@5=lNc(yXs#V&&TR>hGw|#6PzSDo z6Nqm=L1<8k$Tm#|zHXe1duOhid;$o2g2&-zb54*>t|y)gLm(~E+Qy5Ny+2g`wRH_6Z`fO zxOy_dF-19XXfg?7WZ;%;UBM&?d>kqPTsmGzX&|Uii0!TO9xFX4gg|oup&a7}oWxZE z`8Y8pqA0~Re0Ta|wPVLIDR@yFh)K$d1>c)suDcV;7wn~BVb8QIO@T2+Bw-){s24~8 zM%=YtkkfA2nlZ*Oql^(h5E$D4Rd2@4nbaOV2oiyi<6a_$lXK6^xJ?ar%0}_=ItiN4 zY?zr2>A7Zw&;bIh~DCsI(~Q`U?g^Y15ld#}0Rxa{Q9zmJ^HJq_b{tZ6)KTjI2)Kh?a*ix4&Z zP!AtC@T?7zCg7Op$`uoaZgFMj@w}95*wZHj-kJ>v0rqwlFT8z2WrO3FHGN<4qKTem z^>j3P0lwe7?D!y4(=$K%(U0zTocn)N1F~%fPN9Bvw(0%cELucpELIUE2~0wj%;_|U zdNOhmysI}JtCYYHtU@)V_}9_&(s#ODVcG`Osv|33?jZnO@A<@QyoI@!BK1j?^`LLv z(jd`V(O4b2^yl~p)BnKUvKv`#@37Fb?KX&hEX49j;lh~1^5LA$Or*CkxyF^0#m<(zx8&2OJpf$s00aJ>NVHn3t*)1x}R3nv~ zQbsTZz!W$DF@^&rmgnAIJuuZsl_ZQ(0x(w#-hw`izJzRX3RYQ1LHvA zzlccq`mm^TpnQTFh#CGDW`&dw2ks{DHzd1K#PbACEuZ16&2|KjPo_@|2~b8;XxG8X z6}b?s`mXf)EJk}o=?baTV1-nAu%Kv;1p(hFw^{auDAqY#?&-p|$Rh~ewR{UgwlKWQ|04$N zil`ipLSJP!q@2V@FLt$)o{*3v?s)7b3CI(vqrJ7GF=3S(GUbQS;fkm*#;E5SS8^%+ zz&8|Ij_)}RU`zR)wlLU^7dRFst{-|z3h5fpWfZm`JwCRLmmHNOtytMw5J#+XLq&=3 z@ZnIX$_*73#lc!;RZ=34CZ4g!$5VJ)5Ck4)%JN;;V35N1Y===x`+@5KIBwu;i!#Ud zd?5iF*Yz#MxECM<$h)wGbJ#+kLa5AAEQRqRDTf#25-;752%UPN&u?t9Nrn)#wKg~J#2$NlkWJYg~i5XO3%9Q<5`iAsv0Xb}|v?%PsK zvR}q=Oep0|3L1m}4YbKAB{8Ob&ifRv@q4~T0WUS1fHQ5?Tvrk))O@3E18Fc-XRxE@7ZGPAQ2o?LXS>c~QIF z=9H2UQ>Y05G5t3R5uuc~2^N@hEHGK?zvTOv?o*v^zO!fBQLEXlrk0efIX}NbNJA3N zSgnd-SrU+!&d&qP&tED5t0j!9HO4qr4MJAt=bKDQE3I~$t;n`}JM(Tw?Pb^}^ilox z$xS2l5QO#G4Q1GF&eDv>c`OYzmCNf{ac+tQamyuTF)BvIC~Lf)?PvWsi33iXS-45j zNM!*Mnz}{N>55qS4`JvKb}_-cGU!iI7UF$6H_7_tC~9CHb%sC??kk*#>n`;j8cfl4uSc zK_}2{604H1AUX>{2F;oTV7{JNR`9HMIX|lx_E^tD)H)vNzc9joIk3u2TGaaLVMoK@Ix2y<5*!p-VA!-K%_oi|k<8_(d>k!9f{?av!VdA(fB96|Q0oTF?+##vBZ@)V*>mw!YDd5h@-_kmsCNUc}M`^*X4?+V2 zBMlh%G?;756_auz)>~8*!(lW`hAy;Fka%dfqa+4*{+`T=w77yo97|{xr{ko4Lk&Bc zgh?I|B8*lJhi5H#Ru)|FmZ_F*krnwE9!(&335vZ^uEZ#l(^fd17TKkP$}o)6y0BnDpk`jwayi@Qp>GC&GkID1_T3B+veumK~N)H zNK3Hy>A?WNgd4@K2jF^PUopE#NP=+^(Sb1=uQ*^~f^kCVV*9X`S|pL~ z!I%m+3OyIVbK}UBbn6WvEGbfL{EY2woo&ym2>_VNEq*s=0aynon&Hb*4x}9V~A_uTdy zJS*sSgJz}DymKOt=zk>NKy^FpAtIB-anl6rO+G8Al|`&1iVahPx3i?J>DQ_Ap7#-& zM@&?vs};eboPOl&>T0r@wtZR3TQSrfE%n+`rw;hmzuo#N5c?TkjL0`vQHc(rTO`-^ zDlcdzL2FsxY+9`W=Lru0yvr;ev1QdDah5%=O-2FdH>2w^ZFo*{A_(f|;7e&1$x(sk zrorh}eBuwAt{bJ^iV4AQm1TP$Xy0?sJ(lBG_lUSnSS@<1rY|mDwryu1)AcEaUWDs! zD`lLg0RTMBF-l$Y*vCFr0EoxFyrrx7^1dsb@@+ft7IX@|7JU>r)FFrc;B!!BT<&4} zJf2Zm4wn&|sSN*SS#;Oj%QBoCv~+qEHuc)7xzH!Vu|aDYw{D1#v(AkSM-|0f#vc4) z!7(wBk_5wsR>{V!okxNoSn0uh>i6m&{_e#W`azh(693cD=?<(gcC$;_Y!rIrcG=dv z3&0nISl|PeR`BDm#D#^0h4su4_A72*KBK|d%@QMK(Ys@;UY}p%SGUn_Z%iqg)$N<` z09rzKpy$Yw52;>oC6lYQ=v>}6DX(*MJtfUNq+L(mKcasM4*0TeZ!l!cv~gafY6jgt$LT8Idi6kxwa+0e~DYXQ>)f7A!Mf9-fS(DGXxV-uhu$ziVk*> zx;q~Zi@FUsIk>A8#&Ou%1;69mjvCE2#_eV!vfp}d(AzW)JCi|Z;~g&iCUVj3(9w!W z6)>AK(eLI(hd3nFAau+LUB{_a8>ek5H^;Gl6U)AzvvW& z5CRgKg@By}Y#s+_cqtu?j>aAB=P4Jp!6!gRIZ}G*D2|IfUWub;V@A#qE>5JX;O+e* zic!%eL5t{!nIGpx9!GIb^c05uOuz~hzX=eGKFK<{2u@j+r?q#h{Z_&NI0YzJ>_WM5 z;<&L~cZx<}{WT0QQ0diXYmO|*jK9zJo6Jt=H~>;6ioip2zgjgeCnKa)1=E^U1!$4w zs-E9&k0-r3@YAeOSH`Vn6MaXL(%a=QV-5ijJV~Q=;2Lbus4J(ipgoiKo9@jTfiHat zO_t^DBQ&UaG_c4WMwm9nvVi#Vnc&S#Ph!FX?C|;?xm`mlPdXS^u*K+$n6e$;_u6?o zCKv+-Ov{$^d$Uk+y^+MALXB<{>h(8%n^B6STGHXYsX;IShZl82dPy2Y_msfuBr2(a zlG!+q=!8}c!Ea6h0ozuzm zk^%MZ6#Psy+}dW|%@LxwH<`A>KmfIF2M~Z10HW3UD6252N3dmaUMQ;) zZiVh{hYCxTB(*n}Edi=WvI57Q)>5&}WgqIgY0f>b-s{yZ_2Hm>TqnWqOr#_LR??+} zGASHWE3jjFs_rvh^8cGaC}%`lspYv*f^ibYzg)LtyoT>{PAgrmEZ67+;IODz_8aH&jsN%VIA6~08YcW7vYgTHcj&KOqt3;j?f-#}*69ZrqI2g*g za40jDi!tVDzMJ4a2G6m zX%@yE09Y_Aeal(CrLnk3;Z(X!@cF(&ox5o;dFe}E`qIm`F9KAcchgNbO$PH-SloWu zOQ*+ikA4u6yYIgH%C5TUNl$vx$DHBl(0JR*l~-PQx9YBJ8y^}CosT`~W-KK2-fjIV zT0lF|AsT$R1WRQ>Dh9YbvrLav8O{kffi!yrtaEPO2m$T$>ab-UR^P6`7Zuk3IN|Ci zKJkeaQ~y_*1YZdo|5`VdCpzk|QiqlEcg6>ZDQ!zc=jJjXQKew&6|sHo)!oHe?%+V8 zs;QM!RoiTtY)^`mxWC!D8H!1g9?;jV^brZ${F6Y z0&V0)KaeDe^gR2ljX^5cwO0%I*<27%S(y&K^x@t5m>hK$+>)?p=iPZdZq~{ zQF~R{p?ZdP5)<<7XFFe*`=n#p5M3|9e$ccyrxdh@fit*CV81hY(NVf03Ch$VEU!7 z7fW^;=wq;eEDqpB*9jpKL49+JwE0vdg0U~cU$<2$CQOQ%HnjG_jF60AT7|t{HZb$; z`J4S<*?C>vgKW^QvLQ-G+WcLQt@=Fd2j~!H- zqT%QXmE}QF687~vMmk}scHFfH2e^_AL@Dgym`>v#l zQ${Xrk;>IS$Dh@6T+#D=s(_%WA`xTZUF0qtCrKwr`VvF~fWdo*cs+t3?cNGS=DG1t zcJ}AfZ*?i@nO zOP1#qCbr3szT>!Q6RhT!!I@vS2MA-Nis?}X*ys`qsKNFb#y&<3ut?Xyz>ZQ}9Ya4K z^{H(i%afK(eVH!tKE)b*?cfS0d40)URX9-8xgQqkSw|-b!3!TC%oF_ z;1DI$(b`}MkT20J|6%C=aq7lICDlQN2yyvfbf>j7kW0! zvTSvJetv#6%YLz5uh(y$pP!#U2V8ChKR`9qN5{~MD0NYbY$1c1t!7yVX>|~|+fX%H zlj>>P!1KIzVP3@yw5LQbH%HMw>~IEw3irx7E$B=6Pzl`g+U^%!C_VHmCCWJ+S`4Q3 zsBHPRSVPJ=E&Z5tH&uq~8Y*?Cm%_JA^R8UuB|j^G9_nW=Y2@yj7@#Kq1}dfWsP><( zNYKo;Z1Qj5`^BeyeU#GlA=4~jSt?0fnyMot&#fNWcdSuCJ#=?of-Qamy&Am{y&b*J z;)+7}Cia+SS}>q6tWx7HB@q+q85~|gkW@Lx z^rJ|0humMORE|_CN2+gfUAN|WwOY;fwibVJZh4;P)@rWndbKnVc#7%V7p#St{D>Nz zHl;4^OWDURrR|O}r@22hH8pi{<)^nSS1OfC$4jO4si~={^-`%+x=<>WN{DucUdz`A z5Hv{bbVDbcz^ao>#Kd%-tu`W=8H=v2UTS!FxmwkM)DdlQhg-v~p_CKXvIy>!tCLB! z+`+^Gmjz-$n5Shf)@w&CN1&5wwS@MjgIf1S%FMpr;jHUye37QC11PP0N^rRxL6=F<(lA zI2)LJj0`#fy&;To$c+kYWXV0cJsS0*ZnxKQgj+M@^Y)Nx72~qkE#T^KZ%QyD8~|e~ zl;C_OYhpr&MzO14LMg{2YcB?Xlf;KCp1FC8g9Jmc*v<&%loAX;D8;1NZ!;mKXit3+ zoG?t%y~CGoY-}Aoc>&$?`FkoA_>k}WW4h6y{5elx%!Foy5w?TTnxnQ=;q<4a1TOB{ zEJ$#TJb1euCjqm&7X!J=tx--X0Z>kjGMO{NDAj^tEWEipSJmfs;uXJw59AHOhqZ52 zX*8TvVKGP>18GZe8qY4vygqqs--oy7$iQj5s4O!Sg>nJK>NGu9uh+3L z3C!AJX7!%^WqvUKz~hPZXXAJ_5DE9T`%d9|o?kfr_6^uR{d3qJyRLm^PQML~QD#09 zc)*T#`9Rjz2>82VyCI#){{8#+PaI`8QU%)w4TK(y=Rx=tpjPI{b4D`e!cJ^T*B}Pu z61v$!rBcAUIsuS30!aUMJ)G=pl)_{wNGeszCr1a+>w(xJlKdFS-9_0Wq!`nseY zI-}Uw2EnYRLHZU0W?pDk7>6z`O>@10;N_xa84`$^57F}mv@px1WJuEz6l+K8(+}Bo+}Hl^{P?q;^{i)|JPEJRU#DIaO71+cXZkl@ zNWSJOmC%FUp6S!y_BKS(OpY^;?MJV$FBqZXAeaJ*@s%l{#5jtjaleraMO-MeqpYAl z!n=5z(bz{{DDNgkvC^mkqnDbY!)#{rVlphs$#hASIG@i=hGD5aVAc11zuBDg9mQ0= zXU8$3PoHLLHR+(f&xw(}G=`QaJY-`-%<1PeDVpQA=9R^}i_f zlmyPH0^g`hMn`)9U<+jwr2INQRSvj-g?7flG(nvUl%^yBosOCPb>7GM*i*N6j{AB3 zoltv1so-E|w{X3HKq=wraC!z#KlIQ;-%OV_1GQoQ&CR9sn-84_zwNo^?5sj5>TK8b z+CJ@Z{Tx}c>=p0|>e^&hh^s58KVk-2Ac#spaOB26KfE$;8O}>-5v)2<1bBXapW|4Z z%JI4}ewWO&7VQ<^oI{#)rstaqD@kHuvZh)RJ5kM)Yf)2A-`fM0CBoUx{6+Kg7-Mb8 z5r(e6*lJn7th}JhQkd2FpnHK_U!l}UsN-dDjiZiemdO2*DTpwH)Ob3*>E}W6bknh9fHd763hep)as^Xw=+?wgW zWOLZ*Knmbw19e|Zbl%>?^jQMOpNz3cJ9*wo&$Zho&TG9+^NI_QkPhrCE9k)7=L=nkH#4W$LILRw*Z@G=!Q=BF|ZrMNpK- zB=Q#0WLS*HVHM~)ofQnF*zd`J<>{_3i$ zuA-Ew*CAI zuXx2PY~E%{vReV`Gnz71SLOzWF+cUoFbuI7aag66dlT@H!J%u>)#pc1L>YU76epz= zxO(#BNg>~0;|L2Wt$XjiR|yG1sC%`3KnitQ%F{|nga|?xz6x9L01DAO+KW&)NmE+# z)ZvG2+&E)&bTplvq}+|Dc<>)Tqq6*NntogY$gfKIRS6(J{)w|^&q^ufJ1Zcigws+= zsJv53DbK=ZEo*}*#U4lLMd?39D7I?zXgSxCa!Z{3ae+|xg`2(%C`G?VU=vMSxc}SegiXFP- z7z*p6kxRsLIaCZ7wJIF3WL#p1TGEa+Y7c#&}+bdoH&*sD~U%QG_o%rMTF z%kdmGf-Wv!yts2LZQI5;!Ql2R4C>m($^s}$?5TjZk0_IQw6MB&Awk1!Z<55VJT&$>AL=A%$T}pFz@jD z+;JK}h}|c>Vyn5sJQckNy$-zxeHv|{AD~ANf}8*;oucu~xgcq>$_PLU!G?%XspFE< z>d~Ye4VhMI!7)Uz*jc25YT9!y80y%B$}yH@sWaE43P`z5 zbPxJqtAG$t1BSQYb`$vn$yppFkgw3~5dz0}k%43GotMo>TwpYl3QR1{+@kXmPFA!w z1cC-kCVrQCvH?+H!(thrfgoU@A>m~ZIHbh zI8M0W0=NsaCLZI0SE0Lu7GqK})&f_(ud>r2$unwOzTQj~0iq35L8#G$$Fu9t=egRF z`gSvPoH;Y??#xUVyP|!(T?!$$kK5Hq;GEF75OxU1Wp~wu{mCx82qf{-9%4NG1 zL{QAXSnNG0HC1M7EH_84g8*ut8qCfn_1V)oV#i^*40r_6D~elPb?Wm^v1PW<_As4t zusRA+V8!$!Wqr}=n%3HQ!oadD#y#x3n&BR2mSx*&hDpg1AN$qTnUris*|v3ZKdLE0 z)>^0(#U7Y8+i$}3ryizC0_ZO1Ez4?g-qipS!n+2L>Q$XyAF!pJy~L)+uzn1n7`P|j zBpQ0se(qB*K+DQyh`%^L7ue9y$Oe+@K(BIZ8JZVg2zy&&F#rLKE@&_M$P>8Ud`I)&48`24MB`j**g0D!|b<>sT zB3xGzlF!PGm;SXWUDqA2(Xs>F4bPMLc=@+kwCns?2vcclS7!>sWRga}?MA7y@LDqy zbPPSgL!LN6sOvHz-u!oQv ze{2slfF2lXS=3D5nf>ZVFz1-ZjK%y%*I&oc*4xtl@BjYq@ytyG`#|aIg_QE4?)I?l zi|azbdBlGVM$_!(Cw_DZyYN-pVrV;yx{#rvP9tBGa-8!nxKxc3kkP)hpui)5e?kS3 z9La6OSvD5>zT41B`X<{H1S>C!XcCwmhGDo8Z;AU}UJahJF6Mh{Rl+SPhR%2mvO%Bj~vg39}Z5u@|CX)vBXkY*VjEyDH}2WAr0GvccK@eSE4td zcaCcVdeTaS%oPPO5kgNPUgjQ!TZh^$ol*&~GL9O}>%-zSm8m^Iz_B2(N>q%ZSv(5r zm8ZQC<=NaJ@J8SF32FPT_xjo$8@$+YUvCUJr?-gLn-slIc}(hsMPBf zSqW~|S5d%Y6ZiWk`C3}3S5F%`dM+qA~5dPnuR#Hb@S`EB5Sp zKT=u5pM!k_UVabkhhIY1QEQ`|Zy_rK2za#9Lu!&57A&aYWf(lyov7>$9C>e8eR^{q zY2Ki$msvva^_wKC-d)VFcyr&ET(o(U*)L#Z8a#hoopp|A%8skE>{^^qeWmtbsIjr@ zVDNChHWz6d)c-w>rylJRJhtKO6B>}F?YY4m>jo`jcldcfvV0sI55d-vFMn383^rC> z;<)WJg*sJ8b}i_t1mk?%)vE~M{V>YhU{{V%lSs&I2LO@SSKMyH9E#IzIq|KNzG&aR zLILpd^0j6wNVx0rBxsq}E-zy!6!z_Vkqsw&2MT{{zz9mErKPo-78aqtWCPesby!@u zX>Dn#R7&TmpwT8A8i-RdYM`jd&qdskkXVU;m}8vU>24QLS}TLU`&%IXK!yAF@85sD zZ`*n4c3?ZBl_^M=Uay98E{rc+xbX6vZP#ts%4Cd8sXC%deb!XNRl2rI>D7fObDJzu zv~5TDK4o6VIXu^^bx5*WB3FlPJQp(mP&@*cuC=d9CK7Maii@|GZv|{qz)~Q~aJ$l$ka$ba-fX)+QPWZ0`*tvzv1rz%kKB`#lg9AgQAk-qbuEwjqb|Ps|a$r`o>*%ZPW=~sp;!|*76$w4c`*lc8VAm z9b1cOFv0E{h3Q7I=w$$zS1dNR{uG!`^Gt35lZ_n$SZ|a4?sB(VQW*6sg@g!niAp(z z?nMj@WXgJk4F9@iz_WCb5t@O69OTN|_j^uENR@LQoGA>zO8b@#M)g{iT1l>wuL-+F zg5}oQp5LzL&=;nXZ1?VX=DD~d6|F>3#fRzAk$Y<#hIa4Vs6KS!U5?|JQzxyWQ_L3! zPCsxc)DpEQZGtJWpjcpDX=Zd)?w1s zpX4L9Z9<*#MJ-Dj;ClIwVreDM!WJ`?#QC>;jwb2L;WVZA+Z=1_upJdAaW*_j^PZdf zT6*Fj@CgTS-lFL&gQotT?MWJ4bOb%5;WQ|5d;Nv^rVMu-uq>MDGb5UZg@kxyj**{? zTO=oETFn7mtP51Obf!Ox`&Aj&1s9L_($s!hh{>;V%d)=sMZYPJz4Db-O6>*bx5BVq zEP3(0=VGr^tlOZo(B7yIXm{L`mSNCy=cuop>jw{7Um`eP+09+QDo0x}jt9zk(q^gW ztM>Wd%dQ1qbFE3+u~i(iX8PN7p5QHK^d}J&O;!GtDy~S@Ad(FVojBd3Ar8Z&f0^IUf>_j4Zf(A^EvITC4p@qf6k`KE2~G{1-uF)x_WZ0-^n0OgTcJrAI1Vt%Bg<|ZIE4?y zf(19#3u{F%)Q|T-)gLimZRQcd<)%cxjTVGMp+)@H%Z{LsAfGZ+ak|E zGGN;Nd&#y))7nPmy1ZMLF-Svf;h4j zfWp|smMWEKcO61L-&icTMlPSZPXRWsA-HPIvc0o0hYq6~^JJOEXM`#rgyhd?Q!RHJX2rrB>y!7An7zOcowzy5lNlX@`{hLwFw;S07YKAz8}X8cgwa2v60AEpml zsZzFMI*t+vR(l=xiM`Q}DjxdAMlSZ3d$1LxPPOW!K~t~6l8G;l%SJU{N8|j~`mh90 z8V-mZ@FdB}UY@G^q7JHgd<30+9K8^|(U)29mCV+xQ_qMZVEv*+W3)k*8@lOzE5FJ+ zv@z)PyA6?oGp_TfmXpC|{xb($@my2erwwpiPAC5)9W7_2x=6vvm;ph`u+wF%>tM#P zUSVuSV>bDO<1E>Q;RhM!MaGKchk5Fy!#8bhy55$-BM0c@ijuQZJMs?7OBx&hKKXwe z@HhHMf3&i)WIc9d`!wazMo(tZO`h16BR{v?BfzaopuQn*k#QCUtIHzq!|AG~u}zRD zu6rBcHb#F<(nsH!{=|Lt)9a$LwI4F~&i4ucJ zzN|wbq-9Cbu_+g3?n6N#AD#_@59X`YYUp&NDJFk(;J^W;ZWrQ~lX@Yy0H)|TQMFpl zeJ}{l28De1p`2-Q!|rT%m&xZ295^7v?Mi(TES&x?JN6`Fw4Nie_E&lC;si3=UGDY= zIM})5Aed}t?d&8N&ph2 z{NpY%Q*(F!V$t;=t+thvxje1I?)WMEOk0d%0H1++>)~rDgS;_tZ?W74$v5yp9X1f- z!jzw;7CPvOG(>;5PhZ5Ww5pEOGm!#hC|ii@2Zuw6V{?r*D;I0fopD>>FFILf7F`c# zK4bkUlTwSD&0HQVD-xI}%3cf%pZI?H6>StkJBlrFO`_lYMW|Su0eA9$1D#4Q(5dpb zCWpWnDwQQWpHCY(Zpl;<1LSkfTo_tRDLffL64xtn#7y_QPUy(8kEp*G@Iql~rdWh2 z>9qr`{C1$HJbc7sXV89h4*h~faplWlnBeYP?U6)pA;=A{qrqL>`0KYX96v*uQ`O5{>#d&A0a7XdfMvrKwYYGY%q^*bChm z1fRqUx5T`)?(%omzB=G-8HKzpqlYH{tcw1%-QE=Nrse<}D1f&C#RI_&FOE3tuiq4V;FCe!f<~4I~}w=d1I9?MdCp{clZ-9Mu*US=q>2m=>PnJcR3glR;M*s z^JCFzX30ih(hw-71TQXPLNNtUiX9jBAE*0TAy1&>Lj+%Oe%LWwpyIJz3UqY2@OJs8x!m=_D?k?u}cUs!lfC1 zmG%+BMQ*$jy%D`LMgSa`R$?IoRj_TMNCl10o?!l&wO6BQXB4g+V zdhNI9l$$GYO;VzGtz_->k`gc4y5?93uNCciwR#j4whT7gHat=rro(hCP^#3!@Z*-Y zXL5f@>-S*<&!Eakwjr8>k}73##gFTdI4pGt%D^aLqa@w6FV*m?L%7{J?qJX-IvqT{ zA*4do`B1Rmj?Z4dwrYdBPZMixb#rrdRXanQ*lVksZ3Bh+a-PJ9|3ETEGj^{gu=HS8 zrUQtE7K^0U=~M6m9A+wUlq>`2fd2V-KsB{zZdTc~N2-mVLZW8p_Tc#ItO>S_ajZm4 z!k5s#XKq%h7*BSf-3LZb^C&1hU3SwgkJ?7J=0#%PpktOtM%bl-Y^9ksl|R*9vsLE< z{#e@J73aW1-O4|F|NGx3CKq2=Di-nDuG53XrPAGoL1pC_L6;3DKb2F*`?^#M>JLEp z?y+OXD$=0F-KC|)!RcLVxL92Jg5W0kJ|-5xcNInO50Bi|K@6E>%rNHibw4w&%RZ$I z*|u({SDWX0Uz;T;ViGRXN!$&t4NlLXiSMB9NGwuK7OP@_hcX^ROt0S%w&qo%M;t$_ z;Iqn{@s(D~r`IJzP)%wl0IB?WQb1ZImc!41Z11>L90j=Z7}a66lg&RklT?eIS6}0* zWnDH2xC{KN5ZalB@g!X|1S6%KKYEX?ioL3r7(S&S)1U*CiT-0{cIlJ;9}fdzH!A$ozx)tp#pl>uu-_ddYa#HSpNM+1b0^0kWcp z=uWA32qdOe=1r5d{?U;19FEWZU~cxBjdSNVu9=-{4j{(dfp9}A_J1?m3&WOnSK@L+ zTWV1WeF8iL9!}1i(l6!h!HAv#-iyD2604t3^N5tW%tBAiS_}NW750 zUHZQ}ux((gOfZm;5@O`@1|dKr0@x^7*mx~A*6H=_%O|lh9vicdj|8@;U}-8iYz*T; z=6C+#a7gk75Q79o17mDi7!y(qh(W-}6GGO=`lGU)+QNc0lCf<{pXKcw*Dzak9gNE$ zdO5F=^0!b(qXMJtoO`5s3DhAp?F0eM=z6m?yeTk0UVk~$0>PgY6x<6Q$(EP1qDUD- zT*s|c8p~O;=fiNj;Wd;5$AFSp80J=Q>39wO>Y;0e#;+9(;m$f;1*i(aF>6%)00w3R zWv>I31$8phZu}6L9yA)O{u&GD71k<0+6SAdJiO>jFhN z1vcr40)^PUdQh8QrY{0vz4V=O@8uP9!u_hYUfXv}>aln(k5GS#UiA&E^gsAz57n)d zweKNw353{D_AR}ow6U6DCqNI^mO5zIjx#SSUu18ye++~3Q6WS6Jc&lwScGcw4im&z zR0FKBy&g7Ajo3`?6eN0?bmkiEt+d>Og*I{+bKweu3{iM4HJcnqlXt}8Ero&0?e?eP z#wCUS@?|f3nI*qWoXK}g^FuCUz^F9Yb)k9-Y-_Fac`2G)M1psJOY~>=IsR)8A3n^b z<78Dz@2^cw3C`JdL0$$t-E6bYBe)d3Z2FwI56lqPAtpAlj58G@6Erv!MkKnBg<>&i z^&D9l40yO7oAZLHslW@fwBMQ7ONHx-)QjDAyX|__IF;I$a<>!BM$S47%5$@G<+t08 z6HhM0jt2Yf(B>@jfK$e}9B^qbm)*AQwtXd+%b9U19p`}S9wb{;fa)imFm@c!P8>R) ztfxb^DdWZe9m*)82hen_<55q$f&{?Spwn-uiH3w?6FpN1wsBZy^+dC6fD zd;ngBR?&;mXYhblKt}YH5iLFH-MQnxeoR68L1;d$aU+(WIvxE_YxeNiqx2rfewZga zApo_emmY{>O@Z=zz5PS*O=O`SIu14CAwR&(6Y6bg`Y#N)rwA*vq}gi9KRLiVB*lpf zB<#lK^mPMlVxaX-`(oUli_&%V)J(TKGo@WuN`mc1n2eKfN@F5#USD4?=s$F_DEzr64h}wd=~FBd4aMQ^CujuaBpK(RGkCIPk{eBx!>4AQz}k<}}%~wwk?e zw+9C@j`u=>Rw7d0w39+%URsL33`|Cdt-f*3ORF<83-hxx)ztHLwkKhTA4u@VJ3*_9 zixq~6{A3D^{)c1OoXUzt?Krwv%%+;dt8qTnpjWS6{l<81qK}V0Psu~*)lzoL^^+1B z(|Wdx82^e3z`PQWToO6wdtcv7{pYw zSu6k)ip}PffXTB($FiK_tg-vgWudf%nd3b>erB<`%@{h%?168*@65a^WdAyI-?^gKmxEE0mkOB4#H z4dGba@1N8{5bKsA{5Cv2vxk)dU7O0bbCg2mE``}@nZWjWOy5*&5bRE&ap#_yX-pK{ z?36vI?4%d%Ug*&05T8?^TJE+PP+N_xk;%R5if~S+;=Y6oJOeE7HGyC#vBP_jziaQp zujeOfAJG~lHh$P9JAaEcZOBh?k}H{FIZ=IbY*MTvKwyt4o*^j}#Z6#7{vqO1kL>f} z$i_07v=VVt3=cr7w24m-o1CF2=VOPaIR6D|1uW4+6@J_qjQUk zi?&=eo${VNdkEhv@agsS^~#>=^Y`r8Q`u9w=dVu>)(spnNBpjn&*c)z^zS6~Y=#Zz zW^v+uyd2&Q!q|fib8l~HX-V3P4&NPyq3cB2J=ttFgJy8>qiKJm(FhtoCXDg^Ix>$= z*=ia*$AxcXuCGatG711SYsD;1R_dM3aOfb2Uesw%&^NzV;TBT}P%`j5ubg=D1Y=L)#XU+%Ihg#rV=1<8MJXxQ7riuX4Vn!ZXm;#J*CUS_>No3^E_|2) zCdeA;D5g-t1&kTC*%qM;X}I6n%(6tt6(x!81GP@GH87ks(3z>9u|spYk*aBPE$4d% ze37_VX8uGhcST0{HMbI}vAp~D2-73hJef`xV|L zB9Lav)G*Vq#D(Yu)X7M<1%ndzICI!eAN2!_XYdn`#15IhhM6XtV(c0RdXuZYlWQ1r zt+c(y0pA;6MRz!fOP7ANJ8t$4EX@r!^OFrqvAMg9J2;QIDaJ_Nv}PN{sEQWh*MZ80 z_6{03Dankbwwtz@x+}W~NOe`R&ZryU0oBGyCstgW$`4R$U%9L^=+u@yRsbB_TDaxU z?#MryKK9sSg*)DN>#es27z)h0IX^jN7%J0Mt?;5D#7ay!!T?^yFeV7L!M%}?0FQn; z5eJ0a=)x#9l)2v~$bAhah2Mv~*}FR^hZ<-XdM}V7xSx-rTEs}0!j*A)aF%P!0Rr}o&ZiexEWp??NTW%@rrI+c? z9)0xD{2l2X8sk#3>!$>}zU5dqd#nK3^YnLIsc`$JU$C>!o+>PJ_Lb3jWkW)KjKKDu zrJr8H2FCefj$qG~cnI!|0LnU+FBOZ&i%_zoACHikJq)j$nvn1Z=nXJ_Y4lv0z<|>h z(PWl2<(`B~JAW|~9{+=~{4qpnpHPVKwU|`kRk7t7L3bl~2t1FedDEeLxEo^mSldVN z1GF0*MfZ>AQSo~*;{+p4KG5eW=o5^~Lp_|1mS0o@hCV&fat`&xjGVaeYVrC)B>;D5 zl<*R8YU&e`kh!G}q9kDaac;63C%;U?NJ=TnD5oxscP`~p&u6xU<4%QJF^26( z(y&qqsfhETXH1gkM_N|Q%%yp@hW2|vVjvw?xX0LmffdO*$Nx*=$tfMtUOyhV=w ziG~P)R79f$Yiw9=btkUyUY&pJvAn)MQmRp%8KB%=5o#YjYFmm@M(vsE;#5O9j+$yL zR%dL=C{>ny^yqlI`3lce8%jmj&zDN2o9$!&bo}^neXaGYM8y2xI&TmgG)l%YR8pqZDt;8{1#!~9Za5V@5xIdU&hHa&s$tNp*0N@7| zIO8Zab`76q_-oYIO7Ze56vsr9z>=lu&?67$ha3Fa(jz@TE3vQ-EWd zETY6F7UPEPS#7D=q=ZV~`gH%m$2Peq{VJTBFhC%z}*r{+Wo} z`wox$-hQBXTVOh34-@V-yPx+liyMb zT*0(j)|rktH`JmXMsx2SK%^f!!8KNiyh`OxTtP$hQ(7Fzo-LfBTR z6lf_3HHBetZsn2_mJO{K1|tj;YM5_R!S=26{G!FVVF;5FA)KI8vOeBR=mm9HDp?SU zX@L+n^=Dk<7{aicY(gH=qzhlS367sxb}sPVW^it$&vaAZh_4|1vvA9oPsPFJ;ngwj z!B<;vYADHnHB`X1hn#nU*Okb_Ra+f}qsHs4x)6bA;xP%$bS6V(8@SG&haoI3UiV4Q zw!x`2%4NG_QtIb3W2R8^LMbR+NQ7;%pjvIV8A$2=Z6Qe2k#DE_mbbj+)c*aYbtZ-9 z%Qy<_Pvr7BKL=24GK}q(#e|&(0X{nRB@!ziRjG~PdS^OZt~T{ndO}>(!)QD`AT%wLc-w5{PU%=Knrp+{kX=5_!>TZM0 zOAdg3u~SUXd-!twg%eEJ)$JK@~w{{Jy3=% zc>m*%Kfb$O2mJU$4?Sd8tBdLA$ga_7lokQ)sDqX|8ylPHXf(15QH?>3g3O*{3%3Mu*?c-MPhO^iZF z;=bSH@YjQI_jC(Gxzc$&Ou+YwdH-}pgKxTJpCu)<3tfZmM&rN}kruHL`B*Ap_Vt>% zgY6W>fLTpgu4sfpdwMnN1ZqL1?HzwM#$a1ESdt*9X}c=G3AsW^A0hzZH3?iFWxYjVV8I z4{Z`BNz!5DVn}An7!U-9gV5ikzTRRsI&b{2{y`I8(xw1jC`>Ec;v3VkzrhV+FZOzi zHZk~yAMaecbO|>%xMi#9LV<%Rv_P-76KK37gznAHS4~2!$KIwMvn-2+A+s#&F}1lA zKV}hPR_Et?4Q1{bHz=RFK0LAr*%5?QI&3yWLUrq_IH?ImOVBtOP2#S9MIESoI$!F# zOG2aNE;XWXolXSjVF45y(!V{cP@LkHrCJsirrsz`O-*rw*tudcXA^@@S*~N>xUsRJ zO@XbJvMfGTz^uJceCmTyY)f|_%B8=DQ+J<*iJA4Z5S_hy_ga=kO_N%dwU_gb5W1I{ zm{@z=nz-jGmYd)^D#Wf#*#~-~i$PM(7j7_-8N`;Ofx9WPwEyUyi)=GUB{ zhRv8!R)s>nUMQ#vVa%dbjIlhKMs79&*;rTzUu<=mdfwWltNXg zue9*OJ2yx~ zhFu2dKCrQ|v3Fzd$8J6^d_(Ik&pYS(k<`z3;W*#bFudnWd%8W}aL#?J4rE3$>>Qk% zd~iE{|0~6*80)scpM03`$7rkBV_^(9OhIQsTsh(p6Ie^z*C$f|H)SK|tPJ|yaR;f_ zaeB^E7cN{VeKBug`GUe&XESGa@5Y*IZGCt|R8_sI=zUGi^O$qKbK$~;^6tHX(gjOv zuJP{OXJ;~vv3jhN*YEgc9A&Zx8b-wxdpMV{`*} zxd~|Va)^0Mq{HoDa+Ed=)6sCaH8;ah^_j5-%x-3%E*3fl+HbTWpq55HR1&@ps7 zdbsYU&c&=JXJ5C|q2pmA2!b%++Fi=obXrbU2DEy{RRD}+k<-0SKZ&#g)9S87O>mu< z*M#=k5kh~Uu2gdEdJL0a$8{lwI6S6>SUPj&47a0`mPH!^2Q>!jIKjCg&}6tzsWbT( z#+c`MI{i4G!@A`%+hlf}=-$Dm76O+_`6KH%I@J@gRym9HUz|RD+OgtOwEt$e3QDTzdt8npCRTEtna$ot1^}TZCM*-D7;gwME+?F%|@zc>&#z za&X?G5gBFsaYGF@g#R&{WBym?%<;Q-XwkYHWiCArs2NE zOwMtjSnTjDiVO%#Obj-fWcm3c`Gy&H&G1Fxzk}~ZZ$aO1&XGh07Y%U?Cy3Ktv@9N; ztDF|E`9Tu`Pm;5MV)G=8ctS#vz+gKde(}NEO1gmq-~<#`TqRw3e=bv`xZ(grL9l!s z2mW_BCEa&sS(b67z;Pg;rbz=l&qps67s@#KTUXxwf)wMx3TE`uST@v^iY+ZIEt$kn zKvj))fw2M!z?m&&5K~{v<}n8N9=drXY?Sd9HJ1nozk9E=k`!Wf}Qi%TF*XEnAkwCm-FjXO9raB%Al^Rtavc zjL5i0F-BnwqlK}fv+*{BfSGbtI(+3KB@kL@)Z?(!IXfBy*{@8C^Jf zctPuh!$%h=vvrzNVaTNvQ%j~J*J3QnA(xEjqJ@W1vP3B_LOO&1lm{U9&JjYW;Su5) zln91Rv=7PGLt5Gs-#kXoAwtsK>z3EhSw}Bv1(b6$Fpxmat-8_@(;Z&Pg8Yie2RWxv zLYbm?vbECUJ=YG9A?1OC3xV@mru(OEI?B}jxgYi8UezE5(PG`UA3(XXqdYfPU1uqW`gE*OsMnUBD?Gfl8(w`LNO!!Q*W zLn@>T$d!Tyg?I`ePlyD#Z)kE6E&%26(&pw;%qdI{tp0(J}?o_*^#+|v+m?M z(u-Pm3Uf!YfZ(^`IL22IHW;^U&I}B6DxokU$fk(Z8btH19l?*#9NLX8WXhMcZ~(T7 zoiWF!BV4L$O)fZAMBZC8gw9-O(CYBUN{jOb)0@q;$e)>{NMGp>QY!}BRT|fO&a`dU z?FBDT2JtUibNjd;mycf{F6>UGn$O++mbv$>@OOl8lMN|fbAS#R#-`)$nVH5nm5Qav zZ6q;F-WJaT-%|Fp<6RIhi1WF?mfSDaCx&`K-{PB-hr&`h2q3&at?hl=|F~LUVEb~j z=4OY?eqnLTh5=Vs*kS$%%8^G2gFguqNHoS>0&0w$sjV36Jf_a}ZbL!jqv!d_Afms~ItlcJ2%;%5$t=evHr^HEWZ#UV!Stl*BNv>HNNvZ%o z&D{yo`-avP#Hg49+%I6VhguoD+jU*00_@y06^6Lexz=~ZL8V7R0F4pfUYW4jfC79d ziXwr7B-A%#ON-rWI~|Ps{gcM=KH)ezw~vl9N@26vo2$d9G=CExgzuxKr`@V^S5zq!8D z#sOvP>zz*4C&hreNbyE|`A%njJ%eq~I?MKTC#nv{v3*$a@0o2PE- z>^z{N1}@z4Ue4^pFQLmFYJMuB!JL^%AB;LBddI_EO7r#Hb*?cJ8}-Vv_% z9t%8?9rdHp?er?+-P8Bp8no3L=$0NSaD1}USD|A{=#Pwm1*MYaLLw*tKAYf+1HK7f z=8(~;bhOpsSe_~bM{qB%Il>l z1i$S0wg*vI+G|;IwpMkcyyt?W^NkGKIw}>zka6aFxq5W`Hx)-z-rE6%A$s29hYOx^ z94DugAq~$f=l!ym%X_w$E4v=ENg;28>*e#sD3XrTid@&AEbvR!#L-ZC>Q_~N_46bF zZGY!pfe~EJ`@X2t6Nj=80+Xxpmx98_JcXrT(tH`{w2`o}b&dcUOODsZs`bp0b3QEqCS}0H?VyZ;N+5 zj4cs;ur<!Zs?RDYSt4=meC#ie~QIfOZth z5hqz2RIJ&=G$1nITo*YXzWnm?P4BTx0T6`krL$+3+F<}7Ol$J+sWylEo>jJ!;(-F> z-6NW+xRB?O&e{1b+7YHjh}~$^>loMTjfPE#Wl}a&O)2-a3s)-AM2CRZm8%A|O*?Uv zmOm6DT~ce3hR-_VP{C;Hla_tK9|RFZAS39Xg-sbfY{hW|!(JT301Iq>*ZsQ2IAN4V zBU#UcrM!=rx4*)#VS_$_F}U9%%F{;=g#e=XNz-389~blJ(?i`br}rTQ&m5}WAl9sa zc}m2+*!T~ODiIMZKj1yj^n1-#O%mWM3P#$i^*UgLYxUJO$&&6v4FAyu<{Uco)KiBJ zISkzY{mUltL*hFH&>Ks=-ofF4gDWeg8!3o8aSnLD9&kC;`8*-{yr$gct)Peg08DN{ z7vvBU`ZUry>P-RC97n3`X9jUvRdiK+m^%HjIf@*N7hSqF2euCXXn2mA+_~Vo$@URU z!H>;w0honk8E&KED@Y~;qLz0@+o;mvMzQ_=D+{bpqF>JjF52dnLa~Jhm&E8X3tfqa z{A1|y)KJZhIL~_BuJp6bfaqtb9^qswQ!=7uQWjy8%ZgBC!nI3oIrHAtJ-0;w!1yBc zGz1p^7NOIEzfO|Lc0NsWxg2ce(lo!QlpkV{wnwV=!9Xk>gJtVEzgg@MEUmSa>qh^h zbK^d)=lzD4%X#kSCJsN@ap9BsG|f-8lO&&}dDu#lBT~A*M`YI-Fxr7+;#cAR}rM9iTb{-X|^2R!RV(y{izLL{}j;^)Ol?w zgEV7$&NL|PL}~P)4B;b7IdoZSllJm2B~VrtiS4VL-#6xpiH~%g>yq_kR0A>raK_MK z=(+g8b9F-weMvE>Oi?;)7$pa?Lv^*>tKmIZR|+4j;*@|=7m+9k6ZtQdm(V7t=d<+( z{Y2G}TNwk8^f=v#4lb1SO$5P?q5DJ5pNzF=I(*gXEqn<0OlVUL)+`8W*<5jFG$1^T z=NX2sHs&%@Q{hjpKIb{l$+ef;aXh!@=3DOD?c25#?((h@d`I}AP%and_m}cESUC%% z<2Vp3%XGq0$&9SYC%^g4Z$jl>t$lKF32fVUEz3~47ejUWyY+>nj{4>5`ioEwb=P@^ z9=?v%WwQgBMkZU$R^YnQ*=DPrwQHi}aW@J4-D3ly6(q0w5>3>%1!^@WrKT zkDdR2v?h+H^e)1gfJX~exaC&_eU^Q#@LiD7ohN~LWdMs>wtxQEwM&b9au1~tRhO7N zEf~Xh{mO>?mUG`mI{gqcxujBtqIV%E$x539UqOSa+@N0C38wZa z*?Pp6JE3j6EI~?d>36l(C9O-Pl3^HfP@+Q6;;NvAQ7T!;ndiPo8iy_xi>t-rYEf&g zi?dp5T{>JUmGnn)!~_Sv0UG}(hLq2$)oP^E>3xJGb&Mn7tgld*9y|NUgAd03 z&Zr2VR^o6x!gf@%j*ca_OmU2pYx|5`!Z_@AHhC}#bk^#S8|*m$%EW|uaQN32ARDuC zACBrYo%+LV@5}IaY<$1BZXUAPjTxW|SCYt8COE&MA$M%0*HP;bU|*E)+76f@gYROG z5E^Y~8t7ZMAly=FOZ?c;{#2tOlj3r;r_?)%(Uu%EBoB={d2JZ(+O;bZQ-(1mqFshD zO*8q(v|$j&eNxwbC$-&{cxK4C?q=x`LM+}TlQ#gVyL4S|AI;Yx zTPp+sxNE1=k#ZQ6N?!9tJ8|B~lci2=sP66GnTZLiRGoB}wT{r+Ci$E1lKjSvN4bkj z)GGqb`sim}6UcAeIFb+A_?{SwZ?z@LH{d(y3i>Pb?;xNAOK<>gf(!5n{31e0yui!J zJgk$kpK1H-gEUs(_)OcL->K;n70xuh zit#G=Si!9oC!jL{K$^hv-o`Tm>vm>4K2DThy9v;_Cb)gI+y`O^h!B(Yo&i{e%v<$0 zl<^__+E~V~rV|_S?4fJZq%t`}*uSD&q! zre(65a-2dAABa``Tq zzWLA5$Jz4_4WZvM{}6l?S!g$0gx5<9VlLFJggE_iqNmW*u<)SGShdliB^%&xA>>_v z^tW};Ntme|;zu$Hlj3r#TCub1>&kP5lGe4WNYKW8(qwWudCKQ|6^3n@ct=X_VM6*)=4PM+%Z5#M5e%M^N z{ur$NFn6C)H^y1@dDOBlsmGl!gif!bbV}6&5LFPl;g-8!nEVI1u1jz}PW=2n(E{3y z&U*h-jR85iM1&BXWrq}~i6*V2J$%t&-BY%LEVpz4IzZqsuDhn@CVxMF4--J~#uU|d z?yaBpY};Tj{)Bv4?bfMo*ZXE%)!i}c^(&s+9sm9J=c0Y?`R8-K2U5C)b5FzcFI+qM z>mAjih1ffHFFmePw66YHZ2EU3w*Nl@!5@RkFV7L)u7!Xg_+Rhi$n;O$haLI$5lH?x zOn%uo*58-$S(%>Z8JZTC{+&4z+0LMW=A;KVTJlbQXI%O(^Pr5rx-+p$*I+aw!#^E4 zDszLXhkKfOaHA#5+Mn1fp?&J#41ME|WgeJ*wp(>%KWZZ{MG_OXN4_eG>wn6I0|#p< z_JpMi2kSpk0E_quVAG%z71Kjf*V&bT!IP6CMW%@maluu^_FxH~a-77;cHRy=WvL<4 zVgLW|)a%a(SJbwnoq_`KSc-8abp-mu$@}t zMk+>G<2{*WS?P8F+Y1XLlg}InaZ;a(y~s3kBf}J)tD3$8ThM$euKg#rgc$RKApbJy zt+66TulWMk8IbIvE(o~v!JFFNlDPxf0I}D1Y3tyF31^D|*kVet1ConByF+0Fm^P3t z{N>%=vXE{6)rRoZ|3wHtWrtRCO-+szj*q+W1tVGghgs$gkmLPaRQ$8N+7~t7WBQYreSq$Z4I*T=M2XQo8@vCiVr8+!7Hlu z^P=y=_sh9t#x7Q{O#0*llEgw~uS9eBy%6eNJ&K$=0%{VuOjnE(qD~iGzI@qbpn1Td zg#|nwbL9l3SRL*V-;L)lzr`u>X(cEu?;8v_k~=<*2C0kp<%|8Q(6`3+KO`Dj{ghc%Mbq}lO5nu(&vKN*_|bC0=&tLL*sEn z1U2LNmuhwcH~i8Y!nzQ`<->_Qg00krD6a1P4!c0W+rlU@$^s_KmX-NsYEx}S+GeSY z4pTeO)HNWJ`PS0izuA36s0tZF0xOEkg-jfMR1&zhrFqho}&sf z&xtSUbA3b`T0d%@W@)y#(9=^}9b9i2;yjFWu3q@wP#Zct-)^SQ&${Qm-d^ppA?~e< zxhuyG^6^t2%J=aA7e2orVrwTzZhC@;x-K$%4lX5|(apkEgS3XLDn)bvjt51m@qBSo-+6WmXyg;}0`nvx zjnE61`;DCe9RB(~f)IoV;Z=ml>k%@h5i*_~SH6EA(0@gUJs%0JVwZnMqYw$efeN^$ z7p_f1{U>l;J6xZDhH^OA05`_qrWD*<54Yw+Gy=C3!0oMYM+w{+f+pbZ1l+p-;+=5c zCvblcJXin^&45HDJX{KomOx7fJXQ^l*Fmxyp7nUTrqrC2H$tU5ADzshaY?3rw-_CgkNgl*BbcsclfOZ{;Yt% zBAB&ejt6sfV|}WzzV%pM19oT=)~^xkpTq`qVFP=y!G&0U2pbZ?hDNbrEttC-8{xr5 zbYh+eHad+JxUexkY-|u47sb3`Y(gV8u^gM!f=v!%Qv#T;0Q3EhP3yo84`b6yu^B;Z zW)z#{$7Xx5V{+JBFE+OgoA1LGv|)?NH+u*}Cwqcu!uyX_0d1csUFLr(cyD*JiT#j8*iB;ENTjJQIDXgXiyJ7&g zHGtJNU{|(c+r8M1I&5bG+trBe&R~1o*i}JnZvxxr!uB;|`#Z6#)7XJ9c5Nwk-3;vd zMyw%-9du(iy0Dwv*iEfiV>@`otcmkVohVNFTw z?jUy0g;+cv`_BUGzFzG9TCBMVd(eeF6vPr??2$Ftqs`cVXJC&tV99dqNwBAKSn3n( znR=`>g#E7+d#(+8z8PzaU@z>zUTnZ#YRB4Jv6n;GD;-#e3wv!2_F5PAdJ=o18%tMV zZ@REIhP&n)&=G4@vy zQHrbtsRpSVIW@@XL9RK-)s7DFqC*-`A0O(|fckn+-w^8Cit<7zuNxiOi24`W}tf-(Y^U7?n3c2y3dX7i=g`pQF9nQkdGc{Mi1uDLp>UJ@GqwGK`)|pr?K4nPT*86>9aM)(m=X0eU_UJ>Q1f>d^~T=*33#QWCX? z(aUSlD~;&Y0D83*bu^*ZV(4`rdZP!WW9ZEYdMk|HZbI*@LGK38djn9$kKQjt9~7gk z3uPP7hXM3a9{MPTJ}p9@_Mp$|(C5XdD<5@5(U%42s|4y!qp#!Wn-27C2IYL{yE^oJ z8udibkL~EEB>K4#^;V%@YSFI|^jkOjqZ<90#-SL;{5UGYaSCvp6ppJL=a5RAJ|#GP z3vv2paq>EF`W52z%i{Ep;0#!RGoTA+U@gwTE}X$GocuXBLn?5FWN?O7;|y!Tao6Gu zFUJ|-#ThvOXJk8$Cx$bs3};j?&gdSTf;^lt6*yxHamM!IjEmxU>v6`H<4g$ROyt8% zm~MwosOW~zl*x?#3_n0*!Itc1B5 zVXkwSrxfNnhI#K{zJD|qQ6xK|IwX$LDOjvsv)@g)w4q@Fy zSa%rKeTDV*Vf|&;pcOWFgbiz9qW~Li!p8NmNhoac3Y(6@X2r01GHiYfTin8ygRoUH zY_$km$HUf#uuUm!TMgU3!*(uheK=O&|5fc6ArtD z!=K@ZcQ~pWj&6mc@8Ot#aO^uAHw(v)!U^?oVn3Yp4yWY8sj+ZcF`ORY^nEyE7S1e& zv#R0jVmSL1&N+v3hvB?>IDZ^2_=Su5;o^3g*O`E%|Upp6y83BciQ3INO&(4-g|}*rs2b7_^2H|&V^6<;nRKi>>NI? zgf9-^%SHIA8oqjmuSemVYWOx9zDtMi^Wn!r`0*ZodWD});g?DHH64E2hu?4Ek5~9B zAO0B%{~CsWm&1Q%;lK6pzf|~tG6I$n{8ot|L^gsD?+Bbk5Hc1)$W;Wt?;`kP8$qaF z1fkCngc(K;NO7l_W?WoFRR5gaGMNsvesQO!| z#!sl$dQ^Kis`C@7dl=R0i|R*Eur3Pzff|7t{ev2>Mor?VSy9ydOVqM6YSkIF4x`Xd zsBIFpuZTLdN1dvo&f8Jf6bc7X_uZ&R67@`?UIS6@w@{zwP~QaVw;v6Npg~2^;D^!B z{b)p0G-@&$Jra#cqI9A3KhU_5XnX`sh@y$0Nd?iQIGTJNO_`6TmPJ!jXnGh;Pofzy zG&2LudJoNBkLHX=bJwGJ=g|E3(89cE(Zgu*OK3?HEv<-_T}R6gqZOUe$}n107p*Re z*7QYd<7nM(v_6hD%tsqnqfIZN%~7! zuP4!))6v^~(Yqtjdyk_JpF{E4=%X0=^dgYdwzZjKp=D;Ccmd{j#`090wD)(Ma4Rikr^H%@Vl9P~0+%Tjj*9 zgzI$Ae$OLn3%+O+55HJS>HW$MMJz9`zF*eH)MY2S;DS>2Kk2 zMe+E)ctQrAn1LrR##7$H)8^wDCGm{M@yz$|?5ucB6wl3y=O*yHPx1UPp8qgj5W@@i z<3*eC;_-ON!+2>3FRO}|NAL>a6_4YUDZKg=UK7M?v*NXv@wyDW{yN?`5N}H1%^7&h zcD!{w-gX#o58)l};hmH5-l2HkKlp&~f!p}ddVE;;@Wc4%Vti~Qj>Yit+xTQ%d}=m6 zeI1|ejL&Vy=fn6yRea%7d@+nKh4BL;@q?@JLouLmAU6R3pg6+_01%)U?Fj&iruJO) zX^oX(-m<*bd!MP#1MkaBVXnO|J2ff#z8n-`@B8vn0PB2@u~#Mn$_4}j4^6)>K>fgy z_ob1Y`|ry{tH7g=*@=B3Y?HYFVoVkDoe{q3wgY&r9CRUc&3@pdUD=__^OZIHs%5>zkeK18{? zAn%V&Xxa7~_|)+=^=%hqUM=L2ddly1JsT65DCt5NeHO=!x=?)oCPtNB|Lx>^b&{rs zC`tCG#O#hT-(GZIt&+*MW*51-@UTrLpRCMHaaui2Ec;|t|qg=5F1|es{ zV)><;f6xO<$qbKhMgPyK;4s37GIHZW!GzG8z_ZyQcVvoNP(ai0uZ?C>KsHW;G+>SWkR*gG)d$%u(*z7>lfI{LbkEB|PS zW1fC5G*VIy+Zvv*=R|^G$MKnGd~U`2mUOmHY5Qg8|yBJKsk4g|Ci{@g2=EzBs4M9**Qiv8x2o{3)aU_SDlS@=ABw%4- zqq3!ih#=YsVlDmxK_r!}h?QWILa=Zzu8@IYpP7B$spsqYlW}b*9C|pNni*I1_d8%9 z3TXRVPNjNu@KXQ=uK{uc1yKDeUIOutrOwd?f&^Z@t$fn|_wL#5uU&ekC6G7_fA%nVD>XwE5D>BO#8aW*Zw^QUBKGZ*6tJ=8ntZ0)&ru~ene z)fjEnc_W)v(PM@-ai?zD%(|KeWNBuRuyr| zGHc?*rfyqhooLcDiObR6qF%KP%M{b;R7_Qq8C6S=x-`gZF;yWgDMjX`IOi1PJTyuc z&Z!|mlu+8Eb-D_94H@K2UUGHn#%1`H{RL_& BQ`P_g diff --git a/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/webfonts/fa-v4compatibility.woff2 b/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/@fortawesome/fontawesome-free/webfonts/fa-v4compatibility.woff2 index 73931680d3a50eee48350499d5f7f504e092326f..bb61b589478d8e84e9d487543a20f1e0a5c5d9fc 100644 GIT binary patch delta 4635 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 R6`CEp?j-)aEd3t?0049?#;gDU delta 4671 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 B{wV+e diff --git a/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/abp/core/abp.js b/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/abp/core/abp.js index 7a82f58..45b8ac3 100644 --- a/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/abp/core/abp.js +++ b/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/abp/core/abp.js @@ -480,7 +480,11 @@ var abp = abp || {}; var args = Array.prototype.slice.call(arguments, 1); for (var i = 0; i < callbacks.length; i++) { - callbacks[i].apply(this, args); + try { + callbacks[i].apply(this, args); + } catch(e) { + console.error(e); + } } }; diff --git a/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/bootstrap-daterangepicker/daterangepicker.js b/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/bootstrap-daterangepicker/daterangepicker.js index 4048310..6a49382 100644 --- a/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/bootstrap-daterangepicker/daterangepicker.js +++ b/samples/BookStore/src/BookStore.HttpApi.Host/wwwroot/libs/bootstrap-daterangepicker/daterangepicker.js @@ -305,8 +305,8 @@ end = moment(val, this.locale.format); } if (start !== null && end !== null) { - this.setStartDate(start); - this.setEndDate(end); + this.setStartDate(start.startOf('day')); + this.setEndDate(end.startOf('day')); } } } @@ -370,10 +370,6 @@ this.container.find('.calendar-time').hide(); } - //can't be used together for now - if (this.timePicker && this.autoApply) - this.autoApply = false; - if (this.autoApply) { this.container.addClass('auto-apply'); } @@ -386,9 +382,7 @@ this.container.find('.drp-calendar.left').addClass('single'); this.container.find('.drp-calendar.left').show(); this.container.find('.drp-calendar.right').hide(); - if (!this.timePicker && this.autoApply) { - this.container.addClass('auto-apply'); - } + } if ((typeof options.ranges === 'undefined' && !this.singleDatePicker) || this.alwaysShowCalendars) { @@ -898,6 +892,7 @@ // hours // + html = '\n \n

\n \n
\n \n \n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n \n").replace(/(^|\n)\s*/g, ''); + const sweetHTML = ` +
+ +
    +
    + +

    +
    + + +
    + + +
    + +
    + + +
    +
    +
    + + + +
    +
    +
    +
    +
    +
    +`.replace(/(^|\n)\s*/g, ''); + /** + * @returns {boolean} + */ const resetOldContainer = () => { const oldContainer = getContainer(); - if (!oldContainer) { return false; } - oldContainer.remove(); removeClass([document.documentElement, document.body], [swalClasses['no-backdrop'], swalClasses['toast-shown'], swalClasses['has-column']]); return true; }; - - const resetValidationMessage = () => { + const resetValidationMessage$1 = () => { globalState.currentInstance.resetValidationMessage(); }; - const addInputChangeListeners = () => { const popup = getPopup(); const input = getDirectChildByClass(popup, swalClasses.input); const file = getDirectChildByClass(popup, swalClasses.file); - const range = popup.querySelector(".".concat(swalClasses.range, " input")); - const rangeOutput = popup.querySelector(".".concat(swalClasses.range, " output")); + /** @type {HTMLInputElement} */ + const range = popup.querySelector(`.${swalClasses.range} input`); + /** @type {HTMLOutputElement} */ + const rangeOutput = popup.querySelector(`.${swalClasses.range} output`); const select = getDirectChildByClass(popup, swalClasses.select); - const checkbox = popup.querySelector(".".concat(swalClasses.checkbox, " input")); + /** @type {HTMLInputElement} */ + const checkbox = popup.querySelector(`.${swalClasses.checkbox} input`); const textarea = getDirectChildByClass(popup, swalClasses.textarea); - input.oninput = resetValidationMessage; - file.onchange = resetValidationMessage; - select.onchange = resetValidationMessage; - checkbox.onchange = resetValidationMessage; - textarea.oninput = resetValidationMessage; - + input.oninput = resetValidationMessage$1; + file.onchange = resetValidationMessage$1; + select.onchange = resetValidationMessage$1; + checkbox.onchange = resetValidationMessage$1; + textarea.oninput = resetValidationMessage$1; range.oninput = () => { - resetValidationMessage(); + resetValidationMessage$1(); rangeOutput.value = range.value; }; - range.onchange = () => { - resetValidationMessage(); - range.nextSibling.value = range.value; + resetValidationMessage$1(); + rangeOutput.value = range.value; }; }; + /** + * @param {string | HTMLElement} target + * @returns {HTMLElement} + */ const getTarget = target => typeof target === 'string' ? document.querySelector(target) : target; + /** + * @param {SweetAlertOptions} params + */ const setupAccessibility = params => { const popup = getPopup(); popup.setAttribute('role', params.toast ? 'alert' : 'dialog'); popup.setAttribute('aria-live', params.toast ? 'polite' : 'assertive'); - if (!params.toast) { popup.setAttribute('aria-modal', 'true'); } }; + /** + * @param {HTMLElement} targetElement + */ const setupRTL = targetElement => { if (window.getComputedStyle(targetElement).direction === 'rtl') { addClass(getContainer(), swalClasses.rtl); } }; - /* + + /** * Add modal + backdrop + no-war message for Russians to DOM + * + * @param {SweetAlertOptions} params */ - - const init = params => { // Clean up the old popup container if it exists const oldContainerExisted = resetOldContainer(); - /* istanbul ignore if */ - if (isNodeEnv()) { error('SweetAlert2 requires document to initialize'); return; } - const container = document.createElement('div'); container.className = swalClasses.container; - if (oldContainerExisted) { addClass(container, swalClasses['no-transition']); } - setInnerHtml(container, sweetHTML); const targetElement = getTarget(params.target); targetElement.appendChild(container); setupAccessibility(params); setupRTL(targetElement); addInputChangeListeners(); - noWarMessageForRussians(container, params); - }; - - const noWarMessageForRussians = (container, params) => { - if (params.toast) { - return; - } // This message is targeted at people who are corrupted by propaganda, everybody else - // is already against war either silently or actively. - // - // The point is to wrap the truth-bomb into a patriotic title so they will actually click it - // and listen to the uncomfortable truth about the war from the people they love or respect. - - - const message = getRandomElement([{ - text: 'ШВАРЦЕНЕГГЕР обратился
    к РУССКОМУ НАРОДУ о войне', - // Arnold is loved in Russia by all people including those who are for this war - // His speech might change the mind of those who are brainwashed by propaganda - youtubeId: 'fWClXZd9c78' - }, { - text: 'РУССКИЙ ПАТРИОТ
    открыл главную тайну спецоперации', - // In this video one of the most famous Russian nationalist leaders, Dmitry Demushkin, - // explains that this war has no sense and produces the exact opposite result of what - // it was intended to do. - youtubeId: '_RjBNkn88yA' - }, { - text: 'ГЕРОЙ НОВОРОССИИ СТРЕЛКОВ
    дал оценку ходу спецоперации', - // In this video Igor Girkin, who played a key role in the annexation of Crimea, - // explains that this war has failed already and all possible outcomes are bad for Russia. - youtubeId: 'yUmzQT4C8JY' - }, { - text: 'ФИНСКИЙ ДРУГ РОССИИ
    говорит ПО-РУССКИ о спецоперации', - youtubeId: 'hkCYb6edUrQ' - }]); // The message will only be shown to Russian users visiting Russian sites - - if (navigator.language === 'ru' && location.host.match(/\.(ru|su|xn--p1ai)$/)) { - const noWar = document.createElement('div'); - noWar.className = swalClasses['no-war']; - setInnerHtml(noWar, "
    ").concat(message.text, "")); - container.appendChild(noWar); - container.style.paddingTop = '4em'; - } }; /** * @param {HTMLElement | object | string} param * @param {HTMLElement} target */ - const parseHtmlToContainer = (param, target) => { // DOM element if (param instanceof HTMLElement) { target.appendChild(param); - } // Object + } + + // Object else if (typeof param === 'object') { handleObject(param, target); - } // Plain string + } + + // Plain string else if (param) { setInnerHtml(target, param); } }; + /** - * @param {object} param + * @param {any} param * @param {HTMLElement} target */ - const handleObject = (param, target) => { // JQuery element(s) if (param.jquery) { handleJqueryElem(target, param); - } // For other objects use their string representation + } + + // For other objects use their string representation else { setInnerHtml(target, param.toString()); } }; + /** + * @param {HTMLElement} target + * @param {any} elem + */ const handleJqueryElem = (target, elem) => { target.textContent = ''; - if (0 in elem) { - for (let i = 0; (i in elem); i++) { + for (let i = 0; i in elem; i++) { target.appendChild(elem[i].cloneNode(true)); } } else { @@ -785,71 +878,53 @@ } }; - const animationEndEvent = (() => { - // Prevent run in Node env - - /* istanbul ignore if */ - if (isNodeEnv()) { - return false; - } - - const testEl = document.createElement('div'); - const transEndEventNames = { - WebkitAnimation: 'webkitAnimationEnd', - // Chrome, Safari and Opera - animation: 'animationend' // Standard syntax - - }; - - for (const i in transEndEventNames) { - if (Object.prototype.hasOwnProperty.call(transEndEventNames, i) && typeof testEl.style[i] !== 'undefined') { - return transEndEventNames[i]; - } - } - - return false; - })(); - - // https://github.com/twbs/bootstrap/blob/master/js/src/modal.js - - const measureScrollbar = () => { - const scrollDiv = document.createElement('div'); - scrollDiv.className = swalClasses['scrollbar-measure']; - document.body.appendChild(scrollDiv); - const scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth; - document.body.removeChild(scrollDiv); - return scrollbarWidth; - }; - + /** + * @param {SweetAlert} instance + * @param {SweetAlertOptions} params + */ const renderActions = (instance, params) => { const actions = getActions(); - const loader = getLoader(); // Actions (buttons) wrapper + const loader = getLoader(); + if (!actions || !loader) { + return; + } + // Actions (buttons) wrapper if (!params.showConfirmButton && !params.showDenyButton && !params.showCancelButton) { hide(actions); } else { show(actions); - } // Custom class - + } - applyCustomClass(actions, params, 'actions'); // Render all the buttons + // Custom class + applyCustomClass(actions, params, 'actions'); - renderButtons(actions, loader, params); // Loader + // Render all the buttons + renderButtons(actions, loader, params); - setInnerHtml(loader, params.loaderHtml); + // Loader + setInnerHtml(loader, params.loaderHtml || ''); applyCustomClass(loader, params, 'loader'); }; + /** + * @param {HTMLElement} actions + * @param {HTMLElement} loader + * @param {SweetAlertOptions} params + */ function renderButtons(actions, loader, params) { const confirmButton = getConfirmButton(); const denyButton = getDenyButton(); - const cancelButton = getCancelButton(); // Render buttons + const cancelButton = getCancelButton(); + if (!confirmButton || !denyButton || !cancelButton) { + return; + } + // Render buttons renderButton(confirmButton, 'confirm', params); renderButton(denyButton, 'deny', params); renderButton(cancelButton, 'cancel', params); handleButtonsStyling(confirmButton, denyButton, cancelButton, params); - if (params.reverseButtons) { if (params.toast) { actions.insertBefore(cancelButton, confirmButton); @@ -862,41 +937,88 @@ } } + /** + * @param {HTMLElement} confirmButton + * @param {HTMLElement} denyButton + * @param {HTMLElement} cancelButton + * @param {SweetAlertOptions} params + */ function handleButtonsStyling(confirmButton, denyButton, cancelButton, params) { if (!params.buttonsStyling) { - return removeClass([confirmButton, denyButton, cancelButton], swalClasses.styled); + removeClass([confirmButton, denyButton, cancelButton], swalClasses.styled); + return; } + addClass([confirmButton, denyButton, cancelButton], swalClasses.styled); - addClass([confirmButton, denyButton, cancelButton], swalClasses.styled); // Buttons background colors - + // Buttons background colors if (params.confirmButtonColor) { confirmButton.style.backgroundColor = params.confirmButtonColor; addClass(confirmButton, swalClasses['default-outline']); } - if (params.denyButtonColor) { denyButton.style.backgroundColor = params.denyButtonColor; addClass(denyButton, swalClasses['default-outline']); } - if (params.cancelButtonColor) { cancelButton.style.backgroundColor = params.cancelButtonColor; addClass(cancelButton, swalClasses['default-outline']); } } + /** + * @param {HTMLElement} button + * @param {'confirm' | 'deny' | 'cancel'} buttonType + * @param {SweetAlertOptions} params + */ function renderButton(button, buttonType, params) { - toggle(button, params["show".concat(capitalizeFirstLetter(buttonType), "Button")], 'inline-block'); - setInnerHtml(button, params["".concat(buttonType, "ButtonText")]); // Set caption text + const buttonName = /** @type {'Confirm' | 'Deny' | 'Cancel'} */capitalizeFirstLetter(buttonType); + toggle(button, params[`show${buttonName}Button`], 'inline-block'); + setInnerHtml(button, params[`${buttonType}ButtonText`] || ''); // Set caption text + button.setAttribute('aria-label', params[`${buttonType}ButtonAriaLabel`] || ''); // ARIA label - button.setAttribute('aria-label', params["".concat(buttonType, "ButtonAriaLabel")]); // ARIA label // Add buttons custom classes - button.className = swalClasses[buttonType]; - applyCustomClass(button, params, "".concat(buttonType, "Button")); - addClass(button, params["".concat(buttonType, "ButtonClass")]); + applyCustomClass(button, params, `${buttonType}Button`); } + /** + * @param {SweetAlert} instance + * @param {SweetAlertOptions} params + */ + const renderCloseButton = (instance, params) => { + const closeButton = getCloseButton(); + if (!closeButton) { + return; + } + setInnerHtml(closeButton, params.closeButtonHtml || ''); + + // Custom class + applyCustomClass(closeButton, params, 'closeButton'); + toggle(closeButton, params.showCloseButton); + closeButton.setAttribute('aria-label', params.closeButtonAriaLabel || ''); + }; + + /** + * @param {SweetAlert} instance + * @param {SweetAlertOptions} params + */ + const renderContainer = (instance, params) => { + const container = getContainer(); + if (!container) { + return; + } + handleBackdropParam(container, params.backdrop); + handlePositionParam(container, params.position); + handleGrowParam(container, params.grow); + + // Custom class + applyCustomClass(container, params, 'container'); + }; + + /** + * @param {HTMLElement} container + * @param {SweetAlertOptions['backdrop']} backdrop + */ function handleBackdropParam(container, backdrop) { if (typeof backdrop === 'string') { container.style.background = backdrop; @@ -905,7 +1027,14 @@ } } + /** + * @param {HTMLElement} container + * @param {SweetAlertOptions['position']} position + */ function handlePositionParam(container, position) { + if (!position) { + return; + } if (position in swalClasses) { addClass(container, swalClasses[position]); } else { @@ -914,29 +1043,16 @@ } } + /** + * @param {HTMLElement} container + * @param {SweetAlertOptions['grow']} grow + */ function handleGrowParam(container, grow) { - if (grow && typeof grow === 'string') { - const growClass = "grow-".concat(grow); - - if (growClass in swalClasses) { - addClass(container, swalClasses[growClass]); - } - } - } - - const renderContainer = (instance, params) => { - const container = getContainer(); - - if (!container) { + if (!grow) { return; } - - handleBackdropParam(container, params.backdrop); - handlePositionParam(container, params.position); - handleGrowParam(container, params.grow); // Custom class - - applyCustomClass(container, params, 'container'); - }; + addClass(container, swalClasses[`grow-${grow}`]); + } /** * This module contains `WeakMap`s for each effectively-"private property" that a `Swal` has. @@ -947,201 +1063,209 @@ * Once we have the changes from that PR in Babel, and our core class fits reasonable in *one module* * then we can use that language feature. */ + var privateProps = { - awaitingPromise: new WeakMap(), - promise: new WeakMap(), innerParams: new WeakMap(), domCache: new WeakMap() }; /// - /** @type {InputClass[]} */ + + /** @type {InputClass[]} */ const inputClasses = ['input', 'file', 'range', 'select', 'radio', 'checkbox', 'textarea']; + /** - * @param {SweetAlert2} instance + * @param {SweetAlert} instance * @param {SweetAlertOptions} params */ - const renderInput = (instance, params) => { const popup = getPopup(); + if (!popup) { + return; + } const innerParams = privateProps.innerParams.get(instance); const rerender = !innerParams || params.input !== innerParams.input; inputClasses.forEach(inputClass => { - const inputContainer = getDirectChildByClass(popup, swalClasses[inputClass]); // set attributes + const inputContainer = getDirectChildByClass(popup, swalClasses[inputClass]); + if (!inputContainer) { + return; + } - setAttributes(inputClass, params.inputAttributes); // set class + // set attributes + setAttributes(inputClass, params.inputAttributes); + // set class inputContainer.className = swalClasses[inputClass]; - if (rerender) { hide(inputContainer); } }); - if (params.input) { if (rerender) { showInput(params); - } // set custom class - - + } + // set custom class setCustomClass(params); } }; + /** * @param {SweetAlertOptions} params */ - const showInput = params => { + if (!params.input) { + return; + } if (!renderInputType[params.input]) { - return error("Unexpected type of input! Expected \"text\", \"email\", \"password\", \"number\", \"tel\", \"select\", \"radio\", \"checkbox\", \"textarea\", \"file\" or \"url\", got \"".concat(params.input, "\"")); + error(`Unexpected type of input! Expected ${Object.keys(renderInputType).join(' | ')}, got "${params.input}"`); + return; } - const inputContainer = getInputContainer(params.input); + if (!inputContainer) { + return; + } const input = renderInputType[params.input](inputContainer, params); - show(inputContainer); // input autofocus + show(inputContainer); - setTimeout(() => { - focusInput(input); - }); + // input autofocus + if (params.inputAutoFocus) { + setTimeout(() => { + focusInput(input); + }); + } }; + /** * @param {HTMLInputElement} input */ - - const removeAttributes = input => { for (let i = 0; i < input.attributes.length; i++) { const attrName = input.attributes[i].name; - - if (!['type', 'value', 'style'].includes(attrName)) { + if (!['id', 'type', 'value', 'style'].includes(attrName)) { input.removeAttribute(attrName); } } }; + /** * @param {InputClass} inputClass * @param {SweetAlertOptions['inputAttributes']} inputAttributes */ - - const setAttributes = (inputClass, inputAttributes) => { - const input = getInput(getPopup(), inputClass); - + const popup = getPopup(); + if (!popup) { + return; + } + const input = getInput$1(popup, inputClass); if (!input) { return; } - removeAttributes(input); - for (const attr in inputAttributes) { input.setAttribute(attr, inputAttributes[attr]); } }; + /** * @param {SweetAlertOptions} params */ - - const setCustomClass = params => { + if (!params.input) { + return; + } const inputContainer = getInputContainer(params.input); - - if (typeof params.customClass === 'object') { - addClass(inputContainer, params.customClass.input); + if (inputContainer) { + applyCustomClass(inputContainer, params, 'input'); } }; + /** * @param {HTMLInputElement | HTMLTextAreaElement} input * @param {SweetAlertOptions} params */ - - const setInputPlaceholder = (input, params) => { - if (!input.placeholder || params.inputPlaceholder) { + if (!input.placeholder && params.inputPlaceholder) { input.placeholder = params.inputPlaceholder; } }; + /** * @param {Input} input * @param {Input} prependTo * @param {SweetAlertOptions} params */ - - const setInputLabel = (input, prependTo, params) => { if (params.inputLabel) { - input.id = swalClasses.input; const label = document.createElement('label'); const labelClass = swalClasses['input-label']; label.setAttribute('for', input.id); label.className = labelClass; - if (typeof params.customClass === 'object') { addClass(label, params.customClass.inputLabel); } - label.innerText = params.inputLabel; prependTo.insertAdjacentElement('beforebegin', label); } }; + /** - * @param {SweetAlertOptions['input']} inputType - * @returns {HTMLElement} + * @param {SweetAlertInput} inputType + * @returns {HTMLElement | undefined} */ - - const getInputContainer = inputType => { - return getDirectChildByClass(getPopup(), swalClasses[inputType] || swalClasses.input); + const popup = getPopup(); + if (!popup) { + return; + } + return getDirectChildByClass(popup, swalClasses[(/** @type {SwalClass} */inputType)] || swalClasses.input); }; + /** * @param {HTMLInputElement | HTMLOutputElement | HTMLTextAreaElement} input * @param {SweetAlertOptions['inputValue']} inputValue */ - - const checkAndSetInputValue = (input, inputValue) => { if (['string', 'number'].includes(typeof inputValue)) { - input.value = "".concat(inputValue); + input.value = `${inputValue}`; } else if (!isPromise(inputValue)) { - warn("Unexpected type of inputValue! Expected \"string\", \"number\" or \"Promise\", got \"".concat(typeof inputValue, "\"")); + warn(`Unexpected type of inputValue! Expected "string", "number" or "Promise", got "${typeof inputValue}"`); } }; - /** @type Record Input> */ - + /** @type {Record Input>} */ const renderInputType = {}; + /** * @param {HTMLInputElement} input * @param {SweetAlertOptions} params * @returns {HTMLInputElement} */ - - renderInputType.text = renderInputType.email = renderInputType.password = renderInputType.number = renderInputType.tel = renderInputType.url = (input, params) => { + renderInputType.text = renderInputType.email = renderInputType.password = renderInputType.number = renderInputType.tel = renderInputType.url = renderInputType.search = renderInputType.date = renderInputType['datetime-local'] = renderInputType.time = renderInputType.week = renderInputType.month = /** @type {(input: Input | HTMLElement, params: SweetAlertOptions) => Input} */ + (input, params) => { checkAndSetInputValue(input, params.inputValue); setInputLabel(input, input, params); setInputPlaceholder(input, params); input.type = params.input; return input; }; + /** * @param {HTMLInputElement} input * @param {SweetAlertOptions} params * @returns {HTMLInputElement} */ - - renderInputType.file = (input, params) => { setInputLabel(input, input, params); setInputPlaceholder(input, params); return input; }; + /** * @param {HTMLInputElement} range * @param {SweetAlertOptions} params * @returns {HTMLInputElement} */ - - renderInputType.range = (range, params) => { const rangeInput = range.querySelector('input'); const rangeOutput = range.querySelector('output'); @@ -1151,16 +1275,14 @@ setInputLabel(rangeInput, range, params); return range; }; + /** * @param {HTMLSelectElement} select * @param {SweetAlertOptions} params * @returns {HTMLSelectElement} */ - - renderInputType.select = (select, params) => { select.textContent = ''; - if (params.inputPlaceholder) { const placeholder = document.createElement('option'); setInnerHtml(placeholder, params.inputPlaceholder); @@ -1169,70 +1291,66 @@ placeholder.selected = true; select.appendChild(placeholder); } - setInputLabel(select, select, params); return select; }; + /** * @param {HTMLInputElement} radio * @returns {HTMLInputElement} */ - - renderInputType.radio = radio => { radio.textContent = ''; return radio; }; + /** * @param {HTMLLabelElement} checkboxContainer * @param {SweetAlertOptions} params * @returns {HTMLInputElement} */ - - renderInputType.checkbox = (checkboxContainer, params) => { - const checkbox = getInput(getPopup(), 'checkbox'); + const checkbox = getInput$1(getPopup(), 'checkbox'); checkbox.value = '1'; - checkbox.id = swalClasses.checkbox; checkbox.checked = Boolean(params.inputValue); const label = checkboxContainer.querySelector('span'); - setInnerHtml(label, params.inputPlaceholder); + setInnerHtml(label, params.inputPlaceholder || params.inputLabel); return checkbox; }; + /** * @param {HTMLTextAreaElement} textarea * @param {SweetAlertOptions} params * @returns {HTMLTextAreaElement} */ - - renderInputType.textarea = (textarea, params) => { checkAndSetInputValue(textarea, params.inputValue); setInputPlaceholder(textarea, params); setInputLabel(textarea, textarea, params); + /** * @param {HTMLElement} el * @returns {number} */ + const getMargin = el => parseInt(window.getComputedStyle(el).marginLeft) + parseInt(window.getComputedStyle(el).marginRight); - const getMargin = el => parseInt(window.getComputedStyle(el).marginLeft) + parseInt(window.getComputedStyle(el).marginRight); // https://github.com/sweetalert2/sweetalert2/issues/2291 - - + // https://github.com/sweetalert2/sweetalert2/issues/2291 setTimeout(() => { // https://github.com/sweetalert2/sweetalert2/issues/1699 if ('MutationObserver' in window) { const initialPopupWidth = parseInt(window.getComputedStyle(getPopup()).width); - const textareaResizeHandler = () => { + // check if texarea is still in document (i.e. popup wasn't closed in the meantime) + if (!document.body.contains(textarea)) { + return; + } const textareaWidth = textarea.offsetWidth + getMargin(textarea); - if (textareaWidth > initialPopupWidth) { - getPopup().style.width = "".concat(textareaWidth, "px"); + getPopup().style.width = `${textareaWidth}px`; } else { - getPopup().style.width = null; + applyNumericalStyle(getPopup(), 'width', params.width); } }; - new MutationObserver(textareaResizeHandler).observe(textarea, { attributes: true, attributeFilter: ['style'] @@ -1242,346 +1360,376 @@ return textarea; }; + /** + * @param {SweetAlert} instance + * @param {SweetAlertOptions} params + */ const renderContent = (instance, params) => { const htmlContainer = getHtmlContainer(); - applyCustomClass(htmlContainer, params, 'htmlContainer'); // Content as HTML + if (!htmlContainer) { + return; + } + showWhenInnerHtmlPresent(htmlContainer); + applyCustomClass(htmlContainer, params, 'htmlContainer'); + // Content as HTML if (params.html) { parseHtmlToContainer(params.html, htmlContainer); show(htmlContainer, 'block'); - } // Content as plain text + } + + // Content as plain text else if (params.text) { htmlContainer.textContent = params.text; show(htmlContainer, 'block'); - } // No content + } + + // No content else { hide(htmlContainer); } - renderInput(instance, params); }; + /** + * @param {SweetAlert} instance + * @param {SweetAlertOptions} params + */ const renderFooter = (instance, params) => { const footer = getFooter(); - toggle(footer, params.footer); - + if (!footer) { + return; + } + showWhenInnerHtmlPresent(footer); + toggle(footer, params.footer, 'block'); if (params.footer) { parseHtmlToContainer(params.footer, footer); - } // Custom class - + } + // Custom class applyCustomClass(footer, params, 'footer'); }; - const renderCloseButton = (instance, params) => { - const closeButton = getCloseButton(); - setInnerHtml(closeButton, params.closeButtonHtml); // Custom class - - applyCustomClass(closeButton, params, 'closeButton'); - toggle(closeButton, params.showCloseButton); - closeButton.setAttribute('aria-label', params.closeButtonAriaLabel); - }; - - /** - * @typedef { import('sweetalert2') } SweetAlert2 - * @typedef { import('sweetalert2').SweetAlertOptions } SweetAlertOptions - */ - /** - * @param {SweetAlert2} instance + * @param {SweetAlert} instance * @param {SweetAlertOptions} params */ - const renderIcon = (instance, params) => { const innerParams = privateProps.innerParams.get(instance); - const icon = getIcon(); // if the given icon already rendered, apply the styling without re-rendering the icon + const icon = getIcon(); + if (!icon) { + return; + } + // if the given icon already rendered, apply the styling without re-rendering the icon if (innerParams && params.icon === innerParams.icon) { // Custom or default content setContent(icon, params); applyStyles(icon, params); return; } - if (!params.icon && !params.iconHtml) { - return hide(icon); + hide(icon); + return; } - if (params.icon && Object.keys(iconTypes).indexOf(params.icon) === -1) { - error("Unknown icon! Expected \"success\", \"error\", \"warning\", \"info\" or \"question\", got \"".concat(params.icon, "\"")); - return hide(icon); + error(`Unknown icon! Expected "success", "error", "warning", "info" or "question", got "${params.icon}"`); + hide(icon); + return; } + show(icon); - show(icon); // Custom or default content - + // Custom or default content setContent(icon, params); - applyStyles(icon, params); // Animate icon + applyStyles(icon, params); - addClass(icon, params.showClass.icon); + // Animate icon + addClass(icon, params.showClass && params.showClass.icon); }; + /** * @param {HTMLElement} icon * @param {SweetAlertOptions} params */ - const applyStyles = (icon, params) => { - for (const iconType in iconTypes) { + for (const [iconType, iconClassName] of Object.entries(iconTypes)) { if (params.icon !== iconType) { - removeClass(icon, iconTypes[iconType]); + removeClass(icon, iconClassName); } } + addClass(icon, params.icon && iconTypes[params.icon]); - addClass(icon, iconTypes[params.icon]); // Icon color + // Icon color + setColor(icon, params); - setColor(icon, params); // Success icon background color - - adjustSuccessIconBackgroundColor(); // Custom class + // Success icon background color + adjustSuccessIconBackgroundColor(); + // Custom class applyCustomClass(icon, params, 'icon'); - }; // Adjust success icon background color to match the popup background color - + }; + // Adjust success icon background color to match the popup background color const adjustSuccessIconBackgroundColor = () => { const popup = getPopup(); + if (!popup) { + return; + } const popupBackgroundColor = window.getComputedStyle(popup).getPropertyValue('background-color'); + /** @type {NodeListOf} */ const successIconParts = popup.querySelectorAll('[class^=swal2-success-circular-line], .swal2-success-fix'); - for (let i = 0; i < successIconParts.length; i++) { successIconParts[i].style.backgroundColor = popupBackgroundColor; } }; + const successIconHtml = ` +
    + +
    +
    +`; + const errorIconHtml = ` + + + + +`; - const successIconHtml = "\n
    \n \n
    \n
    \n"; - const errorIconHtml = "\n \n \n \n \n"; /** * @param {HTMLElement} icon * @param {SweetAlertOptions} params */ - const setContent = (icon, params) => { - icon.textContent = ''; - - if (params.iconHtml) { - setInnerHtml(icon, iconContent(params.iconHtml)); + if (!params.icon && !params.iconHtml) { + return; + } + let oldContent = icon.innerHTML; + let newContent = ''; + if (params.iconHtml) { + newContent = iconContent(params.iconHtml); } else if (params.icon === 'success') { - setInnerHtml(icon, successIconHtml); + newContent = successIconHtml; + oldContent = oldContent.replace(/ style=".*?"/g, ''); // undo adjustSuccessIconBackgroundColor() } else if (params.icon === 'error') { - setInnerHtml(icon, errorIconHtml); - } else { + newContent = errorIconHtml; + } else if (params.icon) { const defaultIconHtml = { question: '?', warning: '!', info: 'i' }; - setInnerHtml(icon, iconContent(defaultIconHtml[params.icon])); + newContent = iconContent(defaultIconHtml[params.icon]); + } + if (oldContent.trim() !== newContent.trim()) { + setInnerHtml(icon, newContent); } }; + /** * @param {HTMLElement} icon * @param {SweetAlertOptions} params */ - - const setColor = (icon, params) => { if (!params.iconColor) { return; } - icon.style.color = params.iconColor; icon.style.borderColor = params.iconColor; - for (const sel of ['.swal2-success-line-tip', '.swal2-success-line-long', '.swal2-x-mark-line-left', '.swal2-x-mark-line-right']) { - setStyle(icon, sel, 'backgroundColor', params.iconColor); + setStyle(icon, sel, 'background-color', params.iconColor); } - - setStyle(icon, '.swal2-success-ring', 'borderColor', params.iconColor); + setStyle(icon, '.swal2-success-ring', 'border-color', params.iconColor); }; - /** - * @param {string} content - */ - - - const iconContent = content => "
    ").concat(content, "
    "); /** - * @typedef { import('sweetalert2') } SweetAlert2 - * @typedef { import('sweetalert2').SweetAlertOptions } SweetAlertOptions + * @param {string} content + * @returns {string} */ + const iconContent = content => `
    ${content}
    `; /** - * @param {SweetAlert2} instance + * @param {SweetAlert} instance * @param {SweetAlertOptions} params */ - const renderImage = (instance, params) => { const image = getImage(); - + if (!image) { + return; + } if (!params.imageUrl) { - return hide(image); + hide(image); + return; } + show(image, ''); - show(image, ''); // Src, alt - + // Src, alt image.setAttribute('src', params.imageUrl); - image.setAttribute('alt', params.imageAlt); // Width, height + image.setAttribute('alt', params.imageAlt || ''); + // Width, height applyNumericalStyle(image, 'width', params.imageWidth); - applyNumericalStyle(image, 'height', params.imageHeight); // Class + applyNumericalStyle(image, 'height', params.imageHeight); + // Class image.className = swalClasses.image; applyCustomClass(image, params, 'image'); }; /** - * @typedef { import('sweetalert2') } SweetAlert2 - * @typedef { import('sweetalert2').SweetAlertOptions } SweetAlertOptions + * @param {SweetAlert} instance + * @param {SweetAlertOptions} params */ + const renderPopup = (instance, params) => { + const container = getContainer(); + const popup = getPopup(); + if (!container || !popup) { + return; + } + + // Width + // https://github.com/sweetalert2/sweetalert2/issues/2170 + if (params.toast) { + applyNumericalStyle(container, 'width', params.width); + popup.style.width = '100%'; + const loader = getLoader(); + if (loader) { + popup.insertBefore(loader, getIcon()); + } + } else { + applyNumericalStyle(popup, 'width', params.width); + } + + // Padding + applyNumericalStyle(popup, 'padding', params.padding); + + // Color + if (params.color) { + popup.style.color = params.color; + } + + // Background + if (params.background) { + popup.style.background = params.background; + } + hide(getValidationMessage()); + + // Classes + addClasses$1(popup, params); + }; /** - * @param {SweetAlert2} instance + * @param {HTMLElement} popup * @param {SweetAlertOptions} params */ + const addClasses$1 = (popup, params) => { + const showClass = params.showClass || {}; + // Default Class + showClass when updating Swal.update({}) + popup.className = `${swalClasses.popup} ${isVisible$1(popup) ? showClass.popup : ''}`; + if (params.toast) { + addClass([document.documentElement, document.body], swalClasses['toast-shown']); + addClass(popup, swalClasses.toast); + } else { + addClass(popup, swalClasses.modal); + } - const renderProgressSteps = (instance, params) => { - const progressStepsContainer = getProgressSteps(); + // Custom class + applyCustomClass(popup, params, 'popup'); + // TODO: remove in the next major + if (typeof params.customClass === 'string') { + addClass(popup, params.customClass); + } - if (!params.progressSteps || params.progressSteps.length === 0) { - return hide(progressStepsContainer); + // Icon class (#1842) + if (params.icon) { + addClass(popup, swalClasses[`icon-${params.icon}`]); } + }; + /** + * @param {SweetAlert} instance + * @param {SweetAlertOptions} params + */ + const renderProgressSteps = (instance, params) => { + const progressStepsContainer = getProgressSteps(); + if (!progressStepsContainer) { + return; + } + const { + progressSteps, + currentProgressStep + } = params; + if (!progressSteps || progressSteps.length === 0 || currentProgressStep === undefined) { + hide(progressStepsContainer); + return; + } show(progressStepsContainer); progressStepsContainer.textContent = ''; - - if (params.currentProgressStep >= params.progressSteps.length) { + if (currentProgressStep >= progressSteps.length) { warn('Invalid currentProgressStep parameter, it should be less than progressSteps.length ' + '(currentProgressStep like JS arrays starts from 0)'); } - - params.progressSteps.forEach((step, index) => { + progressSteps.forEach((step, index) => { const stepEl = createStepElement(step); progressStepsContainer.appendChild(stepEl); - - if (index === params.currentProgressStep) { + if (index === currentProgressStep) { addClass(stepEl, swalClasses['active-progress-step']); } - - if (index !== params.progressSteps.length - 1) { + if (index !== progressSteps.length - 1) { const lineEl = createLineElement(params); progressStepsContainer.appendChild(lineEl); } }); }; + /** * @param {string} step * @returns {HTMLLIElement} */ - const createStepElement = step => { const stepEl = document.createElement('li'); addClass(stepEl, swalClasses['progress-step']); setInnerHtml(stepEl, step); return stepEl; }; + /** * @param {SweetAlertOptions} params * @returns {HTMLLIElement} */ - - const createLineElement = params => { const lineEl = document.createElement('li'); addClass(lineEl, swalClasses['progress-step-line']); - if (params.progressStepsDistance) { applyNumericalStyle(lineEl, 'width', params.progressStepsDistance); } - return lineEl; }; + /** + * @param {SweetAlert} instance + * @param {SweetAlertOptions} params + */ const renderTitle = (instance, params) => { const title = getTitle(); + if (!title) { + return; + } + showWhenInnerHtmlPresent(title); toggle(title, params.title || params.titleText, 'block'); - if (params.title) { parseHtmlToContainer(params.title, title); } - if (params.titleText) { title.innerText = params.titleText; - } // Custom class - + } + // Custom class applyCustomClass(title, params, 'title'); }; /** - * @typedef { import('sweetalert2') } SweetAlert2 - * @typedef { import('sweetalert2').SweetAlertOptions } SweetAlertOptions - */ - - /** - * @param {SweetAlert2} instance - * @param {SweetAlertOptions} params - */ - - const renderPopup = (instance, params) => { - const container = getContainer(); - const popup = getPopup(); // Width - // https://github.com/sweetalert2/sweetalert2/issues/2170 - - if (params.toast) { - applyNumericalStyle(container, 'width', params.width); - popup.style.width = '100%'; - popup.insertBefore(getLoader(), getIcon()); - } else { - applyNumericalStyle(popup, 'width', params.width); - } // Padding - - - applyNumericalStyle(popup, 'padding', params.padding); // Color - - if (params.color) { - popup.style.color = params.color; - } // Background - - - if (params.background) { - popup.style.background = params.background; - } - - hide(getValidationMessage()); // Classes - - addClasses(popup, params); - }; - /** - * @param {HTMLElement} popup + * @param {SweetAlert} instance * @param {SweetAlertOptions} params */ - - const addClasses = (popup, params) => { - // Default Class + showClass when updating Swal.update({}) - popup.className = "".concat(swalClasses.popup, " ").concat(isVisible(popup) ? params.showClass.popup : ''); - - if (params.toast) { - addClass([document.documentElement, document.body], swalClasses['toast-shown']); - addClass(popup, swalClasses.toast); - } else { - addClass(popup, swalClasses.modal); - } // Custom class - - - applyCustomClass(popup, params, 'popup'); - - if (typeof params.customClass === 'string') { - addClass(popup, params.customClass); - } // Icon class (#1842) - - - if (params.icon) { - addClass(popup, swalClasses["icon-".concat(params.icon)]); - } - }; - const render = (instance, params) => { renderPopup(instance, params); renderContainer(instance, params); @@ -1593,12 +1741,47 @@ renderContent(instance, params); renderActions(instance, params); renderFooter(instance, params); - - if (typeof params.didRender === 'function') { - params.didRender(getPopup()); + const popup = getPopup(); + if (typeof params.didRender === 'function' && popup) { + params.didRender(popup); } + globalState.eventEmitter.emit('didRender', popup); + }; + + /* + * Global function to determine if SweetAlert2 popup is shown + */ + const isVisible = () => { + return isVisible$1(getPopup()); + }; + + /* + * Global function to click 'Confirm' button + */ + const clickConfirm = () => { + var _dom$getConfirmButton; + return (_dom$getConfirmButton = getConfirmButton()) === null || _dom$getConfirmButton === void 0 ? void 0 : _dom$getConfirmButton.click(); + }; + + /* + * Global function to click 'Deny' button + */ + const clickDeny = () => { + var _dom$getDenyButton; + return (_dom$getDenyButton = getDenyButton()) === null || _dom$getDenyButton === void 0 ? void 0 : _dom$getDenyButton.click(); + }; + + /* + * Global function to click 'Cancel' button + */ + const clickCancel = () => { + var _dom$getCancelButton; + return (_dom$getCancelButton = getCancelButton()) === null || _dom$getCancelButton === void 0 ? void 0 : _dom$getCancelButton.click(); }; + /** @typedef {'cancel' | 'backdrop' | 'close' | 'esc' | 'timer'} DismissReason */ + + /** @type {Record} */ const DismissReason = Object.freeze({ cancel: 'cancel', backdrop: 'backdrop', @@ -1607,476 +1790,335 @@ timer: 'timer' }); - // Adding aria-hidden="true" to elements outside of the active modal dialog ensures that - // elements not within the active modal dialog will not be surfaced if a user opens a screen - // reader’s list of elements (headings, form controls, landmarks, etc.) in the document. - - const setAriaHidden = () => { - const bodyChildren = toArray(document.body.children); - bodyChildren.forEach(el => { - if (el === getContainer() || el.contains(getContainer())) { - return; - } - - if (el.hasAttribute('aria-hidden')) { - el.setAttribute('data-previous-aria-hidden', el.getAttribute('aria-hidden')); - } - - el.setAttribute('aria-hidden', 'true'); - }); - }; - const unsetAriaHidden = () => { - const bodyChildren = toArray(document.body.children); - bodyChildren.forEach(el => { - if (el.hasAttribute('data-previous-aria-hidden')) { - el.setAttribute('aria-hidden', el.getAttribute('data-previous-aria-hidden')); - el.removeAttribute('data-previous-aria-hidden'); - } else { - el.removeAttribute('aria-hidden'); - } - }); + /** + * @param {GlobalState} globalState + */ + const removeKeydownHandler = globalState => { + if (globalState.keydownTarget && globalState.keydownHandlerAdded) { + globalState.keydownTarget.removeEventListener('keydown', globalState.keydownHandler, { + capture: globalState.keydownListenerCapture + }); + globalState.keydownHandlerAdded = false; + } }; - const swalStringParams = ['swal-title', 'swal-html', 'swal-footer']; - const getTemplateParams = params => { - const template = typeof params.template === 'string' ? document.querySelector(params.template) : params.template; - - if (!template) { - return {}; + /** + * @param {GlobalState} globalState + * @param {SweetAlertOptions} innerParams + * @param {*} dismissWith + */ + const addKeydownHandler = (globalState, innerParams, dismissWith) => { + removeKeydownHandler(globalState); + if (!innerParams.toast) { + globalState.keydownHandler = e => keydownHandler(innerParams, e, dismissWith); + globalState.keydownTarget = innerParams.keydownListenerCapture ? window : getPopup(); + globalState.keydownListenerCapture = innerParams.keydownListenerCapture; + globalState.keydownTarget.addEventListener('keydown', globalState.keydownHandler, { + capture: globalState.keydownListenerCapture + }); + globalState.keydownHandlerAdded = true; } - /** @type {DocumentFragment} */ - - - const templateContent = template.content; - showWarningsForElements(templateContent); - const result = Object.assign(getSwalParams(templateContent), getSwalButtons(templateContent), getSwalImage(templateContent), getSwalIcon(templateContent), getSwalInput(templateContent), getSwalStringParams(templateContent, swalStringParams)); - return result; }; + /** - * @param {DocumentFragment} templateContent + * @param {number} index + * @param {number} increment */ + const setFocus = (index, increment) => { + var _dom$getPopup; + const focusableElements = getFocusableElements(); + // search for visible elements and select the next possible match + if (focusableElements.length) { + index = index + increment; - const getSwalParams = templateContent => { - const result = {}; - toArray(templateContent.querySelectorAll('swal-param')).forEach(param => { - showWarningsForAttributes(param, ['name', 'value']); - const paramName = param.getAttribute('name'); - const value = param.getAttribute('value'); - - if (typeof defaultParams[paramName] === 'boolean' && value === 'false') { - result[paramName] = false; - } + // rollover to first item + if (index === focusableElements.length) { + index = 0; - if (typeof defaultParams[paramName] === 'object') { - result[paramName] = JSON.parse(value); + // go to last item + } else if (index === -1) { + index = focusableElements.length - 1; } - }); - return result; + focusableElements[index].focus(); + return; + } + // no visible focusable elements, focus the popup + (_dom$getPopup = getPopup()) === null || _dom$getPopup === void 0 || _dom$getPopup.focus(); }; + const arrowKeysNextButton = ['ArrowRight', 'ArrowDown']; + const arrowKeysPreviousButton = ['ArrowLeft', 'ArrowUp']; + /** - * @param {DocumentFragment} templateContent + * @param {SweetAlertOptions} innerParams + * @param {KeyboardEvent} event + * @param {Function} dismissWith */ + const keydownHandler = (innerParams, event, dismissWith) => { + if (!innerParams) { + return; // This instance has already been destroyed + } + // Ignore keydown during IME composition + // https://developer.mozilla.org/en-US/docs/Web/API/Document/keydown_event#ignoring_keydown_during_ime_composition + // https://github.com/sweetalert2/sweetalert2/issues/720 + // https://github.com/sweetalert2/sweetalert2/issues/2406 + if (event.isComposing || event.keyCode === 229) { + return; + } + if (innerParams.stopKeydownPropagation) { + event.stopPropagation(); + } - const getSwalButtons = templateContent => { - const result = {}; - toArray(templateContent.querySelectorAll('swal-button')).forEach(button => { - showWarningsForAttributes(button, ['type', 'color', 'aria-label']); - const type = button.getAttribute('type'); - result["".concat(type, "ButtonText")] = button.innerHTML; - result["show".concat(capitalizeFirstLetter(type), "Button")] = true; + // ENTER + if (event.key === 'Enter') { + handleEnter(event, innerParams); + } - if (button.hasAttribute('color')) { - result["".concat(type, "ButtonColor")] = button.getAttribute('color'); - } + // TAB + else if (event.key === 'Tab') { + handleTab(event); + } - if (button.hasAttribute('aria-label')) { - result["".concat(type, "ButtonAriaLabel")] = button.getAttribute('aria-label'); - } - }); - return result; + // ARROWS - switch focus between buttons + else if ([...arrowKeysNextButton, ...arrowKeysPreviousButton].includes(event.key)) { + handleArrows(event.key); + } + + // ESC + else if (event.key === 'Escape') { + handleEsc(event, innerParams, dismissWith); + } }; + /** - * @param {DocumentFragment} templateContent + * @param {KeyboardEvent} event + * @param {SweetAlertOptions} innerParams */ - - - const getSwalImage = templateContent => { - const result = {}; - /** @type {HTMLElement} */ - - const image = templateContent.querySelector('swal-image'); - - if (image) { - showWarningsForAttributes(image, ['src', 'width', 'height', 'alt']); - - if (image.hasAttribute('src')) { - result.imageUrl = image.getAttribute('src'); - } - - if (image.hasAttribute('width')) { - result.imageWidth = image.getAttribute('width'); - } - - if (image.hasAttribute('height')) { - result.imageHeight = image.getAttribute('height'); - } - - if (image.hasAttribute('alt')) { - result.imageAlt = image.getAttribute('alt'); + const handleEnter = (event, innerParams) => { + // https://github.com/sweetalert2/sweetalert2/issues/2386 + if (!callIfFunction(innerParams.allowEnterKey)) { + return; + } + const input = getInput$1(getPopup(), innerParams.input); + if (event.target && input && event.target instanceof HTMLElement && event.target.outerHTML === input.outerHTML) { + if (['textarea', 'file'].includes(innerParams.input)) { + return; // do not submit } + clickConfirm(); + event.preventDefault(); } - - return result; }; + /** - * @param {DocumentFragment} templateContent + * @param {KeyboardEvent} event */ - - - const getSwalIcon = templateContent => { - const result = {}; - /** @type {HTMLElement} */ - - const icon = templateContent.querySelector('swal-icon'); - - if (icon) { - showWarningsForAttributes(icon, ['type', 'color']); - - if (icon.hasAttribute('type')) { - result.icon = icon.getAttribute('type'); - } - - if (icon.hasAttribute('color')) { - result.iconColor = icon.getAttribute('color'); + const handleTab = event => { + const targetElement = event.target; + const focusableElements = getFocusableElements(); + let btnIndex = -1; + for (let i = 0; i < focusableElements.length; i++) { + if (targetElement === focusableElements[i]) { + btnIndex = i; + break; } + } - result.iconHtml = icon.innerHTML; + // Cycle to the next button + if (!event.shiftKey) { + setFocus(btnIndex, 1); } - return result; + // Cycle to the prev button + else { + setFocus(btnIndex, -1); + } + event.stopPropagation(); + event.preventDefault(); }; + /** - * @param {DocumentFragment} templateContent + * @param {string} key */ - - - const getSwalInput = templateContent => { - const result = {}; - /** @type {HTMLElement} */ - - const input = templateContent.querySelector('swal-input'); - - if (input) { - showWarningsForAttributes(input, ['type', 'label', 'placeholder', 'value']); - result.input = input.getAttribute('type') || 'text'; - - if (input.hasAttribute('label')) { - result.inputLabel = input.getAttribute('label'); - } - - if (input.hasAttribute('placeholder')) { - result.inputPlaceholder = input.getAttribute('placeholder'); + const handleArrows = key => { + const actions = getActions(); + const confirmButton = getConfirmButton(); + const denyButton = getDenyButton(); + const cancelButton = getCancelButton(); + if (!actions || !confirmButton || !denyButton || !cancelButton) { + return; + } + /** @type HTMLElement[] */ + const buttons = [confirmButton, denyButton, cancelButton]; + if (document.activeElement instanceof HTMLElement && !buttons.includes(document.activeElement)) { + return; + } + const sibling = arrowKeysNextButton.includes(key) ? 'nextElementSibling' : 'previousElementSibling'; + let buttonToFocus = document.activeElement; + if (!buttonToFocus) { + return; + } + for (let i = 0; i < actions.children.length; i++) { + buttonToFocus = buttonToFocus[sibling]; + if (!buttonToFocus) { + return; } - - if (input.hasAttribute('value')) { - result.inputValue = input.getAttribute('value'); + if (buttonToFocus instanceof HTMLButtonElement && isVisible$1(buttonToFocus)) { + break; } } - - const inputOptions = templateContent.querySelectorAll('swal-input-option'); - - if (inputOptions.length) { - result.inputOptions = {}; - toArray(inputOptions).forEach(option => { - showWarningsForAttributes(option, ['value']); - const optionValue = option.getAttribute('value'); - const optionName = option.innerHTML; - result.inputOptions[optionValue] = optionName; - }); + if (buttonToFocus instanceof HTMLButtonElement) { + buttonToFocus.focus(); } - - return result; }; + /** - * @param {DocumentFragment} templateContent - * @param {string[]} paramNames + * @param {KeyboardEvent} event + * @param {SweetAlertOptions} innerParams + * @param {Function} dismissWith */ - - - const getSwalStringParams = (templateContent, paramNames) => { - const result = {}; - - for (const i in paramNames) { - const paramName = paramNames[i]; - /** @type {HTMLElement} */ - - const tag = templateContent.querySelector(paramName); - - if (tag) { - showWarningsForAttributes(tag, []); - result[paramName.replace(/^swal-/, '')] = tag.innerHTML.trim(); - } + const handleEsc = (event, innerParams, dismissWith) => { + if (callIfFunction(innerParams.allowEscapeKey)) { + event.preventDefault(); + dismissWith(DismissReason.esc); } - - return result; }; + /** - * @param {DocumentFragment} templateContent + * This module contains `WeakMap`s for each effectively-"private property" that a `Swal` has. + * For example, to set the private property "foo" of `this` to "bar", you can `privateProps.foo.set(this, 'bar')` + * This is the approach that Babel will probably take to implement private methods/fields + * https://github.com/tc39/proposal-private-methods + * https://github.com/babel/babel/pull/7555 + * Once we have the changes from that PR in Babel, and our core class fits reasonable in *one module* + * then we can use that language feature. */ + var privateMethods = { + swalPromiseResolve: new WeakMap(), + swalPromiseReject: new WeakMap() + }; - const showWarningsForElements = templateContent => { - const allowedElements = swalStringParams.concat(['swal-param', 'swal-button', 'swal-image', 'swal-icon', 'swal-input', 'swal-input-option']); - toArray(templateContent.children).forEach(el => { - const tagName = el.tagName.toLowerCase(); + // From https://developer.paciellogroup.com/blog/2018/06/the-current-state-of-modal-dialog-accessibility/ + // Adding aria-hidden="true" to elements outside of the active modal dialog ensures that + // elements not within the active modal dialog will not be surfaced if a user opens a screen + // reader’s list of elements (headings, form controls, landmarks, etc.) in the document. - if (allowedElements.indexOf(tagName) === -1) { - warn("Unrecognized element <".concat(tagName, ">")); + const setAriaHidden = () => { + const container = getContainer(); + const bodyChildren = Array.from(document.body.children); + bodyChildren.forEach(el => { + if (el.contains(container)) { + return; } + if (el.hasAttribute('aria-hidden')) { + el.setAttribute('data-previous-aria-hidden', el.getAttribute('aria-hidden') || ''); + } + el.setAttribute('aria-hidden', 'true'); }); }; - /** - * @param {HTMLElement} el - * @param {string[]} allowedAttributes - */ - - - const showWarningsForAttributes = (el, allowedAttributes) => { - toArray(el.attributes).forEach(attribute => { - if (allowedAttributes.indexOf(attribute.name) === -1) { - warn(["Unrecognized attribute \"".concat(attribute.name, "\" on <").concat(el.tagName.toLowerCase(), ">."), "".concat(allowedAttributes.length ? "Allowed attributes are: ".concat(allowedAttributes.join(', ')) : 'To set the value, use HTML within the element.')]); + const unsetAriaHidden = () => { + const bodyChildren = Array.from(document.body.children); + bodyChildren.forEach(el => { + if (el.hasAttribute('data-previous-aria-hidden')) { + el.setAttribute('aria-hidden', el.getAttribute('data-previous-aria-hidden') || ''); + el.removeAttribute('data-previous-aria-hidden'); + } else { + el.removeAttribute('aria-hidden'); } }); }; - var defaultInputValidators = { - email: (string, validationMessage) => { - return /^[a-zA-Z0-9.+_-]+@[a-zA-Z0-9.-]+\.[a-zA-Z0-9-]{2,24}$/.test(string) ? Promise.resolve() : Promise.resolve(validationMessage || 'Invalid email address'); - }, - url: (string, validationMessage) => { - // taken from https://stackoverflow.com/a/3809435 with a small change from #1306 and #2013 - return /^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-z]{2,63}\b([-a-zA-Z0-9@:%_+.~#?&/=]*)$/.test(string) ? Promise.resolve() : Promise.resolve(validationMessage || 'Invalid URL'); + // @ts-ignore + const isSafariOrIOS = typeof window !== 'undefined' && !!window.GestureEvent; // true for Safari desktop + all iOS browsers https://stackoverflow.com/a/70585394 + + /** + * Fix iOS scrolling + * http://stackoverflow.com/q/39626302 + */ + const iOSfix = () => { + if (isSafariOrIOS && !hasClass(document.body, swalClasses.iosfix)) { + const offset = document.body.scrollTop; + document.body.style.top = `${offset * -1}px`; + addClass(document.body, swalClasses.iosfix); + lockBodyScroll(); } }; - function setDefaultInputValidators(params) { - // Use default `inputValidator` for supported input types if not provided - if (!params.inputValidator) { - Object.keys(defaultInputValidators).forEach(key => { - if (params.input === key) { - params.inputValidator = defaultInputValidators[key]; - } - }); + /** + * https://github.com/sweetalert2/sweetalert2/issues/1246 + */ + const lockBodyScroll = () => { + const container = getContainer(); + if (!container) { + return; } - } + /** @type {boolean} */ + let preventTouchMove; + /** + * @param {TouchEvent} event + */ + container.ontouchstart = event => { + preventTouchMove = shouldPreventTouchMove(event); + }; + /** + * @param {TouchEvent} event + */ + container.ontouchmove = event => { + if (preventTouchMove) { + event.preventDefault(); + event.stopPropagation(); + } + }; + }; - function validateCustomTargetElement(params) { - // Determine if the custom target element is valid - if (!params.target || typeof params.target === 'string' && !document.querySelector(params.target) || typeof params.target !== 'string' && !params.target.appendChild) { - warn('Target parameter is not valid, defaulting to "body"'); - params.target = 'body'; - } - } /** - * Set type, text and actions on popup - * - * @param params + * @param {TouchEvent} event + * @returns {boolean} */ - - - function setParameters(params) { - setDefaultInputValidators(params); // showLoaderOnConfirm && preConfirm - - if (params.showLoaderOnConfirm && !params.preConfirm) { - warn('showLoaderOnConfirm is set to true, but preConfirm is not defined.\n' + 'showLoaderOnConfirm should be used together with preConfirm, see usage example:\n' + 'https://sweetalert2.github.io/#ajax-request'); + const shouldPreventTouchMove = event => { + const target = event.target; + const container = getContainer(); + const htmlContainer = getHtmlContainer(); + if (!container || !htmlContainer) { + return false; } - - validateCustomTargetElement(params); // Replace newlines with
    in title - - if (typeof params.title === 'string') { - params.title = params.title.split('\n').join('
    '); + if (isStylus(event) || isZoom(event)) { + return false; } + if (target === container) { + return true; + } + if (!isScrollable(container) && target instanceof HTMLElement && target.tagName !== 'INPUT' && + // #1603 + target.tagName !== 'TEXTAREA' && + // #2266 + !(isScrollable(htmlContainer) && + // #1944 + htmlContainer.contains(target))) { + return true; + } + return false; + }; - init(params); - } - - class Timer { - constructor(callback, delay) { - this.callback = callback; - this.remaining = delay; - this.running = false; - this.start(); - } - - start() { - if (!this.running) { - this.running = true; - this.started = new Date(); - this.id = setTimeout(this.callback, this.remaining); - } - - return this.remaining; - } - - stop() { - if (this.running) { - this.running = false; - clearTimeout(this.id); - this.remaining -= new Date().getTime() - this.started.getTime(); - } - - return this.remaining; - } - - increase(n) { - const running = this.running; - - if (running) { - this.stop(); - } - - this.remaining += n; - - if (running) { - this.start(); - } - - return this.remaining; - } - - getTimerLeft() { - if (this.running) { - this.stop(); - this.start(); - } - - return this.remaining; - } - - isRunning() { - return this.running; - } - - } - - const fixScrollbar = () => { - // for queues, do not do this more than once - if (states.previousBodyPadding !== null) { - return; - } // if the body has overflow - - - if (document.body.scrollHeight > window.innerHeight) { - // add padding so the content doesn't shift after removal of scrollbar - states.previousBodyPadding = parseInt(window.getComputedStyle(document.body).getPropertyValue('padding-right')); - document.body.style.paddingRight = "".concat(states.previousBodyPadding + measureScrollbar(), "px"); - } - }; - const undoScrollbar = () => { - if (states.previousBodyPadding !== null) { - document.body.style.paddingRight = "".concat(states.previousBodyPadding, "px"); - states.previousBodyPadding = null; - } - }; - - /* istanbul ignore file */ - - const iOSfix = () => { - const iOS = // @ts-ignore - /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream || navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1; - - if (iOS && !hasClass(document.body, swalClasses.iosfix)) { - const offset = document.body.scrollTop; - document.body.style.top = "".concat(offset * -1, "px"); - addClass(document.body, swalClasses.iosfix); - lockBodyScroll(); - addBottomPaddingForTallPopups(); - } - }; - /** - * https://github.com/sweetalert2/sweetalert2/issues/1948 - */ - - const addBottomPaddingForTallPopups = () => { - const ua = navigator.userAgent; - const iOS = !!ua.match(/iPad/i) || !!ua.match(/iPhone/i); - const webkit = !!ua.match(/WebKit/i); - const iOSSafari = iOS && webkit && !ua.match(/CriOS/i); - - if (iOSSafari) { - const bottomPanelHeight = 44; - - if (getPopup().scrollHeight > window.innerHeight - bottomPanelHeight) { - getContainer().style.paddingBottom = "".concat(bottomPanelHeight, "px"); - } - } - }; - /** - * https://github.com/sweetalert2/sweetalert2/issues/1246 - */ - - - const lockBodyScroll = () => { - const container = getContainer(); - let preventTouchMove; - - container.ontouchstart = e => { - preventTouchMove = shouldPreventTouchMove(e); - }; - - container.ontouchmove = e => { - if (preventTouchMove) { - e.preventDefault(); - e.stopPropagation(); - } - }; - }; - - const shouldPreventTouchMove = event => { - const target = event.target; - const container = getContainer(); - - if (isStylus(event) || isZoom(event)) { - return false; - } - - if (target === container) { - return true; - } - - if (!isScrollable(container) && target.tagName !== 'INPUT' && // #1603 - target.tagName !== 'TEXTAREA' && // #2266 - !(isScrollable(getHtmlContainer()) && // #1944 - getHtmlContainer().contains(target))) { - return true; - } - - return false; - }; /** * https://github.com/sweetalert2/sweetalert2/issues/1786 * * @param {*} event * @returns {boolean} */ - - const isStylus = event => { return event.touches && event.touches.length && event.touches[0].touchType === 'stylus'; }; + /** * https://github.com/sweetalert2/sweetalert2/issues/1891 * * @param {TouchEvent} event * @returns {boolean} */ - - const isZoom = event => { return event.touches && event.touches.length > 1; }; - const undoIOSfix = () => { if (hasClass(document.body, swalClasses.iosfix)) { const offset = parseInt(document.body.style.top, 10); @@ -2086,185 +2128,357 @@ } }; - const SHOW_CLASS_TIMEOUT = 10; /** - * Open popup, add necessary classes and styles, fix scrollbar + * Measure scrollbar width for padding body during modal show/hide + * https://github.com/twbs/bootstrap/blob/master/js/src/modal.js * - * @param params + * @returns {number} */ - - const openPopup = params => { - const container = getContainer(); - const popup = getPopup(); - - if (typeof params.willOpen === 'function') { - params.willOpen(popup); - } - - const bodyStyles = window.getComputedStyle(document.body); - const initialBodyOverflow = bodyStyles.overflowY; - addClasses$1(container, popup, params); // scrolling is 'hidden' until animation is done, after that 'auto' - - setTimeout(() => { - setScrollingVisibility(container, popup); - }, SHOW_CLASS_TIMEOUT); - - if (isModal()) { - fixScrollContainer(container, params.scrollbarPadding, initialBodyOverflow); - setAriaHidden(); - } - - if (!isToast() && !globalState.previousActiveElement) { - globalState.previousActiveElement = document.activeElement; - } - - if (typeof params.didOpen === 'function') { - setTimeout(() => params.didOpen(popup)); - } - - removeClass(container, swalClasses['no-transition']); + const measureScrollbar = () => { + const scrollDiv = document.createElement('div'); + scrollDiv.className = swalClasses['scrollbar-measure']; + document.body.appendChild(scrollDiv); + const scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth; + document.body.removeChild(scrollDiv); + return scrollbarWidth; }; - const swalOpenAnimationFinished = event => { - const popup = getPopup(); + /** + * Remember state in cases where opening and handling a modal will fiddle with it. + * @type {number | null} + */ + let previousBodyPadding = null; - if (event.target !== popup) { + /** + * @param {string} initialBodyOverflow + */ + const replaceScrollbarWithPadding = initialBodyOverflow => { + // for queues, do not do this more than once + if (previousBodyPadding !== null) { return; } - - const container = getContainer(); - popup.removeEventListener(animationEndEvent, swalOpenAnimationFinished); - container.style.overflowY = 'auto'; - }; - - const setScrollingVisibility = (container, popup) => { - if (animationEndEvent && hasCssAnimation(popup)) { - container.style.overflowY = 'hidden'; - popup.addEventListener(animationEndEvent, swalOpenAnimationFinished); - } else { - container.style.overflowY = 'auto'; + // if the body has overflow + if (document.body.scrollHeight > window.innerHeight || initialBodyOverflow === 'scroll' // https://github.com/sweetalert2/sweetalert2/issues/2663 + ) { + // add padding so the content doesn't shift after removal of scrollbar + previousBodyPadding = parseInt(window.getComputedStyle(document.body).getPropertyValue('padding-right')); + document.body.style.paddingRight = `${previousBodyPadding + measureScrollbar()}px`; } }; - - const fixScrollContainer = (container, scrollbarPadding, initialBodyOverflow) => { - iOSfix(); - - if (scrollbarPadding && initialBodyOverflow !== 'hidden') { - fixScrollbar(); - } // sweetalert2/issues/1247 - - - setTimeout(() => { - container.scrollTop = 0; - }); - }; - - const addClasses$1 = (container, popup, params) => { - addClass(container, params.showClass.backdrop); // this workaround with opacity is needed for https://github.com/sweetalert2/sweetalert2/issues/2059 - - popup.style.setProperty('opacity', '0', 'important'); - show(popup, 'grid'); - setTimeout(() => { - // Animate popup right after showing it - addClass(popup, params.showClass.popup); // and remove the opacity workaround - - popup.style.removeProperty('opacity'); - }, SHOW_CLASS_TIMEOUT); // 10ms in order to fix #2062 - - addClass([document.documentElement, document.body], swalClasses.shown); - - if (params.heightAuto && params.backdrop && !params.toast) { - addClass([document.documentElement, document.body], swalClasses['height-auto']); + const undoReplaceScrollbarWithPadding = () => { + if (previousBodyPadding !== null) { + document.body.style.paddingRight = `${previousBodyPadding}px`; + previousBodyPadding = null; } }; /** - * Shows loader (spinner), this is useful with AJAX requests. - * By default the loader be shown instead of the "Confirm" button. + * @param {SweetAlert} instance + * @param {HTMLElement} container + * @param {boolean} returnFocus + * @param {Function} didClose */ - - const showLoading = buttonToReplace => { - let popup = getPopup(); - - if (!popup) { - new Swal(); // eslint-disable-line no-new - } - - popup = getPopup(); - const loader = getLoader(); - + function removePopupAndResetState(instance, container, returnFocus, didClose) { if (isToast()) { - hide(getIcon()); + triggerDidCloseAndDispose(instance, didClose); } else { - replaceButton(popup, buttonToReplace); + restoreActiveElement(returnFocus).then(() => triggerDidCloseAndDispose(instance, didClose)); + removeKeydownHandler(globalState); } - show(loader); - popup.setAttribute('data-loading', true); - popup.setAttribute('aria-busy', true); - popup.focus(); - }; - - const replaceButton = (popup, buttonToReplace) => { - const actions = getActions(); - const loader = getLoader(); - - if (!buttonToReplace && isVisible(getConfirmButton())) { - buttonToReplace = getConfirmButton(); + // workaround for https://github.com/sweetalert2/sweetalert2/issues/2088 + // for some reason removing the container in Safari will scroll the document to bottom + if (isSafariOrIOS) { + container.setAttribute('style', 'display:none !important'); + container.removeAttribute('class'); + container.innerHTML = ''; + } else { + container.remove(); } - - show(actions); - - if (buttonToReplace) { - hide(buttonToReplace); - loader.setAttribute('data-button-to-replace', buttonToReplace.className); + if (isModal()) { + undoReplaceScrollbarWithPadding(); + undoIOSfix(); + unsetAriaHidden(); } + removeBodyClasses(); + } - loader.parentNode.insertBefore(loader, buttonToReplace); - addClass([popup, actions], swalClasses.loading); - }; + /** + * Remove SweetAlert2 classes from body + */ + function removeBodyClasses() { + removeClass([document.documentElement, document.body], [swalClasses.shown, swalClasses['height-auto'], swalClasses['no-backdrop'], swalClasses['toast-shown']]); + } - const handleInputOptionsAndValue = (instance, params) => { + /** + * Instance method to close sweetAlert + * + * @param {any} resolveValue + */ + function close(resolveValue) { + resolveValue = prepareResolveValue(resolveValue); + const swalPromiseResolve = privateMethods.swalPromiseResolve.get(this); + const didClose = triggerClosePopup(this); + if (this.isAwaitingPromise) { + // A swal awaiting for a promise (after a click on Confirm or Deny) cannot be dismissed anymore #2335 + if (!resolveValue.isDismissed) { + handleAwaitingPromise(this); + swalPromiseResolve(resolveValue); + } + } else if (didClose) { + // Resolve Swal promise + swalPromiseResolve(resolveValue); + } + } + const triggerClosePopup = instance => { + const popup = getPopup(); + if (!popup) { + return false; + } + const innerParams = privateProps.innerParams.get(instance); + if (!innerParams || hasClass(popup, innerParams.hideClass.popup)) { + return false; + } + removeClass(popup, innerParams.showClass.popup); + addClass(popup, innerParams.hideClass.popup); + const backdrop = getContainer(); + removeClass(backdrop, innerParams.showClass.backdrop); + addClass(backdrop, innerParams.hideClass.backdrop); + handlePopupAnimation(instance, popup, innerParams); + return true; + }; + + /** + * @param {any} error + */ + function rejectPromise(error) { + const rejectPromise = privateMethods.swalPromiseReject.get(this); + handleAwaitingPromise(this); + if (rejectPromise) { + // Reject Swal promise + rejectPromise(error); + } + } + + /** + * @param {SweetAlert} instance + */ + const handleAwaitingPromise = instance => { + if (instance.isAwaitingPromise) { + delete instance.isAwaitingPromise; + // The instance might have been previously partly destroyed, we must resume the destroy process in this case #2335 + if (!privateProps.innerParams.get(instance)) { + instance._destroy(); + } + } + }; + + /** + * @param {any} resolveValue + * @returns {SweetAlertResult} + */ + const prepareResolveValue = resolveValue => { + // When user calls Swal.close() + if (typeof resolveValue === 'undefined') { + return { + isConfirmed: false, + isDenied: false, + isDismissed: true + }; + } + return Object.assign({ + isConfirmed: false, + isDenied: false, + isDismissed: false + }, resolveValue); + }; + + /** + * @param {SweetAlert} instance + * @param {HTMLElement} popup + * @param {SweetAlertOptions} innerParams + */ + const handlePopupAnimation = (instance, popup, innerParams) => { + var _globalState$eventEmi; + const container = getContainer(); + // If animation is supported, animate + const animationIsSupported = hasCssAnimation(popup); + if (typeof innerParams.willClose === 'function') { + innerParams.willClose(popup); + } + (_globalState$eventEmi = globalState.eventEmitter) === null || _globalState$eventEmi === void 0 || _globalState$eventEmi.emit('willClose', popup); + if (animationIsSupported) { + animatePopup(instance, popup, container, innerParams.returnFocus, innerParams.didClose); + } else { + // Otherwise, remove immediately + removePopupAndResetState(instance, container, innerParams.returnFocus, innerParams.didClose); + } + }; + + /** + * @param {SweetAlert} instance + * @param {HTMLElement} popup + * @param {HTMLElement} container + * @param {boolean} returnFocus + * @param {Function} didClose + */ + const animatePopup = (instance, popup, container, returnFocus, didClose) => { + globalState.swalCloseEventFinishedCallback = removePopupAndResetState.bind(null, instance, container, returnFocus, didClose); + /** + * @param {AnimationEvent | TransitionEvent} e + */ + const swalCloseAnimationFinished = function (e) { + if (e.target === popup) { + var _globalState$swalClos; + (_globalState$swalClos = globalState.swalCloseEventFinishedCallback) === null || _globalState$swalClos === void 0 || _globalState$swalClos.call(globalState); + delete globalState.swalCloseEventFinishedCallback; + popup.removeEventListener('animationend', swalCloseAnimationFinished); + popup.removeEventListener('transitionend', swalCloseAnimationFinished); + } + }; + popup.addEventListener('animationend', swalCloseAnimationFinished); + popup.addEventListener('transitionend', swalCloseAnimationFinished); + }; + + /** + * @param {SweetAlert} instance + * @param {Function} didClose + */ + const triggerDidCloseAndDispose = (instance, didClose) => { + setTimeout(() => { + var _globalState$eventEmi2; + if (typeof didClose === 'function') { + didClose.bind(instance.params)(); + } + (_globalState$eventEmi2 = globalState.eventEmitter) === null || _globalState$eventEmi2 === void 0 || _globalState$eventEmi2.emit('didClose'); + // instance might have been destroyed already + if (instance._destroy) { + instance._destroy(); + } + }); + }; + + /** + * Shows loader (spinner), this is useful with AJAX requests. + * By default the loader be shown instead of the "Confirm" button. + * + * @param {HTMLButtonElement | null} [buttonToReplace] + */ + const showLoading = buttonToReplace => { + let popup = getPopup(); + if (!popup) { + new Swal(); + } + popup = getPopup(); + if (!popup) { + return; + } + const loader = getLoader(); + if (isToast()) { + hide(getIcon()); + } else { + replaceButton(popup, buttonToReplace); + } + show(loader); + popup.setAttribute('data-loading', 'true'); + popup.setAttribute('aria-busy', 'true'); + popup.focus(); + }; + + /** + * @param {HTMLElement} popup + * @param {HTMLButtonElement | null} [buttonToReplace] + */ + const replaceButton = (popup, buttonToReplace) => { + const actions = getActions(); + const loader = getLoader(); + if (!actions || !loader) { + return; + } + if (!buttonToReplace && isVisible$1(getConfirmButton())) { + buttonToReplace = getConfirmButton(); + } + show(actions); + if (buttonToReplace) { + hide(buttonToReplace); + loader.setAttribute('data-button-to-replace', buttonToReplace.className); + actions.insertBefore(loader, buttonToReplace); + } + addClass([popup, actions], swalClasses.loading); + }; + + /** + * @param {SweetAlert} instance + * @param {SweetAlertOptions} params + */ + const handleInputOptionsAndValue = (instance, params) => { if (params.input === 'select' || params.input === 'radio') { handleInputOptions(instance, params); - } else if (['text', 'email', 'number', 'tel', 'textarea'].includes(params.input) && (hasToPromiseFn(params.inputValue) || isPromise(params.inputValue))) { + } else if (['text', 'email', 'number', 'tel', 'textarea'].some(i => i === params.input) && (hasToPromiseFn(params.inputValue) || isPromise(params.inputValue))) { showLoading(getConfirmButton()); handleInputValue(instance, params); } }; + + /** + * @param {SweetAlert} instance + * @param {SweetAlertOptions} innerParams + * @returns {SweetAlertInputValue} + */ const getInputValue = (instance, innerParams) => { const input = instance.getInput(); - if (!input) { return null; } - switch (innerParams.input) { case 'checkbox': return getCheckboxValue(input); - case 'radio': return getRadioValue(input); - case 'file': return getFileValue(input); - default: return innerParams.inputAutoTrim ? input.value.trim() : input.value; } }; + /** + * @param {HTMLInputElement} input + * @returns {number} + */ const getCheckboxValue = input => input.checked ? 1 : 0; + /** + * @param {HTMLInputElement} input + * @returns {string | null} + */ const getRadioValue = input => input.checked ? input.value : null; - const getFileValue = input => input.files.length ? input.getAttribute('multiple') !== null ? input.files : input.files[0] : null; + /** + * @param {HTMLInputElement} input + * @returns {FileList | File | null} + */ + const getFileValue = input => input.files && input.files.length ? input.getAttribute('multiple') !== null ? input.files : input.files[0] : null; + /** + * @param {SweetAlert} instance + * @param {SweetAlertOptions} params + */ const handleInputOptions = (instance, params) => { const popup = getPopup(); - - const processInputOptions = inputOptions => populateInputOptions[params.input](popup, formatInputOptions(inputOptions), params); - + if (!popup) { + return; + } + /** + * @param {Record} inputOptions + */ + const processInputOptions = inputOptions => { + if (params.input === 'select') { + populateSelectOptions(popup, formatInputOptions(inputOptions), params); + } else if (params.input === 'radio') { + populateRadioOptions(popup, formatInputOptions(inputOptions), params); + } + }; if (hasToPromiseFn(params.inputOptions) || isPromise(params.inputOptions)) { showLoading(getConfirmButton()); asPromise(params.inputOptions).then(inputOptions => { @@ -2274,20 +2488,27 @@ } else if (typeof params.inputOptions === 'object') { processInputOptions(params.inputOptions); } else { - error("Unexpected type of inputOptions! Expected object, Map or Promise, got ".concat(typeof params.inputOptions)); + error(`Unexpected type of inputOptions! Expected object, Map or Promise, got ${typeof params.inputOptions}`); } }; + /** + * @param {SweetAlert} instance + * @param {SweetAlertOptions} params + */ const handleInputValue = (instance, params) => { const input = instance.getInput(); + if (!input) { + return; + } hide(input); asPromise(params.inputValue).then(inputValue => { - input.value = params.input === 'number' ? parseFloat(inputValue) || 0 : "".concat(inputValue); + input.value = params.input === 'number' ? `${parseFloat(inputValue) || 0}` : `${inputValue}`; show(input); input.focus(); instance.hideLoading(); }).catch(err => { - error("Error in inputValue promise: ".concat(err)); + error(`Error in inputValue promise: ${err}`); input.value = ''; show(input); input.focus(); @@ -2295,123 +2516,295 @@ }); }; - const populateInputOptions = { - select: (popup, inputOptions, params) => { - const select = getDirectChildByClass(popup, swalClasses.select); - - const renderOption = (parent, optionLabel, optionValue) => { - const option = document.createElement('option'); - option.value = optionValue; - setInnerHtml(option, optionLabel); - option.selected = isSelected(optionValue, params.inputValue); - parent.appendChild(option); - }; - - inputOptions.forEach(inputOption => { - const optionValue = inputOption[0]; - const optionLabel = inputOption[1]; // spec: - // https://www.w3.org/TR/html401/interact/forms.html#h-17.6 - // "...all OPTGROUP elements must be specified directly within a SELECT element (i.e., groups may not be nested)..." - // check whether this is a - - if (Array.isArray(optionLabel)) { - // if it is an array, then it is an - const optgroup = document.createElement('optgroup'); - optgroup.label = optionValue; - optgroup.disabled = false; // not configurable for now - - select.appendChild(optgroup); - optionLabel.forEach(o => renderOption(optgroup, o[1], o[0])); - } else { - // case of spec: + // https://www.w3.org/TR/html401/interact/forms.html#h-17.6 + // "...all OPTGROUP elements must be specified directly within a SELECT element (i.e., groups may not be nested)..." + // check whether this is a + if (Array.isArray(optionLabel)) { + // if it is an array, then it is an + const optgroup = document.createElement('optgroup'); + optgroup.label = optionValue; + optgroup.disabled = false; // not configurable for now + select.appendChild(optgroup); + optionLabel.forEach(o => renderOption(optgroup, o[1], o[0])); + } else { + // case of

    J5RPh~>9IQEDv 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 literal 157192 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