diff --git a/.docfx/BuildDocfxImage.ps1 b/.docfx/BuildDocfxImage.ps1
index b0257f4..b72f2d9 100644
--- a/.docfx/BuildDocfxImage.ps1
+++ b/.docfx/BuildDocfxImage.ps1
@@ -1,4 +1,4 @@
$version = minver -i -t v -v w
docfx metadata docfx.json
-docker buildx build -t yourbranding/classlibrary1:$version --platform linux/arm64,linux/amd64 --load -f Dockerfile.docfx .
+docker buildx build -t jcr.codebelt.net/geekle/globalization-docfx:$version --platform linux/arm64,linux/amd64 --load -f Dockerfile.docfx .
get-childItem -recurse -path api -include *.yml, .manifest | remove-item
diff --git a/.docfx/Dockerfile.docfx b/.docfx/Dockerfile.docfx
index f6149e3..3897848 100644
--- a/.docfx/Dockerfile.docfx
+++ b/.docfx/Dockerfile.docfx
@@ -1,4 +1,4 @@
-FROM nginx:1.27.0-alpine AS base
+FROM nginx:1.27.1-alpine AS base
RUN rm -rf /usr/share/nginx/html/*
FROM codebeltnet/docfx:2.77.0 AS build
diff --git a/.docfx/PublishDocfxImage.ps1 b/.docfx/PublishDocfxImage.ps1
index b973de7..713a28d 100644
--- a/.docfx/PublishDocfxImage.ps1
+++ b/.docfx/PublishDocfxImage.ps1
@@ -1,3 +1,3 @@
$version = minver -i -t v -v w
-docker tag classlibrary1-docfx:$version yourbranding/classlibrary1:$version
-docker push yourbranding/classlibrary1:$version
+docker tag globalization-docfx:$version jcr.codebelt.net/geekle/globalization-docfx:$version
+docker push jcr.codebelt.net/geekle/globalization-docfx:$version
diff --git a/.docfx/api/namespaces/ClassLibrary1.md b/.docfx/api/namespaces/ClassLibrary1.md
deleted file mode 100644
index e4d0124..0000000
--- a/.docfx/api/namespaces/ClassLibrary1.md
+++ /dev/null
@@ -1,15 +0,0 @@
----
-uid: ClassLibrary1
-summary: *content
----
-The `ClassLibrary1` namespace contains types that ...
-
-[!INCLUDE [availability-default](../../includes/availability-default.md)]
-
-Complements: [xUnit: Capturing Output](https://xunit.net/docs/capturing-output) 🔗
-
-### Extension Methods
-
-|Type|Ext|Methods|
-|--:|:-:|---|
-|ClassLibrary1|⬇️|`Awesome`|
diff --git a/.docfx/api/namespaces/Codebelt.Extensions.Globalization.md b/.docfx/api/namespaces/Codebelt.Extensions.Globalization.md
new file mode 100644
index 0000000..473e529
--- /dev/null
+++ b/.docfx/api/namespaces/Codebelt.Extensions.Globalization.md
@@ -0,0 +1,25 @@
+---
+uid: Codebelt.Extensions.Globalization
+summary: *content
+---
+The `Codebelt.Extensions.Globalization` namespace contains extension methods that is an addition to the `System.Globalization` namespace.
+
+[!INCLUDE [availability-default](../../includes/availability-default.md)]
+
+Complements: [System.Globalization namespace](https://docs.microsoft.com/en-us/dotnet/api/system.globalization) 🔗
+
+### Extension Methods
+
+|Type|Ext|Methods|
+|--:|:-:|---|
+|CultureInfo|⬇️|`UseNationalLanguageSupport`|
+
+### CSharp Example
+
+```csharp
+var danishCultureIcu = new CultureInfo("da-dk", false);
+var danishCultureNls = new CultureInfo("da-dk", false).UseNationalLanguageSupport();
+
+// danishCultureIcu outputs dd.MM.yyyy from danishCultureIcu.DateTimeFormat.ShortDatePattern
+// danishCultureNls outputs dd-MM-yyyy from danishCultureNls.DateTimeFormat.ShortDatePattern
+```
diff --git a/.docfx/docfx.json b/.docfx/docfx.json
index 102877c..a3d34f5 100644
--- a/.docfx/docfx.json
+++ b/.docfx/docfx.json
@@ -4,7 +4,7 @@
"src": [
{
"files": [
- "ClassLibrary1/**.csproj"
+ "Codebelt.Extensions.Globalization/**.csproj"
],
"src": "../src"
}
@@ -19,8 +19,6 @@
"build": {
"xref": [
"https://docs.cuemon.net/xrefmap.yml",
- "https://docs.savvyio.net/xrefmap.yml",
- "https://sharedkernel.codebelt.net/xrefmap.yml",
"https://github.com/dotnet/docfx/raw/main/.xrefmap.json"
],
"content": [
@@ -46,15 +44,15 @@
}
],
"globalMetadata": {
- "_appTitle": "Shared Kernel (DDD) for .NET",
+ "_appTitle": "Extensions for Globalization by Codebelt",
"_appFooter": "Generated by DocFX. Copyright 2024 ClassLibrary1. All rights reserved.",
"_appLogoPath": "images/50x50.png",
"_appFaviconPath": "images/favicon.ico",
- "_googleAnalyticsTagId": "G-X000000000",
+ "_googleAnalyticsTagId": "G-R07CSX4Z91",
"_enableSearch": false,
"_disableContribution": false,
"_gitContribute": {
- "repo": "https://github.com/classlibrary1/ClassLibrary1",
+ "repo": "https://github.com/codebeltnet/globalization",
"branch": "main"
},
"_gitUrlPattern": "github"
diff --git a/.docfx/images/128x128.png b/.docfx/images/128x128.png
new file mode 100644
index 0000000..be61af1
Binary files /dev/null and b/.docfx/images/128x128.png differ
diff --git a/.docfx/images/32x32.png b/.docfx/images/32x32.png
index 9d3ae92..20e8c85 100644
Binary files a/.docfx/images/32x32.png and b/.docfx/images/32x32.png differ
diff --git a/.docfx/images/50x50.png b/.docfx/images/50x50.png
index bc05e41..56285fb 100644
Binary files a/.docfx/images/50x50.png and b/.docfx/images/50x50.png differ
diff --git a/.docfx/images/favicon.ico b/.docfx/images/favicon.ico
index b3065ba..d116bde 100644
Binary files a/.docfx/images/favicon.ico and b/.docfx/images/favicon.ico differ
diff --git a/.docfx/index.md b/.docfx/index.md
index 9465807..4e22d01 100644
--- a/.docfx/index.md
+++ b/.docfx/index.md
@@ -1,7 +1,15 @@
---
uid: frontpage-md
-title: ClassLibrary1
+title: Extensions for Globalization by Codebelt
---
-# ClassLibrary1
+
-Landing page for ClassLibrary1.
+# Extensions for Globalization by Codebelt
+
+Originally, this project was part of **Cuemon for .NET**, but with the forthcoming release of .NET 9 (and what resembled circular reference dependencies), it was split into its own project.
+
+This project is now part of [Extensions for Globalization API by Codebelt](https://github.com/codebeltnet/globalization).
+
+[Cuemon for .NET](https://www.cuemon.net/) will pursue its original purpose; providing an addition/complement/sidecar to Microsoft .NET platform.
+
+Proceed to the [docs](/api/Codebelt.Extensions.Globalization.html) to learn more about the capabilities of this project.
diff --git a/.docfx/packages/index.md b/.docfx/packages/index.md
index 563a59d..4059dcf 100644
--- a/.docfx/packages/index.md
+++ b/.docfx/packages/index.md
@@ -1,19 +1,11 @@
# NuGet Packages
-This is a list of all NuGet packages from **ClassLibrary1** that is publicly available on [NuGet.org](https://www.nuget.org/packages?q=ClassLibrary1); the packages here are listed alphabetically and are available in preview-, rc- and production-ready versions.
+This is a list of all NuGet packages from **Extensions for Globalization API by Codebelt** that is publicly available on [NuGet.org](https://www.nuget.org/packages?q=Codebelt.Extensions); the packages here are listed alphabetically and are available in preview-, rc- and production-ready versions.
-## 📦 Standalone Packages
+### 📦 Standalone Packages
-Provides a focused API for ...
+Provides a focused API for RESTful versioning.
|Package|vNext|Stable|Downloads|
|:--|:-:|:-:|:-:|
-| [ClassLibrary1](https://www.nuget.org/packages/ClassLibrary1/) |  |  |  |
-
-## 🏭 Productivity Packages
-
-Provides a convenient set of default API additions for ...
-
-|Package|vNext|Stable|Downloads|
-|:--|:-:|:-:|:-:|
-| [ClassLibrary1.App](https://www.nuget.org/packages/ClassLibrary1.App/) |  |  |  |
+| [Codebelt.Extensions.Globalization](https://www.nuget.org/packages/Codebelt.Extensions.Globalization/) |  |  |  |
diff --git a/.docfx/toc.yml b/.docfx/toc.yml
index 240775d..bbc3e23 100644
--- a/.docfx/toc.yml
+++ b/.docfx/toc.yml
@@ -1,4 +1,4 @@
-- name: ClassLibrary1 API
- href: api/ClassLibrary1.html
+- name: Globalization API
+ href: api/Codebelt.Extensions.Globalization.html
- name: NuGet
href: packages
diff --git a/.github/workflows/pipelines.yml b/.github/workflows/pipelines.yml
index 8c7b8fa..37bebd6 100644
--- a/.github/workflows/pipelines.yml
+++ b/.github/workflows/pipelines.yml
@@ -1,12 +1,12 @@
-name: ClassLibrary1 CI/CD Pipeline
+name: Globalization Ext. CI/CD Pipeline
on:
pull_request:
- branches: [main]
paths-ignore:
- .codecov
- .docfx
- .github
- .nuget
+ - '**.md'
workflow_dispatch:
inputs:
configuration:
@@ -26,7 +26,7 @@ jobs:
strategy:
matrix:
configuration: [Debug, Release]
- framework: [net8.0]
+ framework: [net8.0,net6.0,netstandard2.0]
outputs:
version: ${{ steps.minver-calculate.outputs.version }}
steps:
@@ -45,12 +45,12 @@ jobs:
name: Calculate Version
uses: codebeltnet/minver-calculate@v2
- - name: Download classlibrary1.snk file
+ - name: Download globalization.snk file
uses: codebeltnet/gcp-download-file@v1
with:
serviceAccountKey: ${{ secrets.GCP_TOKEN }}
bucketName: ${{ secrets.GCP_BUCKETNAME }}
- objectName: classlibrary1.snk
+ objectName: globalization.snk
- name: Restore Dependencies
uses: codebeltnet/dotnet-restore@v2
@@ -135,7 +135,7 @@ jobs:
with:
token: ${{ secrets.SONAR_TOKEN }}
organization: geekle
- projectKey: classlibrary1
+ projectKey: globalization
version: ${{ needs.build.outputs.version }}
- name: Build
@@ -162,7 +162,7 @@ jobs:
uses: codebeltnet/codecov-scan@v1
with:
token: ${{ secrets.CODECOV_TOKEN }}
- repository: organization/classlibrary1
+ repository: codebeltnet/globalization
codeql:
name: 🛡️ Security Analysis
diff --git a/.gitignore b/.gitignore
index b2d91bd..190b107 100644
--- a/.gitignore
+++ b/.gitignore
@@ -374,4 +374,7 @@ FodyWeavers.xsd
*.code-workspace
# Strong-Name Key
-*.snk
\ No newline at end of file
+*.snk
+
+# Tooling
+/tooling/gse/Surrogates
\ No newline at end of file
diff --git a/.nuget/ClassLibrary1/PackageReleaseNotes.txt b/.nuget/ClassLibrary1/PackageReleaseNotes.txt
deleted file mode 100644
index f402547..0000000
--- a/.nuget/ClassLibrary1/PackageReleaseNotes.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-Version: 0.1.0
-Availability: .NET 8
-
-# New Features
-- ADDED
-
\ No newline at end of file
diff --git a/.nuget/ClassLibrary1/README.md b/.nuget/ClassLibrary1/README.md
deleted file mode 100644
index 26e0ffa..0000000
--- a/.nuget/ClassLibrary1/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# ClassLibrary1
-
-An open-source project (MIT license) offering the next great thing withing .NET development.
-
-Essential code for your ever growing toolbelt of code.
diff --git a/.nuget/ClassLibrary1/icon.png b/.nuget/ClassLibrary1/icon.png
deleted file mode 100644
index ade21eb..0000000
Binary files a/.nuget/ClassLibrary1/icon.png and /dev/null differ
diff --git a/.nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt b/.nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt
new file mode 100644
index 0000000..cfcf325
--- /dev/null
+++ b/.nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt
@@ -0,0 +1,52 @@
+Version 8.4.0
+Availability: .NET 8, .NET 6 and .NET Standard 2.0
+
+# ALM
+- CHANGED Dependencies to latest and greatest with respect to TFMs
+
+# Breaking Changes
+- CHANGED CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace to use Codebelt.Extensions.YamlDotNet assembly instead of YAML support from Cuemon.Extensions.YamlDotNet assembly
+
+Version 8.3.2
+Availability: .NET 8, .NET 6 and .NET Standard 2.0
+
+# ALM
+- REMOVED Support for TFM .NET 7 (STS)
+
+Version 8.3.0
+Availability: .NET 8, .NET 7, .NET 6 and .NET Standard 2.0
+
+# Improvements
+- CHANGED CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly
+- CHANGED CultureInfoSurrogate class in the Codebelt.Extensions.Globalization namespace to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly
+- CHANGED tooling/gse to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly
+
+Version 8.2.0
+Availability: .NET 8, .NET 7, .NET 6 and .NET Standard 2.0
+
+# ALM
+- CHANGED Dependencies to latest and greatest with respect to TFMs
+
+Version: 8.1.0
+Availability: .NET 8, .NET 7, .NET 6 and .NET Standard 2.0
+
+# ALM
+- CHANGED Dependencies to latest and greatest with respect to TFMs
+
+Version: 8.0.1
+Availability: .NET 8, .NET 7, .NET 6 and .NET Standard 2.0
+
+# ALM
+- CHANGED Dependencies to latest and greatest with respect to TFMs
+
+Version: 8.0.0
+Availability: .NET 8, .NET 7, .NET 6 and .NET Standard 2.0
+
+# ALM
+- ADDED TFM for net8.0
+- CHANGED Dependencies to latest and greatest with respect to TFMs
+
+# Improvements
+- ADDED tooling/gse to the solution folder that is used for extracting NLS surrogates; this was done to mitigate the original design decision that was most [unfortunate](https://github.com/gimlichael/Cuemon/commit/71ff4f9ecb95897170aab1e6ba894c320ae095bd)
+ - gse stands for globalization surrogates extractor
+
\ No newline at end of file
diff --git a/.nuget/Codebelt.Extensions.Globalization/README.md b/.nuget/Codebelt.Extensions.Globalization/README.md
new file mode 100644
index 0000000..1e653d8
--- /dev/null
+++ b/.nuget/Codebelt.Extensions.Globalization/README.md
@@ -0,0 +1,23 @@
+## About
+
+An open-source project (MIT license) that targets and complements the [System.Globalization](https://github.com/dotnet/runtime/tree/main/src/libraries/System.Private.CoreLib/src/System/Globalization) namespace. It aims to provide a way to favor National Language Support (NLS) over International Components for Unicode (ICU).
+
+It is, by heart, free, flexible and built to extend and boost your agile codebelt.
+
+## **Codebelt.Extensions.Globalization** for .NET
+
+The `Codebelt.Extensions.Globalization` namespace contains extension methods that is an addition to the `System.Globalization` namespace.
+
+More documentation available at our documentation site:
+
+- [Codebelt.Extensions.Globalization](https://globalization.codebelt.net/api/Codebelt.Extensions.Globalization.html) 🔗
+
+### CSharp Example
+
+```csharp
+var danishCultureIcu = new CultureInfo("da-dk", false);
+var danishCultureNls = new CultureInfo("da-dk", false).UseNationalLanguageSupport();
+
+// danishCultureIcu outputs dd.MM.yyyy from danishCultureIcu.DateTimeFormat.ShortDatePattern
+// danishCultureNls outputs dd-MM-yyyy from danishCultureNls.DateTimeFormat.ShortDatePattern
+```
diff --git a/.nuget/icon.png b/.nuget/icon.png
new file mode 100644
index 0000000..be61af1
Binary files /dev/null and b/.nuget/icon.png differ
diff --git a/CHANGELOG.md b/CHANGELOG.md
index f0eac06..9e84b36 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,32 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
For more details, please refer to `PackageReleaseNotes.txt` on a per assembly basis in the `.nuget` folder.
-## [Unreleased] - TBD
+## [8.4.0] - 2024-09-28
+
+### Changed
+
+- CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace to use Codebelt.Extensions.YamlDotNet assembly instead of YAML support from Cuemon.Extensions.YamlDotNet assembly
+
+## [8.3.0] - 2024-04-09
+
+### Changed
+
+- CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly
+- CultureInfoSurrogate class in the Codebelt.Extensions.Globalization namespace to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly
+- tooling/gse to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly
+
+## [8.0.0] - 2023-11-14
### Added
+
+- Tool for extracting NLS surrogates `tooling/gse` (Globalization Surrogates Extractor); this was done to mitigate the original design decision that was most [unfortunate](https://github.com/gimlichael/Cuemon/commit/71ff4f9ecb95897170aab1e6ba894c320ae095bd)
+
+### Fixed
+
+- National Language Support (NLS) surrogates was updated in the Codebelt.Extensions.Globalization assembly
+
+## [7.0.0] 2022-11-09
+
+### Added
+
+- CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace that consist of extension methods for the CultureInfo class: UseNationalLanguageSupport
diff --git a/ClassLibrary1.sln b/ClassLibrary1.sln
deleted file mode 100644
index 4f2a9f7..0000000
--- a/ClassLibrary1.sln
+++ /dev/null
@@ -1,46 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 17
-VisualStudioVersion = 17.9.34728.123
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ClassLibrary1", "src\ClassLibrary1\ClassLibrary1.csproj", "{A9DFF36B-1AD4-40EC-9394-C720C3DC785A}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{0070E83B-2DDD-4537-A83F-1CF8644F2880}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{A3C56B2E-55EE-44EC-876E-B03B8DDA3317}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestProject1.Tests", "test\TestProject1\TestProject1.Tests.csproj", "{A7389E99-2E98-4925-8055-3267BBC6C084}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestProject1.FunctionalTests", "test\TestProject1.FunctionalTests\TestProject1.FunctionalTests.csproj", "{507C6397-4FE2-40E8-A8AA-68ED202B48C8}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Release|Any CPU = Release|Any CPU
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {A9DFF36B-1AD4-40EC-9394-C720C3DC785A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {A9DFF36B-1AD4-40EC-9394-C720C3DC785A}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {A9DFF36B-1AD4-40EC-9394-C720C3DC785A}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {A9DFF36B-1AD4-40EC-9394-C720C3DC785A}.Release|Any CPU.Build.0 = Release|Any CPU
- {A7389E99-2E98-4925-8055-3267BBC6C084}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {A7389E99-2E98-4925-8055-3267BBC6C084}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {A7389E99-2E98-4925-8055-3267BBC6C084}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {A7389E99-2E98-4925-8055-3267BBC6C084}.Release|Any CPU.Build.0 = Release|Any CPU
- {507C6397-4FE2-40E8-A8AA-68ED202B48C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {507C6397-4FE2-40E8-A8AA-68ED202B48C8}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {507C6397-4FE2-40E8-A8AA-68ED202B48C8}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {507C6397-4FE2-40E8-A8AA-68ED202B48C8}.Release|Any CPU.Build.0 = Release|Any CPU
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(NestedProjects) = preSolution
- {A9DFF36B-1AD4-40EC-9394-C720C3DC785A} = {0070E83B-2DDD-4537-A83F-1CF8644F2880}
- {A7389E99-2E98-4925-8055-3267BBC6C084} = {A3C56B2E-55EE-44EC-876E-B03B8DDA3317}
- {507C6397-4FE2-40E8-A8AA-68ED202B48C8} = {A3C56B2E-55EE-44EC-876E-B03B8DDA3317}
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {0CBE2805-F0FF-4D0F-902C-8B9277A5D3F2}
- EndGlobalSection
-EndGlobal
diff --git a/Codebelt.Extensions.Globalization.sln b/Codebelt.Extensions.Globalization.sln
new file mode 100644
index 0000000..2b54351
--- /dev/null
+++ b/Codebelt.Extensions.Globalization.sln
@@ -0,0 +1,48 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.9.34728.123
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{0070E83B-2DDD-4537-A83F-1CF8644F2880}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{A3C56B2E-55EE-44EC-876E-B03B8DDA3317}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Codebelt.Extensions.Globalization", "src\Codebelt.Extensions.Globalization\Codebelt.Extensions.Globalization.csproj", "{270BDF91-E7C7-4CB4-A39D-E1A5374C5602}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Codebelt.Extensions.Globalization.Tests", "test\Codebelt.Extensions.Globalization.Tests\Codebelt.Extensions.Globalization.Tests.csproj", "{74980821-3BE9-4315-BECE-2E524EAB7B2A}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tooling", "tooling", "{99B9E215-8659-45A4-A2D4-F33B806A4C4D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "gse", "tooling\gse\gse.csproj", "{22F9A4A6-043B-44F4-9297-227EA71A3F66}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {270BDF91-E7C7-4CB4-A39D-E1A5374C5602}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {270BDF91-E7C7-4CB4-A39D-E1A5374C5602}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {270BDF91-E7C7-4CB4-A39D-E1A5374C5602}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {270BDF91-E7C7-4CB4-A39D-E1A5374C5602}.Release|Any CPU.Build.0 = Release|Any CPU
+ {74980821-3BE9-4315-BECE-2E524EAB7B2A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {74980821-3BE9-4315-BECE-2E524EAB7B2A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {74980821-3BE9-4315-BECE-2E524EAB7B2A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {74980821-3BE9-4315-BECE-2E524EAB7B2A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {22F9A4A6-043B-44F4-9297-227EA71A3F66}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {22F9A4A6-043B-44F4-9297-227EA71A3F66}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {22F9A4A6-043B-44F4-9297-227EA71A3F66}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {22F9A4A6-043B-44F4-9297-227EA71A3F66}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {270BDF91-E7C7-4CB4-A39D-E1A5374C5602} = {0070E83B-2DDD-4537-A83F-1CF8644F2880}
+ {74980821-3BE9-4315-BECE-2E524EAB7B2A} = {A3C56B2E-55EE-44EC-876E-B03B8DDA3317}
+ {22F9A4A6-043B-44F4-9297-227EA71A3F66} = {99B9E215-8659-45A4-A2D4-F33B806A4C4D}
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {0CBE2805-F0FF-4D0F-902C-8B9277A5D3F2}
+ EndGlobalSection
+EndGlobal
diff --git a/Directory.Build.props b/Directory.Build.props
index ef6e2d2..f8a4bde 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -4,7 +4,7 @@
$(MSBuildProjectName.EndsWith('Tests'))
$([MSBuild]::IsOSPlatform('Linux'))
$([MSBuild]::IsOSPlatform('Windows'))
- true
+ true
false
latest
@@ -15,16 +15,16 @@
- net8.0
- Copyright © ClassLibrary1 2024. All rights reserved.
- ClassLibrary1
- ClassLibrary1
- ClassLibrary1
+ net8.0;net6.0;netstandard2.0
+ Copyright © Geekle 2024. All rights reserved.
+ gimlichael
+ Geekle
+ Extensions for Globalization API by Codebelt
icon.png
README.md
- https://www.classlibrary1.net/
+ https://globalization.codebelt.net/
MIT
- https://github.com/classlibrary1/ClassLibrary1
+ https://github.com/codebeltnet/globalization
git
en-US
true
@@ -33,27 +33,27 @@
snupkg
true
true
- $(MSBuildThisFileDirectory)ClassLibrary1.snk
+ $(MSBuildThisFileDirectory)globalization.snk
7035,CA2260
-
+
-
+
- net8.0
+ net8.0;net6.0
- net8.0
+ net8.0;net6.0;net48
@@ -70,8 +70,8 @@
-
-
+
+
all
@@ -81,7 +81,7 @@
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
diff --git a/Directory.Build.targets b/Directory.Build.targets
index 57906f4..bf44e11 100644
--- a/Directory.Build.targets
+++ b/Directory.Build.targets
@@ -14,7 +14,7 @@
- 00000
+ 00000
$(MinVerMajor).$(MinVerMinor).$(MinVerPatch).$(BUILD_BUILDNUMBER)
diff --git a/README.md b/README.md
index cf05009..fd7aab8 100644
--- a/README.md
+++ b/README.md
@@ -1,27 +1,22 @@
-
+
-# Repository template for .NET class library projects
+# Extensions for Globalization API by Codebelt
-Template repository for .NET class library projects following [Microsoft Engineering Guidelines](https://github.com/dotnet/aspnetcore/wiki/Engineering-guidelines) as well as Conventions, Idioms and Patterns by [Codebelt](https://github.com/codebeltnet#conventions-idioms-and-patterns).
+[](https://github.com/codebeltnet/globalization/actions/workflows/pipelines.yml) [](https://codecov.io/gh/codebeltnet/globalization) [](https://sonarcloud.io/dashboard?id=globalization) [](https://sonarcloud.io/dashboard?id=globalization) [](https://sonarcloud.io/dashboard?id=globalization) [](https://sonarcloud.io/dashboard?id=globalization)
-## 📦 Standalone Packages
+An open-source project (MIT license) that targets and complements the [System.Globalization](https://github.com/dotnet/runtime/tree/main/src/libraries/System.Private.CoreLib/src/System/Globalization) namespace. It aims to provide a way to favor National Language Support (NLS) over International Components for Unicode (ICU).
-Provides a focused API for ...
+### 📦 Standalone Packages
-|Package|vNext|Stable|Downloads|
-|:--|:-:|:-:|:-:|
-| [ClassLibrary1](https://www.nuget.org/packages/ClassLibrary1/) |  |  |  |
-
-## 🏭 Productivity Packages
-
-Provides a convenient set of default API additions for ...
+Provides a focused API for RESTful versioning.
|Package|vNext|Stable|Downloads|
|:--|:-:|:-:|:-:|
-| [ClassLibrary1.App](https://www.nuget.org/packages/ClassLibrary1.App/) |  |  |  |
+| [Codebelt.Extensions.Globalization](https://www.nuget.org/packages/Codebelt.Extensions.Globalization/) |  |  |  |
+
+### Contributing to `Extensions for Globalization API by Codebelt`
+[Contributions](.github/CONTRIBUTING.md) are welcome and appreciated.
-### Contributing to `Extensions for xUnit API by Codebelt`
-Contributions are welcome!
Feel free to submit issues, feature requests, or pull requests to help improve this library.
### License
diff --git a/src/ClassLibrary1/Class1.cs b/src/ClassLibrary1/Class1.cs
deleted file mode 100644
index 68fb1be..0000000
--- a/src/ClassLibrary1/Class1.cs
+++ /dev/null
@@ -1,7 +0,0 @@
-namespace ClassLibrary1
-{
- public class Class1
- {
-
- }
-}
diff --git a/src/ClassLibrary1/ClassLibrary1.csproj b/src/ClassLibrary1/ClassLibrary1.csproj
deleted file mode 100644
index 88c8dc6..0000000
--- a/src/ClassLibrary1/ClassLibrary1.csproj
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
diff --git a/src/Codebelt.Extensions.Globalization/Codebelt.Extensions.Globalization.csproj b/src/Codebelt.Extensions.Globalization/Codebelt.Extensions.Globalization.csproj
new file mode 100644
index 0000000..204afd7
--- /dev/null
+++ b/src/Codebelt.Extensions.Globalization/Codebelt.Extensions.Globalization.csproj
@@ -0,0 +1,1207 @@
+
+
+
+ a49349dd-4d9e-4a6c-8436-0d52cb2aa21b
+
+
+
+ The Codebelt.Extensions.Globalization namespace contains extension methods that is an addition to the System.Globalization namespace.
+ cultureinfo culture-info windows linux windows-linux nls icu
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Codebelt.Extensions.Globalization/CultureInfoExtensions.cs b/src/Codebelt.Extensions.Globalization/CultureInfoExtensions.cs
new file mode 100644
index 0000000..b5e0fd0
--- /dev/null
+++ b/src/Codebelt.Extensions.Globalization/CultureInfoExtensions.cs
@@ -0,0 +1,133 @@
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.IO;
+using System.Linq;
+using Codebelt.Extensions.YamlDotNet.Formatters;
+using Cuemon;
+using Cuemon.Collections.Generic;
+using Cuemon.Extensions.IO;
+using Cuemon.Extensions.Reflection;
+using Cuemon.Reflection;
+using YamlDotNet.Serialization.NamingConventions;
+
+namespace Codebelt.Extensions.Globalization
+{
+ ///
+ /// Extension methods for the class.
+ ///
+ public static class CultureInfoExtensions
+ {
+ private static readonly List EnrichedCultureInfos = new();
+
+ ///
+ /// Enriches the specified with the original Windows variant.
+ ///
+ /// The of to extend.
+ /// A object enriched with the original Windows variant.
+ ///
+ /// is null.
+ ///
+ /// Replaces the value on the public writable properties of and to favor NLS (https://learn.microsoft.com/en-us/windows/win32/intl/national-language-support) instead of ICU (http://site.icu-project.org/home).
+ public static CultureInfo UseNationalLanguageSupport(this CultureInfo culture)
+ {
+ Validator.ThrowIfNull(culture);
+ return UseNationalLanguageSupport(Arguments.ToEnumerableOf(culture)).SingleOrDefault();
+ }
+
+ ///
+ /// Enriches the specified with the original Windows variant.
+ ///
+ /// The sequence of to extend.
+ /// A sequence of objects enriched with the original Windows variant.
+ ///
+ /// is null.
+ ///
+ /// Replaces the value on the public writable properties of and to favor NLS (https://learn.microsoft.com/en-us/windows/win32/intl/national-language-support) instead of ICU (http://site.icu-project.org/home).
+ public static IEnumerable UseNationalLanguageSupport(this IEnumerable cultures)
+ {
+ Validator.ThrowIfNull(cultures);
+
+ var enrichedCultures = new List();
+ foreach (var culture in cultures)
+ {
+ var enrichedCulture = EnrichedCultureInfos.Find(ci => ci.Name.Equals(culture.Name, StringComparison.Ordinal));
+ if (enrichedCulture != null)
+ {
+ enrichedCultures.Add(enrichedCulture);
+ }
+ else
+ {
+ var surrogate = typeof(CultureInfoExtensions).GetEmbeddedResources($"{culture.Name}.bin", ManifestResourceMatch.ContainsName).SingleOrDefault();
+ var ms = new MemoryStream(surrogate.Value.DecompressGZip().ToByteArray());
+ var surrogateCulture = YamlFormatter.DeserializeObject(ms, o =>
+ {
+ o.Settings.NamingConvention = NullNamingConvention.Instance;
+ o.Settings.ReflectionRules = new MemberReflection();
+ o.Settings.IndentSequences = false;
+ });
+
+ if (culture.IsReadOnly)
+ {
+ var cultureClone = culture.Clone() as CultureInfo;
+ Enrich(cultureClone, surrogateCulture);
+ EnrichedCultureInfos.Add(cultureClone);
+ enrichedCultures.Add(cultureClone);
+ }
+ else
+ {
+ Enrich(culture, surrogateCulture);
+ EnrichedCultureInfos.Add(culture);
+ enrichedCultures.Add(culture);
+ }
+ }
+ }
+ return enrichedCultures;
+ }
+
+ private static void Enrich(CultureInfo culture, CultureInfoSurrogate surrogate)
+ {
+ culture.DateTimeFormat.AMDesignator = surrogate.DateTimeFormat.AMDesignator;
+ culture.DateTimeFormat.CalendarWeekRule = surrogate.DateTimeFormat.CalendarWeekRule;
+ culture.DateTimeFormat.DateSeparator = surrogate.DateTimeFormat.DateSeparator;
+ culture.DateTimeFormat.FirstDayOfWeek = surrogate.DateTimeFormat.FirstDayOfWeek;
+ culture.DateTimeFormat.FullDateTimePattern = surrogate.DateTimeFormat.FullDateTimePattern;
+ culture.DateTimeFormat.LongDatePattern = surrogate.DateTimeFormat.LongDatePattern;
+ culture.DateTimeFormat.MonthDayPattern = surrogate.DateTimeFormat.MonthDayPattern;
+ culture.DateTimeFormat.LongTimePattern = surrogate.DateTimeFormat.LongTimePattern;
+ culture.DateTimeFormat.PMDesignator = surrogate.DateTimeFormat.PMDesignator;
+ culture.DateTimeFormat.ShortDatePattern = surrogate.DateTimeFormat.ShortDatePattern;
+ culture.DateTimeFormat.ShortTimePattern = surrogate.DateTimeFormat.ShortTimePattern;
+ culture.DateTimeFormat.TimeSeparator = surrogate.DateTimeFormat.TimeSeparator;
+ culture.DateTimeFormat.YearMonthPattern = surrogate.DateTimeFormat.YearMonthPattern;
+ culture.DateTimeFormat.ShortestDayNames = surrogate.DateTimeFormat.ShortestDayNames;
+ culture.DateTimeFormat.AbbreviatedDayNames = surrogate.DateTimeFormat.AbbreviatedDayNames;
+ culture.DateTimeFormat.AbbreviatedMonthNames = surrogate.DateTimeFormat.AbbreviatedMonthNames;
+ culture.DateTimeFormat.AbbreviatedMonthGenitiveNames = surrogate.DateTimeFormat.AbbreviatedMonthGenitiveNames;
+
+ culture.NumberFormat.CurrencyDecimalDigits = surrogate.NumberFormat.CurrencyDecimalDigits;
+ culture.NumberFormat.CurrencyDecimalSeparator = surrogate.NumberFormat.CurrencyDecimalSeparator;
+ culture.NumberFormat.CurrencyGroupSeparator = surrogate.NumberFormat.CurrencyGroupSeparator;
+ culture.NumberFormat.CurrencyNegativePattern = surrogate.NumberFormat.CurrencyNegativePattern;
+ culture.NumberFormat.CurrencyPositivePattern = surrogate.NumberFormat.CurrencyPositivePattern;
+ culture.NumberFormat.CurrencySymbol = surrogate.NumberFormat.CurrencySymbol;
+ culture.NumberFormat.DigitSubstitution = surrogate.NumberFormat.DigitSubstitution;
+ culture.NumberFormat.NaNSymbol = surrogate.NumberFormat.NaNSymbol;
+ culture.NumberFormat.NegativeInfinitySymbol = surrogate.NumberFormat.NegativeInfinitySymbol;
+ culture.NumberFormat.NegativeSign = surrogate.NumberFormat.NegativeSign;
+ culture.NumberFormat.NumberDecimalDigits = surrogate.NumberFormat.NumberDecimalDigits;
+ culture.NumberFormat.NumberDecimalSeparator = surrogate.NumberFormat.NumberDecimalSeparator;
+ culture.NumberFormat.NumberGroupSeparator = surrogate.NumberFormat.NumberGroupSeparator;
+ culture.NumberFormat.NumberNegativePattern = surrogate.NumberFormat.NumberNegativePattern;
+ culture.NumberFormat.PerMilleSymbol = surrogate.NumberFormat.PerMilleSymbol;
+ culture.NumberFormat.PercentDecimalDigits = surrogate.NumberFormat.PercentDecimalDigits;
+ culture.NumberFormat.PercentDecimalSeparator = surrogate.NumberFormat.PercentDecimalSeparator;
+ culture.NumberFormat.PercentGroupSeparator = surrogate.NumberFormat.PercentGroupSeparator;
+ culture.NumberFormat.PercentNegativePattern = surrogate.NumberFormat.PercentNegativePattern;
+ culture.NumberFormat.PercentPositivePattern = surrogate.NumberFormat.PercentPositivePattern;
+ culture.NumberFormat.PercentSymbol = surrogate.NumberFormat.PercentSymbol;
+ culture.NumberFormat.PositiveInfinitySymbol = surrogate.NumberFormat.PositiveInfinitySymbol;
+ culture.NumberFormat.PositiveSign = surrogate.NumberFormat.PositiveSign;
+ }
+ }
+}
diff --git a/src/Codebelt.Extensions.Globalization/CultureInfoSurrogate.cs b/src/Codebelt.Extensions.Globalization/CultureInfoSurrogate.cs
new file mode 100644
index 0000000..b55aaf9
--- /dev/null
+++ b/src/Codebelt.Extensions.Globalization/CultureInfoSurrogate.cs
@@ -0,0 +1,19 @@
+namespace Codebelt.Extensions.Globalization
+{
+ internal class CultureInfoSurrogate
+ {
+ internal CultureInfoSurrogate()
+ {
+ }
+
+ internal CultureInfoSurrogate(DateTimeFormatInfoSurrogate dateTimeFormat, NumberFormatInfoSurrogate numberFormat)
+ {
+ DateTimeFormat = dateTimeFormat;
+ NumberFormat = numberFormat;
+ }
+
+ internal DateTimeFormatInfoSurrogate DateTimeFormat { get; set; }
+
+ internal NumberFormatInfoSurrogate NumberFormat { get; set; }
+ }
+}
diff --git a/src/Codebelt.Extensions.Globalization/DateTimeFormatInfoSurrogate.cs b/src/Codebelt.Extensions.Globalization/DateTimeFormatInfoSurrogate.cs
new file mode 100644
index 0000000..5f99d27
--- /dev/null
+++ b/src/Codebelt.Extensions.Globalization/DateTimeFormatInfoSurrogate.cs
@@ -0,0 +1,67 @@
+using System;
+using System.Globalization;
+
+namespace Codebelt.Extensions.Globalization
+{
+ internal class DateTimeFormatInfoSurrogate
+ {
+ internal DateTimeFormatInfoSurrogate()
+ {
+ }
+
+ internal DateTimeFormatInfoSurrogate(DateTimeFormatInfo dateTimeFormatInfo)
+ {
+ AMDesignator = dateTimeFormatInfo.AMDesignator;
+ CalendarWeekRule = dateTimeFormatInfo.CalendarWeekRule;
+ DateSeparator = dateTimeFormatInfo.DateSeparator;
+ FirstDayOfWeek = dateTimeFormatInfo.FirstDayOfWeek;
+ FullDateTimePattern = dateTimeFormatInfo.FullDateTimePattern;
+ LongDatePattern = dateTimeFormatInfo.LongDatePattern;
+ LongTimePattern = dateTimeFormatInfo.LongTimePattern;
+ MonthDayPattern = dateTimeFormatInfo.MonthDayPattern;
+ PMDesignator = dateTimeFormatInfo.PMDesignator;
+ ShortDatePattern = dateTimeFormatInfo.ShortDatePattern;
+ ShortTimePattern = dateTimeFormatInfo.ShortTimePattern;
+ TimeSeparator = dateTimeFormatInfo.TimeSeparator;
+ YearMonthPattern = dateTimeFormatInfo.YearMonthPattern;
+ ShortestDayNames = dateTimeFormatInfo.ShortestDayNames;
+ AbbreviatedDayNames = dateTimeFormatInfo.AbbreviatedDayNames;
+ AbbreviatedMonthNames = dateTimeFormatInfo.AbbreviatedMonthNames;
+ AbbreviatedMonthGenitiveNames = dateTimeFormatInfo.AbbreviatedMonthGenitiveNames;
+ }
+
+ public string AMDesignator { get; set; }
+
+ public CalendarWeekRule CalendarWeekRule { get; set; }
+
+ public string DateSeparator { get; set; }
+
+ public DayOfWeek FirstDayOfWeek { get; set; }
+
+ public string FullDateTimePattern { get; set; }
+
+ public string LongDatePattern { get; set; }
+
+ public string LongTimePattern { get; set; }
+
+ public string MonthDayPattern { get; set; }
+
+ public string PMDesignator { get; set; }
+
+ public string ShortDatePattern { get; set; }
+
+ public string ShortTimePattern { get; set; }
+
+ public string TimeSeparator { get; set; }
+
+ public string YearMonthPattern { get; set; }
+
+ public string[] ShortestDayNames { get; set; }
+
+ public string[] AbbreviatedDayNames { get; set; }
+
+ public string[] AbbreviatedMonthNames { get; set; }
+
+ public string[] AbbreviatedMonthGenitiveNames { get; set; }
+ }
+}
diff --git a/src/Codebelt.Extensions.Globalization/NumberFormatInfoSurrogate.cs b/src/Codebelt.Extensions.Globalization/NumberFormatInfoSurrogate.cs
new file mode 100644
index 0000000..b7c7cfb
--- /dev/null
+++ b/src/Codebelt.Extensions.Globalization/NumberFormatInfoSurrogate.cs
@@ -0,0 +1,84 @@
+using System.Globalization;
+
+namespace Codebelt.Extensions.Globalization
+{
+ internal class NumberFormatInfoSurrogate
+ {
+ internal NumberFormatInfoSurrogate()
+ {
+ }
+
+ internal NumberFormatInfoSurrogate(NumberFormatInfo numberFormatInfo)
+ {
+ CurrencyDecimalDigits = numberFormatInfo.CurrencyDecimalDigits;
+ CurrencyDecimalSeparator = numberFormatInfo.CurrencyDecimalSeparator;
+ CurrencyGroupSeparator = numberFormatInfo.CurrencyGroupSeparator;
+ CurrencyNegativePattern = numberFormatInfo.CurrencyNegativePattern;
+ CurrencyPositivePattern = numberFormatInfo.CurrencyPositivePattern;
+ CurrencySymbol = numberFormatInfo.CurrencySymbol;
+ DigitSubstitution = numberFormatInfo.DigitSubstitution;
+ NaNSymbol = numberFormatInfo.NaNSymbol;
+ NegativeInfinitySymbol = numberFormatInfo.NegativeInfinitySymbol;
+ NegativeSign = numberFormatInfo.NegativeSign;
+ NumberDecimalDigits = numberFormatInfo.NumberDecimalDigits;
+ NumberDecimalSeparator = numberFormatInfo.NumberDecimalSeparator;
+ NumberGroupSeparator = numberFormatInfo.NumberGroupSeparator;
+ NumberNegativePattern = numberFormatInfo.NumberNegativePattern;
+ PerMilleSymbol = numberFormatInfo.PerMilleSymbol;
+ PercentDecimalDigits = numberFormatInfo.PercentDecimalDigits;
+ PercentDecimalSeparator = numberFormatInfo.PercentDecimalSeparator;
+ PercentGroupSeparator = numberFormatInfo.PercentGroupSeparator;
+ PercentNegativePattern = numberFormatInfo.PercentNegativePattern;
+ PercentPositivePattern = numberFormatInfo.PercentPositivePattern;
+ PercentSymbol = numberFormatInfo.PercentSymbol;
+ PositiveInfinitySymbol = numberFormatInfo.PositiveInfinitySymbol;
+ PositiveSign = numberFormatInfo.PositiveSign;
+ }
+
+ public int CurrencyDecimalDigits { get; set; }
+
+ public int CurrencyNegativePattern { get; set; }
+
+ public int CurrencyPositivePattern { get; set; }
+
+ public DigitShapes DigitSubstitution { get; set; }
+
+ public int NumberDecimalDigits { get; set; }
+
+ public int NumberNegativePattern { get; set; }
+
+ public int PercentDecimalDigits { get; set; }
+
+ public int PercentNegativePattern { get; set; }
+
+ public int PercentPositivePattern { get; set; }
+
+ public string CurrencyDecimalSeparator { get; set; }
+
+ public string CurrencyGroupSeparator { get; set; }
+
+ public string CurrencySymbol { get; set; }
+
+ public string NaNSymbol { get; set; }
+
+ public string NegativeInfinitySymbol { get; set; }
+
+ public string NegativeSign { get; set; }
+
+ public string NumberDecimalSeparator { get; set; }
+
+ public string NumberGroupSeparator { get; set; }
+
+ public string PercentDecimalSeparator { get; set; }
+
+ public string PercentGroupSeparator { get; set; }
+
+ public string PercentSymbol { get; set; }
+
+ public string PerMilleSymbol { get; set; }
+
+ public string PositiveInfinitySymbol { get; set; }
+
+ public string PositiveSign { get; set; }
+ }
+}
diff --git a/src/Codebelt.Extensions.Globalization/Properties/AssemblyInfo.cs b/src/Codebelt.Extensions.Globalization/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..67e7499
--- /dev/null
+++ b/src/Codebelt.Extensions.Globalization/Properties/AssemblyInfo.cs
@@ -0,0 +1,6 @@
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+[assembly: InternalsVisibleTo("gse, PublicKey=0024000004800000940000000602000000240000525341310004000001000100cde906e3c69fcbc1889b775509fb17d9da9610a4a591790b369f1a6c55e62e176e12589a337f233c1715807d580965650ed93ca095e0648db8c8f6d382e79db7fc4b512b8e09101117ea4612040259c237a506039f34d56ff4f4133d0a5105dd4bc4c216c52430644957c21a756fb86d5450371079e61934044c3d67f6b877b1")]
+[assembly: ComVisible(false)]
+[assembly: Guid("312a337a-ae79-4da1-bd4c-fddd19804e91")]
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/aa-dj.bin b/src/Codebelt.Extensions.Globalization/Surrogates/aa-dj.bin
new file mode 100644
index 0000000..9bb5061
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/aa-dj.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/aa-er.bin b/src/Codebelt.Extensions.Globalization/Surrogates/aa-er.bin
new file mode 100644
index 0000000..0c016c8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/aa-er.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/aa-et.bin b/src/Codebelt.Extensions.Globalization/Surrogates/aa-et.bin
new file mode 100644
index 0000000..d645bb7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/aa-et.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/af-na.bin b/src/Codebelt.Extensions.Globalization/Surrogates/af-na.bin
new file mode 100644
index 0000000..132ad92
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/af-na.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/af-za.bin b/src/Codebelt.Extensions.Globalization/Surrogates/af-za.bin
new file mode 100644
index 0000000..2f23dac
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/af-za.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/agq-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/agq-cm.bin
new file mode 100644
index 0000000..865960b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/agq-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ak-gh.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ak-gh.bin
new file mode 100644
index 0000000..84c49c0
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ak-gh.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/am-et.bin b/src/Codebelt.Extensions.Globalization/Surrogates/am-et.bin
new file mode 100644
index 0000000..1ac2aac
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/am-et.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-001.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-001.bin
new file mode 100644
index 0000000..e588f05
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-001.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-ae.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-ae.bin
new file mode 100644
index 0000000..04be555
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-ae.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-bh.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-bh.bin
new file mode 100644
index 0000000..9979921
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-bh.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-dj.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-dj.bin
new file mode 100644
index 0000000..21236bc
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-dj.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-dz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-dz.bin
new file mode 100644
index 0000000..55c0f39
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-dz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-eg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-eg.bin
new file mode 100644
index 0000000..d2540e7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-eg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-er.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-er.bin
new file mode 100644
index 0000000..e6985af
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-er.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-il.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-il.bin
new file mode 100644
index 0000000..174db2f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-il.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-iq.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-iq.bin
new file mode 100644
index 0000000..d188ac2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-iq.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-jo.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-jo.bin
new file mode 100644
index 0000000..d710210
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-jo.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-km.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-km.bin
new file mode 100644
index 0000000..e598149
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-km.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-kw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-kw.bin
new file mode 100644
index 0000000..52b22a7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-kw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-lb.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-lb.bin
new file mode 100644
index 0000000..712d88a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-lb.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-ly.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-ly.bin
new file mode 100644
index 0000000..071ebfd
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-ly.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-ma.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-ma.bin
new file mode 100644
index 0000000..a82b36c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-ma.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-mr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-mr.bin
new file mode 100644
index 0000000..80011a5
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-mr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-om.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-om.bin
new file mode 100644
index 0000000..6cbb1de
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-om.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-ps.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-ps.bin
new file mode 100644
index 0000000..80c8643
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-ps.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-qa.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-qa.bin
new file mode 100644
index 0000000..c25cf0a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-qa.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-sa.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-sa.bin
new file mode 100644
index 0000000..76c244d
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-sa.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-sd.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-sd.bin
new file mode 100644
index 0000000..1235632
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-sd.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-so.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-so.bin
new file mode 100644
index 0000000..9cce167
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-so.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-ss.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-ss.bin
new file mode 100644
index 0000000..48d6ecb
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-ss.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-sy.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-sy.bin
new file mode 100644
index 0000000..7147891
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-sy.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-td.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-td.bin
new file mode 100644
index 0000000..bd24cad
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-td.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-tn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-tn.bin
new file mode 100644
index 0000000..489ff74
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-tn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ar-ye.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ar-ye.bin
new file mode 100644
index 0000000..378feab
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ar-ye.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/arn-cl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/arn-cl.bin
new file mode 100644
index 0000000..8e370f8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/arn-cl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/as-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/as-in.bin
new file mode 100644
index 0000000..b262336
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/as-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/asa-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/asa-tz.bin
new file mode 100644
index 0000000..2fb1191
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/asa-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ast-es.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ast-es.bin
new file mode 100644
index 0000000..473d10f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ast-es.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/az-cyrl-az.bin b/src/Codebelt.Extensions.Globalization/Surrogates/az-cyrl-az.bin
new file mode 100644
index 0000000..327c27a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/az-cyrl-az.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/az-latn-az.bin b/src/Codebelt.Extensions.Globalization/Surrogates/az-latn-az.bin
new file mode 100644
index 0000000..306bc23
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/az-latn-az.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ba-ru.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ba-ru.bin
new file mode 100644
index 0000000..093c067
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ba-ru.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/bas-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/bas-cm.bin
new file mode 100644
index 0000000..3ee8b7b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/bas-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/be-by.bin b/src/Codebelt.Extensions.Globalization/Surrogates/be-by.bin
new file mode 100644
index 0000000..2f47c9e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/be-by.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/bem-zm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/bem-zm.bin
new file mode 100644
index 0000000..60ef019
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/bem-zm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/bez-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/bez-tz.bin
new file mode 100644
index 0000000..fff062a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/bez-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/bg-bg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/bg-bg.bin
new file mode 100644
index 0000000..13e6a72
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/bg-bg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/bin-ng.bin b/src/Codebelt.Extensions.Globalization/Surrogates/bin-ng.bin
new file mode 100644
index 0000000..1098592
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/bin-ng.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/bm-latn-ml.bin b/src/Codebelt.Extensions.Globalization/Surrogates/bm-latn-ml.bin
new file mode 100644
index 0000000..7f25f49
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/bm-latn-ml.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/bn-bd.bin b/src/Codebelt.Extensions.Globalization/Surrogates/bn-bd.bin
new file mode 100644
index 0000000..1103b79
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/bn-bd.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/bn-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/bn-in.bin
new file mode 100644
index 0000000..7a0c506
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/bn-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/bo-cn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/bo-cn.bin
new file mode 100644
index 0000000..5a31e28
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/bo-cn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/bo-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/bo-in.bin
new file mode 100644
index 0000000..738a097
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/bo-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/br-fr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/br-fr.bin
new file mode 100644
index 0000000..33f4b5e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/br-fr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/brx-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/brx-in.bin
new file mode 100644
index 0000000..66093fb
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/brx-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/bs-cyrl-ba.bin b/src/Codebelt.Extensions.Globalization/Surrogates/bs-cyrl-ba.bin
new file mode 100644
index 0000000..4487438
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/bs-cyrl-ba.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/bs-latn-ba.bin b/src/Codebelt.Extensions.Globalization/Surrogates/bs-latn-ba.bin
new file mode 100644
index 0000000..2b82184
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/bs-latn-ba.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/byn-er.bin b/src/Codebelt.Extensions.Globalization/Surrogates/byn-er.bin
new file mode 100644
index 0000000..94bc371
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/byn-er.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ca-ad.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ca-ad.bin
new file mode 100644
index 0000000..8500f4b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ca-ad.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ca-es.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ca-es.bin
new file mode 100644
index 0000000..8500f4b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ca-es.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ca-fr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ca-fr.bin
new file mode 100644
index 0000000..8500f4b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ca-fr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ca-it.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ca-it.bin
new file mode 100644
index 0000000..8500f4b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ca-it.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ccp-cakm-bd.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ccp-cakm-bd.bin
new file mode 100644
index 0000000..3be19f4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ccp-cakm-bd.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ccp-cakm-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ccp-cakm-in.bin
new file mode 100644
index 0000000..b03fe51
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ccp-cakm-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ce-ru.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ce-ru.bin
new file mode 100644
index 0000000..d8ee582
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ce-ru.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ceb-latn-ph.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ceb-latn-ph.bin
new file mode 100644
index 0000000..9c78899
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ceb-latn-ph.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/cgg-ug.bin b/src/Codebelt.Extensions.Globalization/Surrogates/cgg-ug.bin
new file mode 100644
index 0000000..9b7ca9f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/cgg-ug.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/chr-cher-us.bin b/src/Codebelt.Extensions.Globalization/Surrogates/chr-cher-us.bin
new file mode 100644
index 0000000..a0cae07
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/chr-cher-us.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/co-fr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/co-fr.bin
new file mode 100644
index 0000000..e734463
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/co-fr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/cs-cz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/cs-cz.bin
new file mode 100644
index 0000000..30e94a6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/cs-cz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/cu-ru.bin b/src/Codebelt.Extensions.Globalization/Surrogates/cu-ru.bin
new file mode 100644
index 0000000..30b62a3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/cu-ru.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/cy-gb.bin b/src/Codebelt.Extensions.Globalization/Surrogates/cy-gb.bin
new file mode 100644
index 0000000..cf94a34
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/cy-gb.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/da-dk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/da-dk.bin
new file mode 100644
index 0000000..8eb2ce7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/da-dk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/da-gl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/da-gl.bin
new file mode 100644
index 0000000..9dd0ace
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/da-gl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/dav-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/dav-ke.bin
new file mode 100644
index 0000000..858b35e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/dav-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/de-at.bin b/src/Codebelt.Extensions.Globalization/Surrogates/de-at.bin
new file mode 100644
index 0000000..68da400
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/de-at.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/de-be.bin b/src/Codebelt.Extensions.Globalization/Surrogates/de-be.bin
new file mode 100644
index 0000000..37a6bc7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/de-be.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/de-ch.bin b/src/Codebelt.Extensions.Globalization/Surrogates/de-ch.bin
new file mode 100644
index 0000000..be7b94a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/de-ch.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/de-de.bin b/src/Codebelt.Extensions.Globalization/Surrogates/de-de.bin
new file mode 100644
index 0000000..d6a231b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/de-de.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/de-it.bin b/src/Codebelt.Extensions.Globalization/Surrogates/de-it.bin
new file mode 100644
index 0000000..1503f45
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/de-it.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/de-li.bin b/src/Codebelt.Extensions.Globalization/Surrogates/de-li.bin
new file mode 100644
index 0000000..7b8a563
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/de-li.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/de-lu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/de-lu.bin
new file mode 100644
index 0000000..37a6bc7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/de-lu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/dje-ne.bin b/src/Codebelt.Extensions.Globalization/Surrogates/dje-ne.bin
new file mode 100644
index 0000000..bf4554a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/dje-ne.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/doi-deva-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/doi-deva-in.bin
new file mode 100644
index 0000000..c8598cc
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/doi-deva-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/dsb-de.bin b/src/Codebelt.Extensions.Globalization/Surrogates/dsb-de.bin
new file mode 100644
index 0000000..0d8bb8e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/dsb-de.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/dua-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/dua-cm.bin
new file mode 100644
index 0000000..ef59c31
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/dua-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/dv-mv.bin b/src/Codebelt.Extensions.Globalization/Surrogates/dv-mv.bin
new file mode 100644
index 0000000..3f9917c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/dv-mv.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/dyo-sn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/dyo-sn.bin
new file mode 100644
index 0000000..8f223ef
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/dyo-sn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/dz-bt.bin b/src/Codebelt.Extensions.Globalization/Surrogates/dz-bt.bin
new file mode 100644
index 0000000..dbb4e23
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/dz-bt.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ebu-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ebu-ke.bin
new file mode 100644
index 0000000..f5327d2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ebu-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ee-gh.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ee-gh.bin
new file mode 100644
index 0000000..1b27c19
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ee-gh.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ee-tg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ee-tg.bin
new file mode 100644
index 0000000..f702260
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ee-tg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/el-cy.bin b/src/Codebelt.Extensions.Globalization/Surrogates/el-cy.bin
new file mode 100644
index 0000000..0c27d1b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/el-cy.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/el-gr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/el-gr.bin
new file mode 100644
index 0000000..502a711
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/el-gr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-001.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-001.bin
new file mode 100644
index 0000000..e6dc4a6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-001.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-029.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-029.bin
new file mode 100644
index 0000000..1c99155
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-029.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-150.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-150.bin
new file mode 100644
index 0000000..6d65f29
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-150.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ae.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ae.bin
new file mode 100644
index 0000000..b562d41
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ae.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ag.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ag.bin
new file mode 100644
index 0000000..76af221
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ag.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ai.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ai.bin
new file mode 100644
index 0000000..3207574
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ai.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-as.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-as.bin
new file mode 100644
index 0000000..4578cb6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-as.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-at.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-at.bin
new file mode 100644
index 0000000..d4e15ba
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-at.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-au.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-au.bin
new file mode 100644
index 0000000..4ac1c1a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-au.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-bb.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-bb.bin
new file mode 100644
index 0000000..9304168
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-bb.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-be.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-be.bin
new file mode 100644
index 0000000..ad13a47
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-be.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-bi.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-bi.bin
new file mode 100644
index 0000000..bc6df52
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-bi.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-bm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-bm.bin
new file mode 100644
index 0000000..9304168
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-bm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-bs.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-bs.bin
new file mode 100644
index 0000000..76af221
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-bs.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-bw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-bw.bin
new file mode 100644
index 0000000..c9661aa
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-bw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-bz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-bz.bin
new file mode 100644
index 0000000..df6fbab
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-bz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ca.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ca.bin
new file mode 100644
index 0000000..0c5ca00
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ca.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-cc.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-cc.bin
new file mode 100644
index 0000000..3207574
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-cc.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ch.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ch.bin
new file mode 100644
index 0000000..4d21fbe
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ch.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ck.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ck.bin
new file mode 100644
index 0000000..3207574
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ck.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-cm.bin
new file mode 100644
index 0000000..100b8c5
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-cx.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-cx.bin
new file mode 100644
index 0000000..3207574
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-cx.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-cy.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-cy.bin
new file mode 100644
index 0000000..bf946d5
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-cy.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-de.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-de.bin
new file mode 100644
index 0000000..4cda5da
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-de.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-dk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-dk.bin
new file mode 100644
index 0000000..a9abdb3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-dk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-dm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-dm.bin
new file mode 100644
index 0000000..76af221
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-dm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-er.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-er.bin
new file mode 100644
index 0000000..2ce8a2d
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-er.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-fi.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-fi.bin
new file mode 100644
index 0000000..7660247
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-fi.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-fj.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-fj.bin
new file mode 100644
index 0000000..1b57bbc
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-fj.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-fk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-fk.bin
new file mode 100644
index 0000000..38c6723
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-fk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-fm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-fm.bin
new file mode 100644
index 0000000..6a991cc
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-fm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-gb.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-gb.bin
new file mode 100644
index 0000000..8376b89
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-gb.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-gd.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-gd.bin
new file mode 100644
index 0000000..9304168
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-gd.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-gg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-gg.bin
new file mode 100644
index 0000000..8c88482
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-gg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-gh.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-gh.bin
new file mode 100644
index 0000000..ee6a8cf
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-gh.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-gi.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-gi.bin
new file mode 100644
index 0000000..8c88482
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-gi.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-gm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-gm.bin
new file mode 100644
index 0000000..2870fb1
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-gm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-gu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-gu.bin
new file mode 100644
index 0000000..4578cb6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-gu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-gy.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-gy.bin
new file mode 100644
index 0000000..9304168
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-gy.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-hk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-hk.bin
new file mode 100644
index 0000000..0ebd174
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-hk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-id.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-id.bin
new file mode 100644
index 0000000..d9aed2f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-id.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ie.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ie.bin
new file mode 100644
index 0000000..5dbec0a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ie.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-il.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-il.bin
new file mode 100644
index 0000000..df243f2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-il.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-im.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-im.bin
new file mode 100644
index 0000000..8c88482
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-im.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-in.bin
new file mode 100644
index 0000000..a201c41
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-io.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-io.bin
new file mode 100644
index 0000000..c25c1a7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-io.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-je.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-je.bin
new file mode 100644
index 0000000..8c88482
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-je.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-jm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-jm.bin
new file mode 100644
index 0000000..0ebd174
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-jm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ke.bin
new file mode 100644
index 0000000..fdefd43
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ki.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ki.bin
new file mode 100644
index 0000000..9304168
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ki.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-kn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-kn.bin
new file mode 100644
index 0000000..9304168
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-kn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ky.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ky.bin
new file mode 100644
index 0000000..9304168
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ky.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-lc.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-lc.bin
new file mode 100644
index 0000000..9304168
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-lc.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-lr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-lr.bin
new file mode 100644
index 0000000..9304168
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-lr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ls.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ls.bin
new file mode 100644
index 0000000..5e6b603
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ls.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-mg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-mg.bin
new file mode 100644
index 0000000..5b291a2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-mg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-mh.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-mh.bin
new file mode 100644
index 0000000..4578cb6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-mh.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-mo.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-mo.bin
new file mode 100644
index 0000000..2abed84
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-mo.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-mp.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-mp.bin
new file mode 100644
index 0000000..4576352
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-mp.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ms.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ms.bin
new file mode 100644
index 0000000..3207574
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ms.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-mt.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-mt.bin
new file mode 100644
index 0000000..f37e1a2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-mt.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-mu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-mu.bin
new file mode 100644
index 0000000..9c91317
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-mu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-mw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-mw.bin
new file mode 100644
index 0000000..af4c382
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-mw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-my.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-my.bin
new file mode 100644
index 0000000..2447dd9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-my.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-na.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-na.bin
new file mode 100644
index 0000000..9304168
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-na.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-nf.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-nf.bin
new file mode 100644
index 0000000..3207574
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-nf.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ng.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ng.bin
new file mode 100644
index 0000000..4d8dc93
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ng.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-nl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-nl.bin
new file mode 100644
index 0000000..559d1bf
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-nl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-nr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-nr.bin
new file mode 100644
index 0000000..3207574
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-nr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-nu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-nu.bin
new file mode 100644
index 0000000..3207574
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-nu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-nz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-nz.bin
new file mode 100644
index 0000000..8aa1ff2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-nz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-pg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-pg.bin
new file mode 100644
index 0000000..d0bd6ef
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-pg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ph.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ph.bin
new file mode 100644
index 0000000..f08e84b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ph.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-pk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-pk.bin
new file mode 100644
index 0000000..5908a66
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-pk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-pn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-pn.bin
new file mode 100644
index 0000000..3207574
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-pn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-pr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-pr.bin
new file mode 100644
index 0000000..4578cb6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-pr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-pw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-pw.bin
new file mode 100644
index 0000000..6a991cc
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-pw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-rw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-rw.bin
new file mode 100644
index 0000000..c8cd68e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-rw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-sb.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-sb.bin
new file mode 100644
index 0000000..9304168
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-sb.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-sc.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-sc.bin
new file mode 100644
index 0000000..72bf8e8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-sc.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-sd.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-sd.bin
new file mode 100644
index 0000000..146bbf9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-sd.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-se.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-se.bin
new file mode 100644
index 0000000..89d7b43
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-se.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-sg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-sg.bin
new file mode 100644
index 0000000..0ebd174
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-sg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-sh.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-sh.bin
new file mode 100644
index 0000000..38c6723
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-sh.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-si.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-si.bin
new file mode 100644
index 0000000..8c9dcf7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-si.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-sl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-sl.bin
new file mode 100644
index 0000000..836968a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-sl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ss.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ss.bin
new file mode 100644
index 0000000..d005567
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ss.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-sx.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-sx.bin
new file mode 100644
index 0000000..62bebda
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-sx.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-sz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-sz.bin
new file mode 100644
index 0000000..e9f1ef1
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-sz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-tc.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-tc.bin
new file mode 100644
index 0000000..6a991cc
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-tc.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-tk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-tk.bin
new file mode 100644
index 0000000..3207574
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-tk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-to.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-to.bin
new file mode 100644
index 0000000..f31d781
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-to.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-tt.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-tt.bin
new file mode 100644
index 0000000..76af221
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-tt.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-tv.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-tv.bin
new file mode 100644
index 0000000..3207574
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-tv.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-tz.bin
new file mode 100644
index 0000000..316d044
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ug.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ug.bin
new file mode 100644
index 0000000..24b8de4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ug.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-um.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-um.bin
new file mode 100644
index 0000000..4578cb6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-um.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-us.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-us.bin
new file mode 100644
index 0000000..aa6707e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-us.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-vc.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-vc.bin
new file mode 100644
index 0000000..9304168
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-vc.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-vg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-vg.bin
new file mode 100644
index 0000000..6a991cc
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-vg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-vi.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-vi.bin
new file mode 100644
index 0000000..4578cb6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-vi.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-vu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-vu.bin
new file mode 100644
index 0000000..010248a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-vu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-ws.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-ws.bin
new file mode 100644
index 0000000..74bba06
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-ws.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-za.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-za.bin
new file mode 100644
index 0000000..90339f3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-za.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-zm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-zm.bin
new file mode 100644
index 0000000..d0bd6ef
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-zm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/en-zw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/en-zw.bin
new file mode 100644
index 0000000..17c9a31
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/en-zw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/eo-001.bin b/src/Codebelt.Extensions.Globalization/Surrogates/eo-001.bin
new file mode 100644
index 0000000..5ae37d4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/eo-001.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-419.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-419.bin
new file mode 100644
index 0000000..a47fbe3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-419.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-ar.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-ar.bin
new file mode 100644
index 0000000..18d3677
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-ar.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-bo.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-bo.bin
new file mode 100644
index 0000000..63adca3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-bo.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-br.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-br.bin
new file mode 100644
index 0000000..8779074
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-br.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-bz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-bz.bin
new file mode 100644
index 0000000..0fe7d6f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-bz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-cl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-cl.bin
new file mode 100644
index 0000000..da9fb7f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-cl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-co.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-co.bin
new file mode 100644
index 0000000..690a4ca
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-co.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-cr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-cr.bin
new file mode 100644
index 0000000..c92ce4c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-cr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-cu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-cu.bin
new file mode 100644
index 0000000..2e44e34
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-cu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-do.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-do.bin
new file mode 100644
index 0000000..9a1a561
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-do.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-ec.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-ec.bin
new file mode 100644
index 0000000..fdcc5bb
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-ec.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-es.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-es.bin
new file mode 100644
index 0000000..26d2ddf
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-es.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-gq.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-gq.bin
new file mode 100644
index 0000000..d530cdc
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-gq.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-gt.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-gt.bin
new file mode 100644
index 0000000..23e73ad
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-gt.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-hn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-hn.bin
new file mode 100644
index 0000000..099b40d
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-hn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-mx.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-mx.bin
new file mode 100644
index 0000000..8d29dbb
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-mx.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-ni.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-ni.bin
new file mode 100644
index 0000000..a3b9466
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-ni.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-pa.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-pa.bin
new file mode 100644
index 0000000..14abc7a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-pa.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-pe.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-pe.bin
new file mode 100644
index 0000000..545da62
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-pe.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-ph.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-ph.bin
new file mode 100644
index 0000000..27602bd
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-ph.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-pr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-pr.bin
new file mode 100644
index 0000000..e9b9eb8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-pr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-py.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-py.bin
new file mode 100644
index 0000000..552920b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-py.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-sv.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-sv.bin
new file mode 100644
index 0000000..0fe7d6f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-sv.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-us.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-us.bin
new file mode 100644
index 0000000..fd01b2d
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-us.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-uy.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-uy.bin
new file mode 100644
index 0000000..c4e9f3b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-uy.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/es-ve.bin b/src/Codebelt.Extensions.Globalization/Surrogates/es-ve.bin
new file mode 100644
index 0000000..f0196b5
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/es-ve.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/et-ee.bin b/src/Codebelt.Extensions.Globalization/Surrogates/et-ee.bin
new file mode 100644
index 0000000..cef8cc9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/et-ee.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/eu-es.bin b/src/Codebelt.Extensions.Globalization/Surrogates/eu-es.bin
new file mode 100644
index 0000000..99297eb
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/eu-es.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ewo-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ewo-cm.bin
new file mode 100644
index 0000000..76a4fb2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ewo-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fa-af.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fa-af.bin
new file mode 100644
index 0000000..bc3d655
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fa-af.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fa-ir.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fa-ir.bin
new file mode 100644
index 0000000..8d73ab9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fa-ir.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-bf.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-bf.bin
new file mode 100644
index 0000000..4296079
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-bf.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-cm.bin
new file mode 100644
index 0000000..d3b451b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-gh.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-gh.bin
new file mode 100644
index 0000000..0f67358
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-gh.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-gm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-gm.bin
new file mode 100644
index 0000000..b25a98f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-gm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-gn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-gn.bin
new file mode 100644
index 0000000..dc5ec1a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-gn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-gw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-gw.bin
new file mode 100644
index 0000000..4296079
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-gw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-lr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-lr.bin
new file mode 100644
index 0000000..e34e127
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-lr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-mr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-mr.bin
new file mode 100644
index 0000000..3fe1798
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-mr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-ne.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-ne.bin
new file mode 100644
index 0000000..4296079
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-ne.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-ng.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-ng.bin
new file mode 100644
index 0000000..480fcbd
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-ng.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-sl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-sl.bin
new file mode 100644
index 0000000..485bafc
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-sl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-sn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-sn.bin
new file mode 100644
index 0000000..4296079
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-adlm-sn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-bf.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-bf.bin
new file mode 100644
index 0000000..29c526b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-bf.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-cm.bin
new file mode 100644
index 0000000..25f086c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-gh.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-gh.bin
new file mode 100644
index 0000000..1b0d897
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-gh.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-gm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-gm.bin
new file mode 100644
index 0000000..96f7e2c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-gm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-gn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-gn.bin
new file mode 100644
index 0000000..5954638
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-gn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-gw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-gw.bin
new file mode 100644
index 0000000..29c526b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-gw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-lr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-lr.bin
new file mode 100644
index 0000000..55b246d
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-lr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-mr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-mr.bin
new file mode 100644
index 0000000..4267bfa
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-mr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-ne.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-ne.bin
new file mode 100644
index 0000000..29c526b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-ne.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-ng.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-ng.bin
new file mode 100644
index 0000000..bcc116c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-ng.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-sl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-sl.bin
new file mode 100644
index 0000000..934e217
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-sl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-sn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-sn.bin
new file mode 100644
index 0000000..9a05c24
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ff-latn-sn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fi-fi.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fi-fi.bin
new file mode 100644
index 0000000..163d3ff
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fi-fi.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fil-ph.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fil-ph.bin
new file mode 100644
index 0000000..e95bdc9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fil-ph.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fo-dk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fo-dk.bin
new file mode 100644
index 0000000..c0418dc
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fo-dk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fo-fo.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fo-fo.bin
new file mode 100644
index 0000000..a960ca0
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fo-fo.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-029.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-029.bin
new file mode 100644
index 0000000..05bec00
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-029.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-be.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-be.bin
new file mode 100644
index 0000000..e5b4aa3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-be.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-bf.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-bf.bin
new file mode 100644
index 0000000..1002654
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-bf.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-bi.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-bi.bin
new file mode 100644
index 0000000..405d63c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-bi.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-bj.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-bj.bin
new file mode 100644
index 0000000..1002654
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-bj.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-bl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-bl.bin
new file mode 100644
index 0000000..8c68b15
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-bl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-ca.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ca.bin
new file mode 100644
index 0000000..08e5477
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ca.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-cd.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-cd.bin
new file mode 100644
index 0000000..bebfdbe
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-cd.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-cf.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-cf.bin
new file mode 100644
index 0000000..005f3cf
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-cf.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-cg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-cg.bin
new file mode 100644
index 0000000..005f3cf
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-cg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-ch.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ch.bin
new file mode 100644
index 0000000..e9f305c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ch.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-ci.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ci.bin
new file mode 100644
index 0000000..1002654
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ci.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-cm.bin
new file mode 100644
index 0000000..3709424
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-dj.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-dj.bin
new file mode 100644
index 0000000..678a32f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-dj.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-dz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-dz.bin
new file mode 100644
index 0000000..bad8fd7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-dz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-fr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-fr.bin
new file mode 100644
index 0000000..87171b9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-fr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-ga.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ga.bin
new file mode 100644
index 0000000..005f3cf
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ga.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-gf.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-gf.bin
new file mode 100644
index 0000000..6a5dfda
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-gf.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-gn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-gn.bin
new file mode 100644
index 0000000..de4375a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-gn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-gp.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-gp.bin
new file mode 100644
index 0000000..6a5dfda
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-gp.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-gq.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-gq.bin
new file mode 100644
index 0000000..005f3cf
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-gq.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-ht.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ht.bin
new file mode 100644
index 0000000..4795827
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ht.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-km.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-km.bin
new file mode 100644
index 0000000..3e22beb
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-km.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-lu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-lu.bin
new file mode 100644
index 0000000..a61d4fa
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-lu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-ma.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ma.bin
new file mode 100644
index 0000000..7cb66df
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ma.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-mc.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-mc.bin
new file mode 100644
index 0000000..6a5dfda
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-mc.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-mf.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-mf.bin
new file mode 100644
index 0000000..8c68b15
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-mf.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-mg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-mg.bin
new file mode 100644
index 0000000..8f4bfec
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-mg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-ml.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ml.bin
new file mode 100644
index 0000000..1002654
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ml.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-mq.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-mq.bin
new file mode 100644
index 0000000..6a5dfda
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-mq.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-mr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-mr.bin
new file mode 100644
index 0000000..3d5a448
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-mr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-mu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-mu.bin
new file mode 100644
index 0000000..072470e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-mu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-nc.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-nc.bin
new file mode 100644
index 0000000..7483ba3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-nc.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-ne.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ne.bin
new file mode 100644
index 0000000..1002654
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-ne.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-pf.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-pf.bin
new file mode 100644
index 0000000..7483ba3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-pf.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-pm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-pm.bin
new file mode 100644
index 0000000..8c68b15
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-pm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-re.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-re.bin
new file mode 100644
index 0000000..6a5dfda
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-re.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-rw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-rw.bin
new file mode 100644
index 0000000..74f7a92
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-rw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-sc.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-sc.bin
new file mode 100644
index 0000000..1da4b35
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-sc.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-sn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-sn.bin
new file mode 100644
index 0000000..1002654
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-sn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-sy.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-sy.bin
new file mode 100644
index 0000000..e0074f3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-sy.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-td.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-td.bin
new file mode 100644
index 0000000..25beda7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-td.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-tg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-tg.bin
new file mode 100644
index 0000000..1002654
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-tg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-tn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-tn.bin
new file mode 100644
index 0000000..3f18a83
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-tn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-vu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-vu.bin
new file mode 100644
index 0000000..2570d94
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-vu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-wf.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-wf.bin
new file mode 100644
index 0000000..7483ba3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-wf.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fr-yt.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fr-yt.bin
new file mode 100644
index 0000000..8c68b15
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fr-yt.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fur-it.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fur-it.bin
new file mode 100644
index 0000000..b7e58ce
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fur-it.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/fy-nl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/fy-nl.bin
new file mode 100644
index 0000000..cce62be
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/fy-nl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ga-gb.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ga-gb.bin
new file mode 100644
index 0000000..83783b0
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ga-gb.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ga-ie.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ga-ie.bin
new file mode 100644
index 0000000..6bdfb26
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ga-ie.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/gd-gb.bin b/src/Codebelt.Extensions.Globalization/Surrogates/gd-gb.bin
new file mode 100644
index 0000000..5eec5b5
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/gd-gb.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/gl-es.bin b/src/Codebelt.Extensions.Globalization/Surrogates/gl-es.bin
new file mode 100644
index 0000000..b6626cf
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/gl-es.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/gn-py.bin b/src/Codebelt.Extensions.Globalization/Surrogates/gn-py.bin
new file mode 100644
index 0000000..4081101
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/gn-py.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/gsw-ch.bin b/src/Codebelt.Extensions.Globalization/Surrogates/gsw-ch.bin
new file mode 100644
index 0000000..6792cf1
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/gsw-ch.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/gsw-fr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/gsw-fr.bin
new file mode 100644
index 0000000..e8231d6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/gsw-fr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/gsw-li.bin b/src/Codebelt.Extensions.Globalization/Surrogates/gsw-li.bin
new file mode 100644
index 0000000..6792cf1
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/gsw-li.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/gu-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/gu-in.bin
new file mode 100644
index 0000000..66fc148
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/gu-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/guz-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/guz-ke.bin
new file mode 100644
index 0000000..8a20874
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/guz-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/gv-im.bin b/src/Codebelt.Extensions.Globalization/Surrogates/gv-im.bin
new file mode 100644
index 0000000..5627c53
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/gv-im.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ha-latn-gh.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ha-latn-gh.bin
new file mode 100644
index 0000000..a114549
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ha-latn-gh.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ha-latn-ne.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ha-latn-ne.bin
new file mode 100644
index 0000000..2ab2f84
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ha-latn-ne.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ha-latn-ng.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ha-latn-ng.bin
new file mode 100644
index 0000000..c5e9a19
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ha-latn-ng.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/haw-us.bin b/src/Codebelt.Extensions.Globalization/Surrogates/haw-us.bin
new file mode 100644
index 0000000..58c450a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/haw-us.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/he-il.bin b/src/Codebelt.Extensions.Globalization/Surrogates/he-il.bin
new file mode 100644
index 0000000..8040947
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/he-il.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/hi-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/hi-in.bin
new file mode 100644
index 0000000..57a2242
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/hi-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/hr-ba.bin b/src/Codebelt.Extensions.Globalization/Surrogates/hr-ba.bin
new file mode 100644
index 0000000..7784717
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/hr-ba.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/hr-hr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/hr-hr.bin
new file mode 100644
index 0000000..181dcb9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/hr-hr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/hsb-de.bin b/src/Codebelt.Extensions.Globalization/Surrogates/hsb-de.bin
new file mode 100644
index 0000000..236ecfe
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/hsb-de.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/hu-hu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/hu-hu.bin
new file mode 100644
index 0000000..7c23418
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/hu-hu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/hy-am.bin b/src/Codebelt.Extensions.Globalization/Surrogates/hy-am.bin
new file mode 100644
index 0000000..68d88d8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/hy-am.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ia-001.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ia-001.bin
new file mode 100644
index 0000000..6164a1c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ia-001.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ibb-ng.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ibb-ng.bin
new file mode 100644
index 0000000..1098592
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ibb-ng.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/id-id.bin b/src/Codebelt.Extensions.Globalization/Surrogates/id-id.bin
new file mode 100644
index 0000000..98ebd87
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/id-id.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ig-ng.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ig-ng.bin
new file mode 100644
index 0000000..aee160c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ig-ng.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ii-cn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ii-cn.bin
new file mode 100644
index 0000000..3e07b97
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ii-cn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/is-is.bin b/src/Codebelt.Extensions.Globalization/Surrogates/is-is.bin
new file mode 100644
index 0000000..e3c51cf
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/is-is.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/it-ch.bin b/src/Codebelt.Extensions.Globalization/Surrogates/it-ch.bin
new file mode 100644
index 0000000..e7bfc68
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/it-ch.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/it-it.bin b/src/Codebelt.Extensions.Globalization/Surrogates/it-it.bin
new file mode 100644
index 0000000..0ef7232
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/it-it.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/it-sm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/it-sm.bin
new file mode 100644
index 0000000..6fad0b8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/it-sm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/it-va.bin b/src/Codebelt.Extensions.Globalization/Surrogates/it-va.bin
new file mode 100644
index 0000000..6fad0b8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/it-va.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/iu-cans-ca.bin b/src/Codebelt.Extensions.Globalization/Surrogates/iu-cans-ca.bin
new file mode 100644
index 0000000..22b0a05
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/iu-cans-ca.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/iu-latn-ca.bin b/src/Codebelt.Extensions.Globalization/Surrogates/iu-latn-ca.bin
new file mode 100644
index 0000000..310edbf
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/iu-latn-ca.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ja-jp.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ja-jp.bin
new file mode 100644
index 0000000..4449c67
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ja-jp.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/jgo-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/jgo-cm.bin
new file mode 100644
index 0000000..e2351f7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/jgo-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/jmc-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/jmc-tz.bin
new file mode 100644
index 0000000..60c651c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/jmc-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/jv-java-id.bin b/src/Codebelt.Extensions.Globalization/Surrogates/jv-java-id.bin
new file mode 100644
index 0000000..1a70040
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/jv-java-id.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/jv-latn-id.bin b/src/Codebelt.Extensions.Globalization/Surrogates/jv-latn-id.bin
new file mode 100644
index 0000000..26727fa
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/jv-latn-id.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ka-ge.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ka-ge.bin
new file mode 100644
index 0000000..353c989
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ka-ge.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/kab-dz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/kab-dz.bin
new file mode 100644
index 0000000..95acd4c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/kab-dz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/kam-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/kam-ke.bin
new file mode 100644
index 0000000..3195eb4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/kam-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/kde-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/kde-tz.bin
new file mode 100644
index 0000000..f2d818f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/kde-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/kea-cv.bin b/src/Codebelt.Extensions.Globalization/Surrogates/kea-cv.bin
new file mode 100644
index 0000000..1ebccc3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/kea-cv.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/khq-ml.bin b/src/Codebelt.Extensions.Globalization/Surrogates/khq-ml.bin
new file mode 100644
index 0000000..5d507d2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/khq-ml.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ki-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ki-ke.bin
new file mode 100644
index 0000000..aecbcf2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ki-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/kk-kz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/kk-kz.bin
new file mode 100644
index 0000000..a6a426d
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/kk-kz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/kkj-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/kkj-cm.bin
new file mode 100644
index 0000000..987cf09
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/kkj-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/kl-gl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/kl-gl.bin
new file mode 100644
index 0000000..440636b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/kl-gl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/kln-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/kln-ke.bin
new file mode 100644
index 0000000..ce825d7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/kln-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/km-kh.bin b/src/Codebelt.Extensions.Globalization/Surrogates/km-kh.bin
new file mode 100644
index 0000000..241781a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/km-kh.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/kn-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/kn-in.bin
new file mode 100644
index 0000000..0653aca
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/kn-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ko-kp.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ko-kp.bin
new file mode 100644
index 0000000..6de32ac
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ko-kp.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ko-kr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ko-kr.bin
new file mode 100644
index 0000000..fa4910f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ko-kr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/kok-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/kok-in.bin
new file mode 100644
index 0000000..6d1575e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/kok-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/kr-latn-ng.bin b/src/Codebelt.Extensions.Globalization/Surrogates/kr-latn-ng.bin
new file mode 100644
index 0000000..f4cf17f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/kr-latn-ng.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ks-arab-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ks-arab-in.bin
new file mode 100644
index 0000000..afe6b5b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ks-arab-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ks-deva-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ks-deva-in.bin
new file mode 100644
index 0000000..00e5b4e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ks-deva-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ksb-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ksb-tz.bin
new file mode 100644
index 0000000..ebfa58d
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ksb-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ksf-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ksf-cm.bin
new file mode 100644
index 0000000..84472a1
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ksf-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ksh-de.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ksh-de.bin
new file mode 100644
index 0000000..515d21c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ksh-de.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ku-arab-iq.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ku-arab-iq.bin
new file mode 100644
index 0000000..42c5bc0
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ku-arab-iq.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ku-arab-ir.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ku-arab-ir.bin
new file mode 100644
index 0000000..e697a44
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ku-arab-ir.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/kw-gb.bin b/src/Codebelt.Extensions.Globalization/Surrogates/kw-gb.bin
new file mode 100644
index 0000000..37940c3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/kw-gb.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ky-kg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ky-kg.bin
new file mode 100644
index 0000000..9a22a56
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ky-kg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/la-va.bin b/src/Codebelt.Extensions.Globalization/Surrogates/la-va.bin
new file mode 100644
index 0000000..a550611
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/la-va.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/lag-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/lag-tz.bin
new file mode 100644
index 0000000..cc9683d
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/lag-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/lb-lu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/lb-lu.bin
new file mode 100644
index 0000000..5211ee7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/lb-lu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/lg-ug.bin b/src/Codebelt.Extensions.Globalization/Surrogates/lg-ug.bin
new file mode 100644
index 0000000..96ab56c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/lg-ug.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/lkt-us.bin b/src/Codebelt.Extensions.Globalization/Surrogates/lkt-us.bin
new file mode 100644
index 0000000..cd84feb
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/lkt-us.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ln-ao.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ln-ao.bin
new file mode 100644
index 0000000..13c3b63
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ln-ao.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ln-cd.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ln-cd.bin
new file mode 100644
index 0000000..6b1b1c9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ln-cd.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ln-cf.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ln-cf.bin
new file mode 100644
index 0000000..8bde3ca
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ln-cf.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ln-cg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ln-cg.bin
new file mode 100644
index 0000000..8bde3ca
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ln-cg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/lo-la.bin b/src/Codebelt.Extensions.Globalization/Surrogates/lo-la.bin
new file mode 100644
index 0000000..6fae4f5
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/lo-la.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/lrc-iq.bin b/src/Codebelt.Extensions.Globalization/Surrogates/lrc-iq.bin
new file mode 100644
index 0000000..0524161
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/lrc-iq.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/lrc-ir.bin b/src/Codebelt.Extensions.Globalization/Surrogates/lrc-ir.bin
new file mode 100644
index 0000000..4bd60f8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/lrc-ir.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/lt-lt.bin b/src/Codebelt.Extensions.Globalization/Surrogates/lt-lt.bin
new file mode 100644
index 0000000..f07463d
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/lt-lt.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/lu-cd.bin b/src/Codebelt.Extensions.Globalization/Surrogates/lu-cd.bin
new file mode 100644
index 0000000..149dad8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/lu-cd.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/luo-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/luo-ke.bin
new file mode 100644
index 0000000..e88f35f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/luo-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/luy-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/luy-ke.bin
new file mode 100644
index 0000000..503c133
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/luy-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/lv-lv.bin b/src/Codebelt.Extensions.Globalization/Surrogates/lv-lv.bin
new file mode 100644
index 0000000..dc92110
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/lv-lv.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mai-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mai-in.bin
new file mode 100644
index 0000000..4f62bab
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mai-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mas-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mas-ke.bin
new file mode 100644
index 0000000..4db4ba3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mas-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mas-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mas-tz.bin
new file mode 100644
index 0000000..13f8eef
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mas-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mer-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mer-ke.bin
new file mode 100644
index 0000000..011f08c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mer-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mfe-mu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mfe-mu.bin
new file mode 100644
index 0000000..b2a148c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mfe-mu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mg-mg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mg-mg.bin
new file mode 100644
index 0000000..3736d0d
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mg-mg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mgh-mz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mgh-mz.bin
new file mode 100644
index 0000000..a7e9bec
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mgh-mz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mgo-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mgo-cm.bin
new file mode 100644
index 0000000..ffc9e4a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mgo-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mi-nz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mi-nz.bin
new file mode 100644
index 0000000..dd4909f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mi-nz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mk-mk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mk-mk.bin
new file mode 100644
index 0000000..9390afa
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mk-mk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ml-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ml-in.bin
new file mode 100644
index 0000000..72747d2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ml-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mn-mn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mn-mn.bin
new file mode 100644
index 0000000..7219232
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mn-mn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mn-mong-cn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mn-mong-cn.bin
new file mode 100644
index 0000000..e4fef60
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mn-mong-cn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mn-mong-mn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mn-mong-mn.bin
new file mode 100644
index 0000000..7821011
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mn-mong-mn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mni-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mni-in.bin
new file mode 100644
index 0000000..6cfda2c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mni-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/moh-ca.bin b/src/Codebelt.Extensions.Globalization/Surrogates/moh-ca.bin
new file mode 100644
index 0000000..310f5ad
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/moh-ca.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mr-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mr-in.bin
new file mode 100644
index 0000000..37f2071
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mr-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ms-bn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ms-bn.bin
new file mode 100644
index 0000000..a3bd8b8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ms-bn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ms-id.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ms-id.bin
new file mode 100644
index 0000000..c1da1c4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ms-id.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ms-my.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ms-my.bin
new file mode 100644
index 0000000..27e59d0
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ms-my.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ms-sg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ms-sg.bin
new file mode 100644
index 0000000..6cf594c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ms-sg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mt-mt.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mt-mt.bin
new file mode 100644
index 0000000..25f7ba9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mt-mt.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mua-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mua-cm.bin
new file mode 100644
index 0000000..0f3c5f0
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mua-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/my-mm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/my-mm.bin
new file mode 100644
index 0000000..45fbb5e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/my-mm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/mzn-ir.bin b/src/Codebelt.Extensions.Globalization/Surrogates/mzn-ir.bin
new file mode 100644
index 0000000..4bd60f8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/mzn-ir.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/naq-na.bin b/src/Codebelt.Extensions.Globalization/Surrogates/naq-na.bin
new file mode 100644
index 0000000..af9314c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/naq-na.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nb-no.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nb-no.bin
new file mode 100644
index 0000000..d30bf9f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nb-no.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nb-sj.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nb-sj.bin
new file mode 100644
index 0000000..d30bf9f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nb-sj.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nd-zw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nd-zw.bin
new file mode 100644
index 0000000..725c229
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nd-zw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nds-de.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nds-de.bin
new file mode 100644
index 0000000..9c33ec9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nds-de.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nds-nl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nds-nl.bin
new file mode 100644
index 0000000..9c33ec9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nds-nl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ne-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ne-in.bin
new file mode 100644
index 0000000..3d90b49
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ne-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ne-np.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ne-np.bin
new file mode 100644
index 0000000..3ad968b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ne-np.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nl-aw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nl-aw.bin
new file mode 100644
index 0000000..6a75199
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nl-aw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nl-be.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nl-be.bin
new file mode 100644
index 0000000..a37d16b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nl-be.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nl-bq.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nl-bq.bin
new file mode 100644
index 0000000..9171c94
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nl-bq.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nl-cw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nl-cw.bin
new file mode 100644
index 0000000..52a1074
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nl-cw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nl-nl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nl-nl.bin
new file mode 100644
index 0000000..b58a98f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nl-nl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nl-sr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nl-sr.bin
new file mode 100644
index 0000000..9171c94
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nl-sr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nl-sx.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nl-sx.bin
new file mode 100644
index 0000000..52a1074
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nl-sx.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nmg-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nmg-cm.bin
new file mode 100644
index 0000000..5bd2819
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nmg-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nn-no.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nn-no.bin
new file mode 100644
index 0000000..a1c6674
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nn-no.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nnh-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nnh-cm.bin
new file mode 100644
index 0000000..18295e4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nnh-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nqo-gn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nqo-gn.bin
new file mode 100644
index 0000000..70420b1
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nqo-gn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nr-za.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nr-za.bin
new file mode 100644
index 0000000..12a72f5
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nr-za.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nso-za.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nso-za.bin
new file mode 100644
index 0000000..64edc30
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nso-za.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nus-ss.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nus-ss.bin
new file mode 100644
index 0000000..97594d4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nus-ss.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/nyn-ug.bin b/src/Codebelt.Extensions.Globalization/Surrogates/nyn-ug.bin
new file mode 100644
index 0000000..9b7ca9f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/nyn-ug.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/oc-fr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/oc-fr.bin
new file mode 100644
index 0000000..357d920
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/oc-fr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/om-et.bin b/src/Codebelt.Extensions.Globalization/Surrogates/om-et.bin
new file mode 100644
index 0000000..7abf932
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/om-et.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/om-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/om-ke.bin
new file mode 100644
index 0000000..e68c91c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/om-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/or-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/or-in.bin
new file mode 100644
index 0000000..358f8a2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/or-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/os-ge.bin b/src/Codebelt.Extensions.Globalization/Surrogates/os-ge.bin
new file mode 100644
index 0000000..cab48b8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/os-ge.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/os-ru.bin b/src/Codebelt.Extensions.Globalization/Surrogates/os-ru.bin
new file mode 100644
index 0000000..3ed2895
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/os-ru.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pa-arab-pk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pa-arab-pk.bin
new file mode 100644
index 0000000..584a42a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pa-arab-pk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pa-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pa-in.bin
new file mode 100644
index 0000000..d8632e9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pa-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pap-029.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pap-029.bin
new file mode 100644
index 0000000..1bcca5b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pap-029.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pcm-latn-ng.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pcm-latn-ng.bin
new file mode 100644
index 0000000..14de067
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pcm-latn-ng.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pl-pl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pl-pl.bin
new file mode 100644
index 0000000..5462ff2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pl-pl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/prg-001.bin b/src/Codebelt.Extensions.Globalization/Surrogates/prg-001.bin
new file mode 100644
index 0000000..cc4314b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/prg-001.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ps-af.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ps-af.bin
new file mode 100644
index 0000000..b4a6368
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ps-af.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ps-pk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ps-pk.bin
new file mode 100644
index 0000000..8a4f2e2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ps-pk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pt-ao.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pt-ao.bin
new file mode 100644
index 0000000..064e67f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pt-ao.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pt-br.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pt-br.bin
new file mode 100644
index 0000000..24d1115
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pt-br.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pt-ch.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pt-ch.bin
new file mode 100644
index 0000000..48eb32a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pt-ch.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pt-cv.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pt-cv.bin
new file mode 100644
index 0000000..4f170e8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pt-cv.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pt-gq.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pt-gq.bin
new file mode 100644
index 0000000..eac9015
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pt-gq.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pt-gw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pt-gw.bin
new file mode 100644
index 0000000..29987bb
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pt-gw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pt-lu.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pt-lu.bin
new file mode 100644
index 0000000..9be5f61
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pt-lu.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pt-mo.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pt-mo.bin
new file mode 100644
index 0000000..43ce732
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pt-mo.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pt-mz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pt-mz.bin
new file mode 100644
index 0000000..eb4e0e3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pt-mz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pt-pt.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pt-pt.bin
new file mode 100644
index 0000000..782c6cd
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pt-pt.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pt-st.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pt-st.bin
new file mode 100644
index 0000000..8682d94
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pt-st.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/pt-tl.bin b/src/Codebelt.Extensions.Globalization/Surrogates/pt-tl.bin
new file mode 100644
index 0000000..02a11c7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/pt-tl.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/quc-latn-gt.bin b/src/Codebelt.Extensions.Globalization/Surrogates/quc-latn-gt.bin
new file mode 100644
index 0000000..0ef45bb
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/quc-latn-gt.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/quz-bo.bin b/src/Codebelt.Extensions.Globalization/Surrogates/quz-bo.bin
new file mode 100644
index 0000000..9193844
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/quz-bo.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/quz-ec.bin b/src/Codebelt.Extensions.Globalization/Surrogates/quz-ec.bin
new file mode 100644
index 0000000..c81b239
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/quz-ec.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/quz-pe.bin b/src/Codebelt.Extensions.Globalization/Surrogates/quz-pe.bin
new file mode 100644
index 0000000..1f454c7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/quz-pe.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/rm-ch.bin b/src/Codebelt.Extensions.Globalization/Surrogates/rm-ch.bin
new file mode 100644
index 0000000..3da1b79
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/rm-ch.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/rn-bi.bin b/src/Codebelt.Extensions.Globalization/Surrogates/rn-bi.bin
new file mode 100644
index 0000000..6e244cb
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/rn-bi.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ro-md.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ro-md.bin
new file mode 100644
index 0000000..793324f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ro-md.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ro-ro.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ro-ro.bin
new file mode 100644
index 0000000..34519a5
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ro-ro.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/rof-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/rof-tz.bin
new file mode 100644
index 0000000..342ab1a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/rof-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ru-by.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ru-by.bin
new file mode 100644
index 0000000..56a5734
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ru-by.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ru-kg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ru-kg.bin
new file mode 100644
index 0000000..b8f010d
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ru-kg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ru-kz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ru-kz.bin
new file mode 100644
index 0000000..f265627
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ru-kz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ru-md.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ru-md.bin
new file mode 100644
index 0000000..32f2ced
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ru-md.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ru-ru.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ru-ru.bin
new file mode 100644
index 0000000..0809a9f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ru-ru.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ru-ua.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ru-ua.bin
new file mode 100644
index 0000000..ff47fef
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ru-ua.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/rw-rw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/rw-rw.bin
new file mode 100644
index 0000000..66f5954
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/rw-rw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/rwk-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/rwk-tz.bin
new file mode 100644
index 0000000..56a9963
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/rwk-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sa-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sa-in.bin
new file mode 100644
index 0000000..c0a8fac
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sa-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sah-ru.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sah-ru.bin
new file mode 100644
index 0000000..d008219
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sah-ru.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/saq-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/saq-ke.bin
new file mode 100644
index 0000000..e79f2a1
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/saq-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sat-olck-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sat-olck-in.bin
new file mode 100644
index 0000000..daee1cd
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sat-olck-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sbp-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sbp-tz.bin
new file mode 100644
index 0000000..57bc816
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sbp-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sd-arab-pk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sd-arab-pk.bin
new file mode 100644
index 0000000..c71d4df
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sd-arab-pk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sd-deva-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sd-deva-in.bin
new file mode 100644
index 0000000..6493567
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sd-deva-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/se-fi.bin b/src/Codebelt.Extensions.Globalization/Surrogates/se-fi.bin
new file mode 100644
index 0000000..ea3a251
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/se-fi.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/se-no.bin b/src/Codebelt.Extensions.Globalization/Surrogates/se-no.bin
new file mode 100644
index 0000000..a11a539
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/se-no.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/se-se.bin b/src/Codebelt.Extensions.Globalization/Surrogates/se-se.bin
new file mode 100644
index 0000000..45787e5
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/se-se.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/seh-mz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/seh-mz.bin
new file mode 100644
index 0000000..2da7ad3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/seh-mz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ses-ml.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ses-ml.bin
new file mode 100644
index 0000000..f4a732c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ses-ml.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sg-cf.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sg-cf.bin
new file mode 100644
index 0000000..cf898e7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sg-cf.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/shi-latn-ma.bin b/src/Codebelt.Extensions.Globalization/Surrogates/shi-latn-ma.bin
new file mode 100644
index 0000000..d74ba7f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/shi-latn-ma.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/shi-tfng-ma.bin b/src/Codebelt.Extensions.Globalization/Surrogates/shi-tfng-ma.bin
new file mode 100644
index 0000000..994e874
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/shi-tfng-ma.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/si-lk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/si-lk.bin
new file mode 100644
index 0000000..0bdfc0a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/si-lk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sk-sk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sk-sk.bin
new file mode 100644
index 0000000..7e9f582
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sk-sk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sl-si.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sl-si.bin
new file mode 100644
index 0000000..f8bb864
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sl-si.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sma-no.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sma-no.bin
new file mode 100644
index 0000000..d78dc20
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sma-no.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sma-se.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sma-se.bin
new file mode 100644
index 0000000..fc6dd28
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sma-se.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/smj-no.bin b/src/Codebelt.Extensions.Globalization/Surrogates/smj-no.bin
new file mode 100644
index 0000000..ab68bd6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/smj-no.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/smj-se.bin b/src/Codebelt.Extensions.Globalization/Surrogates/smj-se.bin
new file mode 100644
index 0000000..bd8c1f9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/smj-se.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/smn-fi.bin b/src/Codebelt.Extensions.Globalization/Surrogates/smn-fi.bin
new file mode 100644
index 0000000..b181fb8
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/smn-fi.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sms-fi.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sms-fi.bin
new file mode 100644
index 0000000..ac07c17
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sms-fi.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sn-latn-zw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sn-latn-zw.bin
new file mode 100644
index 0000000..0f9bb31
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sn-latn-zw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/so-dj.bin b/src/Codebelt.Extensions.Globalization/Surrogates/so-dj.bin
new file mode 100644
index 0000000..8c5fbfb
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/so-dj.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/so-et.bin b/src/Codebelt.Extensions.Globalization/Surrogates/so-et.bin
new file mode 100644
index 0000000..7438ecf
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/so-et.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/so-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/so-ke.bin
new file mode 100644
index 0000000..042dda6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/so-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/so-so.bin b/src/Codebelt.Extensions.Globalization/Surrogates/so-so.bin
new file mode 100644
index 0000000..270b7c1
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/so-so.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sq-al.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sq-al.bin
new file mode 100644
index 0000000..528d4d4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sq-al.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sq-mk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sq-mk.bin
new file mode 100644
index 0000000..ff18389
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sq-mk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sq-xk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sq-xk.bin
new file mode 100644
index 0000000..c2e2c8f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sq-xk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sr-cyrl-ba.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sr-cyrl-ba.bin
new file mode 100644
index 0000000..feae3ee
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sr-cyrl-ba.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sr-cyrl-me.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sr-cyrl-me.bin
new file mode 100644
index 0000000..ca5c2a1
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sr-cyrl-me.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sr-cyrl-rs.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sr-cyrl-rs.bin
new file mode 100644
index 0000000..bf7cb0e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sr-cyrl-rs.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sr-cyrl-xk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sr-cyrl-xk.bin
new file mode 100644
index 0000000..72c3607
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sr-cyrl-xk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sr-latn-ba.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sr-latn-ba.bin
new file mode 100644
index 0000000..9071cd0
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sr-latn-ba.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sr-latn-me.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sr-latn-me.bin
new file mode 100644
index 0000000..6dd5d86
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sr-latn-me.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sr-latn-rs.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sr-latn-rs.bin
new file mode 100644
index 0000000..e95534b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sr-latn-rs.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sr-latn-xk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sr-latn-xk.bin
new file mode 100644
index 0000000..47852f6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sr-latn-xk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ss-sz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ss-sz.bin
new file mode 100644
index 0000000..b83c6ad
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ss-sz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ss-za.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ss-za.bin
new file mode 100644
index 0000000..ab5852f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ss-za.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ssy-er.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ssy-er.bin
new file mode 100644
index 0000000..efecd66
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ssy-er.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/st-ls.bin b/src/Codebelt.Extensions.Globalization/Surrogates/st-ls.bin
new file mode 100644
index 0000000..eb7eb72
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/st-ls.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/st-za.bin b/src/Codebelt.Extensions.Globalization/Surrogates/st-za.bin
new file mode 100644
index 0000000..df2d7e3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/st-za.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/su-latn-id.bin b/src/Codebelt.Extensions.Globalization/Surrogates/su-latn-id.bin
new file mode 100644
index 0000000..ba9d09b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/su-latn-id.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sv-ax.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sv-ax.bin
new file mode 100644
index 0000000..a805aa4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sv-ax.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sv-fi.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sv-fi.bin
new file mode 100644
index 0000000..a805aa4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sv-fi.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sv-se.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sv-se.bin
new file mode 100644
index 0000000..8788565
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sv-se.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sw-cd.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sw-cd.bin
new file mode 100644
index 0000000..0d39115
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sw-cd.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sw-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sw-ke.bin
new file mode 100644
index 0000000..abe2558
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sw-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sw-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sw-tz.bin
new file mode 100644
index 0000000..8e7d835
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sw-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/sw-ug.bin b/src/Codebelt.Extensions.Globalization/Surrogates/sw-ug.bin
new file mode 100644
index 0000000..2ee8a53
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/sw-ug.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/syr-sy.bin b/src/Codebelt.Extensions.Globalization/Surrogates/syr-sy.bin
new file mode 100644
index 0000000..ff59cec
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/syr-sy.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ta-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ta-in.bin
new file mode 100644
index 0000000..ed1f8b6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ta-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ta-lk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ta-lk.bin
new file mode 100644
index 0000000..8e30653
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ta-lk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ta-my.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ta-my.bin
new file mode 100644
index 0000000..d2d480f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ta-my.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ta-sg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ta-sg.bin
new file mode 100644
index 0000000..2844585
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ta-sg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/te-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/te-in.bin
new file mode 100644
index 0000000..12c2a29
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/te-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/teo-ke.bin b/src/Codebelt.Extensions.Globalization/Surrogates/teo-ke.bin
new file mode 100644
index 0000000..a7ee79c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/teo-ke.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/teo-ug.bin b/src/Codebelt.Extensions.Globalization/Surrogates/teo-ug.bin
new file mode 100644
index 0000000..4e59db4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/teo-ug.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/tg-cyrl-tj.bin b/src/Codebelt.Extensions.Globalization/Surrogates/tg-cyrl-tj.bin
new file mode 100644
index 0000000..3e2c5c9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/tg-cyrl-tj.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/th-th.bin b/src/Codebelt.Extensions.Globalization/Surrogates/th-th.bin
new file mode 100644
index 0000000..d9fe09e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/th-th.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ti-er.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ti-er.bin
new file mode 100644
index 0000000..eec86d7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ti-er.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ti-et.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ti-et.bin
new file mode 100644
index 0000000..b31dfce
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ti-et.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/tig-er.bin b/src/Codebelt.Extensions.Globalization/Surrogates/tig-er.bin
new file mode 100644
index 0000000..5c174d1
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/tig-er.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/tk-tm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/tk-tm.bin
new file mode 100644
index 0000000..f749761
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/tk-tm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/tn-bw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/tn-bw.bin
new file mode 100644
index 0000000..1f66b63
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/tn-bw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/tn-za.bin b/src/Codebelt.Extensions.Globalization/Surrogates/tn-za.bin
new file mode 100644
index 0000000..d3222d0
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/tn-za.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/to-to.bin b/src/Codebelt.Extensions.Globalization/Surrogates/to-to.bin
new file mode 100644
index 0000000..220309f
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/to-to.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/tr-cy.bin b/src/Codebelt.Extensions.Globalization/Surrogates/tr-cy.bin
new file mode 100644
index 0000000..67eebc3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/tr-cy.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/tr-tr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/tr-tr.bin
new file mode 100644
index 0000000..4b0f250
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/tr-tr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ts-za.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ts-za.bin
new file mode 100644
index 0000000..0f3ca4a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ts-za.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/tt-ru.bin b/src/Codebelt.Extensions.Globalization/Surrogates/tt-ru.bin
new file mode 100644
index 0000000..84807ff
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/tt-ru.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/twq-ne.bin b/src/Codebelt.Extensions.Globalization/Surrogates/twq-ne.bin
new file mode 100644
index 0000000..bf4554a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/twq-ne.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/tzm-arab-ma.bin b/src/Codebelt.Extensions.Globalization/Surrogates/tzm-arab-ma.bin
new file mode 100644
index 0000000..dd474c4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/tzm-arab-ma.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/tzm-latn-dz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/tzm-latn-dz.bin
new file mode 100644
index 0000000..76fce18
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/tzm-latn-dz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/tzm-latn-ma.bin b/src/Codebelt.Extensions.Globalization/Surrogates/tzm-latn-ma.bin
new file mode 100644
index 0000000..90f4ce3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/tzm-latn-ma.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/tzm-tfng-ma.bin b/src/Codebelt.Extensions.Globalization/Surrogates/tzm-tfng-ma.bin
new file mode 100644
index 0000000..063c09e
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/tzm-tfng-ma.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ug-cn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ug-cn.bin
new file mode 100644
index 0000000..b71a0ea
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ug-cn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/uk-ua.bin b/src/Codebelt.Extensions.Globalization/Surrogates/uk-ua.bin
new file mode 100644
index 0000000..9e9ece9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/uk-ua.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ur-in.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ur-in.bin
new file mode 100644
index 0000000..f05b89a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ur-in.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ur-pk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ur-pk.bin
new file mode 100644
index 0000000..4a261b7
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ur-pk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/uz-arab-af.bin b/src/Codebelt.Extensions.Globalization/Surrogates/uz-arab-af.bin
new file mode 100644
index 0000000..665275a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/uz-arab-af.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/uz-cyrl-uz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/uz-cyrl-uz.bin
new file mode 100644
index 0000000..e09d9fb
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/uz-cyrl-uz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/uz-latn-uz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/uz-latn-uz.bin
new file mode 100644
index 0000000..b4e25f0
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/uz-latn-uz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/vai-latn-lr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/vai-latn-lr.bin
new file mode 100644
index 0000000..71269d1
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/vai-latn-lr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/vai-vaii-lr.bin b/src/Codebelt.Extensions.Globalization/Surrogates/vai-vaii-lr.bin
new file mode 100644
index 0000000..2cc1a12
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/vai-vaii-lr.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/ve-za.bin b/src/Codebelt.Extensions.Globalization/Surrogates/ve-za.bin
new file mode 100644
index 0000000..537010b
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/ve-za.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/vi-vn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/vi-vn.bin
new file mode 100644
index 0000000..ac74054
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/vi-vn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/vo-001.bin b/src/Codebelt.Extensions.Globalization/Surrogates/vo-001.bin
new file mode 100644
index 0000000..0e23596
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/vo-001.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/vun-tz.bin b/src/Codebelt.Extensions.Globalization/Surrogates/vun-tz.bin
new file mode 100644
index 0000000..60c651c
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/vun-tz.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/wae-ch.bin b/src/Codebelt.Extensions.Globalization/Surrogates/wae-ch.bin
new file mode 100644
index 0000000..f6a73e3
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/wae-ch.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/wal-et.bin b/src/Codebelt.Extensions.Globalization/Surrogates/wal-et.bin
new file mode 100644
index 0000000..6c7ba27
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/wal-et.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/wo-sn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/wo-sn.bin
new file mode 100644
index 0000000..2f57314
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/wo-sn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/xh-za.bin b/src/Codebelt.Extensions.Globalization/Surrogates/xh-za.bin
new file mode 100644
index 0000000..8117643
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/xh-za.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/xog-ug.bin b/src/Codebelt.Extensions.Globalization/Surrogates/xog-ug.bin
new file mode 100644
index 0000000..e98e173
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/xog-ug.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/yav-cm.bin b/src/Codebelt.Extensions.Globalization/Surrogates/yav-cm.bin
new file mode 100644
index 0000000..82049c9
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/yav-cm.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/yi-001.bin b/src/Codebelt.Extensions.Globalization/Surrogates/yi-001.bin
new file mode 100644
index 0000000..a2cfa4a
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/yi-001.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/yo-bj.bin b/src/Codebelt.Extensions.Globalization/Surrogates/yo-bj.bin
new file mode 100644
index 0000000..8ea3873
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/yo-bj.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/yo-ng.bin b/src/Codebelt.Extensions.Globalization/Surrogates/yo-ng.bin
new file mode 100644
index 0000000..77818d6
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/yo-ng.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/zgh-tfng-ma.bin b/src/Codebelt.Extensions.Globalization/Surrogates/zgh-tfng-ma.bin
new file mode 100644
index 0000000..30ed8a5
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/zgh-tfng-ma.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/zh-cn.bin b/src/Codebelt.Extensions.Globalization/Surrogates/zh-cn.bin
new file mode 100644
index 0000000..b0b7944
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/zh-cn.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/zh-hans-hk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/zh-hans-hk.bin
new file mode 100644
index 0000000..06d21f4
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/zh-hans-hk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/zh-hans-mo.bin b/src/Codebelt.Extensions.Globalization/Surrogates/zh-hans-mo.bin
new file mode 100644
index 0000000..f1a4b13
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/zh-hans-mo.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/zh-hk.bin b/src/Codebelt.Extensions.Globalization/Surrogates/zh-hk.bin
new file mode 100644
index 0000000..e2e8a88
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/zh-hk.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/zh-mo.bin b/src/Codebelt.Extensions.Globalization/Surrogates/zh-mo.bin
new file mode 100644
index 0000000..e4f7ed2
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/zh-mo.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/zh-sg.bin b/src/Codebelt.Extensions.Globalization/Surrogates/zh-sg.bin
new file mode 100644
index 0000000..99e49f5
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/zh-sg.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/zh-tw.bin b/src/Codebelt.Extensions.Globalization/Surrogates/zh-tw.bin
new file mode 100644
index 0000000..688a503
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/zh-tw.bin differ
diff --git a/src/Codebelt.Extensions.Globalization/Surrogates/zu-za.bin b/src/Codebelt.Extensions.Globalization/Surrogates/zu-za.bin
new file mode 100644
index 0000000..b8de1fc
Binary files /dev/null and b/src/Codebelt.Extensions.Globalization/Surrogates/zu-za.bin differ
diff --git a/test/Codebelt.Extensions.Globalization.Tests/Codebelt.Extensions.Globalization.Tests.csproj b/test/Codebelt.Extensions.Globalization.Tests/Codebelt.Extensions.Globalization.Tests.csproj
new file mode 100644
index 0000000..58688eb
--- /dev/null
+++ b/test/Codebelt.Extensions.Globalization.Tests/Codebelt.Extensions.Globalization.Tests.csproj
@@ -0,0 +1,11 @@
+
+
+
+ Codebelt.Extensions.Globalization
+
+
+
+
+
+
+
diff --git a/test/Codebelt.Extensions.Globalization.Tests/CultureInfoExtensionsTest.cs b/test/Codebelt.Extensions.Globalization.Tests/CultureInfoExtensionsTest.cs
new file mode 100644
index 0000000..83555b3
--- /dev/null
+++ b/test/Codebelt.Extensions.Globalization.Tests/CultureInfoExtensionsTest.cs
@@ -0,0 +1,50 @@
+using System.Globalization;
+using System.Runtime.InteropServices;
+using Codebelt.Extensions.Xunit;
+using Xunit;
+using Xunit.Abstractions;
+
+namespace Codebelt.Extensions.Globalization
+{
+ public class CultureInfoExtensionsTest : Test
+ {
+ public CultureInfoExtensionsTest(ITestOutputHelper output) : base(output)
+ {
+ }
+
+ [Fact]
+ public void UseNationalLanguageSupport_ShouldHaveDifferentFormattingAsWindowsVariant()
+ {
+ var sut1 = new CultureInfo("da-DK", false);
+ var sut2 = (RuntimeInformation.IsOSPlatform(OSPlatform.Linux)
+ ? new CultureInfo("da-DK") // Linux uses ICU
+ : new CultureInfo("da-DK", false) // Ensure we do not read from user culture settings on Windows
+ ).UseNationalLanguageSupport();
+
+ Assert.NotEqual(sut1.DateTimeFormat, sut2.DateTimeFormat);
+ Assert.NotEqual(sut1.NumberFormat, sut2.NumberFormat);
+#if NET48_OR_GREATER
+ Assert.Equal(sut1.DateTimeFormat.ShortDatePattern, sut2.DateTimeFormat.ShortDatePattern);
+#else
+ Assert.Equal("dd.MM.yyyy", sut1.DateTimeFormat.ShortDatePattern);
+ Assert.Equal("dd-MM-yyyy", sut2.DateTimeFormat.ShortDatePattern);
+#endif
+ }
+
+ [Fact]
+ public void UseNationalLanguageSupport_ShouldHaveDifferentFormattingAsWindowsVariant_FromReadOnlyCultureInfos()
+ {
+ var sut1 = CultureInfo.GetCultureInfo("da-DK");
+ var sut2 = CultureInfo.GetCultureInfo("da-DK").UseNationalLanguageSupport();
+
+ Assert.NotEqual(sut1.DateTimeFormat, sut2.DateTimeFormat);
+ Assert.NotEqual(sut1.NumberFormat, sut2.NumberFormat);
+#if NET48_OR_GREATER
+ Assert.Equal(sut1.DateTimeFormat.ShortDatePattern, sut2.DateTimeFormat.ShortDatePattern);
+#else
+ Assert.Equal("dd.MM.yyyy", sut1.DateTimeFormat.ShortDatePattern);
+ Assert.Equal("dd-MM-yyyy", sut2.DateTimeFormat.ShortDatePattern);
+#endif
+ }
+ }
+}
diff --git a/test/TestProject1.FunctionalTests/Class1Test.cs b/test/TestProject1.FunctionalTests/Class1Test.cs
deleted file mode 100644
index 2ec9e90..0000000
--- a/test/TestProject1.FunctionalTests/Class1Test.cs
+++ /dev/null
@@ -1,9 +0,0 @@
-using Codebelt.Extensions.Xunit;
-
-namespace ClassLibrary1
-{
- public class Class1Test : Test
- {
-
- }
-}
diff --git a/test/TestProject1.FunctionalTests/TestProject1.FunctionalTests.csproj b/test/TestProject1.FunctionalTests/TestProject1.FunctionalTests.csproj
deleted file mode 100644
index 7bb358a..0000000
--- a/test/TestProject1.FunctionalTests/TestProject1.FunctionalTests.csproj
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
- Classlibrary1
-
-
-
-
-
-
-
diff --git a/test/TestProject1/Class1Test.cs b/test/TestProject1/Class1Test.cs
deleted file mode 100644
index 9790743..0000000
--- a/test/TestProject1/Class1Test.cs
+++ /dev/null
@@ -1,14 +0,0 @@
-using Codebelt.Extensions.Xunit;
-using Xunit;
-
-namespace Classlibrary1
-{
- public class Class1Test : Test
- {
- [Fact]
- public void Test1()
- {
-
- }
- }
-}
diff --git a/test/TestProject1/TestProject1.Tests.csproj b/test/TestProject1/TestProject1.Tests.csproj
deleted file mode 100644
index 7bb358a..0000000
--- a/test/TestProject1/TestProject1.Tests.csproj
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
- Classlibrary1
-
-
-
-
-
-
-
diff --git a/tooling/gse/Program.cs b/tooling/gse/Program.cs
new file mode 100644
index 0000000..c70ca9d
--- /dev/null
+++ b/tooling/gse/Program.cs
@@ -0,0 +1,56 @@
+using System.IO;
+using Codebelt.Extensions.Globalization;
+using Codebelt.Extensions.YamlDotNet.Formatters;
+using Cuemon.Extensions.IO;
+using Cuemon.Globalization;
+using Cuemon.Reflection;
+using YamlDotNet.Serialization.NamingConventions;
+
+namespace gse
+{
+ internal class Program
+ {
+ private static readonly string SurrogatesPath;
+ private static readonly string SurrogatesPathRaw;
+
+ static Program()
+ {
+ var assemblyPath = typeof(Program).Assembly.Location;
+ SurrogatesPath = Path.GetFullPath(Path.Combine(assemblyPath, "..", "..", "..", "..", "Surrogates"));
+ SurrogatesPathRaw = Path.Combine(SurrogatesPath, "raw");
+ Directory.CreateDirectory(SurrogatesPath);
+ Directory.CreateDirectory(SurrogatesPathRaw);
+ }
+
+ static void Main(string[] args)
+ {
+ var regions = World.Regions;
+ foreach (var region in regions)
+ {
+ var cultureInfos = World.GetCultures(region);
+ foreach (var cultureInfo in cultureInfos)
+ {
+ var dtSurrogate = new DateTimeFormatInfoSurrogate(cultureInfo.DateTimeFormat);
+ var nfSurrogate = new NumberFormatInfoSurrogate(cultureInfo.NumberFormat);
+ var ciSurrogate = new CultureInfoSurrogate(dtSurrogate, nfSurrogate);
+
+ var ms = YamlFormatter.SerializeObject(ciSurrogate, o =>
+ {
+ o.Settings.NamingConvention = NullNamingConvention.Instance;
+ o.Settings.ReflectionRules = new MemberReflection();
+ o.Settings.IndentSequences = false;
+ });
+
+ using var fsRawYaml = new FileStream(Path.Combine(SurrogatesPathRaw, $"{cultureInfo.Name.ToLowerInvariant()}.yml"), FileMode.Create);
+ fsRawYaml.Write(ms.ToByteArray(o => o.LeaveOpen = true), 0, (int)ms.Length);
+ fsRawYaml.Flush();
+
+ using var cms = ms.CompressGZip();
+ using var fs = new FileStream(Path.Combine(SurrogatesPath, $"{cultureInfo.Name.ToLowerInvariant()}.bin"), FileMode.Create);
+ fs.Write(cms.ToByteArray(o => o.LeaveOpen = true), 0, (int)cms.Length);
+ fs.Flush();
+ }
+ }
+ }
+ }
+}
diff --git a/tooling/gse/gse.csproj b/tooling/gse/gse.csproj
new file mode 100644
index 0000000..c4734f3
--- /dev/null
+++ b/tooling/gse/gse.csproj
@@ -0,0 +1,29 @@
+
+
+
+ Exe
+ net8.0
+ false
+ false
+ false
+ false
+ true
+ 0
+ none
+ NU1701
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+