diff --git a/.gitmodules b/.gitmodules
index 6ccb28f8a0..f7b3b45447 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -22,3 +22,6 @@
[submodule "vs-solutionpersistence"]
path = src/externalPackages/src/vs-solutionpersistence
url = https://github.com/microsoft/vs-solutionpersistence.git
+[submodule "spectre-console"]
+ path = src/externalPackages/src/spectre-console
+ url = https://github.com/spectreconsole/spectre.console
diff --git a/eng/Versions.props b/eng/Versions.props
index 3701162d28..480c23c28f 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -15,6 +15,7 @@
2.14.1
1.10.2
1.0.52
+ 0.52.0
diff --git a/eng/common/vmr-sync.sh b/eng/common/vmr-sync.sh
index 44239e331c..c038012a55 100755
--- a/eng/common/vmr-sync.sh
+++ b/eng/common/vmr-sync.sh
@@ -164,7 +164,7 @@ set -e
highlight 'Installing .NET, preparing the tooling..'
source "./eng/common/tools.sh"
InitializeDotNetCli true
-GetDarc
+GetDarc "1.1.0-beta.25514.2"
dotnetDir=$( cd ./.dotnet/; pwd -P )
dotnet=$dotnetDir/dotnet
diff --git a/src/externalPackages/patches/spectre-console/0001-Remove-PolySharp.patch b/src/externalPackages/patches/spectre-console/0001-Remove-PolySharp.patch
new file mode 100644
index 0000000000..14f2b9a5c0
--- /dev/null
+++ b/src/externalPackages/patches/spectre-console/0001-Remove-PolySharp.patch
@@ -0,0 +1,27 @@
+From 1250cea7252e45de242063668469b75ff7618ee0 Mon Sep 17 00:00:00 2001
+From: Andy Zivkovic
+Date: Thu, 27 Nov 2025 10:42:15 +1030
+Subject: [PATCH] Remove PolySharp
+
+---
+ src/Spectre.Console/Spectre.Console.csproj | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/src/Spectre.Console/Spectre.Console.csproj b/src/Spectre.Console/Spectre.Console.csproj
+index 5a9e161..991c064 100644
+--- a/src/Spectre.Console/Spectre.Console.csproj
++++ b/src/Spectre.Console/Spectre.Console.csproj
+@@ -22,10 +22,6 @@
+
+ all
+
+-
+- all
+- runtime; build; native; contentfiles; analyzers
+-
+
+
+
+--
+2.43.0
+
diff --git a/src/externalPackages/projects/spectre-console.proj b/src/externalPackages/projects/spectre-console.proj
new file mode 100644
index 0000000000..bc96bad3ad
--- /dev/null
+++ b/src/externalPackages/projects/spectre-console.proj
@@ -0,0 +1,39 @@
+
+
+
+ $(ProjectDirectory)src/Spectre.Console/bin/$(Configuration)/
+ $(ProjectDirectory)global.json
+ true
+
+
+
+
+ $(ProjectDirectory)src/Spectre.Console/Spectre.Console.csproj
+ $(BuildCommandArgs) /p:Configuration=$(Configuration)
+ $(BuildCommandArgs) /p:DelaySign=$(DelaySign)
+ $(BuildCommandArgs) /p:PublicSign=$(PublicSign)
+ $(BuildCommandArgs) /v:$(LogVerbosity)
+ $(BuildCommandArgs) $(RedirectRepoOutputToLog)
+ $(BuildCommandArgs) /p:Version=$(SpectreConsoleReleaseVersion)
+ $(BuildCommandArgs) /p:TargetFrameworks=$(NetCurrent)
+ $(BuildCommandArgs) /p:UseBuildTimeTools=false
+ $(BuildCommandArgs) /p:IsAotCompatible=false
+
+
+
+
+
+
+
+
+
+
diff --git a/src/externalPackages/src/spectre-console b/src/externalPackages/src/spectre-console
new file mode 160000
index 0000000000..e097281ca8
--- /dev/null
+++ b/src/externalPackages/src/spectre-console
@@ -0,0 +1 @@
+Subproject commit e097281ca8a50268b1022453fe6efd9112123a28
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/Wcwidth.Sources.4.0.1.csproj b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/Wcwidth.Sources.4.0.1.csproj
new file mode 100644
index 0000000000..179a8fd06a
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/Wcwidth.Sources.4.0.1.csproj
@@ -0,0 +1,9 @@
+
+
+
+ netstandard2.0
+ 4.0.1
+ Wcwidth.Sources
+
+
+
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Extensions/IntegerExtensions.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Extensions/IntegerExtensions.cs
new file mode 100755
index 0000000000..70bc695649
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Extensions/IntegerExtensions.cs
@@ -0,0 +1,45 @@
+namespace Wcwidth;
+
+internal static class IntegerExtensions
+{
+ public static bool Exist(this int[,] table, int value)
+ {
+ return Find(table, value) != 0;
+ }
+
+ public static int Find(this int[,] table, int value)
+ {
+ if (table is null)
+ {
+ throw new ArgumentNullException(nameof(table));
+ }
+
+ var min = 0;
+ var max = table.GetUpperBound(0);
+ int mid;
+
+ if (value < table[0, 0] || value > table[max, 1])
+ {
+ return 0;
+ }
+
+ while (max >= min)
+ {
+ mid = (min + max) / 2;
+ if (value > table[mid, 1])
+ {
+ min = mid + 1;
+ }
+ else if (value < table[mid, 0])
+ {
+ max = mid - 1;
+ }
+ else
+ {
+ return 1;
+ }
+ }
+
+ return 0;
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/Vs16Table.Generated.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/Vs16Table.Generated.cs
new file mode 100755
index 0000000000..af8d37bdc2
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/Vs16Table.Generated.cs
@@ -0,0 +1,144 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+
+namespace Wcwidth;
+
+internal static partial class Vs16Table
+{
+ private static int[,] GenerateTable(Unicode version)
+ {
+ return version switch
+ {
+ Unicode.Version_9_0_0 => Unicode_9_0_0(),
+ _ => throw new InvalidOperationException("Unknown Unicode version"),
+ };
+ }
+
+ private static int[,] Unicode_9_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000023, 0x000023 },
+ { 0x00002A, 0x00002A },
+ { 0x000030, 0x000039 },
+ { 0x0000A9, 0x0000A9 },
+ { 0x0000AE, 0x0000AE },
+ { 0x00203C, 0x00203C },
+ { 0x002049, 0x002049 },
+ { 0x002122, 0x002122 },
+ { 0x002139, 0x002139 },
+ { 0x002194, 0x002199 },
+ { 0x0021A9, 0x0021AA },
+ { 0x002328, 0x002328 },
+ { 0x0023CF, 0x0023CF },
+ { 0x0023ED, 0x0023EF },
+ { 0x0023F1, 0x0023F2 },
+ { 0x0023F8, 0x0023FA },
+ { 0x0024C2, 0x0024C2 },
+ { 0x0025AA, 0x0025AB },
+ { 0x0025B6, 0x0025B6 },
+ { 0x0025C0, 0x0025C0 },
+ { 0x0025FB, 0x0025FC },
+ { 0x002600, 0x002604 },
+ { 0x00260E, 0x00260E },
+ { 0x002611, 0x002611 },
+ { 0x002618, 0x002618 },
+ { 0x00261D, 0x00261D },
+ { 0x002620, 0x002620 },
+ { 0x002622, 0x002623 },
+ { 0x002626, 0x002626 },
+ { 0x00262A, 0x00262A },
+ { 0x00262E, 0x00262F },
+ { 0x002638, 0x00263A },
+ { 0x002640, 0x002640 },
+ { 0x002642, 0x002642 },
+ { 0x00265F, 0x002660 },
+ { 0x002663, 0x002663 },
+ { 0x002665, 0x002666 },
+ { 0x002668, 0x002668 },
+ { 0x00267B, 0x00267B },
+ { 0x00267E, 0x00267E },
+ { 0x002692, 0x002692 },
+ { 0x002694, 0x002697 },
+ { 0x002699, 0x002699 },
+ { 0x00269B, 0x00269C },
+ { 0x0026A0, 0x0026A0 },
+ { 0x0026A7, 0x0026A7 },
+ { 0x0026B0, 0x0026B1 },
+ { 0x0026C8, 0x0026C8 },
+ { 0x0026CF, 0x0026CF },
+ { 0x0026D1, 0x0026D1 },
+ { 0x0026D3, 0x0026D3 },
+ { 0x0026E9, 0x0026E9 },
+ { 0x0026F0, 0x0026F1 },
+ { 0x0026F4, 0x0026F4 },
+ { 0x0026F7, 0x0026F9 },
+ { 0x002702, 0x002702 },
+ { 0x002708, 0x002709 },
+ { 0x00270C, 0x00270D },
+ { 0x00270F, 0x00270F },
+ { 0x002712, 0x002712 },
+ { 0x002714, 0x002714 },
+ { 0x002716, 0x002716 },
+ { 0x00271D, 0x00271D },
+ { 0x002721, 0x002721 },
+ { 0x002733, 0x002734 },
+ { 0x002744, 0x002744 },
+ { 0x002747, 0x002747 },
+ { 0x002763, 0x002764 },
+ { 0x0027A1, 0x0027A1 },
+ { 0x002934, 0x002935 },
+ { 0x002B05, 0x002B07 },
+ { 0x01F170, 0x01F171 },
+ { 0x01F17E, 0x01F17F },
+ { 0x01F321, 0x01F321 },
+ { 0x01F324, 0x01F32C },
+ { 0x01F336, 0x01F336 },
+ { 0x01F37D, 0x01F37D },
+ { 0x01F396, 0x01F397 },
+ { 0x01F399, 0x01F39B },
+ { 0x01F39E, 0x01F39F },
+ { 0x01F3CB, 0x01F3CE },
+ { 0x01F3D4, 0x01F3DF },
+ { 0x01F3F3, 0x01F3F3 },
+ { 0x01F3F5, 0x01F3F5 },
+ { 0x01F3F7, 0x01F3F7 },
+ { 0x01F43F, 0x01F43F },
+ { 0x01F441, 0x01F441 },
+ { 0x01F4FD, 0x01F4FD },
+ { 0x01F549, 0x01F54A },
+ { 0x01F56F, 0x01F570 },
+ { 0x01F573, 0x01F579 },
+ { 0x01F587, 0x01F587 },
+ { 0x01F58A, 0x01F58D },
+ { 0x01F590, 0x01F590 },
+ { 0x01F5A5, 0x01F5A5 },
+ { 0x01F5A8, 0x01F5A8 },
+ { 0x01F5B1, 0x01F5B2 },
+ { 0x01F5BC, 0x01F5BC },
+ { 0x01F5C2, 0x01F5C4 },
+ { 0x01F5D1, 0x01F5D3 },
+ { 0x01F5DC, 0x01F5DE },
+ { 0x01F5E1, 0x01F5E1 },
+ { 0x01F5E3, 0x01F5E3 },
+ { 0x01F5E8, 0x01F5E8 },
+ { 0x01F5EF, 0x01F5EF },
+ { 0x01F5F3, 0x01F5F3 },
+ { 0x01F5FA, 0x01F5FA },
+ { 0x01F6CB, 0x01F6CB },
+ { 0x01F6CD, 0x01F6CF },
+ { 0x01F6E0, 0x01F6E5 },
+ { 0x01F6E9, 0x01F6E9 },
+ { 0x01F6F0, 0x01F6F0 },
+ { 0x01F6F3, 0x01F6F3 },
+ };
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/Vs16Table.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/Vs16Table.cs
new file mode 100755
index 0000000000..de082c013c
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/Vs16Table.cs
@@ -0,0 +1,40 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+namespace Wcwidth;
+
+internal static partial class Vs16Table
+{
+ private static readonly Dictionary _lookup;
+ private static readonly object _lock;
+
+ static Vs16Table()
+ {
+ _lookup = new Dictionary();
+ _lock = new object();
+ }
+
+ public static int[,] GetTable(Unicode version)
+ {
+ if (!_lookup.TryGetValue(version, out var table))
+ {
+ lock (_lock)
+ {
+ if (_lookup.TryGetValue(version, out table))
+ {
+ return table;
+ }
+
+ // Generate the table for the version dynamically
+ // since we don't want to load everything into memory.
+ table = GenerateTable(version);
+ _lookup[version] = table;
+ }
+ }
+
+ return table;
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/WideTable.Generated.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/WideTable.Generated.cs
new file mode 100755
index 0000000000..d24bb5af4a
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/WideTable.Generated.cs
@@ -0,0 +1,1830 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+
+namespace Wcwidth;
+
+internal static partial class WideTable
+{
+ private static int[,] GenerateTable(Unicode version)
+ {
+ return version switch
+ {
+ Unicode.Version_4_1_0 => Unicode_4_1_0(),
+ Unicode.Version_5_0_0 => Unicode_5_0_0(),
+ Unicode.Version_5_1_0 => Unicode_5_1_0(),
+ Unicode.Version_5_2_0 => Unicode_5_2_0(),
+ Unicode.Version_6_0_0 => Unicode_6_0_0(),
+ Unicode.Version_6_1_0 => Unicode_6_1_0(),
+ Unicode.Version_6_2_0 => Unicode_6_2_0(),
+ Unicode.Version_6_3_0 => Unicode_6_3_0(),
+ Unicode.Version_7_0_0 => Unicode_7_0_0(),
+ Unicode.Version_8_0_0 => Unicode_8_0_0(),
+ Unicode.Version_9_0_0 => Unicode_9_0_0(),
+ Unicode.Version_10_0_0 => Unicode_10_0_0(),
+ Unicode.Version_11_0_0 => Unicode_11_0_0(),
+ Unicode.Version_12_0_0 => Unicode_12_0_0(),
+ Unicode.Version_12_1_0 => Unicode_12_1_0(),
+ Unicode.Version_13_0_0 => Unicode_13_0_0(),
+ Unicode.Version_14_0_0 => Unicode_14_0_0(),
+ Unicode.Version_15_0_0 => Unicode_15_0_0(),
+ Unicode.Version_15_1_0 => Unicode_15_1_0(),
+ Unicode.Version_16_0_0 => Unicode_16_0_0(),
+ Unicode.Version_17_0_0 => Unicode_17_0_0(),
+ _ => throw new InvalidOperationException("Unknown Unicode version"),
+ };
+ }
+
+ private static int[,] Unicode_4_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x001159 },
+ { 0x00115F, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312C },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031CF },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003243 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DB5 },
+ { 0x004E00, 0x009FBB },
+ { 0x00A000, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FA2D },
+ { 0x00FA30, 0x00FA6A },
+ { 0x00FA70, 0x00FAD9 },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_5_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x001159 },
+ { 0x00115F, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312C },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031CF },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003243 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DB5 },
+ { 0x004E00, 0x009FBB },
+ { 0x00A000, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FA2D },
+ { 0x00FA30, 0x00FA6A },
+ { 0x00FA70, 0x00FAD9 },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_5_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x001159 },
+ { 0x00115F, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003243 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DB5 },
+ { 0x004E00, 0x009FC3 },
+ { 0x00A000, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FA2D },
+ { 0x00FA30, 0x00FA6A },
+ { 0x00FA70, 0x00FAD9 },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_5_2_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01F200, 0x01F200 },
+ { 0x01F210, 0x01F231 },
+ { 0x01F240, 0x01F248 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_2_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_3_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_7_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_8_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_9_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE0 },
+ { 0x017000, 0x0187EC },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6F6 },
+ { 0x01F910, 0x01F91E },
+ { 0x01F920, 0x01F927 },
+ { 0x01F930, 0x01F930 },
+ { 0x01F933, 0x01F93E },
+ { 0x01F940, 0x01F94B },
+ { 0x01F950, 0x01F95E },
+ { 0x01F980, 0x01F991 },
+ { 0x01F9C0, 0x01F9C0 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_10_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312E },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE1 },
+ { 0x017000, 0x0187EC },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6F8 },
+ { 0x01F910, 0x01F93E },
+ { 0x01F940, 0x01F94C },
+ { 0x01F950, 0x01F96B },
+ { 0x01F980, 0x01F997 },
+ { 0x01F9C0, 0x01F9C0 },
+ { 0x01F9D0, 0x01F9E6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_11_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE1 },
+ { 0x017000, 0x0187F1 },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6F9 },
+ { 0x01F910, 0x01F93E },
+ { 0x01F940, 0x01F970 },
+ { 0x01F973, 0x01F976 },
+ { 0x01F97A, 0x01F97A },
+ { 0x01F97C, 0x01F9A2 },
+ { 0x01F9B0, 0x01F9B9 },
+ { 0x01F9C0, 0x01F9C2 },
+ { 0x01F9D0, 0x01F9FF },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_12_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D5 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FA },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F90D, 0x01F971 },
+ { 0x01F973, 0x01F976 },
+ { 0x01F97A, 0x01F9A2 },
+ { 0x01F9A5, 0x01F9AA },
+ { 0x01F9AE, 0x01F9CA },
+ { 0x01F9CD, 0x01F9FF },
+ { 0x01FA70, 0x01FA73 },
+ { 0x01FA78, 0x01FA7A },
+ { 0x01FA80, 0x01FA82 },
+ { 0x01FA90, 0x01FA95 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_12_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D5 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FA },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F90D, 0x01F971 },
+ { 0x01F973, 0x01F976 },
+ { 0x01F97A, 0x01F9A2 },
+ { 0x01F9A5, 0x01F9AA },
+ { 0x01F9AE, 0x01F9CA },
+ { 0x01F9CD, 0x01F9FF },
+ { 0x01FA70, 0x01FA73 },
+ { 0x01FA78, 0x01FA7A },
+ { 0x01FA80, 0x01FA82 },
+ { 0x01FA90, 0x01FA95 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_13_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F978 },
+ { 0x01F97A, 0x01F9CB },
+ { 0x01F9CD, 0x01F9FF },
+ { 0x01FA70, 0x01FA74 },
+ { 0x01FA78, 0x01FA7A },
+ { 0x01FA80, 0x01FA86 },
+ { 0x01FA90, 0x01FAA8 },
+ { 0x01FAB0, 0x01FAB6 },
+ { 0x01FAC0, 0x01FAC2 },
+ { 0x01FAD0, 0x01FAD6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_14_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DD, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA74 },
+ { 0x01FA78, 0x01FA7C },
+ { 0x01FA80, 0x01FA86 },
+ { 0x01FA90, 0x01FAAC },
+ { 0x01FAB0, 0x01FABA },
+ { 0x01FAC0, 0x01FAC5 },
+ { 0x01FAD0, 0x01FAD9 },
+ { 0x01FAE0, 0x01FAE7 },
+ { 0x01FAF0, 0x01FAF6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_15_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA88 },
+ { 0x01FA90, 0x01FABD },
+ { 0x01FABF, 0x01FAC5 },
+ { 0x01FACE, 0x01FADB },
+ { 0x01FAE0, 0x01FAE8 },
+ { 0x01FAF0, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_15_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031EF, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA88 },
+ { 0x01FA90, 0x01FABD },
+ { 0x01FABF, 0x01FAC5 },
+ { 0x01FACE, 0x01FADB },
+ { 0x01FAE0, 0x01FAE8 },
+ { 0x01FAF0, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_16_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002630, 0x002637 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x00268A, 0x00268F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E5 },
+ { 0x0031EF, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018CFF, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01D300, 0x01D356 },
+ { 0x01D360, 0x01D376 },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA89 },
+ { 0x01FA8F, 0x01FAC6 },
+ { 0x01FACE, 0x01FADC },
+ { 0x01FADF, 0x01FAE9 },
+ { 0x01FAF0, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_17_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002630, 0x002637 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x00268A, 0x00268F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E5 },
+ { 0x0031EF, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x016FF2, 0x016FF6 },
+ { 0x017000, 0x018CD5 },
+ { 0x018CFF, 0x018D1E },
+ { 0x018D80, 0x018DF2 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01D300, 0x01D356 },
+ { 0x01D360, 0x01D376 },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D8 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA8A },
+ { 0x01FA8E, 0x01FAC6 },
+ { 0x01FAC8, 0x01FAC8 },
+ { 0x01FACD, 0x01FADC },
+ { 0x01FADF, 0x01FAEA },
+ { 0x01FAEF, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/WideTable.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/WideTable.cs
new file mode 100755
index 0000000000..c96f074378
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/WideTable.cs
@@ -0,0 +1,40 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+namespace Wcwidth;
+
+internal static partial class WideTable
+{
+ private static readonly Dictionary _lookup;
+ private static readonly object _lock;
+
+ static WideTable()
+ {
+ _lookup = new Dictionary();
+ _lock = new object();
+ }
+
+ public static int[,] GetTable(Unicode version)
+ {
+ if (!_lookup.TryGetValue(version, out var table))
+ {
+ lock (_lock)
+ {
+ if (_lookup.TryGetValue(version, out table))
+ {
+ return table;
+ }
+
+ // Generate the table for the version dynamically
+ // since we don't want to load everything into memory.
+ table = GenerateTable(version);
+ _lookup[version] = table;
+ }
+ }
+
+ return table;
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/ZeroTable.Generated.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/ZeroTable.Generated.cs
new file mode 100755
index 0000000000..9437b6ed52
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/ZeroTable.Generated.cs
@@ -0,0 +1,9365 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+
+namespace Wcwidth;
+
+internal static partial class ZeroTable
+{
+ private static int[,] GenerateTable(Unicode version)
+ {
+ return version switch
+ {
+ Unicode.Version_4_1_0 => Unicode_4_1_0(),
+ Unicode.Version_5_0_0 => Unicode_5_0_0(),
+ Unicode.Version_5_1_0 => Unicode_5_1_0(),
+ Unicode.Version_5_2_0 => Unicode_5_2_0(),
+ Unicode.Version_6_0_0 => Unicode_6_0_0(),
+ Unicode.Version_6_1_0 => Unicode_6_1_0(),
+ Unicode.Version_6_2_0 => Unicode_6_2_0(),
+ Unicode.Version_6_3_0 => Unicode_6_3_0(),
+ Unicode.Version_7_0_0 => Unicode_7_0_0(),
+ Unicode.Version_8_0_0 => Unicode_8_0_0(),
+ Unicode.Version_9_0_0 => Unicode_9_0_0(),
+ Unicode.Version_10_0_0 => Unicode_10_0_0(),
+ Unicode.Version_11_0_0 => Unicode_11_0_0(),
+ Unicode.Version_12_0_0 => Unicode_12_0_0(),
+ Unicode.Version_12_1_0 => Unicode_12_1_0(),
+ Unicode.Version_13_0_0 => Unicode_13_0_0(),
+ Unicode.Version_14_0_0 => Unicode_14_0_0(),
+ Unicode.Version_15_0_0 => Unicode_15_0_0(),
+ Unicode.Version_15_1_0 => Unicode_15_1_0(),
+ Unicode.Version_16_0_0 => Unicode_16_0_0(),
+ Unicode.Version_17_0_0 => Unicode_17_0_0(),
+ _ => throw new InvalidOperationException("Unknown Unicode version"),
+ };
+ }
+
+ private static int[,] Unicode_4_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000486 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005B9 },
+ { 0x0005BB, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x000615 },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x000901, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x000951, 0x000954 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A70, 0x000A71 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B43 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D43 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102C, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001032 },
+ { 0x001036, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x001039 },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001DC0, 0x001DC3 },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002063 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020EB },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE23 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_5_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000486 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x000615 },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000901, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x000951, 0x000954 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A70, 0x000A71 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B43 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D43 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102C, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001032 },
+ { 0x001036, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x001039 },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001DC0, 0x001DCA },
+ { 0x001DFE, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002063 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020EF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE23 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_5_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000901, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x000951, 0x000954 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFE, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A67C, 0x00A67D },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_5_2_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094E },
+ { 0x000951, 0x000955 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF2 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFD, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A67C, 0x00A67D },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF2 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A67C, 0x00A67D },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000604 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x0008FE },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAB },
+ { 0x001BAC, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_2_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000604 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x0008FE },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAB },
+ { 0x001BAC, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_3_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000604 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x0008FE },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAB },
+ { 0x001BAC, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_7_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D01, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF5 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2D },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011301, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_8_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D01, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF5 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111CA, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_9_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D4, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D01, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF5 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111CA, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_10_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D4, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111CA, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x011A01, 0x011A06 },
+ { 0x011A07, 0x011A08 },
+ { 0x011A09, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_11_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_12_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_12_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_13_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001AC0 },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_14_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000898, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_15_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000898, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFD, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_15_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000898, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFD, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_16_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000897, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010D69, 0x010D6D },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFC, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0113B8, 0x0113BA },
+ { 0x0113BB, 0x0113C0 },
+ { 0x0113C2, 0x0113C2 },
+ { 0x0113C5, 0x0113C5 },
+ { 0x0113C7, 0x0113CA },
+ { 0x0113CC, 0x0113CD },
+ { 0x0113CE, 0x0113CE },
+ { 0x0113CF, 0x0113CF },
+ { 0x0113D0, 0x0113D0 },
+ { 0x0113D2, 0x0113D2 },
+ { 0x0113E1, 0x0113E2 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171D },
+ { 0x01171E, 0x01171E },
+ { 0x01171F, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x011F5A, 0x011F5A },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x01611E, 0x016129 },
+ { 0x01612A, 0x01612C },
+ { 0x01612D, 0x01612F },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E5EE, 0x01E5EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_17_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000897, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ADD },
+ { 0x001AE0, 0x001AEB },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010D69, 0x010D6D },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFA, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0113B8, 0x0113BA },
+ { 0x0113BB, 0x0113C0 },
+ { 0x0113C2, 0x0113C2 },
+ { 0x0113C5, 0x0113C5 },
+ { 0x0113C7, 0x0113CA },
+ { 0x0113CC, 0x0113CD },
+ { 0x0113CE, 0x0113CE },
+ { 0x0113CF, 0x0113CF },
+ { 0x0113D0, 0x0113D0 },
+ { 0x0113D2, 0x0113D2 },
+ { 0x0113E1, 0x0113E2 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171D },
+ { 0x01171E, 0x01171E },
+ { 0x01171F, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011B60, 0x011B60 },
+ { 0x011B61, 0x011B61 },
+ { 0x011B62, 0x011B64 },
+ { 0x011B65, 0x011B65 },
+ { 0x011B66, 0x011B66 },
+ { 0x011B67, 0x011B67 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x011F5A, 0x011F5A },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x01611E, 0x016129 },
+ { 0x01612A, 0x01612C },
+ { 0x01612D, 0x01612F },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E5EE, 0x01E5EF },
+ { 0x01E6E3, 0x01E6E3 },
+ { 0x01E6E6, 0x01E6E6 },
+ { 0x01E6EE, 0x01E6EF },
+ { 0x01E6F5, 0x01E6F5 },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/ZeroTable.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/ZeroTable.cs
new file mode 100755
index 0000000000..bff3a1110e
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Tables/ZeroTable.cs
@@ -0,0 +1,41 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+namespace Wcwidth
+{
+ internal static partial class ZeroTable
+ {
+ private static readonly Dictionary _lookup;
+ private static readonly object _lock;
+
+ static ZeroTable()
+ {
+ _lookup = new Dictionary();
+ _lock = new object();
+ }
+
+ public static int[,] GetTable(Unicode version)
+ {
+ if (!_lookup.TryGetValue(version, out var table))
+ {
+ lock (_lock)
+ {
+ if (_lookup.TryGetValue(version, out table))
+ {
+ return table;
+ }
+
+ // Generate the table for the version dynamically
+ // since we don't want to load everything into memory.
+ table = GenerateTable(version);
+ _lookup[version] = table;
+ }
+ }
+
+ return table;
+ }
+ }
+}
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Unicode.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Unicode.cs
new file mode 100755
index 0000000000..4ba1c5b401
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/Unicode.cs
@@ -0,0 +1,127 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+using System.ComponentModel;
+using System.Diagnostics.CodeAnalysis;
+
+namespace Wcwidth;
+
+///
+/// Represents a Unicode version.
+///
+[SuppressMessage("Naming", "CA1707:Identifiers should not contain underscores")]
+#if WCWIDTH_VISIBILITY_INTERNAL
+ internal
+#else
+public
+#endif
+ enum Unicode
+{
+ ///
+ /// Unicode version 4.1.0.
+ ///
+ [Description("4.1.0")] Version_4_1_0 = 0,
+
+ ///
+ /// Unicode version 5.0.0.
+ ///
+ [Description("5.0.0")] Version_5_0_0 = 1,
+
+ ///
+ /// Unicode version 5.1.0.
+ ///
+ [Description("5.1.0")] Version_5_1_0 = 2,
+
+ ///
+ /// Unicode version 5.2.0.
+ ///
+ [Description("5.2.0")] Version_5_2_0 = 3,
+
+ ///
+ /// Unicode version 6.0.0.
+ ///
+ [Description("6.0.0")] Version_6_0_0 = 4,
+
+ ///
+ /// Unicode version 6.1.0.
+ ///
+ [Description("6.1.0")] Version_6_1_0 = 5,
+
+ ///
+ /// Unicode version 6.2.0.
+ ///
+ [Description("6.2.0")] Version_6_2_0 = 6,
+
+ ///
+ /// Unicode version 6.3.0.
+ ///
+ [Description("6.3.0")] Version_6_3_0 = 7,
+
+ ///
+ /// Unicode version 7.0.0.
+ ///
+ [Description("7.0.0")] Version_7_0_0 = 8,
+
+ ///
+ /// Unicode version 8.0.0.
+ ///
+ [Description("8.0.0")] Version_8_0_0 = 9,
+
+ ///
+ /// Unicode version 9.0.0.
+ ///
+ [Description("9.0.0")] Version_9_0_0 = 10,
+
+ ///
+ /// Unicode version 10.0.0.
+ ///
+ [Description("10.0.0")] Version_10_0_0 = 11,
+
+ ///
+ /// Unicode version 11.0.0.
+ ///
+ [Description("11.0.0")] Version_11_0_0 = 12,
+
+ ///
+ /// Unicode version 12.0.0.
+ ///
+ [Description("12.0.0")] Version_12_0_0 = 13,
+
+ ///
+ /// Unicode version 12.1.0.
+ ///
+ [Description("12.1.0")] Version_12_1_0 = 14,
+
+ ///
+ /// Unicode version 13.0.0.
+ ///
+ [Description("13.0.0")] Version_13_0_0 = 15,
+
+ ///
+ /// Unicode version 14.0.0.
+ ///
+ [Description("14.0.0")] Version_14_0_0 = 16,
+
+ ///
+ /// Unicode version 15.0.0.
+ ///
+ [Description("15.0.0")] Version_15_0_0 = 17,
+
+ ///
+ /// Unicode version 15.1.0.
+ ///
+ [Description("15.1.0")] Version_15_1_0 = 18,
+
+ ///
+ /// Unicode version 16.0.0.
+ ///
+ [Description("16.0.0")] Version_16_0_0 = 19,
+
+ ///
+ /// Unicode version 17.0.0.
+ ///
+ [Description("17.0.0")] Version_17_0_0 = 20,
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/UnicodeCalculator.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/UnicodeCalculator.cs
new file mode 100755
index 0000000000..35e14dd763
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net10.0/External/Wcwidth/UnicodeCalculator.cs
@@ -0,0 +1,209 @@
+// This is a port of the Python version of wcwidth() written by Jeff Quast,
+// which originally was written by Markus Kuhn.
+//
+// https://github.com/jquast/wcwidth
+// http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
+//
+// In fixed-width output devices, Latin characters all occupy a single "cell" position
+// of equal width, whereas ideographic CJK characters occupy two such cells. Interoperability
+// between terminal-line applications and (teletype-style) character terminals using the
+// UTF-8 encoding requires agreement on which character should advance the cursor by how
+// many cell positions. No established formal standards exist at present on which Unicode
+// character shall occupy how many cell positions on character terminals. These routines
+// are a first attempt of defining such behavior based on simple rules applied to data
+// provided by the Unicode Consortium.
+//
+// For some graphical characters, the Unicode standard explicitly defines a character-cell
+// width via the definition of the East Asian FullWidth (F), Wide (W), Half-width (H),
+// and Narrow (Na) classes. In all these cases, there is no ambiguity about which width
+// a terminal shall use. For characters in the East Asian Ambiguous (A) class, the width
+// choice depends purely on a preference of backward compatibility with either historic
+// CJK or Western practice. Choosing single-width for these characters is easy to justify
+// as the appropriate long-term solution, as the CJK practice of displaying these characters
+// as double-width comes from historic implementation simplicity (8-bit encoded characters
+// were displayed single-width and 16-bit ones double-width, even for Greek, Cyrillic, etc.)
+// and not any typographic considerations.
+//
+// Much less clear is the choice of width for the Not East Asian (Neutral) class.
+// Existing practice does not dictate a width for any of these characters. It would
+// nevertheless make sense typographically to allocate two character cells to characters
+// such as for instance EM SPACE or VOLUME INTEGRAL, which cannot be represented adequately
+// with a single-width glyph. The following routines at present merely assign a single-cell
+// width to all neutral characters, in the interest of simplicity. This is not entirely
+// satisfactory and should be reconsidered before establishing a formal standard in this area.
+// At the moment, the decision which Not East Asian (Neutral) characters should be represented
+// by double-width glyphs cannot yet be answered by applying a simple rule from the Unicode
+// database content. Setting up a proper standard for the behavior of UTF-8 character
+// terminals will require a careful analysis not only of each Unicode character, but also
+// of each presentation form, something the author of these routines has avoided to do so far.
+//
+// http://www.unicode.org/unicode/reports/tr11/
+
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+#if NET6_0_OR_GREATER
+using System.Text;
+#endif
+
+namespace Wcwidth;
+
+///
+/// A utility for calculating the width of Unicode characters.
+///
+#if WCWIDTH_VISIBILITY_INTERNAL
+ internal
+#else
+public
+#endif
+ static class UnicodeCalculator
+{
+ private const Unicode Latest = Unicode.Version_16_0_0;
+
+ // NOTE: created by hand, there isn't anything identifiable other than
+ // general Cf category code to identify these, and some characters in Cf
+ // category code are of non-zero width.
+ // Also includes some Cc, Mn, Zl, and Zp characters
+ private static readonly HashSet _zeroWidthCf =
+ [
+ 0, // Null (Cc)
+ 0x034F, // Combining grapheme joiner (Mn)
+ 0x200B, // Zero width space
+ 0x200C, // Zero width non-joiner
+ 0x200D, // Zero width joiner
+ 0x200E, // Left-to-right mark
+ 0x200F, // Right-to-left mark
+ 0x2028, // Line separator (Zl)
+ 0x2029, // Paragraph separator (Zp)
+ 0x202A, // Left-to-right embedding
+ 0x202B, // Right-to-left embedding
+ 0x202C, // Pop directional formatting
+ 0x202D, // Left-to-right override
+ 0x202E, // Right-to-left override
+ 0x2060, // Word joiner
+ 0x2061, // Function application
+ 0x2062, // Invisible times
+ 0x2063 // Invisible separator
+ ];
+
+ ///
+ /// Gets the width of a Unicode code point.
+ ///
+ /// The Unicode code point to calculate the width of.
+ /// The Unicode version to use.
+ /// The width of the character (-1, 0, 1, 2).
+ public static int GetWidth(int value, Unicode? version = null)
+ {
+ version ??= Latest;
+
+ // NOTE: created by hand, there isn't anything identifiable other than
+ // general Cf category code to identify these, and some characters in Cf
+ // category code are of non-zero width.
+ if (_zeroWidthCf.Contains(value))
+ {
+ return 0;
+ }
+
+ // C0/C1 control characters
+ if (value < 32 || (value >= 0x07F && value < 0x0A0))
+ {
+ return -1;
+ }
+
+ // Zero width?
+ if (ZeroTable.GetTable(version.Value).Exist(value))
+ {
+ return 0;
+ }
+
+ // Wide character?
+ return 1 + WideTable.GetTable(version.Value).Find(value);
+ }
+
+#if NET6_0_OR_GREATER
+ ///
+ /// Gets the width of a Unicode scalar.
+ ///
+ /// The Unicode scalar to calculate the width of.
+ /// The Unicode version to use.
+ /// The width of the character (-1, 0, 1, 2).
+ public static int GetWidth(Rune value, Unicode? version = null)
+ {
+ return GetWidth(value.Value, version);
+ }
+#endif
+
+ ///
+ /// Gets the width of a UTF-16 code unit.
+ ///
+ /// The UTF-16 code unit to calculate the width of.
+ /// The Unicode version to use.
+ /// The width of the character (-1, 0, 1, 2).
+ public static int GetWidth(char value, Unicode? version = null)
+ {
+ return GetWidth((int)value, version);
+ }
+
+#if NET6_0_OR_GREATER
+ public static int GetWidth(string value, Unicode? version = null)
+ {
+ version ??= Latest;
+
+ var runes = value.EnumerateRunes().ToArray();
+ var end = runes.Length;
+
+ var width = 0;
+ var index = 0;
+ var lastMeasureRune = default(Rune?);
+ while (index < end)
+ {
+ var rune = runes[index];
+
+ if (rune.Value == '\u200D')
+ {
+ // Zero Width Joiner, do not measure this or next character
+ index += 2;
+ continue;
+ }
+
+ if (rune.Value == '\uFE0F' && lastMeasureRune != null)
+ {
+ // on variation selector 16 (VS16) following another character,
+ // conditionally add '1' to the measured width if that character is
+ // known to be converted from narrow to wide by the VS16 character.
+ if (version >= Unicode.Version_9_0_0)
+ {
+ width += Vs16Table.GetTable(Unicode.Version_9_0_0).Find(lastMeasureRune.Value.Value);
+ lastMeasureRune = null;
+ }
+
+ index++;
+ continue;
+ }
+
+ // Measure rune at current index
+ var wcw = GetWidth(rune, version);
+ if (wcw < 0)
+ {
+ // Early return -1 on C0 and C1 control characters
+ return wcw;
+ }
+
+ if (wcw > 0)
+ {
+ // Track last character measured to contain a cell, so that
+ // subsequent VS-16 modifiers may be understood.
+ lastMeasureRune = rune;
+ }
+
+ width += wcw;
+ index++;
+ }
+
+ return width;
+ }
+#endif
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Extensions/IntegerExtensions.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Extensions/IntegerExtensions.cs
new file mode 100755
index 0000000000..70bc695649
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Extensions/IntegerExtensions.cs
@@ -0,0 +1,45 @@
+namespace Wcwidth;
+
+internal static class IntegerExtensions
+{
+ public static bool Exist(this int[,] table, int value)
+ {
+ return Find(table, value) != 0;
+ }
+
+ public static int Find(this int[,] table, int value)
+ {
+ if (table is null)
+ {
+ throw new ArgumentNullException(nameof(table));
+ }
+
+ var min = 0;
+ var max = table.GetUpperBound(0);
+ int mid;
+
+ if (value < table[0, 0] || value > table[max, 1])
+ {
+ return 0;
+ }
+
+ while (max >= min)
+ {
+ mid = (min + max) / 2;
+ if (value > table[mid, 1])
+ {
+ min = mid + 1;
+ }
+ else if (value < table[mid, 0])
+ {
+ max = mid - 1;
+ }
+ else
+ {
+ return 1;
+ }
+ }
+
+ return 0;
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/Vs16Table.Generated.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/Vs16Table.Generated.cs
new file mode 100755
index 0000000000..af8d37bdc2
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/Vs16Table.Generated.cs
@@ -0,0 +1,144 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+
+namespace Wcwidth;
+
+internal static partial class Vs16Table
+{
+ private static int[,] GenerateTable(Unicode version)
+ {
+ return version switch
+ {
+ Unicode.Version_9_0_0 => Unicode_9_0_0(),
+ _ => throw new InvalidOperationException("Unknown Unicode version"),
+ };
+ }
+
+ private static int[,] Unicode_9_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000023, 0x000023 },
+ { 0x00002A, 0x00002A },
+ { 0x000030, 0x000039 },
+ { 0x0000A9, 0x0000A9 },
+ { 0x0000AE, 0x0000AE },
+ { 0x00203C, 0x00203C },
+ { 0x002049, 0x002049 },
+ { 0x002122, 0x002122 },
+ { 0x002139, 0x002139 },
+ { 0x002194, 0x002199 },
+ { 0x0021A9, 0x0021AA },
+ { 0x002328, 0x002328 },
+ { 0x0023CF, 0x0023CF },
+ { 0x0023ED, 0x0023EF },
+ { 0x0023F1, 0x0023F2 },
+ { 0x0023F8, 0x0023FA },
+ { 0x0024C2, 0x0024C2 },
+ { 0x0025AA, 0x0025AB },
+ { 0x0025B6, 0x0025B6 },
+ { 0x0025C0, 0x0025C0 },
+ { 0x0025FB, 0x0025FC },
+ { 0x002600, 0x002604 },
+ { 0x00260E, 0x00260E },
+ { 0x002611, 0x002611 },
+ { 0x002618, 0x002618 },
+ { 0x00261D, 0x00261D },
+ { 0x002620, 0x002620 },
+ { 0x002622, 0x002623 },
+ { 0x002626, 0x002626 },
+ { 0x00262A, 0x00262A },
+ { 0x00262E, 0x00262F },
+ { 0x002638, 0x00263A },
+ { 0x002640, 0x002640 },
+ { 0x002642, 0x002642 },
+ { 0x00265F, 0x002660 },
+ { 0x002663, 0x002663 },
+ { 0x002665, 0x002666 },
+ { 0x002668, 0x002668 },
+ { 0x00267B, 0x00267B },
+ { 0x00267E, 0x00267E },
+ { 0x002692, 0x002692 },
+ { 0x002694, 0x002697 },
+ { 0x002699, 0x002699 },
+ { 0x00269B, 0x00269C },
+ { 0x0026A0, 0x0026A0 },
+ { 0x0026A7, 0x0026A7 },
+ { 0x0026B0, 0x0026B1 },
+ { 0x0026C8, 0x0026C8 },
+ { 0x0026CF, 0x0026CF },
+ { 0x0026D1, 0x0026D1 },
+ { 0x0026D3, 0x0026D3 },
+ { 0x0026E9, 0x0026E9 },
+ { 0x0026F0, 0x0026F1 },
+ { 0x0026F4, 0x0026F4 },
+ { 0x0026F7, 0x0026F9 },
+ { 0x002702, 0x002702 },
+ { 0x002708, 0x002709 },
+ { 0x00270C, 0x00270D },
+ { 0x00270F, 0x00270F },
+ { 0x002712, 0x002712 },
+ { 0x002714, 0x002714 },
+ { 0x002716, 0x002716 },
+ { 0x00271D, 0x00271D },
+ { 0x002721, 0x002721 },
+ { 0x002733, 0x002734 },
+ { 0x002744, 0x002744 },
+ { 0x002747, 0x002747 },
+ { 0x002763, 0x002764 },
+ { 0x0027A1, 0x0027A1 },
+ { 0x002934, 0x002935 },
+ { 0x002B05, 0x002B07 },
+ { 0x01F170, 0x01F171 },
+ { 0x01F17E, 0x01F17F },
+ { 0x01F321, 0x01F321 },
+ { 0x01F324, 0x01F32C },
+ { 0x01F336, 0x01F336 },
+ { 0x01F37D, 0x01F37D },
+ { 0x01F396, 0x01F397 },
+ { 0x01F399, 0x01F39B },
+ { 0x01F39E, 0x01F39F },
+ { 0x01F3CB, 0x01F3CE },
+ { 0x01F3D4, 0x01F3DF },
+ { 0x01F3F3, 0x01F3F3 },
+ { 0x01F3F5, 0x01F3F5 },
+ { 0x01F3F7, 0x01F3F7 },
+ { 0x01F43F, 0x01F43F },
+ { 0x01F441, 0x01F441 },
+ { 0x01F4FD, 0x01F4FD },
+ { 0x01F549, 0x01F54A },
+ { 0x01F56F, 0x01F570 },
+ { 0x01F573, 0x01F579 },
+ { 0x01F587, 0x01F587 },
+ { 0x01F58A, 0x01F58D },
+ { 0x01F590, 0x01F590 },
+ { 0x01F5A5, 0x01F5A5 },
+ { 0x01F5A8, 0x01F5A8 },
+ { 0x01F5B1, 0x01F5B2 },
+ { 0x01F5BC, 0x01F5BC },
+ { 0x01F5C2, 0x01F5C4 },
+ { 0x01F5D1, 0x01F5D3 },
+ { 0x01F5DC, 0x01F5DE },
+ { 0x01F5E1, 0x01F5E1 },
+ { 0x01F5E3, 0x01F5E3 },
+ { 0x01F5E8, 0x01F5E8 },
+ { 0x01F5EF, 0x01F5EF },
+ { 0x01F5F3, 0x01F5F3 },
+ { 0x01F5FA, 0x01F5FA },
+ { 0x01F6CB, 0x01F6CB },
+ { 0x01F6CD, 0x01F6CF },
+ { 0x01F6E0, 0x01F6E5 },
+ { 0x01F6E9, 0x01F6E9 },
+ { 0x01F6F0, 0x01F6F0 },
+ { 0x01F6F3, 0x01F6F3 },
+ };
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/Vs16Table.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/Vs16Table.cs
new file mode 100755
index 0000000000..de082c013c
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/Vs16Table.cs
@@ -0,0 +1,40 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+namespace Wcwidth;
+
+internal static partial class Vs16Table
+{
+ private static readonly Dictionary _lookup;
+ private static readonly object _lock;
+
+ static Vs16Table()
+ {
+ _lookup = new Dictionary();
+ _lock = new object();
+ }
+
+ public static int[,] GetTable(Unicode version)
+ {
+ if (!_lookup.TryGetValue(version, out var table))
+ {
+ lock (_lock)
+ {
+ if (_lookup.TryGetValue(version, out table))
+ {
+ return table;
+ }
+
+ // Generate the table for the version dynamically
+ // since we don't want to load everything into memory.
+ table = GenerateTable(version);
+ _lookup[version] = table;
+ }
+ }
+
+ return table;
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/WideTable.Generated.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/WideTable.Generated.cs
new file mode 100755
index 0000000000..d24bb5af4a
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/WideTable.Generated.cs
@@ -0,0 +1,1830 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+
+namespace Wcwidth;
+
+internal static partial class WideTable
+{
+ private static int[,] GenerateTable(Unicode version)
+ {
+ return version switch
+ {
+ Unicode.Version_4_1_0 => Unicode_4_1_0(),
+ Unicode.Version_5_0_0 => Unicode_5_0_0(),
+ Unicode.Version_5_1_0 => Unicode_5_1_0(),
+ Unicode.Version_5_2_0 => Unicode_5_2_0(),
+ Unicode.Version_6_0_0 => Unicode_6_0_0(),
+ Unicode.Version_6_1_0 => Unicode_6_1_0(),
+ Unicode.Version_6_2_0 => Unicode_6_2_0(),
+ Unicode.Version_6_3_0 => Unicode_6_3_0(),
+ Unicode.Version_7_0_0 => Unicode_7_0_0(),
+ Unicode.Version_8_0_0 => Unicode_8_0_0(),
+ Unicode.Version_9_0_0 => Unicode_9_0_0(),
+ Unicode.Version_10_0_0 => Unicode_10_0_0(),
+ Unicode.Version_11_0_0 => Unicode_11_0_0(),
+ Unicode.Version_12_0_0 => Unicode_12_0_0(),
+ Unicode.Version_12_1_0 => Unicode_12_1_0(),
+ Unicode.Version_13_0_0 => Unicode_13_0_0(),
+ Unicode.Version_14_0_0 => Unicode_14_0_0(),
+ Unicode.Version_15_0_0 => Unicode_15_0_0(),
+ Unicode.Version_15_1_0 => Unicode_15_1_0(),
+ Unicode.Version_16_0_0 => Unicode_16_0_0(),
+ Unicode.Version_17_0_0 => Unicode_17_0_0(),
+ _ => throw new InvalidOperationException("Unknown Unicode version"),
+ };
+ }
+
+ private static int[,] Unicode_4_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x001159 },
+ { 0x00115F, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312C },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031CF },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003243 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DB5 },
+ { 0x004E00, 0x009FBB },
+ { 0x00A000, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FA2D },
+ { 0x00FA30, 0x00FA6A },
+ { 0x00FA70, 0x00FAD9 },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_5_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x001159 },
+ { 0x00115F, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312C },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031CF },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003243 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DB5 },
+ { 0x004E00, 0x009FBB },
+ { 0x00A000, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FA2D },
+ { 0x00FA30, 0x00FA6A },
+ { 0x00FA70, 0x00FAD9 },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_5_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x001159 },
+ { 0x00115F, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003243 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DB5 },
+ { 0x004E00, 0x009FC3 },
+ { 0x00A000, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FA2D },
+ { 0x00FA30, 0x00FA6A },
+ { 0x00FA70, 0x00FAD9 },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_5_2_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01F200, 0x01F200 },
+ { 0x01F210, 0x01F231 },
+ { 0x01F240, 0x01F248 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_2_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_3_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_7_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_8_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_9_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE0 },
+ { 0x017000, 0x0187EC },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6F6 },
+ { 0x01F910, 0x01F91E },
+ { 0x01F920, 0x01F927 },
+ { 0x01F930, 0x01F930 },
+ { 0x01F933, 0x01F93E },
+ { 0x01F940, 0x01F94B },
+ { 0x01F950, 0x01F95E },
+ { 0x01F980, 0x01F991 },
+ { 0x01F9C0, 0x01F9C0 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_10_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312E },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE1 },
+ { 0x017000, 0x0187EC },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6F8 },
+ { 0x01F910, 0x01F93E },
+ { 0x01F940, 0x01F94C },
+ { 0x01F950, 0x01F96B },
+ { 0x01F980, 0x01F997 },
+ { 0x01F9C0, 0x01F9C0 },
+ { 0x01F9D0, 0x01F9E6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_11_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE1 },
+ { 0x017000, 0x0187F1 },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6F9 },
+ { 0x01F910, 0x01F93E },
+ { 0x01F940, 0x01F970 },
+ { 0x01F973, 0x01F976 },
+ { 0x01F97A, 0x01F97A },
+ { 0x01F97C, 0x01F9A2 },
+ { 0x01F9B0, 0x01F9B9 },
+ { 0x01F9C0, 0x01F9C2 },
+ { 0x01F9D0, 0x01F9FF },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_12_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D5 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FA },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F90D, 0x01F971 },
+ { 0x01F973, 0x01F976 },
+ { 0x01F97A, 0x01F9A2 },
+ { 0x01F9A5, 0x01F9AA },
+ { 0x01F9AE, 0x01F9CA },
+ { 0x01F9CD, 0x01F9FF },
+ { 0x01FA70, 0x01FA73 },
+ { 0x01FA78, 0x01FA7A },
+ { 0x01FA80, 0x01FA82 },
+ { 0x01FA90, 0x01FA95 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_12_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D5 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FA },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F90D, 0x01F971 },
+ { 0x01F973, 0x01F976 },
+ { 0x01F97A, 0x01F9A2 },
+ { 0x01F9A5, 0x01F9AA },
+ { 0x01F9AE, 0x01F9CA },
+ { 0x01F9CD, 0x01F9FF },
+ { 0x01FA70, 0x01FA73 },
+ { 0x01FA78, 0x01FA7A },
+ { 0x01FA80, 0x01FA82 },
+ { 0x01FA90, 0x01FA95 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_13_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F978 },
+ { 0x01F97A, 0x01F9CB },
+ { 0x01F9CD, 0x01F9FF },
+ { 0x01FA70, 0x01FA74 },
+ { 0x01FA78, 0x01FA7A },
+ { 0x01FA80, 0x01FA86 },
+ { 0x01FA90, 0x01FAA8 },
+ { 0x01FAB0, 0x01FAB6 },
+ { 0x01FAC0, 0x01FAC2 },
+ { 0x01FAD0, 0x01FAD6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_14_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DD, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA74 },
+ { 0x01FA78, 0x01FA7C },
+ { 0x01FA80, 0x01FA86 },
+ { 0x01FA90, 0x01FAAC },
+ { 0x01FAB0, 0x01FABA },
+ { 0x01FAC0, 0x01FAC5 },
+ { 0x01FAD0, 0x01FAD9 },
+ { 0x01FAE0, 0x01FAE7 },
+ { 0x01FAF0, 0x01FAF6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_15_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA88 },
+ { 0x01FA90, 0x01FABD },
+ { 0x01FABF, 0x01FAC5 },
+ { 0x01FACE, 0x01FADB },
+ { 0x01FAE0, 0x01FAE8 },
+ { 0x01FAF0, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_15_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031EF, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA88 },
+ { 0x01FA90, 0x01FABD },
+ { 0x01FABF, 0x01FAC5 },
+ { 0x01FACE, 0x01FADB },
+ { 0x01FAE0, 0x01FAE8 },
+ { 0x01FAF0, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_16_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002630, 0x002637 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x00268A, 0x00268F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E5 },
+ { 0x0031EF, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018CFF, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01D300, 0x01D356 },
+ { 0x01D360, 0x01D376 },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA89 },
+ { 0x01FA8F, 0x01FAC6 },
+ { 0x01FACE, 0x01FADC },
+ { 0x01FADF, 0x01FAE9 },
+ { 0x01FAF0, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_17_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002630, 0x002637 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x00268A, 0x00268F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E5 },
+ { 0x0031EF, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x016FF2, 0x016FF6 },
+ { 0x017000, 0x018CD5 },
+ { 0x018CFF, 0x018D1E },
+ { 0x018D80, 0x018DF2 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01D300, 0x01D356 },
+ { 0x01D360, 0x01D376 },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D8 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA8A },
+ { 0x01FA8E, 0x01FAC6 },
+ { 0x01FAC8, 0x01FAC8 },
+ { 0x01FACD, 0x01FADC },
+ { 0x01FADF, 0x01FAEA },
+ { 0x01FAEF, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/WideTable.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/WideTable.cs
new file mode 100755
index 0000000000..c96f074378
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/WideTable.cs
@@ -0,0 +1,40 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+namespace Wcwidth;
+
+internal static partial class WideTable
+{
+ private static readonly Dictionary _lookup;
+ private static readonly object _lock;
+
+ static WideTable()
+ {
+ _lookup = new Dictionary();
+ _lock = new object();
+ }
+
+ public static int[,] GetTable(Unicode version)
+ {
+ if (!_lookup.TryGetValue(version, out var table))
+ {
+ lock (_lock)
+ {
+ if (_lookup.TryGetValue(version, out table))
+ {
+ return table;
+ }
+
+ // Generate the table for the version dynamically
+ // since we don't want to load everything into memory.
+ table = GenerateTable(version);
+ _lookup[version] = table;
+ }
+ }
+
+ return table;
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/ZeroTable.Generated.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/ZeroTable.Generated.cs
new file mode 100755
index 0000000000..9437b6ed52
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/ZeroTable.Generated.cs
@@ -0,0 +1,9365 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+
+namespace Wcwidth;
+
+internal static partial class ZeroTable
+{
+ private static int[,] GenerateTable(Unicode version)
+ {
+ return version switch
+ {
+ Unicode.Version_4_1_0 => Unicode_4_1_0(),
+ Unicode.Version_5_0_0 => Unicode_5_0_0(),
+ Unicode.Version_5_1_0 => Unicode_5_1_0(),
+ Unicode.Version_5_2_0 => Unicode_5_2_0(),
+ Unicode.Version_6_0_0 => Unicode_6_0_0(),
+ Unicode.Version_6_1_0 => Unicode_6_1_0(),
+ Unicode.Version_6_2_0 => Unicode_6_2_0(),
+ Unicode.Version_6_3_0 => Unicode_6_3_0(),
+ Unicode.Version_7_0_0 => Unicode_7_0_0(),
+ Unicode.Version_8_0_0 => Unicode_8_0_0(),
+ Unicode.Version_9_0_0 => Unicode_9_0_0(),
+ Unicode.Version_10_0_0 => Unicode_10_0_0(),
+ Unicode.Version_11_0_0 => Unicode_11_0_0(),
+ Unicode.Version_12_0_0 => Unicode_12_0_0(),
+ Unicode.Version_12_1_0 => Unicode_12_1_0(),
+ Unicode.Version_13_0_0 => Unicode_13_0_0(),
+ Unicode.Version_14_0_0 => Unicode_14_0_0(),
+ Unicode.Version_15_0_0 => Unicode_15_0_0(),
+ Unicode.Version_15_1_0 => Unicode_15_1_0(),
+ Unicode.Version_16_0_0 => Unicode_16_0_0(),
+ Unicode.Version_17_0_0 => Unicode_17_0_0(),
+ _ => throw new InvalidOperationException("Unknown Unicode version"),
+ };
+ }
+
+ private static int[,] Unicode_4_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000486 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005B9 },
+ { 0x0005BB, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x000615 },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x000901, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x000951, 0x000954 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A70, 0x000A71 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B43 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D43 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102C, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001032 },
+ { 0x001036, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x001039 },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001DC0, 0x001DC3 },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002063 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020EB },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE23 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_5_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000486 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x000615 },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000901, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x000951, 0x000954 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A70, 0x000A71 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B43 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D43 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102C, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001032 },
+ { 0x001036, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x001039 },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001DC0, 0x001DCA },
+ { 0x001DFE, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002063 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020EF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE23 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_5_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000901, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x000951, 0x000954 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFE, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A67C, 0x00A67D },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_5_2_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094E },
+ { 0x000951, 0x000955 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF2 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFD, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A67C, 0x00A67D },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF2 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A67C, 0x00A67D },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000604 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x0008FE },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAB },
+ { 0x001BAC, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_2_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000604 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x0008FE },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAB },
+ { 0x001BAC, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_3_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000604 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x0008FE },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAB },
+ { 0x001BAC, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_7_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D01, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF5 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2D },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011301, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_8_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D01, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF5 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111CA, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_9_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D4, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D01, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF5 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111CA, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_10_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D4, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111CA, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x011A01, 0x011A06 },
+ { 0x011A07, 0x011A08 },
+ { 0x011A09, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_11_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_12_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_12_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_13_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001AC0 },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_14_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000898, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_15_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000898, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFD, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_15_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000898, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFD, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_16_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000897, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010D69, 0x010D6D },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFC, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0113B8, 0x0113BA },
+ { 0x0113BB, 0x0113C0 },
+ { 0x0113C2, 0x0113C2 },
+ { 0x0113C5, 0x0113C5 },
+ { 0x0113C7, 0x0113CA },
+ { 0x0113CC, 0x0113CD },
+ { 0x0113CE, 0x0113CE },
+ { 0x0113CF, 0x0113CF },
+ { 0x0113D0, 0x0113D0 },
+ { 0x0113D2, 0x0113D2 },
+ { 0x0113E1, 0x0113E2 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171D },
+ { 0x01171E, 0x01171E },
+ { 0x01171F, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x011F5A, 0x011F5A },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x01611E, 0x016129 },
+ { 0x01612A, 0x01612C },
+ { 0x01612D, 0x01612F },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E5EE, 0x01E5EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_17_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000897, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ADD },
+ { 0x001AE0, 0x001AEB },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010D69, 0x010D6D },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFA, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0113B8, 0x0113BA },
+ { 0x0113BB, 0x0113C0 },
+ { 0x0113C2, 0x0113C2 },
+ { 0x0113C5, 0x0113C5 },
+ { 0x0113C7, 0x0113CA },
+ { 0x0113CC, 0x0113CD },
+ { 0x0113CE, 0x0113CE },
+ { 0x0113CF, 0x0113CF },
+ { 0x0113D0, 0x0113D0 },
+ { 0x0113D2, 0x0113D2 },
+ { 0x0113E1, 0x0113E2 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171D },
+ { 0x01171E, 0x01171E },
+ { 0x01171F, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011B60, 0x011B60 },
+ { 0x011B61, 0x011B61 },
+ { 0x011B62, 0x011B64 },
+ { 0x011B65, 0x011B65 },
+ { 0x011B66, 0x011B66 },
+ { 0x011B67, 0x011B67 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x011F5A, 0x011F5A },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x01611E, 0x016129 },
+ { 0x01612A, 0x01612C },
+ { 0x01612D, 0x01612F },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E5EE, 0x01E5EF },
+ { 0x01E6E3, 0x01E6E3 },
+ { 0x01E6E6, 0x01E6E6 },
+ { 0x01E6EE, 0x01E6EF },
+ { 0x01E6F5, 0x01E6F5 },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/ZeroTable.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/ZeroTable.cs
new file mode 100755
index 0000000000..bff3a1110e
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Tables/ZeroTable.cs
@@ -0,0 +1,41 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+namespace Wcwidth
+{
+ internal static partial class ZeroTable
+ {
+ private static readonly Dictionary _lookup;
+ private static readonly object _lock;
+
+ static ZeroTable()
+ {
+ _lookup = new Dictionary();
+ _lock = new object();
+ }
+
+ public static int[,] GetTable(Unicode version)
+ {
+ if (!_lookup.TryGetValue(version, out var table))
+ {
+ lock (_lock)
+ {
+ if (_lookup.TryGetValue(version, out table))
+ {
+ return table;
+ }
+
+ // Generate the table for the version dynamically
+ // since we don't want to load everything into memory.
+ table = GenerateTable(version);
+ _lookup[version] = table;
+ }
+ }
+
+ return table;
+ }
+ }
+}
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Unicode.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Unicode.cs
new file mode 100755
index 0000000000..4ba1c5b401
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/Unicode.cs
@@ -0,0 +1,127 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+using System.ComponentModel;
+using System.Diagnostics.CodeAnalysis;
+
+namespace Wcwidth;
+
+///
+/// Represents a Unicode version.
+///
+[SuppressMessage("Naming", "CA1707:Identifiers should not contain underscores")]
+#if WCWIDTH_VISIBILITY_INTERNAL
+ internal
+#else
+public
+#endif
+ enum Unicode
+{
+ ///
+ /// Unicode version 4.1.0.
+ ///
+ [Description("4.1.0")] Version_4_1_0 = 0,
+
+ ///
+ /// Unicode version 5.0.0.
+ ///
+ [Description("5.0.0")] Version_5_0_0 = 1,
+
+ ///
+ /// Unicode version 5.1.0.
+ ///
+ [Description("5.1.0")] Version_5_1_0 = 2,
+
+ ///
+ /// Unicode version 5.2.0.
+ ///
+ [Description("5.2.0")] Version_5_2_0 = 3,
+
+ ///
+ /// Unicode version 6.0.0.
+ ///
+ [Description("6.0.0")] Version_6_0_0 = 4,
+
+ ///
+ /// Unicode version 6.1.0.
+ ///
+ [Description("6.1.0")] Version_6_1_0 = 5,
+
+ ///
+ /// Unicode version 6.2.0.
+ ///
+ [Description("6.2.0")] Version_6_2_0 = 6,
+
+ ///
+ /// Unicode version 6.3.0.
+ ///
+ [Description("6.3.0")] Version_6_3_0 = 7,
+
+ ///
+ /// Unicode version 7.0.0.
+ ///
+ [Description("7.0.0")] Version_7_0_0 = 8,
+
+ ///
+ /// Unicode version 8.0.0.
+ ///
+ [Description("8.0.0")] Version_8_0_0 = 9,
+
+ ///
+ /// Unicode version 9.0.0.
+ ///
+ [Description("9.0.0")] Version_9_0_0 = 10,
+
+ ///
+ /// Unicode version 10.0.0.
+ ///
+ [Description("10.0.0")] Version_10_0_0 = 11,
+
+ ///
+ /// Unicode version 11.0.0.
+ ///
+ [Description("11.0.0")] Version_11_0_0 = 12,
+
+ ///
+ /// Unicode version 12.0.0.
+ ///
+ [Description("12.0.0")] Version_12_0_0 = 13,
+
+ ///
+ /// Unicode version 12.1.0.
+ ///
+ [Description("12.1.0")] Version_12_1_0 = 14,
+
+ ///
+ /// Unicode version 13.0.0.
+ ///
+ [Description("13.0.0")] Version_13_0_0 = 15,
+
+ ///
+ /// Unicode version 14.0.0.
+ ///
+ [Description("14.0.0")] Version_14_0_0 = 16,
+
+ ///
+ /// Unicode version 15.0.0.
+ ///
+ [Description("15.0.0")] Version_15_0_0 = 17,
+
+ ///
+ /// Unicode version 15.1.0.
+ ///
+ [Description("15.1.0")] Version_15_1_0 = 18,
+
+ ///
+ /// Unicode version 16.0.0.
+ ///
+ [Description("16.0.0")] Version_16_0_0 = 19,
+
+ ///
+ /// Unicode version 17.0.0.
+ ///
+ [Description("17.0.0")] Version_17_0_0 = 20,
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/UnicodeCalculator.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/UnicodeCalculator.cs
new file mode 100755
index 0000000000..35e14dd763
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net8.0/External/Wcwidth/UnicodeCalculator.cs
@@ -0,0 +1,209 @@
+// This is a port of the Python version of wcwidth() written by Jeff Quast,
+// which originally was written by Markus Kuhn.
+//
+// https://github.com/jquast/wcwidth
+// http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
+//
+// In fixed-width output devices, Latin characters all occupy a single "cell" position
+// of equal width, whereas ideographic CJK characters occupy two such cells. Interoperability
+// between terminal-line applications and (teletype-style) character terminals using the
+// UTF-8 encoding requires agreement on which character should advance the cursor by how
+// many cell positions. No established formal standards exist at present on which Unicode
+// character shall occupy how many cell positions on character terminals. These routines
+// are a first attempt of defining such behavior based on simple rules applied to data
+// provided by the Unicode Consortium.
+//
+// For some graphical characters, the Unicode standard explicitly defines a character-cell
+// width via the definition of the East Asian FullWidth (F), Wide (W), Half-width (H),
+// and Narrow (Na) classes. In all these cases, there is no ambiguity about which width
+// a terminal shall use. For characters in the East Asian Ambiguous (A) class, the width
+// choice depends purely on a preference of backward compatibility with either historic
+// CJK or Western practice. Choosing single-width for these characters is easy to justify
+// as the appropriate long-term solution, as the CJK practice of displaying these characters
+// as double-width comes from historic implementation simplicity (8-bit encoded characters
+// were displayed single-width and 16-bit ones double-width, even for Greek, Cyrillic, etc.)
+// and not any typographic considerations.
+//
+// Much less clear is the choice of width for the Not East Asian (Neutral) class.
+// Existing practice does not dictate a width for any of these characters. It would
+// nevertheless make sense typographically to allocate two character cells to characters
+// such as for instance EM SPACE or VOLUME INTEGRAL, which cannot be represented adequately
+// with a single-width glyph. The following routines at present merely assign a single-cell
+// width to all neutral characters, in the interest of simplicity. This is not entirely
+// satisfactory and should be reconsidered before establishing a formal standard in this area.
+// At the moment, the decision which Not East Asian (Neutral) characters should be represented
+// by double-width glyphs cannot yet be answered by applying a simple rule from the Unicode
+// database content. Setting up a proper standard for the behavior of UTF-8 character
+// terminals will require a careful analysis not only of each Unicode character, but also
+// of each presentation form, something the author of these routines has avoided to do so far.
+//
+// http://www.unicode.org/unicode/reports/tr11/
+
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+#if NET6_0_OR_GREATER
+using System.Text;
+#endif
+
+namespace Wcwidth;
+
+///
+/// A utility for calculating the width of Unicode characters.
+///
+#if WCWIDTH_VISIBILITY_INTERNAL
+ internal
+#else
+public
+#endif
+ static class UnicodeCalculator
+{
+ private const Unicode Latest = Unicode.Version_16_0_0;
+
+ // NOTE: created by hand, there isn't anything identifiable other than
+ // general Cf category code to identify these, and some characters in Cf
+ // category code are of non-zero width.
+ // Also includes some Cc, Mn, Zl, and Zp characters
+ private static readonly HashSet _zeroWidthCf =
+ [
+ 0, // Null (Cc)
+ 0x034F, // Combining grapheme joiner (Mn)
+ 0x200B, // Zero width space
+ 0x200C, // Zero width non-joiner
+ 0x200D, // Zero width joiner
+ 0x200E, // Left-to-right mark
+ 0x200F, // Right-to-left mark
+ 0x2028, // Line separator (Zl)
+ 0x2029, // Paragraph separator (Zp)
+ 0x202A, // Left-to-right embedding
+ 0x202B, // Right-to-left embedding
+ 0x202C, // Pop directional formatting
+ 0x202D, // Left-to-right override
+ 0x202E, // Right-to-left override
+ 0x2060, // Word joiner
+ 0x2061, // Function application
+ 0x2062, // Invisible times
+ 0x2063 // Invisible separator
+ ];
+
+ ///
+ /// Gets the width of a Unicode code point.
+ ///
+ /// The Unicode code point to calculate the width of.
+ /// The Unicode version to use.
+ /// The width of the character (-1, 0, 1, 2).
+ public static int GetWidth(int value, Unicode? version = null)
+ {
+ version ??= Latest;
+
+ // NOTE: created by hand, there isn't anything identifiable other than
+ // general Cf category code to identify these, and some characters in Cf
+ // category code are of non-zero width.
+ if (_zeroWidthCf.Contains(value))
+ {
+ return 0;
+ }
+
+ // C0/C1 control characters
+ if (value < 32 || (value >= 0x07F && value < 0x0A0))
+ {
+ return -1;
+ }
+
+ // Zero width?
+ if (ZeroTable.GetTable(version.Value).Exist(value))
+ {
+ return 0;
+ }
+
+ // Wide character?
+ return 1 + WideTable.GetTable(version.Value).Find(value);
+ }
+
+#if NET6_0_OR_GREATER
+ ///
+ /// Gets the width of a Unicode scalar.
+ ///
+ /// The Unicode scalar to calculate the width of.
+ /// The Unicode version to use.
+ /// The width of the character (-1, 0, 1, 2).
+ public static int GetWidth(Rune value, Unicode? version = null)
+ {
+ return GetWidth(value.Value, version);
+ }
+#endif
+
+ ///
+ /// Gets the width of a UTF-16 code unit.
+ ///
+ /// The UTF-16 code unit to calculate the width of.
+ /// The Unicode version to use.
+ /// The width of the character (-1, 0, 1, 2).
+ public static int GetWidth(char value, Unicode? version = null)
+ {
+ return GetWidth((int)value, version);
+ }
+
+#if NET6_0_OR_GREATER
+ public static int GetWidth(string value, Unicode? version = null)
+ {
+ version ??= Latest;
+
+ var runes = value.EnumerateRunes().ToArray();
+ var end = runes.Length;
+
+ var width = 0;
+ var index = 0;
+ var lastMeasureRune = default(Rune?);
+ while (index < end)
+ {
+ var rune = runes[index];
+
+ if (rune.Value == '\u200D')
+ {
+ // Zero Width Joiner, do not measure this or next character
+ index += 2;
+ continue;
+ }
+
+ if (rune.Value == '\uFE0F' && lastMeasureRune != null)
+ {
+ // on variation selector 16 (VS16) following another character,
+ // conditionally add '1' to the measured width if that character is
+ // known to be converted from narrow to wide by the VS16 character.
+ if (version >= Unicode.Version_9_0_0)
+ {
+ width += Vs16Table.GetTable(Unicode.Version_9_0_0).Find(lastMeasureRune.Value.Value);
+ lastMeasureRune = null;
+ }
+
+ index++;
+ continue;
+ }
+
+ // Measure rune at current index
+ var wcw = GetWidth(rune, version);
+ if (wcw < 0)
+ {
+ // Early return -1 on C0 and C1 control characters
+ return wcw;
+ }
+
+ if (wcw > 0)
+ {
+ // Track last character measured to contain a cell, so that
+ // subsequent VS-16 modifiers may be understood.
+ lastMeasureRune = rune;
+ }
+
+ width += wcw;
+ index++;
+ }
+
+ return width;
+ }
+#endif
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Extensions/IntegerExtensions.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Extensions/IntegerExtensions.cs
new file mode 100755
index 0000000000..70bc695649
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Extensions/IntegerExtensions.cs
@@ -0,0 +1,45 @@
+namespace Wcwidth;
+
+internal static class IntegerExtensions
+{
+ public static bool Exist(this int[,] table, int value)
+ {
+ return Find(table, value) != 0;
+ }
+
+ public static int Find(this int[,] table, int value)
+ {
+ if (table is null)
+ {
+ throw new ArgumentNullException(nameof(table));
+ }
+
+ var min = 0;
+ var max = table.GetUpperBound(0);
+ int mid;
+
+ if (value < table[0, 0] || value > table[max, 1])
+ {
+ return 0;
+ }
+
+ while (max >= min)
+ {
+ mid = (min + max) / 2;
+ if (value > table[mid, 1])
+ {
+ min = mid + 1;
+ }
+ else if (value < table[mid, 0])
+ {
+ max = mid - 1;
+ }
+ else
+ {
+ return 1;
+ }
+ }
+
+ return 0;
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/Vs16Table.Generated.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/Vs16Table.Generated.cs
new file mode 100755
index 0000000000..af8d37bdc2
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/Vs16Table.Generated.cs
@@ -0,0 +1,144 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+
+namespace Wcwidth;
+
+internal static partial class Vs16Table
+{
+ private static int[,] GenerateTable(Unicode version)
+ {
+ return version switch
+ {
+ Unicode.Version_9_0_0 => Unicode_9_0_0(),
+ _ => throw new InvalidOperationException("Unknown Unicode version"),
+ };
+ }
+
+ private static int[,] Unicode_9_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000023, 0x000023 },
+ { 0x00002A, 0x00002A },
+ { 0x000030, 0x000039 },
+ { 0x0000A9, 0x0000A9 },
+ { 0x0000AE, 0x0000AE },
+ { 0x00203C, 0x00203C },
+ { 0x002049, 0x002049 },
+ { 0x002122, 0x002122 },
+ { 0x002139, 0x002139 },
+ { 0x002194, 0x002199 },
+ { 0x0021A9, 0x0021AA },
+ { 0x002328, 0x002328 },
+ { 0x0023CF, 0x0023CF },
+ { 0x0023ED, 0x0023EF },
+ { 0x0023F1, 0x0023F2 },
+ { 0x0023F8, 0x0023FA },
+ { 0x0024C2, 0x0024C2 },
+ { 0x0025AA, 0x0025AB },
+ { 0x0025B6, 0x0025B6 },
+ { 0x0025C0, 0x0025C0 },
+ { 0x0025FB, 0x0025FC },
+ { 0x002600, 0x002604 },
+ { 0x00260E, 0x00260E },
+ { 0x002611, 0x002611 },
+ { 0x002618, 0x002618 },
+ { 0x00261D, 0x00261D },
+ { 0x002620, 0x002620 },
+ { 0x002622, 0x002623 },
+ { 0x002626, 0x002626 },
+ { 0x00262A, 0x00262A },
+ { 0x00262E, 0x00262F },
+ { 0x002638, 0x00263A },
+ { 0x002640, 0x002640 },
+ { 0x002642, 0x002642 },
+ { 0x00265F, 0x002660 },
+ { 0x002663, 0x002663 },
+ { 0x002665, 0x002666 },
+ { 0x002668, 0x002668 },
+ { 0x00267B, 0x00267B },
+ { 0x00267E, 0x00267E },
+ { 0x002692, 0x002692 },
+ { 0x002694, 0x002697 },
+ { 0x002699, 0x002699 },
+ { 0x00269B, 0x00269C },
+ { 0x0026A0, 0x0026A0 },
+ { 0x0026A7, 0x0026A7 },
+ { 0x0026B0, 0x0026B1 },
+ { 0x0026C8, 0x0026C8 },
+ { 0x0026CF, 0x0026CF },
+ { 0x0026D1, 0x0026D1 },
+ { 0x0026D3, 0x0026D3 },
+ { 0x0026E9, 0x0026E9 },
+ { 0x0026F0, 0x0026F1 },
+ { 0x0026F4, 0x0026F4 },
+ { 0x0026F7, 0x0026F9 },
+ { 0x002702, 0x002702 },
+ { 0x002708, 0x002709 },
+ { 0x00270C, 0x00270D },
+ { 0x00270F, 0x00270F },
+ { 0x002712, 0x002712 },
+ { 0x002714, 0x002714 },
+ { 0x002716, 0x002716 },
+ { 0x00271D, 0x00271D },
+ { 0x002721, 0x002721 },
+ { 0x002733, 0x002734 },
+ { 0x002744, 0x002744 },
+ { 0x002747, 0x002747 },
+ { 0x002763, 0x002764 },
+ { 0x0027A1, 0x0027A1 },
+ { 0x002934, 0x002935 },
+ { 0x002B05, 0x002B07 },
+ { 0x01F170, 0x01F171 },
+ { 0x01F17E, 0x01F17F },
+ { 0x01F321, 0x01F321 },
+ { 0x01F324, 0x01F32C },
+ { 0x01F336, 0x01F336 },
+ { 0x01F37D, 0x01F37D },
+ { 0x01F396, 0x01F397 },
+ { 0x01F399, 0x01F39B },
+ { 0x01F39E, 0x01F39F },
+ { 0x01F3CB, 0x01F3CE },
+ { 0x01F3D4, 0x01F3DF },
+ { 0x01F3F3, 0x01F3F3 },
+ { 0x01F3F5, 0x01F3F5 },
+ { 0x01F3F7, 0x01F3F7 },
+ { 0x01F43F, 0x01F43F },
+ { 0x01F441, 0x01F441 },
+ { 0x01F4FD, 0x01F4FD },
+ { 0x01F549, 0x01F54A },
+ { 0x01F56F, 0x01F570 },
+ { 0x01F573, 0x01F579 },
+ { 0x01F587, 0x01F587 },
+ { 0x01F58A, 0x01F58D },
+ { 0x01F590, 0x01F590 },
+ { 0x01F5A5, 0x01F5A5 },
+ { 0x01F5A8, 0x01F5A8 },
+ { 0x01F5B1, 0x01F5B2 },
+ { 0x01F5BC, 0x01F5BC },
+ { 0x01F5C2, 0x01F5C4 },
+ { 0x01F5D1, 0x01F5D3 },
+ { 0x01F5DC, 0x01F5DE },
+ { 0x01F5E1, 0x01F5E1 },
+ { 0x01F5E3, 0x01F5E3 },
+ { 0x01F5E8, 0x01F5E8 },
+ { 0x01F5EF, 0x01F5EF },
+ { 0x01F5F3, 0x01F5F3 },
+ { 0x01F5FA, 0x01F5FA },
+ { 0x01F6CB, 0x01F6CB },
+ { 0x01F6CD, 0x01F6CF },
+ { 0x01F6E0, 0x01F6E5 },
+ { 0x01F6E9, 0x01F6E9 },
+ { 0x01F6F0, 0x01F6F0 },
+ { 0x01F6F3, 0x01F6F3 },
+ };
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/Vs16Table.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/Vs16Table.cs
new file mode 100755
index 0000000000..de082c013c
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/Vs16Table.cs
@@ -0,0 +1,40 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+namespace Wcwidth;
+
+internal static partial class Vs16Table
+{
+ private static readonly Dictionary _lookup;
+ private static readonly object _lock;
+
+ static Vs16Table()
+ {
+ _lookup = new Dictionary();
+ _lock = new object();
+ }
+
+ public static int[,] GetTable(Unicode version)
+ {
+ if (!_lookup.TryGetValue(version, out var table))
+ {
+ lock (_lock)
+ {
+ if (_lookup.TryGetValue(version, out table))
+ {
+ return table;
+ }
+
+ // Generate the table for the version dynamically
+ // since we don't want to load everything into memory.
+ table = GenerateTable(version);
+ _lookup[version] = table;
+ }
+ }
+
+ return table;
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/WideTable.Generated.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/WideTable.Generated.cs
new file mode 100755
index 0000000000..d24bb5af4a
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/WideTable.Generated.cs
@@ -0,0 +1,1830 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+
+namespace Wcwidth;
+
+internal static partial class WideTable
+{
+ private static int[,] GenerateTable(Unicode version)
+ {
+ return version switch
+ {
+ Unicode.Version_4_1_0 => Unicode_4_1_0(),
+ Unicode.Version_5_0_0 => Unicode_5_0_0(),
+ Unicode.Version_5_1_0 => Unicode_5_1_0(),
+ Unicode.Version_5_2_0 => Unicode_5_2_0(),
+ Unicode.Version_6_0_0 => Unicode_6_0_0(),
+ Unicode.Version_6_1_0 => Unicode_6_1_0(),
+ Unicode.Version_6_2_0 => Unicode_6_2_0(),
+ Unicode.Version_6_3_0 => Unicode_6_3_0(),
+ Unicode.Version_7_0_0 => Unicode_7_0_0(),
+ Unicode.Version_8_0_0 => Unicode_8_0_0(),
+ Unicode.Version_9_0_0 => Unicode_9_0_0(),
+ Unicode.Version_10_0_0 => Unicode_10_0_0(),
+ Unicode.Version_11_0_0 => Unicode_11_0_0(),
+ Unicode.Version_12_0_0 => Unicode_12_0_0(),
+ Unicode.Version_12_1_0 => Unicode_12_1_0(),
+ Unicode.Version_13_0_0 => Unicode_13_0_0(),
+ Unicode.Version_14_0_0 => Unicode_14_0_0(),
+ Unicode.Version_15_0_0 => Unicode_15_0_0(),
+ Unicode.Version_15_1_0 => Unicode_15_1_0(),
+ Unicode.Version_16_0_0 => Unicode_16_0_0(),
+ Unicode.Version_17_0_0 => Unicode_17_0_0(),
+ _ => throw new InvalidOperationException("Unknown Unicode version"),
+ };
+ }
+
+ private static int[,] Unicode_4_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x001159 },
+ { 0x00115F, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312C },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031CF },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003243 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DB5 },
+ { 0x004E00, 0x009FBB },
+ { 0x00A000, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FA2D },
+ { 0x00FA30, 0x00FA6A },
+ { 0x00FA70, 0x00FAD9 },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_5_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x001159 },
+ { 0x00115F, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312C },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031CF },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003243 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DB5 },
+ { 0x004E00, 0x009FBB },
+ { 0x00A000, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FA2D },
+ { 0x00FA30, 0x00FA6A },
+ { 0x00FA70, 0x00FAD9 },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_5_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x001159 },
+ { 0x00115F, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003243 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DB5 },
+ { 0x004E00, 0x009FC3 },
+ { 0x00A000, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FA2D },
+ { 0x00FA30, 0x00FA6A },
+ { 0x00FA70, 0x00FAD9 },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_5_2_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01F200, 0x01F200 },
+ { 0x01F210, 0x01F231 },
+ { 0x01F240, 0x01F248 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_2_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_3_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_7_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_8_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_9_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE0 },
+ { 0x017000, 0x0187EC },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6F6 },
+ { 0x01F910, 0x01F91E },
+ { 0x01F920, 0x01F927 },
+ { 0x01F930, 0x01F930 },
+ { 0x01F933, 0x01F93E },
+ { 0x01F940, 0x01F94B },
+ { 0x01F950, 0x01F95E },
+ { 0x01F980, 0x01F991 },
+ { 0x01F9C0, 0x01F9C0 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_10_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312E },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE1 },
+ { 0x017000, 0x0187EC },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6F8 },
+ { 0x01F910, 0x01F93E },
+ { 0x01F940, 0x01F94C },
+ { 0x01F950, 0x01F96B },
+ { 0x01F980, 0x01F997 },
+ { 0x01F9C0, 0x01F9C0 },
+ { 0x01F9D0, 0x01F9E6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_11_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE1 },
+ { 0x017000, 0x0187F1 },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6F9 },
+ { 0x01F910, 0x01F93E },
+ { 0x01F940, 0x01F970 },
+ { 0x01F973, 0x01F976 },
+ { 0x01F97A, 0x01F97A },
+ { 0x01F97C, 0x01F9A2 },
+ { 0x01F9B0, 0x01F9B9 },
+ { 0x01F9C0, 0x01F9C2 },
+ { 0x01F9D0, 0x01F9FF },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_12_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D5 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FA },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F90D, 0x01F971 },
+ { 0x01F973, 0x01F976 },
+ { 0x01F97A, 0x01F9A2 },
+ { 0x01F9A5, 0x01F9AA },
+ { 0x01F9AE, 0x01F9CA },
+ { 0x01F9CD, 0x01F9FF },
+ { 0x01FA70, 0x01FA73 },
+ { 0x01FA78, 0x01FA7A },
+ { 0x01FA80, 0x01FA82 },
+ { 0x01FA90, 0x01FA95 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_12_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D5 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FA },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F90D, 0x01F971 },
+ { 0x01F973, 0x01F976 },
+ { 0x01F97A, 0x01F9A2 },
+ { 0x01F9A5, 0x01F9AA },
+ { 0x01F9AE, 0x01F9CA },
+ { 0x01F9CD, 0x01F9FF },
+ { 0x01FA70, 0x01FA73 },
+ { 0x01FA78, 0x01FA7A },
+ { 0x01FA80, 0x01FA82 },
+ { 0x01FA90, 0x01FA95 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_13_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F978 },
+ { 0x01F97A, 0x01F9CB },
+ { 0x01F9CD, 0x01F9FF },
+ { 0x01FA70, 0x01FA74 },
+ { 0x01FA78, 0x01FA7A },
+ { 0x01FA80, 0x01FA86 },
+ { 0x01FA90, 0x01FAA8 },
+ { 0x01FAB0, 0x01FAB6 },
+ { 0x01FAC0, 0x01FAC2 },
+ { 0x01FAD0, 0x01FAD6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_14_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DD, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA74 },
+ { 0x01FA78, 0x01FA7C },
+ { 0x01FA80, 0x01FA86 },
+ { 0x01FA90, 0x01FAAC },
+ { 0x01FAB0, 0x01FABA },
+ { 0x01FAC0, 0x01FAC5 },
+ { 0x01FAD0, 0x01FAD9 },
+ { 0x01FAE0, 0x01FAE7 },
+ { 0x01FAF0, 0x01FAF6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_15_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA88 },
+ { 0x01FA90, 0x01FABD },
+ { 0x01FABF, 0x01FAC5 },
+ { 0x01FACE, 0x01FADB },
+ { 0x01FAE0, 0x01FAE8 },
+ { 0x01FAF0, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_15_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031EF, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA88 },
+ { 0x01FA90, 0x01FABD },
+ { 0x01FABF, 0x01FAC5 },
+ { 0x01FACE, 0x01FADB },
+ { 0x01FAE0, 0x01FAE8 },
+ { 0x01FAF0, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_16_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002630, 0x002637 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x00268A, 0x00268F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E5 },
+ { 0x0031EF, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018CFF, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01D300, 0x01D356 },
+ { 0x01D360, 0x01D376 },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA89 },
+ { 0x01FA8F, 0x01FAC6 },
+ { 0x01FACE, 0x01FADC },
+ { 0x01FADF, 0x01FAE9 },
+ { 0x01FAF0, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_17_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002630, 0x002637 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x00268A, 0x00268F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E5 },
+ { 0x0031EF, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x016FF2, 0x016FF6 },
+ { 0x017000, 0x018CD5 },
+ { 0x018CFF, 0x018D1E },
+ { 0x018D80, 0x018DF2 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01D300, 0x01D356 },
+ { 0x01D360, 0x01D376 },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D8 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA8A },
+ { 0x01FA8E, 0x01FAC6 },
+ { 0x01FAC8, 0x01FAC8 },
+ { 0x01FACD, 0x01FADC },
+ { 0x01FADF, 0x01FAEA },
+ { 0x01FAEF, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/WideTable.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/WideTable.cs
new file mode 100755
index 0000000000..c96f074378
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/WideTable.cs
@@ -0,0 +1,40 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+namespace Wcwidth;
+
+internal static partial class WideTable
+{
+ private static readonly Dictionary _lookup;
+ private static readonly object _lock;
+
+ static WideTable()
+ {
+ _lookup = new Dictionary();
+ _lock = new object();
+ }
+
+ public static int[,] GetTable(Unicode version)
+ {
+ if (!_lookup.TryGetValue(version, out var table))
+ {
+ lock (_lock)
+ {
+ if (_lookup.TryGetValue(version, out table))
+ {
+ return table;
+ }
+
+ // Generate the table for the version dynamically
+ // since we don't want to load everything into memory.
+ table = GenerateTable(version);
+ _lookup[version] = table;
+ }
+ }
+
+ return table;
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/ZeroTable.Generated.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/ZeroTable.Generated.cs
new file mode 100755
index 0000000000..9437b6ed52
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/ZeroTable.Generated.cs
@@ -0,0 +1,9365 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+
+namespace Wcwidth;
+
+internal static partial class ZeroTable
+{
+ private static int[,] GenerateTable(Unicode version)
+ {
+ return version switch
+ {
+ Unicode.Version_4_1_0 => Unicode_4_1_0(),
+ Unicode.Version_5_0_0 => Unicode_5_0_0(),
+ Unicode.Version_5_1_0 => Unicode_5_1_0(),
+ Unicode.Version_5_2_0 => Unicode_5_2_0(),
+ Unicode.Version_6_0_0 => Unicode_6_0_0(),
+ Unicode.Version_6_1_0 => Unicode_6_1_0(),
+ Unicode.Version_6_2_0 => Unicode_6_2_0(),
+ Unicode.Version_6_3_0 => Unicode_6_3_0(),
+ Unicode.Version_7_0_0 => Unicode_7_0_0(),
+ Unicode.Version_8_0_0 => Unicode_8_0_0(),
+ Unicode.Version_9_0_0 => Unicode_9_0_0(),
+ Unicode.Version_10_0_0 => Unicode_10_0_0(),
+ Unicode.Version_11_0_0 => Unicode_11_0_0(),
+ Unicode.Version_12_0_0 => Unicode_12_0_0(),
+ Unicode.Version_12_1_0 => Unicode_12_1_0(),
+ Unicode.Version_13_0_0 => Unicode_13_0_0(),
+ Unicode.Version_14_0_0 => Unicode_14_0_0(),
+ Unicode.Version_15_0_0 => Unicode_15_0_0(),
+ Unicode.Version_15_1_0 => Unicode_15_1_0(),
+ Unicode.Version_16_0_0 => Unicode_16_0_0(),
+ Unicode.Version_17_0_0 => Unicode_17_0_0(),
+ _ => throw new InvalidOperationException("Unknown Unicode version"),
+ };
+ }
+
+ private static int[,] Unicode_4_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000486 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005B9 },
+ { 0x0005BB, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x000615 },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x000901, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x000951, 0x000954 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A70, 0x000A71 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B43 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D43 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102C, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001032 },
+ { 0x001036, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x001039 },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001DC0, 0x001DC3 },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002063 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020EB },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE23 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_5_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000486 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x000615 },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000901, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x000951, 0x000954 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A70, 0x000A71 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B43 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D43 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102C, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001032 },
+ { 0x001036, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x001039 },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001DC0, 0x001DCA },
+ { 0x001DFE, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002063 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020EF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE23 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_5_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000901, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x000951, 0x000954 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFE, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A67C, 0x00A67D },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_5_2_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094E },
+ { 0x000951, 0x000955 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF2 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFD, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A67C, 0x00A67D },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF2 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A67C, 0x00A67D },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000604 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x0008FE },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAB },
+ { 0x001BAC, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_2_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000604 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x0008FE },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAB },
+ { 0x001BAC, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_3_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000604 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x0008FE },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAB },
+ { 0x001BAC, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_7_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D01, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF5 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2D },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011301, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_8_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D01, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF5 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111CA, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_9_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D4, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D01, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF5 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111CA, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_10_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D4, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111CA, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x011A01, 0x011A06 },
+ { 0x011A07, 0x011A08 },
+ { 0x011A09, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_11_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_12_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_12_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_13_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001AC0 },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_14_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000898, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_15_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000898, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFD, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_15_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000898, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFD, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_16_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000897, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010D69, 0x010D6D },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFC, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0113B8, 0x0113BA },
+ { 0x0113BB, 0x0113C0 },
+ { 0x0113C2, 0x0113C2 },
+ { 0x0113C5, 0x0113C5 },
+ { 0x0113C7, 0x0113CA },
+ { 0x0113CC, 0x0113CD },
+ { 0x0113CE, 0x0113CE },
+ { 0x0113CF, 0x0113CF },
+ { 0x0113D0, 0x0113D0 },
+ { 0x0113D2, 0x0113D2 },
+ { 0x0113E1, 0x0113E2 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171D },
+ { 0x01171E, 0x01171E },
+ { 0x01171F, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x011F5A, 0x011F5A },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x01611E, 0x016129 },
+ { 0x01612A, 0x01612C },
+ { 0x01612D, 0x01612F },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E5EE, 0x01E5EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_17_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000897, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ADD },
+ { 0x001AE0, 0x001AEB },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010D69, 0x010D6D },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFA, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0113B8, 0x0113BA },
+ { 0x0113BB, 0x0113C0 },
+ { 0x0113C2, 0x0113C2 },
+ { 0x0113C5, 0x0113C5 },
+ { 0x0113C7, 0x0113CA },
+ { 0x0113CC, 0x0113CD },
+ { 0x0113CE, 0x0113CE },
+ { 0x0113CF, 0x0113CF },
+ { 0x0113D0, 0x0113D0 },
+ { 0x0113D2, 0x0113D2 },
+ { 0x0113E1, 0x0113E2 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171D },
+ { 0x01171E, 0x01171E },
+ { 0x01171F, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011B60, 0x011B60 },
+ { 0x011B61, 0x011B61 },
+ { 0x011B62, 0x011B64 },
+ { 0x011B65, 0x011B65 },
+ { 0x011B66, 0x011B66 },
+ { 0x011B67, 0x011B67 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x011F5A, 0x011F5A },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x01611E, 0x016129 },
+ { 0x01612A, 0x01612C },
+ { 0x01612D, 0x01612F },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E5EE, 0x01E5EF },
+ { 0x01E6E3, 0x01E6E3 },
+ { 0x01E6E6, 0x01E6E6 },
+ { 0x01E6EE, 0x01E6EF },
+ { 0x01E6F5, 0x01E6F5 },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/ZeroTable.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/ZeroTable.cs
new file mode 100755
index 0000000000..bff3a1110e
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Tables/ZeroTable.cs
@@ -0,0 +1,41 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+namespace Wcwidth
+{
+ internal static partial class ZeroTable
+ {
+ private static readonly Dictionary _lookup;
+ private static readonly object _lock;
+
+ static ZeroTable()
+ {
+ _lookup = new Dictionary();
+ _lock = new object();
+ }
+
+ public static int[,] GetTable(Unicode version)
+ {
+ if (!_lookup.TryGetValue(version, out var table))
+ {
+ lock (_lock)
+ {
+ if (_lookup.TryGetValue(version, out table))
+ {
+ return table;
+ }
+
+ // Generate the table for the version dynamically
+ // since we don't want to load everything into memory.
+ table = GenerateTable(version);
+ _lookup[version] = table;
+ }
+ }
+
+ return table;
+ }
+ }
+}
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Unicode.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Unicode.cs
new file mode 100755
index 0000000000..4ba1c5b401
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/Unicode.cs
@@ -0,0 +1,127 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+using System.ComponentModel;
+using System.Diagnostics.CodeAnalysis;
+
+namespace Wcwidth;
+
+///
+/// Represents a Unicode version.
+///
+[SuppressMessage("Naming", "CA1707:Identifiers should not contain underscores")]
+#if WCWIDTH_VISIBILITY_INTERNAL
+ internal
+#else
+public
+#endif
+ enum Unicode
+{
+ ///
+ /// Unicode version 4.1.0.
+ ///
+ [Description("4.1.0")] Version_4_1_0 = 0,
+
+ ///
+ /// Unicode version 5.0.0.
+ ///
+ [Description("5.0.0")] Version_5_0_0 = 1,
+
+ ///
+ /// Unicode version 5.1.0.
+ ///
+ [Description("5.1.0")] Version_5_1_0 = 2,
+
+ ///
+ /// Unicode version 5.2.0.
+ ///
+ [Description("5.2.0")] Version_5_2_0 = 3,
+
+ ///
+ /// Unicode version 6.0.0.
+ ///
+ [Description("6.0.0")] Version_6_0_0 = 4,
+
+ ///
+ /// Unicode version 6.1.0.
+ ///
+ [Description("6.1.0")] Version_6_1_0 = 5,
+
+ ///
+ /// Unicode version 6.2.0.
+ ///
+ [Description("6.2.0")] Version_6_2_0 = 6,
+
+ ///
+ /// Unicode version 6.3.0.
+ ///
+ [Description("6.3.0")] Version_6_3_0 = 7,
+
+ ///
+ /// Unicode version 7.0.0.
+ ///
+ [Description("7.0.0")] Version_7_0_0 = 8,
+
+ ///
+ /// Unicode version 8.0.0.
+ ///
+ [Description("8.0.0")] Version_8_0_0 = 9,
+
+ ///
+ /// Unicode version 9.0.0.
+ ///
+ [Description("9.0.0")] Version_9_0_0 = 10,
+
+ ///
+ /// Unicode version 10.0.0.
+ ///
+ [Description("10.0.0")] Version_10_0_0 = 11,
+
+ ///
+ /// Unicode version 11.0.0.
+ ///
+ [Description("11.0.0")] Version_11_0_0 = 12,
+
+ ///
+ /// Unicode version 12.0.0.
+ ///
+ [Description("12.0.0")] Version_12_0_0 = 13,
+
+ ///
+ /// Unicode version 12.1.0.
+ ///
+ [Description("12.1.0")] Version_12_1_0 = 14,
+
+ ///
+ /// Unicode version 13.0.0.
+ ///
+ [Description("13.0.0")] Version_13_0_0 = 15,
+
+ ///
+ /// Unicode version 14.0.0.
+ ///
+ [Description("14.0.0")] Version_14_0_0 = 16,
+
+ ///
+ /// Unicode version 15.0.0.
+ ///
+ [Description("15.0.0")] Version_15_0_0 = 17,
+
+ ///
+ /// Unicode version 15.1.0.
+ ///
+ [Description("15.1.0")] Version_15_1_0 = 18,
+
+ ///
+ /// Unicode version 16.0.0.
+ ///
+ [Description("16.0.0")] Version_16_0_0 = 19,
+
+ ///
+ /// Unicode version 17.0.0.
+ ///
+ [Description("17.0.0")] Version_17_0_0 = 20,
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/UnicodeCalculator.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/UnicodeCalculator.cs
new file mode 100755
index 0000000000..35e14dd763
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/net9.0/External/Wcwidth/UnicodeCalculator.cs
@@ -0,0 +1,209 @@
+// This is a port of the Python version of wcwidth() written by Jeff Quast,
+// which originally was written by Markus Kuhn.
+//
+// https://github.com/jquast/wcwidth
+// http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
+//
+// In fixed-width output devices, Latin characters all occupy a single "cell" position
+// of equal width, whereas ideographic CJK characters occupy two such cells. Interoperability
+// between terminal-line applications and (teletype-style) character terminals using the
+// UTF-8 encoding requires agreement on which character should advance the cursor by how
+// many cell positions. No established formal standards exist at present on which Unicode
+// character shall occupy how many cell positions on character terminals. These routines
+// are a first attempt of defining such behavior based on simple rules applied to data
+// provided by the Unicode Consortium.
+//
+// For some graphical characters, the Unicode standard explicitly defines a character-cell
+// width via the definition of the East Asian FullWidth (F), Wide (W), Half-width (H),
+// and Narrow (Na) classes. In all these cases, there is no ambiguity about which width
+// a terminal shall use. For characters in the East Asian Ambiguous (A) class, the width
+// choice depends purely on a preference of backward compatibility with either historic
+// CJK or Western practice. Choosing single-width for these characters is easy to justify
+// as the appropriate long-term solution, as the CJK practice of displaying these characters
+// as double-width comes from historic implementation simplicity (8-bit encoded characters
+// were displayed single-width and 16-bit ones double-width, even for Greek, Cyrillic, etc.)
+// and not any typographic considerations.
+//
+// Much less clear is the choice of width for the Not East Asian (Neutral) class.
+// Existing practice does not dictate a width for any of these characters. It would
+// nevertheless make sense typographically to allocate two character cells to characters
+// such as for instance EM SPACE or VOLUME INTEGRAL, which cannot be represented adequately
+// with a single-width glyph. The following routines at present merely assign a single-cell
+// width to all neutral characters, in the interest of simplicity. This is not entirely
+// satisfactory and should be reconsidered before establishing a formal standard in this area.
+// At the moment, the decision which Not East Asian (Neutral) characters should be represented
+// by double-width glyphs cannot yet be answered by applying a simple rule from the Unicode
+// database content. Setting up a proper standard for the behavior of UTF-8 character
+// terminals will require a careful analysis not only of each Unicode character, but also
+// of each presentation form, something the author of these routines has avoided to do so far.
+//
+// http://www.unicode.org/unicode/reports/tr11/
+
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+#if NET6_0_OR_GREATER
+using System.Text;
+#endif
+
+namespace Wcwidth;
+
+///
+/// A utility for calculating the width of Unicode characters.
+///
+#if WCWIDTH_VISIBILITY_INTERNAL
+ internal
+#else
+public
+#endif
+ static class UnicodeCalculator
+{
+ private const Unicode Latest = Unicode.Version_16_0_0;
+
+ // NOTE: created by hand, there isn't anything identifiable other than
+ // general Cf category code to identify these, and some characters in Cf
+ // category code are of non-zero width.
+ // Also includes some Cc, Mn, Zl, and Zp characters
+ private static readonly HashSet _zeroWidthCf =
+ [
+ 0, // Null (Cc)
+ 0x034F, // Combining grapheme joiner (Mn)
+ 0x200B, // Zero width space
+ 0x200C, // Zero width non-joiner
+ 0x200D, // Zero width joiner
+ 0x200E, // Left-to-right mark
+ 0x200F, // Right-to-left mark
+ 0x2028, // Line separator (Zl)
+ 0x2029, // Paragraph separator (Zp)
+ 0x202A, // Left-to-right embedding
+ 0x202B, // Right-to-left embedding
+ 0x202C, // Pop directional formatting
+ 0x202D, // Left-to-right override
+ 0x202E, // Right-to-left override
+ 0x2060, // Word joiner
+ 0x2061, // Function application
+ 0x2062, // Invisible times
+ 0x2063 // Invisible separator
+ ];
+
+ ///
+ /// Gets the width of a Unicode code point.
+ ///
+ /// The Unicode code point to calculate the width of.
+ /// The Unicode version to use.
+ /// The width of the character (-1, 0, 1, 2).
+ public static int GetWidth(int value, Unicode? version = null)
+ {
+ version ??= Latest;
+
+ // NOTE: created by hand, there isn't anything identifiable other than
+ // general Cf category code to identify these, and some characters in Cf
+ // category code are of non-zero width.
+ if (_zeroWidthCf.Contains(value))
+ {
+ return 0;
+ }
+
+ // C0/C1 control characters
+ if (value < 32 || (value >= 0x07F && value < 0x0A0))
+ {
+ return -1;
+ }
+
+ // Zero width?
+ if (ZeroTable.GetTable(version.Value).Exist(value))
+ {
+ return 0;
+ }
+
+ // Wide character?
+ return 1 + WideTable.GetTable(version.Value).Find(value);
+ }
+
+#if NET6_0_OR_GREATER
+ ///
+ /// Gets the width of a Unicode scalar.
+ ///
+ /// The Unicode scalar to calculate the width of.
+ /// The Unicode version to use.
+ /// The width of the character (-1, 0, 1, 2).
+ public static int GetWidth(Rune value, Unicode? version = null)
+ {
+ return GetWidth(value.Value, version);
+ }
+#endif
+
+ ///
+ /// Gets the width of a UTF-16 code unit.
+ ///
+ /// The UTF-16 code unit to calculate the width of.
+ /// The Unicode version to use.
+ /// The width of the character (-1, 0, 1, 2).
+ public static int GetWidth(char value, Unicode? version = null)
+ {
+ return GetWidth((int)value, version);
+ }
+
+#if NET6_0_OR_GREATER
+ public static int GetWidth(string value, Unicode? version = null)
+ {
+ version ??= Latest;
+
+ var runes = value.EnumerateRunes().ToArray();
+ var end = runes.Length;
+
+ var width = 0;
+ var index = 0;
+ var lastMeasureRune = default(Rune?);
+ while (index < end)
+ {
+ var rune = runes[index];
+
+ if (rune.Value == '\u200D')
+ {
+ // Zero Width Joiner, do not measure this or next character
+ index += 2;
+ continue;
+ }
+
+ if (rune.Value == '\uFE0F' && lastMeasureRune != null)
+ {
+ // on variation selector 16 (VS16) following another character,
+ // conditionally add '1' to the measured width if that character is
+ // known to be converted from narrow to wide by the VS16 character.
+ if (version >= Unicode.Version_9_0_0)
+ {
+ width += Vs16Table.GetTable(Unicode.Version_9_0_0).Find(lastMeasureRune.Value.Value);
+ lastMeasureRune = null;
+ }
+
+ index++;
+ continue;
+ }
+
+ // Measure rune at current index
+ var wcw = GetWidth(rune, version);
+ if (wcw < 0)
+ {
+ // Early return -1 on C0 and C1 control characters
+ return wcw;
+ }
+
+ if (wcw > 0)
+ {
+ // Track last character measured to contain a cell, so that
+ // subsequent VS-16 modifiers may be understood.
+ lastMeasureRune = rune;
+ }
+
+ width += wcw;
+ index++;
+ }
+
+ return width;
+ }
+#endif
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Extensions/IntegerExtensions.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Extensions/IntegerExtensions.cs
new file mode 100755
index 0000000000..70bc695649
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Extensions/IntegerExtensions.cs
@@ -0,0 +1,45 @@
+namespace Wcwidth;
+
+internal static class IntegerExtensions
+{
+ public static bool Exist(this int[,] table, int value)
+ {
+ return Find(table, value) != 0;
+ }
+
+ public static int Find(this int[,] table, int value)
+ {
+ if (table is null)
+ {
+ throw new ArgumentNullException(nameof(table));
+ }
+
+ var min = 0;
+ var max = table.GetUpperBound(0);
+ int mid;
+
+ if (value < table[0, 0] || value > table[max, 1])
+ {
+ return 0;
+ }
+
+ while (max >= min)
+ {
+ mid = (min + max) / 2;
+ if (value > table[mid, 1])
+ {
+ min = mid + 1;
+ }
+ else if (value < table[mid, 0])
+ {
+ max = mid - 1;
+ }
+ else
+ {
+ return 1;
+ }
+ }
+
+ return 0;
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/Vs16Table.Generated.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/Vs16Table.Generated.cs
new file mode 100755
index 0000000000..af8d37bdc2
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/Vs16Table.Generated.cs
@@ -0,0 +1,144 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+
+namespace Wcwidth;
+
+internal static partial class Vs16Table
+{
+ private static int[,] GenerateTable(Unicode version)
+ {
+ return version switch
+ {
+ Unicode.Version_9_0_0 => Unicode_9_0_0(),
+ _ => throw new InvalidOperationException("Unknown Unicode version"),
+ };
+ }
+
+ private static int[,] Unicode_9_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000023, 0x000023 },
+ { 0x00002A, 0x00002A },
+ { 0x000030, 0x000039 },
+ { 0x0000A9, 0x0000A9 },
+ { 0x0000AE, 0x0000AE },
+ { 0x00203C, 0x00203C },
+ { 0x002049, 0x002049 },
+ { 0x002122, 0x002122 },
+ { 0x002139, 0x002139 },
+ { 0x002194, 0x002199 },
+ { 0x0021A9, 0x0021AA },
+ { 0x002328, 0x002328 },
+ { 0x0023CF, 0x0023CF },
+ { 0x0023ED, 0x0023EF },
+ { 0x0023F1, 0x0023F2 },
+ { 0x0023F8, 0x0023FA },
+ { 0x0024C2, 0x0024C2 },
+ { 0x0025AA, 0x0025AB },
+ { 0x0025B6, 0x0025B6 },
+ { 0x0025C0, 0x0025C0 },
+ { 0x0025FB, 0x0025FC },
+ { 0x002600, 0x002604 },
+ { 0x00260E, 0x00260E },
+ { 0x002611, 0x002611 },
+ { 0x002618, 0x002618 },
+ { 0x00261D, 0x00261D },
+ { 0x002620, 0x002620 },
+ { 0x002622, 0x002623 },
+ { 0x002626, 0x002626 },
+ { 0x00262A, 0x00262A },
+ { 0x00262E, 0x00262F },
+ { 0x002638, 0x00263A },
+ { 0x002640, 0x002640 },
+ { 0x002642, 0x002642 },
+ { 0x00265F, 0x002660 },
+ { 0x002663, 0x002663 },
+ { 0x002665, 0x002666 },
+ { 0x002668, 0x002668 },
+ { 0x00267B, 0x00267B },
+ { 0x00267E, 0x00267E },
+ { 0x002692, 0x002692 },
+ { 0x002694, 0x002697 },
+ { 0x002699, 0x002699 },
+ { 0x00269B, 0x00269C },
+ { 0x0026A0, 0x0026A0 },
+ { 0x0026A7, 0x0026A7 },
+ { 0x0026B0, 0x0026B1 },
+ { 0x0026C8, 0x0026C8 },
+ { 0x0026CF, 0x0026CF },
+ { 0x0026D1, 0x0026D1 },
+ { 0x0026D3, 0x0026D3 },
+ { 0x0026E9, 0x0026E9 },
+ { 0x0026F0, 0x0026F1 },
+ { 0x0026F4, 0x0026F4 },
+ { 0x0026F7, 0x0026F9 },
+ { 0x002702, 0x002702 },
+ { 0x002708, 0x002709 },
+ { 0x00270C, 0x00270D },
+ { 0x00270F, 0x00270F },
+ { 0x002712, 0x002712 },
+ { 0x002714, 0x002714 },
+ { 0x002716, 0x002716 },
+ { 0x00271D, 0x00271D },
+ { 0x002721, 0x002721 },
+ { 0x002733, 0x002734 },
+ { 0x002744, 0x002744 },
+ { 0x002747, 0x002747 },
+ { 0x002763, 0x002764 },
+ { 0x0027A1, 0x0027A1 },
+ { 0x002934, 0x002935 },
+ { 0x002B05, 0x002B07 },
+ { 0x01F170, 0x01F171 },
+ { 0x01F17E, 0x01F17F },
+ { 0x01F321, 0x01F321 },
+ { 0x01F324, 0x01F32C },
+ { 0x01F336, 0x01F336 },
+ { 0x01F37D, 0x01F37D },
+ { 0x01F396, 0x01F397 },
+ { 0x01F399, 0x01F39B },
+ { 0x01F39E, 0x01F39F },
+ { 0x01F3CB, 0x01F3CE },
+ { 0x01F3D4, 0x01F3DF },
+ { 0x01F3F3, 0x01F3F3 },
+ { 0x01F3F5, 0x01F3F5 },
+ { 0x01F3F7, 0x01F3F7 },
+ { 0x01F43F, 0x01F43F },
+ { 0x01F441, 0x01F441 },
+ { 0x01F4FD, 0x01F4FD },
+ { 0x01F549, 0x01F54A },
+ { 0x01F56F, 0x01F570 },
+ { 0x01F573, 0x01F579 },
+ { 0x01F587, 0x01F587 },
+ { 0x01F58A, 0x01F58D },
+ { 0x01F590, 0x01F590 },
+ { 0x01F5A5, 0x01F5A5 },
+ { 0x01F5A8, 0x01F5A8 },
+ { 0x01F5B1, 0x01F5B2 },
+ { 0x01F5BC, 0x01F5BC },
+ { 0x01F5C2, 0x01F5C4 },
+ { 0x01F5D1, 0x01F5D3 },
+ { 0x01F5DC, 0x01F5DE },
+ { 0x01F5E1, 0x01F5E1 },
+ { 0x01F5E3, 0x01F5E3 },
+ { 0x01F5E8, 0x01F5E8 },
+ { 0x01F5EF, 0x01F5EF },
+ { 0x01F5F3, 0x01F5F3 },
+ { 0x01F5FA, 0x01F5FA },
+ { 0x01F6CB, 0x01F6CB },
+ { 0x01F6CD, 0x01F6CF },
+ { 0x01F6E0, 0x01F6E5 },
+ { 0x01F6E9, 0x01F6E9 },
+ { 0x01F6F0, 0x01F6F0 },
+ { 0x01F6F3, 0x01F6F3 },
+ };
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/Vs16Table.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/Vs16Table.cs
new file mode 100755
index 0000000000..de082c013c
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/Vs16Table.cs
@@ -0,0 +1,40 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+namespace Wcwidth;
+
+internal static partial class Vs16Table
+{
+ private static readonly Dictionary _lookup;
+ private static readonly object _lock;
+
+ static Vs16Table()
+ {
+ _lookup = new Dictionary();
+ _lock = new object();
+ }
+
+ public static int[,] GetTable(Unicode version)
+ {
+ if (!_lookup.TryGetValue(version, out var table))
+ {
+ lock (_lock)
+ {
+ if (_lookup.TryGetValue(version, out table))
+ {
+ return table;
+ }
+
+ // Generate the table for the version dynamically
+ // since we don't want to load everything into memory.
+ table = GenerateTable(version);
+ _lookup[version] = table;
+ }
+ }
+
+ return table;
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/WideTable.Generated.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/WideTable.Generated.cs
new file mode 100755
index 0000000000..d24bb5af4a
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/WideTable.Generated.cs
@@ -0,0 +1,1830 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+
+namespace Wcwidth;
+
+internal static partial class WideTable
+{
+ private static int[,] GenerateTable(Unicode version)
+ {
+ return version switch
+ {
+ Unicode.Version_4_1_0 => Unicode_4_1_0(),
+ Unicode.Version_5_0_0 => Unicode_5_0_0(),
+ Unicode.Version_5_1_0 => Unicode_5_1_0(),
+ Unicode.Version_5_2_0 => Unicode_5_2_0(),
+ Unicode.Version_6_0_0 => Unicode_6_0_0(),
+ Unicode.Version_6_1_0 => Unicode_6_1_0(),
+ Unicode.Version_6_2_0 => Unicode_6_2_0(),
+ Unicode.Version_6_3_0 => Unicode_6_3_0(),
+ Unicode.Version_7_0_0 => Unicode_7_0_0(),
+ Unicode.Version_8_0_0 => Unicode_8_0_0(),
+ Unicode.Version_9_0_0 => Unicode_9_0_0(),
+ Unicode.Version_10_0_0 => Unicode_10_0_0(),
+ Unicode.Version_11_0_0 => Unicode_11_0_0(),
+ Unicode.Version_12_0_0 => Unicode_12_0_0(),
+ Unicode.Version_12_1_0 => Unicode_12_1_0(),
+ Unicode.Version_13_0_0 => Unicode_13_0_0(),
+ Unicode.Version_14_0_0 => Unicode_14_0_0(),
+ Unicode.Version_15_0_0 => Unicode_15_0_0(),
+ Unicode.Version_15_1_0 => Unicode_15_1_0(),
+ Unicode.Version_16_0_0 => Unicode_16_0_0(),
+ Unicode.Version_17_0_0 => Unicode_17_0_0(),
+ _ => throw new InvalidOperationException("Unknown Unicode version"),
+ };
+ }
+
+ private static int[,] Unicode_4_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x001159 },
+ { 0x00115F, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312C },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031CF },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003243 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DB5 },
+ { 0x004E00, 0x009FBB },
+ { 0x00A000, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FA2D },
+ { 0x00FA30, 0x00FA6A },
+ { 0x00FA70, 0x00FAD9 },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_5_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x001159 },
+ { 0x00115F, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312C },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031CF },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003243 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DB5 },
+ { 0x004E00, 0x009FBB },
+ { 0x00A000, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FA2D },
+ { 0x00FA30, 0x00FA6A },
+ { 0x00FA70, 0x00FAD9 },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_5_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x001159 },
+ { 0x00115F, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003243 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DB5 },
+ { 0x004E00, 0x009FC3 },
+ { 0x00A000, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FA2D },
+ { 0x00FA30, 0x00FA6A },
+ { 0x00FA70, 0x00FAD9 },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_5_2_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031B7 },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01F200, 0x01F200 },
+ { 0x01F210, 0x01F231 },
+ { 0x01F240, 0x01F248 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_2_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_6_3_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_7_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_8_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x002329, 0x00232A },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23A },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_9_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312D },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE0 },
+ { 0x017000, 0x0187EC },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B001 },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6F6 },
+ { 0x01F910, 0x01F91E },
+ { 0x01F920, 0x01F927 },
+ { 0x01F930, 0x01F930 },
+ { 0x01F933, 0x01F93E },
+ { 0x01F940, 0x01F94B },
+ { 0x01F950, 0x01F95E },
+ { 0x01F980, 0x01F991 },
+ { 0x01F9C0, 0x01F9C0 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_10_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312E },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE1 },
+ { 0x017000, 0x0187EC },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6F8 },
+ { 0x01F910, 0x01F93E },
+ { 0x01F940, 0x01F94C },
+ { 0x01F950, 0x01F96B },
+ { 0x01F980, 0x01F997 },
+ { 0x01F9C0, 0x01F9C0 },
+ { 0x01F9D0, 0x01F9E6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_11_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE1 },
+ { 0x017000, 0x0187F1 },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6F9 },
+ { 0x01F910, 0x01F93E },
+ { 0x01F940, 0x01F970 },
+ { 0x01F973, 0x01F976 },
+ { 0x01F97A, 0x01F97A },
+ { 0x01F97C, 0x01F9A2 },
+ { 0x01F9B0, 0x01F9B9 },
+ { 0x01F9C0, 0x01F9C2 },
+ { 0x01F9D0, 0x01F9FF },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_12_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x0032FE },
+ { 0x003300, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D5 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FA },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F90D, 0x01F971 },
+ { 0x01F973, 0x01F976 },
+ { 0x01F97A, 0x01F9A2 },
+ { 0x01F9A5, 0x01F9AA },
+ { 0x01F9AE, 0x01F9CA },
+ { 0x01F9CD, 0x01F9FF },
+ { 0x01FA70, 0x01FA73 },
+ { 0x01FA78, 0x01FA7A },
+ { 0x01FA80, 0x01FA82 },
+ { 0x01FA90, 0x01FA95 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_12_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031BA },
+ { 0x0031C0, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018AF2 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D5 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FA },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F90D, 0x01F971 },
+ { 0x01F973, 0x01F976 },
+ { 0x01F97A, 0x01F9A2 },
+ { 0x01F9A5, 0x01F9AA },
+ { 0x01F9AE, 0x01F9CA },
+ { 0x01F9CD, 0x01F9FF },
+ { 0x01FA70, 0x01FA73 },
+ { 0x01FA78, 0x01FA7A },
+ { 0x01FA80, 0x01FA82 },
+ { 0x01FA90, 0x01FA95 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_13_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01B000, 0x01B11E },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F978 },
+ { 0x01F97A, 0x01F9CB },
+ { 0x01F9CD, 0x01F9FF },
+ { 0x01FA70, 0x01FA74 },
+ { 0x01FA78, 0x01FA7A },
+ { 0x01FA80, 0x01FA86 },
+ { 0x01FA90, 0x01FAA8 },
+ { 0x01FAB0, 0x01FAB6 },
+ { 0x01FAC0, 0x01FAC2 },
+ { 0x01FAD0, 0x01FAD6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_14_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DD, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA74 },
+ { 0x01FA78, 0x01FA7C },
+ { 0x01FA80, 0x01FA86 },
+ { 0x01FA90, 0x01FAAC },
+ { 0x01FAB0, 0x01FABA },
+ { 0x01FAC0, 0x01FAC5 },
+ { 0x01FAD0, 0x01FAD9 },
+ { 0x01FAE0, 0x01FAE7 },
+ { 0x01FAF0, 0x01FAF6 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_15_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x002FFB },
+ { 0x003000, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031F0, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA88 },
+ { 0x01FA90, 0x01FABD },
+ { 0x01FABF, 0x01FAC5 },
+ { 0x01FACE, 0x01FADB },
+ { 0x01FAE0, 0x01FAE8 },
+ { 0x01FAF0, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_15_1_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E3 },
+ { 0x0031EF, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x004DBF },
+ { 0x004E00, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018D00, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA88 },
+ { 0x01FA90, 0x01FABD },
+ { 0x01FABF, 0x01FAC5 },
+ { 0x01FACE, 0x01FADB },
+ { 0x01FAE0, 0x01FAE8 },
+ { 0x01FAF0, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_16_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002630, 0x002637 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x00268A, 0x00268F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E5 },
+ { 0x0031EF, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x017000, 0x0187F7 },
+ { 0x018800, 0x018CD5 },
+ { 0x018CFF, 0x018D08 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01D300, 0x01D356 },
+ { 0x01D360, 0x01D376 },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D7 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA89 },
+ { 0x01FA8F, 0x01FAC6 },
+ { 0x01FACE, 0x01FADC },
+ { 0x01FADF, 0x01FAE9 },
+ { 0x01FAF0, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+
+ private static int[,] Unicode_17_0_0()
+ {
+ return new int[,]
+ {
+ { 0x001100, 0x00115F },
+ { 0x00231A, 0x00231B },
+ { 0x002329, 0x00232A },
+ { 0x0023E9, 0x0023EC },
+ { 0x0023F0, 0x0023F0 },
+ { 0x0023F3, 0x0023F3 },
+ { 0x0025FD, 0x0025FE },
+ { 0x002614, 0x002615 },
+ { 0x002630, 0x002637 },
+ { 0x002648, 0x002653 },
+ { 0x00267F, 0x00267F },
+ { 0x00268A, 0x00268F },
+ { 0x002693, 0x002693 },
+ { 0x0026A1, 0x0026A1 },
+ { 0x0026AA, 0x0026AB },
+ { 0x0026BD, 0x0026BE },
+ { 0x0026C4, 0x0026C5 },
+ { 0x0026CE, 0x0026CE },
+ { 0x0026D4, 0x0026D4 },
+ { 0x0026EA, 0x0026EA },
+ { 0x0026F2, 0x0026F3 },
+ { 0x0026F5, 0x0026F5 },
+ { 0x0026FA, 0x0026FA },
+ { 0x0026FD, 0x0026FD },
+ { 0x002705, 0x002705 },
+ { 0x00270A, 0x00270B },
+ { 0x002728, 0x002728 },
+ { 0x00274C, 0x00274C },
+ { 0x00274E, 0x00274E },
+ { 0x002753, 0x002755 },
+ { 0x002757, 0x002757 },
+ { 0x002795, 0x002797 },
+ { 0x0027B0, 0x0027B0 },
+ { 0x0027BF, 0x0027BF },
+ { 0x002B1B, 0x002B1C },
+ { 0x002B50, 0x002B50 },
+ { 0x002B55, 0x002B55 },
+ { 0x002E80, 0x002E99 },
+ { 0x002E9B, 0x002EF3 },
+ { 0x002F00, 0x002FD5 },
+ { 0x002FF0, 0x003029 },
+ { 0x003030, 0x00303E },
+ { 0x003041, 0x003096 },
+ { 0x00309B, 0x0030FF },
+ { 0x003105, 0x00312F },
+ { 0x003131, 0x00318E },
+ { 0x003190, 0x0031E5 },
+ { 0x0031EF, 0x00321E },
+ { 0x003220, 0x003247 },
+ { 0x003250, 0x00A48C },
+ { 0x00A490, 0x00A4C6 },
+ { 0x00A960, 0x00A97C },
+ { 0x00AC00, 0x00D7A3 },
+ { 0x00F900, 0x00FAFF },
+ { 0x00FE10, 0x00FE19 },
+ { 0x00FE30, 0x00FE52 },
+ { 0x00FE54, 0x00FE66 },
+ { 0x00FE68, 0x00FE6B },
+ { 0x00FF01, 0x00FF60 },
+ { 0x00FFE0, 0x00FFE6 },
+ { 0x016FE0, 0x016FE3 },
+ { 0x016FF2, 0x016FF6 },
+ { 0x017000, 0x018CD5 },
+ { 0x018CFF, 0x018D1E },
+ { 0x018D80, 0x018DF2 },
+ { 0x01AFF0, 0x01AFF3 },
+ { 0x01AFF5, 0x01AFFB },
+ { 0x01AFFD, 0x01AFFE },
+ { 0x01B000, 0x01B122 },
+ { 0x01B132, 0x01B132 },
+ { 0x01B150, 0x01B152 },
+ { 0x01B155, 0x01B155 },
+ { 0x01B164, 0x01B167 },
+ { 0x01B170, 0x01B2FB },
+ { 0x01D300, 0x01D356 },
+ { 0x01D360, 0x01D376 },
+ { 0x01F004, 0x01F004 },
+ { 0x01F0CF, 0x01F0CF },
+ { 0x01F18E, 0x01F18E },
+ { 0x01F191, 0x01F19A },
+ { 0x01F200, 0x01F202 },
+ { 0x01F210, 0x01F23B },
+ { 0x01F240, 0x01F248 },
+ { 0x01F250, 0x01F251 },
+ { 0x01F260, 0x01F265 },
+ { 0x01F300, 0x01F320 },
+ { 0x01F32D, 0x01F335 },
+ { 0x01F337, 0x01F37C },
+ { 0x01F37E, 0x01F393 },
+ { 0x01F3A0, 0x01F3CA },
+ { 0x01F3CF, 0x01F3D3 },
+ { 0x01F3E0, 0x01F3F0 },
+ { 0x01F3F4, 0x01F3F4 },
+ { 0x01F3F8, 0x01F3FA },
+ { 0x01F400, 0x01F43E },
+ { 0x01F440, 0x01F440 },
+ { 0x01F442, 0x01F4FC },
+ { 0x01F4FF, 0x01F53D },
+ { 0x01F54B, 0x01F54E },
+ { 0x01F550, 0x01F567 },
+ { 0x01F57A, 0x01F57A },
+ { 0x01F595, 0x01F596 },
+ { 0x01F5A4, 0x01F5A4 },
+ { 0x01F5FB, 0x01F64F },
+ { 0x01F680, 0x01F6C5 },
+ { 0x01F6CC, 0x01F6CC },
+ { 0x01F6D0, 0x01F6D2 },
+ { 0x01F6D5, 0x01F6D8 },
+ { 0x01F6DC, 0x01F6DF },
+ { 0x01F6EB, 0x01F6EC },
+ { 0x01F6F4, 0x01F6FC },
+ { 0x01F7E0, 0x01F7EB },
+ { 0x01F7F0, 0x01F7F0 },
+ { 0x01F90C, 0x01F93A },
+ { 0x01F93C, 0x01F945 },
+ { 0x01F947, 0x01F9FF },
+ { 0x01FA70, 0x01FA7C },
+ { 0x01FA80, 0x01FA8A },
+ { 0x01FA8E, 0x01FAC6 },
+ { 0x01FAC8, 0x01FAC8 },
+ { 0x01FACD, 0x01FADC },
+ { 0x01FADF, 0x01FAEA },
+ { 0x01FAEF, 0x01FAF8 },
+ { 0x020000, 0x02FFFD },
+ { 0x030000, 0x03FFFD },
+ };
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/WideTable.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/WideTable.cs
new file mode 100755
index 0000000000..c96f074378
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/WideTable.cs
@@ -0,0 +1,40 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+namespace Wcwidth;
+
+internal static partial class WideTable
+{
+ private static readonly Dictionary _lookup;
+ private static readonly object _lock;
+
+ static WideTable()
+ {
+ _lookup = new Dictionary();
+ _lock = new object();
+ }
+
+ public static int[,] GetTable(Unicode version)
+ {
+ if (!_lookup.TryGetValue(version, out var table))
+ {
+ lock (_lock)
+ {
+ if (_lookup.TryGetValue(version, out table))
+ {
+ return table;
+ }
+
+ // Generate the table for the version dynamically
+ // since we don't want to load everything into memory.
+ table = GenerateTable(version);
+ _lookup[version] = table;
+ }
+ }
+
+ return table;
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/ZeroTable.Generated.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/ZeroTable.Generated.cs
new file mode 100755
index 0000000000..9437b6ed52
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/ZeroTable.Generated.cs
@@ -0,0 +1,9365 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+
+namespace Wcwidth;
+
+internal static partial class ZeroTable
+{
+ private static int[,] GenerateTable(Unicode version)
+ {
+ return version switch
+ {
+ Unicode.Version_4_1_0 => Unicode_4_1_0(),
+ Unicode.Version_5_0_0 => Unicode_5_0_0(),
+ Unicode.Version_5_1_0 => Unicode_5_1_0(),
+ Unicode.Version_5_2_0 => Unicode_5_2_0(),
+ Unicode.Version_6_0_0 => Unicode_6_0_0(),
+ Unicode.Version_6_1_0 => Unicode_6_1_0(),
+ Unicode.Version_6_2_0 => Unicode_6_2_0(),
+ Unicode.Version_6_3_0 => Unicode_6_3_0(),
+ Unicode.Version_7_0_0 => Unicode_7_0_0(),
+ Unicode.Version_8_0_0 => Unicode_8_0_0(),
+ Unicode.Version_9_0_0 => Unicode_9_0_0(),
+ Unicode.Version_10_0_0 => Unicode_10_0_0(),
+ Unicode.Version_11_0_0 => Unicode_11_0_0(),
+ Unicode.Version_12_0_0 => Unicode_12_0_0(),
+ Unicode.Version_12_1_0 => Unicode_12_1_0(),
+ Unicode.Version_13_0_0 => Unicode_13_0_0(),
+ Unicode.Version_14_0_0 => Unicode_14_0_0(),
+ Unicode.Version_15_0_0 => Unicode_15_0_0(),
+ Unicode.Version_15_1_0 => Unicode_15_1_0(),
+ Unicode.Version_16_0_0 => Unicode_16_0_0(),
+ Unicode.Version_17_0_0 => Unicode_17_0_0(),
+ _ => throw new InvalidOperationException("Unknown Unicode version"),
+ };
+ }
+
+ private static int[,] Unicode_4_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000486 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005B9 },
+ { 0x0005BB, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x000615 },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x000901, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x000951, 0x000954 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A70, 0x000A71 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B43 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D43 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102C, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001032 },
+ { 0x001036, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x001039 },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001DC0, 0x001DC3 },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002063 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020EB },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE23 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_5_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000486 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x000615 },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000901, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x000951, 0x000954 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A70, 0x000A71 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B43 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D43 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102C, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001032 },
+ { 0x001036, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x001039 },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001DC0, 0x001DCA },
+ { 0x001DFE, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002063 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020EF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE23 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_5_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000901, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x000951, 0x000954 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFE, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A67C, 0x00A67D },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_5_2_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065E },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DE, 0x0006DE },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094E },
+ { 0x000951, 0x000955 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F90, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135F, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF2 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFD, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A67C, 0x00A67D },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000603 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF2 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A67C, 0x00A67D },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000604 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x0008FE },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAB },
+ { 0x001BAC, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_2_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000604 },
+ { 0x000610, 0x00061A },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x0008FE },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAB },
+ { 0x001BAC, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x00206A, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_6_3_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000604 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x0008FE },
+ { 0x000900, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAB },
+ { 0x001BAC, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001DC0, 0x001DE6 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE26 },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011080, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_7_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E4, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D01, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x0019B0, 0x0019C0 },
+ { 0x0019C8, 0x0019C9 },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF5 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69F, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2D },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011301, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_8_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D01, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF5 },
+ { 0x001DFC, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C4 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111CA, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_9_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D4, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D01, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF5 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111CA, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_10_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D4, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111CA, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133C, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x011A01, 0x011A06 },
+ { 0x011A07, 0x011A08 },
+ { 0x011A09, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_11_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EB9 },
+ { 0x000EBB, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF2, 0x001CF3 },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BC },
+ { 0x00A9BD, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F51, 0x016F7E },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_12_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_12_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B56, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_13_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x0008D3, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001732, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001AC0 },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DF9 },
+ { 0x001DFB, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010F46, 0x010F50 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_14_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000898, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECD },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x013430, 0x013438 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_15_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000898, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFD, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_15_1_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000898, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFD, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_16_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000897, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ACE },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010D69, 0x010D6D },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFC, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0113B8, 0x0113BA },
+ { 0x0113BB, 0x0113C0 },
+ { 0x0113C2, 0x0113C2 },
+ { 0x0113C5, 0x0113C5 },
+ { 0x0113C7, 0x0113CA },
+ { 0x0113CC, 0x0113CD },
+ { 0x0113CE, 0x0113CE },
+ { 0x0113CF, 0x0113CF },
+ { 0x0113D0, 0x0113D0 },
+ { 0x0113D2, 0x0113D2 },
+ { 0x0113E1, 0x0113E2 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171D },
+ { 0x01171E, 0x01171E },
+ { 0x01171F, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x011F5A, 0x011F5A },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x01611E, 0x016129 },
+ { 0x01612A, 0x01612C },
+ { 0x01612D, 0x01612F },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E5EE, 0x01E5EF },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+
+ private static int[,] Unicode_17_0_0()
+ {
+ return new int[,]
+ {
+ { 0x000000, 0x000000 },
+ { 0x000300, 0x00036F },
+ { 0x000483, 0x000487 },
+ { 0x000488, 0x000489 },
+ { 0x000591, 0x0005BD },
+ { 0x0005BF, 0x0005BF },
+ { 0x0005C1, 0x0005C2 },
+ { 0x0005C4, 0x0005C5 },
+ { 0x0005C7, 0x0005C7 },
+ { 0x000600, 0x000605 },
+ { 0x000610, 0x00061A },
+ { 0x00061C, 0x00061C },
+ { 0x00064B, 0x00065F },
+ { 0x000670, 0x000670 },
+ { 0x0006D6, 0x0006DC },
+ { 0x0006DD, 0x0006DD },
+ { 0x0006DF, 0x0006E4 },
+ { 0x0006E7, 0x0006E8 },
+ { 0x0006EA, 0x0006ED },
+ { 0x00070F, 0x00070F },
+ { 0x000711, 0x000711 },
+ { 0x000730, 0x00074A },
+ { 0x0007A6, 0x0007B0 },
+ { 0x0007EB, 0x0007F3 },
+ { 0x0007FD, 0x0007FD },
+ { 0x000816, 0x000819 },
+ { 0x00081B, 0x000823 },
+ { 0x000825, 0x000827 },
+ { 0x000829, 0x00082D },
+ { 0x000859, 0x00085B },
+ { 0x000890, 0x000891 },
+ { 0x000897, 0x00089F },
+ { 0x0008CA, 0x0008E1 },
+ { 0x0008E2, 0x0008E2 },
+ { 0x0008E3, 0x000902 },
+ { 0x000903, 0x000903 },
+ { 0x00093A, 0x00093A },
+ { 0x00093B, 0x00093B },
+ { 0x00093C, 0x00093C },
+ { 0x00093E, 0x000940 },
+ { 0x000941, 0x000948 },
+ { 0x000949, 0x00094C },
+ { 0x00094D, 0x00094D },
+ { 0x00094E, 0x00094F },
+ { 0x000951, 0x000957 },
+ { 0x000962, 0x000963 },
+ { 0x000981, 0x000981 },
+ { 0x000982, 0x000983 },
+ { 0x0009BC, 0x0009BC },
+ { 0x0009BE, 0x0009C0 },
+ { 0x0009C1, 0x0009C4 },
+ { 0x0009C7, 0x0009C8 },
+ { 0x0009CB, 0x0009CC },
+ { 0x0009CD, 0x0009CD },
+ { 0x0009D7, 0x0009D7 },
+ { 0x0009E2, 0x0009E3 },
+ { 0x0009FE, 0x0009FE },
+ { 0x000A01, 0x000A02 },
+ { 0x000A03, 0x000A03 },
+ { 0x000A3C, 0x000A3C },
+ { 0x000A3E, 0x000A40 },
+ { 0x000A41, 0x000A42 },
+ { 0x000A47, 0x000A48 },
+ { 0x000A4B, 0x000A4D },
+ { 0x000A51, 0x000A51 },
+ { 0x000A70, 0x000A71 },
+ { 0x000A75, 0x000A75 },
+ { 0x000A81, 0x000A82 },
+ { 0x000A83, 0x000A83 },
+ { 0x000ABC, 0x000ABC },
+ { 0x000ABE, 0x000AC0 },
+ { 0x000AC1, 0x000AC5 },
+ { 0x000AC7, 0x000AC8 },
+ { 0x000AC9, 0x000AC9 },
+ { 0x000ACB, 0x000ACC },
+ { 0x000ACD, 0x000ACD },
+ { 0x000AE2, 0x000AE3 },
+ { 0x000AFA, 0x000AFF },
+ { 0x000B01, 0x000B01 },
+ { 0x000B02, 0x000B03 },
+ { 0x000B3C, 0x000B3C },
+ { 0x000B3E, 0x000B3E },
+ { 0x000B3F, 0x000B3F },
+ { 0x000B40, 0x000B40 },
+ { 0x000B41, 0x000B44 },
+ { 0x000B47, 0x000B48 },
+ { 0x000B4B, 0x000B4C },
+ { 0x000B4D, 0x000B4D },
+ { 0x000B55, 0x000B56 },
+ { 0x000B57, 0x000B57 },
+ { 0x000B62, 0x000B63 },
+ { 0x000B82, 0x000B82 },
+ { 0x000BBE, 0x000BBF },
+ { 0x000BC0, 0x000BC0 },
+ { 0x000BC1, 0x000BC2 },
+ { 0x000BC6, 0x000BC8 },
+ { 0x000BCA, 0x000BCC },
+ { 0x000BCD, 0x000BCD },
+ { 0x000BD7, 0x000BD7 },
+ { 0x000C00, 0x000C00 },
+ { 0x000C01, 0x000C03 },
+ { 0x000C04, 0x000C04 },
+ { 0x000C3C, 0x000C3C },
+ { 0x000C3E, 0x000C40 },
+ { 0x000C41, 0x000C44 },
+ { 0x000C46, 0x000C48 },
+ { 0x000C4A, 0x000C4D },
+ { 0x000C55, 0x000C56 },
+ { 0x000C62, 0x000C63 },
+ { 0x000C81, 0x000C81 },
+ { 0x000C82, 0x000C83 },
+ { 0x000CBC, 0x000CBC },
+ { 0x000CBE, 0x000CBE },
+ { 0x000CBF, 0x000CBF },
+ { 0x000CC0, 0x000CC4 },
+ { 0x000CC6, 0x000CC6 },
+ { 0x000CC7, 0x000CC8 },
+ { 0x000CCA, 0x000CCB },
+ { 0x000CCC, 0x000CCD },
+ { 0x000CD5, 0x000CD6 },
+ { 0x000CE2, 0x000CE3 },
+ { 0x000CF3, 0x000CF3 },
+ { 0x000D00, 0x000D01 },
+ { 0x000D02, 0x000D03 },
+ { 0x000D3B, 0x000D3C },
+ { 0x000D3E, 0x000D40 },
+ { 0x000D41, 0x000D44 },
+ { 0x000D46, 0x000D48 },
+ { 0x000D4A, 0x000D4C },
+ { 0x000D4D, 0x000D4D },
+ { 0x000D57, 0x000D57 },
+ { 0x000D62, 0x000D63 },
+ { 0x000D81, 0x000D81 },
+ { 0x000D82, 0x000D83 },
+ { 0x000DCA, 0x000DCA },
+ { 0x000DCF, 0x000DD1 },
+ { 0x000DD2, 0x000DD4 },
+ { 0x000DD6, 0x000DD6 },
+ { 0x000DD8, 0x000DDF },
+ { 0x000DF2, 0x000DF3 },
+ { 0x000E31, 0x000E31 },
+ { 0x000E34, 0x000E3A },
+ { 0x000E47, 0x000E4E },
+ { 0x000EB1, 0x000EB1 },
+ { 0x000EB4, 0x000EBC },
+ { 0x000EC8, 0x000ECE },
+ { 0x000F18, 0x000F19 },
+ { 0x000F35, 0x000F35 },
+ { 0x000F37, 0x000F37 },
+ { 0x000F39, 0x000F39 },
+ { 0x000F3E, 0x000F3F },
+ { 0x000F71, 0x000F7E },
+ { 0x000F7F, 0x000F7F },
+ { 0x000F80, 0x000F84 },
+ { 0x000F86, 0x000F87 },
+ { 0x000F8D, 0x000F97 },
+ { 0x000F99, 0x000FBC },
+ { 0x000FC6, 0x000FC6 },
+ { 0x00102B, 0x00102C },
+ { 0x00102D, 0x001030 },
+ { 0x001031, 0x001031 },
+ { 0x001032, 0x001037 },
+ { 0x001038, 0x001038 },
+ { 0x001039, 0x00103A },
+ { 0x00103B, 0x00103C },
+ { 0x00103D, 0x00103E },
+ { 0x001056, 0x001057 },
+ { 0x001058, 0x001059 },
+ { 0x00105E, 0x001060 },
+ { 0x001062, 0x001064 },
+ { 0x001067, 0x00106D },
+ { 0x001071, 0x001074 },
+ { 0x001082, 0x001082 },
+ { 0x001083, 0x001084 },
+ { 0x001085, 0x001086 },
+ { 0x001087, 0x00108C },
+ { 0x00108D, 0x00108D },
+ { 0x00108F, 0x00108F },
+ { 0x00109A, 0x00109C },
+ { 0x00109D, 0x00109D },
+ { 0x001160, 0x001200 },
+ { 0x00135D, 0x00135F },
+ { 0x001712, 0x001714 },
+ { 0x001715, 0x001715 },
+ { 0x001732, 0x001733 },
+ { 0x001734, 0x001734 },
+ { 0x001752, 0x001753 },
+ { 0x001772, 0x001773 },
+ { 0x0017B4, 0x0017B5 },
+ { 0x0017B6, 0x0017B6 },
+ { 0x0017B7, 0x0017BD },
+ { 0x0017BE, 0x0017C5 },
+ { 0x0017C6, 0x0017C6 },
+ { 0x0017C7, 0x0017C8 },
+ { 0x0017C9, 0x0017D3 },
+ { 0x0017DD, 0x0017DD },
+ { 0x00180B, 0x00180D },
+ { 0x00180E, 0x00180E },
+ { 0x00180F, 0x00180F },
+ { 0x001885, 0x001886 },
+ { 0x0018A9, 0x0018A9 },
+ { 0x001920, 0x001922 },
+ { 0x001923, 0x001926 },
+ { 0x001927, 0x001928 },
+ { 0x001929, 0x00192B },
+ { 0x001930, 0x001931 },
+ { 0x001932, 0x001932 },
+ { 0x001933, 0x001938 },
+ { 0x001939, 0x00193B },
+ { 0x001A17, 0x001A18 },
+ { 0x001A19, 0x001A1A },
+ { 0x001A1B, 0x001A1B },
+ { 0x001A55, 0x001A55 },
+ { 0x001A56, 0x001A56 },
+ { 0x001A57, 0x001A57 },
+ { 0x001A58, 0x001A5E },
+ { 0x001A60, 0x001A60 },
+ { 0x001A61, 0x001A61 },
+ { 0x001A62, 0x001A62 },
+ { 0x001A63, 0x001A64 },
+ { 0x001A65, 0x001A6C },
+ { 0x001A6D, 0x001A72 },
+ { 0x001A73, 0x001A7C },
+ { 0x001A7F, 0x001A7F },
+ { 0x001AB0, 0x001ABD },
+ { 0x001ABE, 0x001ABE },
+ { 0x001ABF, 0x001ADD },
+ { 0x001AE0, 0x001AEB },
+ { 0x001B00, 0x001B03 },
+ { 0x001B04, 0x001B04 },
+ { 0x001B34, 0x001B34 },
+ { 0x001B35, 0x001B35 },
+ { 0x001B36, 0x001B3A },
+ { 0x001B3B, 0x001B3B },
+ { 0x001B3C, 0x001B3C },
+ { 0x001B3D, 0x001B41 },
+ { 0x001B42, 0x001B42 },
+ { 0x001B43, 0x001B44 },
+ { 0x001B6B, 0x001B73 },
+ { 0x001B80, 0x001B81 },
+ { 0x001B82, 0x001B82 },
+ { 0x001BA1, 0x001BA1 },
+ { 0x001BA2, 0x001BA5 },
+ { 0x001BA6, 0x001BA7 },
+ { 0x001BA8, 0x001BA9 },
+ { 0x001BAA, 0x001BAA },
+ { 0x001BAB, 0x001BAD },
+ { 0x001BE6, 0x001BE6 },
+ { 0x001BE7, 0x001BE7 },
+ { 0x001BE8, 0x001BE9 },
+ { 0x001BEA, 0x001BEC },
+ { 0x001BED, 0x001BED },
+ { 0x001BEE, 0x001BEE },
+ { 0x001BEF, 0x001BF1 },
+ { 0x001BF2, 0x001BF3 },
+ { 0x001C24, 0x001C2B },
+ { 0x001C2C, 0x001C33 },
+ { 0x001C34, 0x001C35 },
+ { 0x001C36, 0x001C37 },
+ { 0x001CD0, 0x001CD2 },
+ { 0x001CD4, 0x001CE0 },
+ { 0x001CE1, 0x001CE1 },
+ { 0x001CE2, 0x001CE8 },
+ { 0x001CED, 0x001CED },
+ { 0x001CF4, 0x001CF4 },
+ { 0x001CF7, 0x001CF7 },
+ { 0x001CF8, 0x001CF9 },
+ { 0x001DC0, 0x001DFF },
+ { 0x00200B, 0x00200F },
+ { 0x002028, 0x002029 },
+ { 0x00202A, 0x00202E },
+ { 0x002060, 0x002064 },
+ { 0x002066, 0x00206F },
+ { 0x0020D0, 0x0020DC },
+ { 0x0020DD, 0x0020E0 },
+ { 0x0020E1, 0x0020E1 },
+ { 0x0020E2, 0x0020E4 },
+ { 0x0020E5, 0x0020F0 },
+ { 0x002CEF, 0x002CF1 },
+ { 0x002D7F, 0x002D7F },
+ { 0x002DE0, 0x002DFF },
+ { 0x00302A, 0x00302D },
+ { 0x00302E, 0x00302F },
+ { 0x003099, 0x00309A },
+ { 0x00A66F, 0x00A66F },
+ { 0x00A670, 0x00A672 },
+ { 0x00A674, 0x00A67D },
+ { 0x00A69E, 0x00A69F },
+ { 0x00A6F0, 0x00A6F1 },
+ { 0x00A802, 0x00A802 },
+ { 0x00A806, 0x00A806 },
+ { 0x00A80B, 0x00A80B },
+ { 0x00A823, 0x00A824 },
+ { 0x00A825, 0x00A826 },
+ { 0x00A827, 0x00A827 },
+ { 0x00A82C, 0x00A82C },
+ { 0x00A880, 0x00A881 },
+ { 0x00A8B4, 0x00A8C3 },
+ { 0x00A8C4, 0x00A8C5 },
+ { 0x00A8E0, 0x00A8F1 },
+ { 0x00A8FF, 0x00A8FF },
+ { 0x00A926, 0x00A92D },
+ { 0x00A947, 0x00A951 },
+ { 0x00A952, 0x00A953 },
+ { 0x00A980, 0x00A982 },
+ { 0x00A983, 0x00A983 },
+ { 0x00A9B3, 0x00A9B3 },
+ { 0x00A9B4, 0x00A9B5 },
+ { 0x00A9B6, 0x00A9B9 },
+ { 0x00A9BA, 0x00A9BB },
+ { 0x00A9BC, 0x00A9BD },
+ { 0x00A9BE, 0x00A9C0 },
+ { 0x00A9E5, 0x00A9E5 },
+ { 0x00AA29, 0x00AA2E },
+ { 0x00AA2F, 0x00AA30 },
+ { 0x00AA31, 0x00AA32 },
+ { 0x00AA33, 0x00AA34 },
+ { 0x00AA35, 0x00AA36 },
+ { 0x00AA43, 0x00AA43 },
+ { 0x00AA4C, 0x00AA4C },
+ { 0x00AA4D, 0x00AA4D },
+ { 0x00AA7B, 0x00AA7B },
+ { 0x00AA7C, 0x00AA7C },
+ { 0x00AA7D, 0x00AA7D },
+ { 0x00AAB0, 0x00AAB0 },
+ { 0x00AAB2, 0x00AAB4 },
+ { 0x00AAB7, 0x00AAB8 },
+ { 0x00AABE, 0x00AABF },
+ { 0x00AAC1, 0x00AAC1 },
+ { 0x00AAEB, 0x00AAEB },
+ { 0x00AAEC, 0x00AAED },
+ { 0x00AAEE, 0x00AAEF },
+ { 0x00AAF5, 0x00AAF5 },
+ { 0x00AAF6, 0x00AAF6 },
+ { 0x00ABE3, 0x00ABE4 },
+ { 0x00ABE5, 0x00ABE5 },
+ { 0x00ABE6, 0x00ABE7 },
+ { 0x00ABE8, 0x00ABE8 },
+ { 0x00ABE9, 0x00ABEA },
+ { 0x00ABEC, 0x00ABEC },
+ { 0x00ABED, 0x00ABED },
+ { 0x00D7B0, 0x00D800 },
+ { 0x00FB1E, 0x00FB1E },
+ { 0x00FE00, 0x00FE0F },
+ { 0x00FE20, 0x00FE2F },
+ { 0x00FEFF, 0x00FEFF },
+ { 0x00FFF9, 0x00FFFB },
+ { 0x0101FD, 0x0101FD },
+ { 0x0102E0, 0x0102E0 },
+ { 0x010376, 0x01037A },
+ { 0x010A01, 0x010A03 },
+ { 0x010A05, 0x010A06 },
+ { 0x010A0C, 0x010A0F },
+ { 0x010A38, 0x010A3A },
+ { 0x010A3F, 0x010A3F },
+ { 0x010AE5, 0x010AE6 },
+ { 0x010D24, 0x010D27 },
+ { 0x010D69, 0x010D6D },
+ { 0x010EAB, 0x010EAC },
+ { 0x010EFA, 0x010EFF },
+ { 0x010F46, 0x010F50 },
+ { 0x010F82, 0x010F85 },
+ { 0x011000, 0x011000 },
+ { 0x011001, 0x011001 },
+ { 0x011002, 0x011002 },
+ { 0x011038, 0x011046 },
+ { 0x011070, 0x011070 },
+ { 0x011073, 0x011074 },
+ { 0x01107F, 0x011081 },
+ { 0x011082, 0x011082 },
+ { 0x0110B0, 0x0110B2 },
+ { 0x0110B3, 0x0110B6 },
+ { 0x0110B7, 0x0110B8 },
+ { 0x0110B9, 0x0110BA },
+ { 0x0110BD, 0x0110BD },
+ { 0x0110C2, 0x0110C2 },
+ { 0x0110CD, 0x0110CD },
+ { 0x011100, 0x011102 },
+ { 0x011127, 0x01112B },
+ { 0x01112C, 0x01112C },
+ { 0x01112D, 0x011134 },
+ { 0x011145, 0x011146 },
+ { 0x011173, 0x011173 },
+ { 0x011180, 0x011181 },
+ { 0x011182, 0x011182 },
+ { 0x0111B3, 0x0111B5 },
+ { 0x0111B6, 0x0111BE },
+ { 0x0111BF, 0x0111C0 },
+ { 0x0111C9, 0x0111CC },
+ { 0x0111CE, 0x0111CE },
+ { 0x0111CF, 0x0111CF },
+ { 0x01122C, 0x01122E },
+ { 0x01122F, 0x011231 },
+ { 0x011232, 0x011233 },
+ { 0x011234, 0x011234 },
+ { 0x011235, 0x011235 },
+ { 0x011236, 0x011237 },
+ { 0x01123E, 0x01123E },
+ { 0x011241, 0x011241 },
+ { 0x0112DF, 0x0112DF },
+ { 0x0112E0, 0x0112E2 },
+ { 0x0112E3, 0x0112EA },
+ { 0x011300, 0x011301 },
+ { 0x011302, 0x011303 },
+ { 0x01133B, 0x01133C },
+ { 0x01133E, 0x01133F },
+ { 0x011340, 0x011340 },
+ { 0x011341, 0x011344 },
+ { 0x011347, 0x011348 },
+ { 0x01134B, 0x01134D },
+ { 0x011357, 0x011357 },
+ { 0x011362, 0x011363 },
+ { 0x011366, 0x01136C },
+ { 0x011370, 0x011374 },
+ { 0x0113B8, 0x0113BA },
+ { 0x0113BB, 0x0113C0 },
+ { 0x0113C2, 0x0113C2 },
+ { 0x0113C5, 0x0113C5 },
+ { 0x0113C7, 0x0113CA },
+ { 0x0113CC, 0x0113CD },
+ { 0x0113CE, 0x0113CE },
+ { 0x0113CF, 0x0113CF },
+ { 0x0113D0, 0x0113D0 },
+ { 0x0113D2, 0x0113D2 },
+ { 0x0113E1, 0x0113E2 },
+ { 0x011435, 0x011437 },
+ { 0x011438, 0x01143F },
+ { 0x011440, 0x011441 },
+ { 0x011442, 0x011444 },
+ { 0x011445, 0x011445 },
+ { 0x011446, 0x011446 },
+ { 0x01145E, 0x01145E },
+ { 0x0114B0, 0x0114B2 },
+ { 0x0114B3, 0x0114B8 },
+ { 0x0114B9, 0x0114B9 },
+ { 0x0114BA, 0x0114BA },
+ { 0x0114BB, 0x0114BE },
+ { 0x0114BF, 0x0114C0 },
+ { 0x0114C1, 0x0114C1 },
+ { 0x0114C2, 0x0114C3 },
+ { 0x0115AF, 0x0115B1 },
+ { 0x0115B2, 0x0115B5 },
+ { 0x0115B8, 0x0115BB },
+ { 0x0115BC, 0x0115BD },
+ { 0x0115BE, 0x0115BE },
+ { 0x0115BF, 0x0115C0 },
+ { 0x0115DC, 0x0115DD },
+ { 0x011630, 0x011632 },
+ { 0x011633, 0x01163A },
+ { 0x01163B, 0x01163C },
+ { 0x01163D, 0x01163D },
+ { 0x01163E, 0x01163E },
+ { 0x01163F, 0x011640 },
+ { 0x0116AB, 0x0116AB },
+ { 0x0116AC, 0x0116AC },
+ { 0x0116AD, 0x0116AD },
+ { 0x0116AE, 0x0116AF },
+ { 0x0116B0, 0x0116B5 },
+ { 0x0116B6, 0x0116B6 },
+ { 0x0116B7, 0x0116B7 },
+ { 0x01171D, 0x01171D },
+ { 0x01171E, 0x01171E },
+ { 0x01171F, 0x01171F },
+ { 0x011720, 0x011721 },
+ { 0x011722, 0x011725 },
+ { 0x011726, 0x011726 },
+ { 0x011727, 0x01172B },
+ { 0x01182C, 0x01182E },
+ { 0x01182F, 0x011837 },
+ { 0x011838, 0x011838 },
+ { 0x011839, 0x01183A },
+ { 0x011930, 0x011935 },
+ { 0x011937, 0x011938 },
+ { 0x01193B, 0x01193C },
+ { 0x01193D, 0x01193D },
+ { 0x01193E, 0x01193E },
+ { 0x011940, 0x011940 },
+ { 0x011942, 0x011942 },
+ { 0x011943, 0x011943 },
+ { 0x0119D1, 0x0119D3 },
+ { 0x0119D4, 0x0119D7 },
+ { 0x0119DA, 0x0119DB },
+ { 0x0119DC, 0x0119DF },
+ { 0x0119E0, 0x0119E0 },
+ { 0x0119E4, 0x0119E4 },
+ { 0x011A01, 0x011A0A },
+ { 0x011A33, 0x011A38 },
+ { 0x011A39, 0x011A39 },
+ { 0x011A3B, 0x011A3E },
+ { 0x011A47, 0x011A47 },
+ { 0x011A51, 0x011A56 },
+ { 0x011A57, 0x011A58 },
+ { 0x011A59, 0x011A5B },
+ { 0x011A8A, 0x011A96 },
+ { 0x011A97, 0x011A97 },
+ { 0x011A98, 0x011A99 },
+ { 0x011B60, 0x011B60 },
+ { 0x011B61, 0x011B61 },
+ { 0x011B62, 0x011B64 },
+ { 0x011B65, 0x011B65 },
+ { 0x011B66, 0x011B66 },
+ { 0x011B67, 0x011B67 },
+ { 0x011C2F, 0x011C2F },
+ { 0x011C30, 0x011C36 },
+ { 0x011C38, 0x011C3D },
+ { 0x011C3E, 0x011C3E },
+ { 0x011C3F, 0x011C3F },
+ { 0x011C92, 0x011CA7 },
+ { 0x011CA9, 0x011CA9 },
+ { 0x011CAA, 0x011CB0 },
+ { 0x011CB1, 0x011CB1 },
+ { 0x011CB2, 0x011CB3 },
+ { 0x011CB4, 0x011CB4 },
+ { 0x011CB5, 0x011CB6 },
+ { 0x011D31, 0x011D36 },
+ { 0x011D3A, 0x011D3A },
+ { 0x011D3C, 0x011D3D },
+ { 0x011D3F, 0x011D45 },
+ { 0x011D47, 0x011D47 },
+ { 0x011D8A, 0x011D8E },
+ { 0x011D90, 0x011D91 },
+ { 0x011D93, 0x011D94 },
+ { 0x011D95, 0x011D95 },
+ { 0x011D96, 0x011D96 },
+ { 0x011D97, 0x011D97 },
+ { 0x011EF3, 0x011EF4 },
+ { 0x011EF5, 0x011EF6 },
+ { 0x011F00, 0x011F01 },
+ { 0x011F03, 0x011F03 },
+ { 0x011F34, 0x011F35 },
+ { 0x011F36, 0x011F3A },
+ { 0x011F3E, 0x011F3F },
+ { 0x011F40, 0x011F40 },
+ { 0x011F41, 0x011F41 },
+ { 0x011F42, 0x011F42 },
+ { 0x011F5A, 0x011F5A },
+ { 0x013430, 0x01343F },
+ { 0x013440, 0x013440 },
+ { 0x013447, 0x013455 },
+ { 0x01611E, 0x016129 },
+ { 0x01612A, 0x01612C },
+ { 0x01612D, 0x01612F },
+ { 0x016AF0, 0x016AF4 },
+ { 0x016B30, 0x016B36 },
+ { 0x016F4F, 0x016F4F },
+ { 0x016F51, 0x016F87 },
+ { 0x016F8F, 0x016F92 },
+ { 0x016FE4, 0x016FE4 },
+ { 0x016FF0, 0x016FF1 },
+ { 0x01BC9D, 0x01BC9E },
+ { 0x01BCA0, 0x01BCA3 },
+ { 0x01CF00, 0x01CF2D },
+ { 0x01CF30, 0x01CF46 },
+ { 0x01D165, 0x01D166 },
+ { 0x01D167, 0x01D169 },
+ { 0x01D16D, 0x01D172 },
+ { 0x01D173, 0x01D17A },
+ { 0x01D17B, 0x01D182 },
+ { 0x01D185, 0x01D18B },
+ { 0x01D1AA, 0x01D1AD },
+ { 0x01D242, 0x01D244 },
+ { 0x01DA00, 0x01DA36 },
+ { 0x01DA3B, 0x01DA6C },
+ { 0x01DA75, 0x01DA75 },
+ { 0x01DA84, 0x01DA84 },
+ { 0x01DA9B, 0x01DA9F },
+ { 0x01DAA1, 0x01DAAF },
+ { 0x01E000, 0x01E006 },
+ { 0x01E008, 0x01E018 },
+ { 0x01E01B, 0x01E021 },
+ { 0x01E023, 0x01E024 },
+ { 0x01E026, 0x01E02A },
+ { 0x01E08F, 0x01E08F },
+ { 0x01E130, 0x01E136 },
+ { 0x01E2AE, 0x01E2AE },
+ { 0x01E2EC, 0x01E2EF },
+ { 0x01E4EC, 0x01E4EF },
+ { 0x01E5EE, 0x01E5EF },
+ { 0x01E6E3, 0x01E6E3 },
+ { 0x01E6E6, 0x01E6E6 },
+ { 0x01E6EE, 0x01E6EF },
+ { 0x01E6F5, 0x01E6F5 },
+ { 0x01E8D0, 0x01E8D6 },
+ { 0x01E944, 0x01E94A },
+ { 0x01F3FB, 0x01F3FF },
+ { 0x0E0001, 0x0E0001 },
+ { 0x0E0020, 0x0E007F },
+ { 0x0E0100, 0x0E01EF },
+ };
+ }
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/ZeroTable.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/ZeroTable.cs
new file mode 100755
index 0000000000..bff3a1110e
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Tables/ZeroTable.cs
@@ -0,0 +1,41 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+namespace Wcwidth
+{
+ internal static partial class ZeroTable
+ {
+ private static readonly Dictionary _lookup;
+ private static readonly object _lock;
+
+ static ZeroTable()
+ {
+ _lookup = new Dictionary();
+ _lock = new object();
+ }
+
+ public static int[,] GetTable(Unicode version)
+ {
+ if (!_lookup.TryGetValue(version, out var table))
+ {
+ lock (_lock)
+ {
+ if (_lookup.TryGetValue(version, out table))
+ {
+ return table;
+ }
+
+ // Generate the table for the version dynamically
+ // since we don't want to load everything into memory.
+ table = GenerateTable(version);
+ _lookup[version] = table;
+ }
+ }
+
+ return table;
+ }
+ }
+}
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Unicode.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Unicode.cs
new file mode 100755
index 0000000000..4ba1c5b401
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/Unicode.cs
@@ -0,0 +1,127 @@
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+using System.ComponentModel;
+using System.Diagnostics.CodeAnalysis;
+
+namespace Wcwidth;
+
+///
+/// Represents a Unicode version.
+///
+[SuppressMessage("Naming", "CA1707:Identifiers should not contain underscores")]
+#if WCWIDTH_VISIBILITY_INTERNAL
+ internal
+#else
+public
+#endif
+ enum Unicode
+{
+ ///
+ /// Unicode version 4.1.0.
+ ///
+ [Description("4.1.0")] Version_4_1_0 = 0,
+
+ ///
+ /// Unicode version 5.0.0.
+ ///
+ [Description("5.0.0")] Version_5_0_0 = 1,
+
+ ///
+ /// Unicode version 5.1.0.
+ ///
+ [Description("5.1.0")] Version_5_1_0 = 2,
+
+ ///
+ /// Unicode version 5.2.0.
+ ///
+ [Description("5.2.0")] Version_5_2_0 = 3,
+
+ ///
+ /// Unicode version 6.0.0.
+ ///
+ [Description("6.0.0")] Version_6_0_0 = 4,
+
+ ///
+ /// Unicode version 6.1.0.
+ ///
+ [Description("6.1.0")] Version_6_1_0 = 5,
+
+ ///
+ /// Unicode version 6.2.0.
+ ///
+ [Description("6.2.0")] Version_6_2_0 = 6,
+
+ ///
+ /// Unicode version 6.3.0.
+ ///
+ [Description("6.3.0")] Version_6_3_0 = 7,
+
+ ///
+ /// Unicode version 7.0.0.
+ ///
+ [Description("7.0.0")] Version_7_0_0 = 8,
+
+ ///
+ /// Unicode version 8.0.0.
+ ///
+ [Description("8.0.0")] Version_8_0_0 = 9,
+
+ ///
+ /// Unicode version 9.0.0.
+ ///
+ [Description("9.0.0")] Version_9_0_0 = 10,
+
+ ///
+ /// Unicode version 10.0.0.
+ ///
+ [Description("10.0.0")] Version_10_0_0 = 11,
+
+ ///
+ /// Unicode version 11.0.0.
+ ///
+ [Description("11.0.0")] Version_11_0_0 = 12,
+
+ ///
+ /// Unicode version 12.0.0.
+ ///
+ [Description("12.0.0")] Version_12_0_0 = 13,
+
+ ///
+ /// Unicode version 12.1.0.
+ ///
+ [Description("12.1.0")] Version_12_1_0 = 14,
+
+ ///
+ /// Unicode version 13.0.0.
+ ///
+ [Description("13.0.0")] Version_13_0_0 = 15,
+
+ ///
+ /// Unicode version 14.0.0.
+ ///
+ [Description("14.0.0")] Version_14_0_0 = 16,
+
+ ///
+ /// Unicode version 15.0.0.
+ ///
+ [Description("15.0.0")] Version_15_0_0 = 17,
+
+ ///
+ /// Unicode version 15.1.0.
+ ///
+ [Description("15.1.0")] Version_15_1_0 = 18,
+
+ ///
+ /// Unicode version 16.0.0.
+ ///
+ [Description("16.0.0")] Version_16_0_0 = 19,
+
+ ///
+ /// Unicode version 17.0.0.
+ ///
+ [Description("17.0.0")] Version_17_0_0 = 20,
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/UnicodeCalculator.cs b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/UnicodeCalculator.cs
new file mode 100755
index 0000000000..35e14dd763
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/contentFiles/cs/netstandard2.0/External/Wcwidth/UnicodeCalculator.cs
@@ -0,0 +1,209 @@
+// This is a port of the Python version of wcwidth() written by Jeff Quast,
+// which originally was written by Markus Kuhn.
+//
+// https://github.com/jquast/wcwidth
+// http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
+//
+// In fixed-width output devices, Latin characters all occupy a single "cell" position
+// of equal width, whereas ideographic CJK characters occupy two such cells. Interoperability
+// between terminal-line applications and (teletype-style) character terminals using the
+// UTF-8 encoding requires agreement on which character should advance the cursor by how
+// many cell positions. No established formal standards exist at present on which Unicode
+// character shall occupy how many cell positions on character terminals. These routines
+// are a first attempt of defining such behavior based on simple rules applied to data
+// provided by the Unicode Consortium.
+//
+// For some graphical characters, the Unicode standard explicitly defines a character-cell
+// width via the definition of the East Asian FullWidth (F), Wide (W), Half-width (H),
+// and Narrow (Na) classes. In all these cases, there is no ambiguity about which width
+// a terminal shall use. For characters in the East Asian Ambiguous (A) class, the width
+// choice depends purely on a preference of backward compatibility with either historic
+// CJK or Western practice. Choosing single-width for these characters is easy to justify
+// as the appropriate long-term solution, as the CJK practice of displaying these characters
+// as double-width comes from historic implementation simplicity (8-bit encoded characters
+// were displayed single-width and 16-bit ones double-width, even for Greek, Cyrillic, etc.)
+// and not any typographic considerations.
+//
+// Much less clear is the choice of width for the Not East Asian (Neutral) class.
+// Existing practice does not dictate a width for any of these characters. It would
+// nevertheless make sense typographically to allocate two character cells to characters
+// such as for instance EM SPACE or VOLUME INTEGRAL, which cannot be represented adequately
+// with a single-width glyph. The following routines at present merely assign a single-cell
+// width to all neutral characters, in the interest of simplicity. This is not entirely
+// satisfactory and should be reconsidered before establishing a formal standard in this area.
+// At the moment, the decision which Not East Asian (Neutral) characters should be represented
+// by double-width glyphs cannot yet be answered by applying a simple rule from the Unicode
+// database content. Setting up a proper standard for the behavior of UTF-8 character
+// terminals will require a careful analysis not only of each Unicode character, but also
+// of each presentation form, something the author of these routines has avoided to do so far.
+//
+// http://www.unicode.org/unicode/reports/tr11/
+
+#if WCWIDTH
+#pragma warning restore
+#else
+#pragma warning disable
+#endif
+
+#if NET6_0_OR_GREATER
+using System.Text;
+#endif
+
+namespace Wcwidth;
+
+///
+/// A utility for calculating the width of Unicode characters.
+///
+#if WCWIDTH_VISIBILITY_INTERNAL
+ internal
+#else
+public
+#endif
+ static class UnicodeCalculator
+{
+ private const Unicode Latest = Unicode.Version_16_0_0;
+
+ // NOTE: created by hand, there isn't anything identifiable other than
+ // general Cf category code to identify these, and some characters in Cf
+ // category code are of non-zero width.
+ // Also includes some Cc, Mn, Zl, and Zp characters
+ private static readonly HashSet _zeroWidthCf =
+ [
+ 0, // Null (Cc)
+ 0x034F, // Combining grapheme joiner (Mn)
+ 0x200B, // Zero width space
+ 0x200C, // Zero width non-joiner
+ 0x200D, // Zero width joiner
+ 0x200E, // Left-to-right mark
+ 0x200F, // Right-to-left mark
+ 0x2028, // Line separator (Zl)
+ 0x2029, // Paragraph separator (Zp)
+ 0x202A, // Left-to-right embedding
+ 0x202B, // Right-to-left embedding
+ 0x202C, // Pop directional formatting
+ 0x202D, // Left-to-right override
+ 0x202E, // Right-to-left override
+ 0x2060, // Word joiner
+ 0x2061, // Function application
+ 0x2062, // Invisible times
+ 0x2063 // Invisible separator
+ ];
+
+ ///
+ /// Gets the width of a Unicode code point.
+ ///
+ /// The Unicode code point to calculate the width of.
+ /// The Unicode version to use.
+ /// The width of the character (-1, 0, 1, 2).
+ public static int GetWidth(int value, Unicode? version = null)
+ {
+ version ??= Latest;
+
+ // NOTE: created by hand, there isn't anything identifiable other than
+ // general Cf category code to identify these, and some characters in Cf
+ // category code are of non-zero width.
+ if (_zeroWidthCf.Contains(value))
+ {
+ return 0;
+ }
+
+ // C0/C1 control characters
+ if (value < 32 || (value >= 0x07F && value < 0x0A0))
+ {
+ return -1;
+ }
+
+ // Zero width?
+ if (ZeroTable.GetTable(version.Value).Exist(value))
+ {
+ return 0;
+ }
+
+ // Wide character?
+ return 1 + WideTable.GetTable(version.Value).Find(value);
+ }
+
+#if NET6_0_OR_GREATER
+ ///
+ /// Gets the width of a Unicode scalar.
+ ///
+ /// The Unicode scalar to calculate the width of.
+ /// The Unicode version to use.
+ /// The width of the character (-1, 0, 1, 2).
+ public static int GetWidth(Rune value, Unicode? version = null)
+ {
+ return GetWidth(value.Value, version);
+ }
+#endif
+
+ ///
+ /// Gets the width of a UTF-16 code unit.
+ ///
+ /// The UTF-16 code unit to calculate the width of.
+ /// The Unicode version to use.
+ /// The width of the character (-1, 0, 1, 2).
+ public static int GetWidth(char value, Unicode? version = null)
+ {
+ return GetWidth((int)value, version);
+ }
+
+#if NET6_0_OR_GREATER
+ public static int GetWidth(string value, Unicode? version = null)
+ {
+ version ??= Latest;
+
+ var runes = value.EnumerateRunes().ToArray();
+ var end = runes.Length;
+
+ var width = 0;
+ var index = 0;
+ var lastMeasureRune = default(Rune?);
+ while (index < end)
+ {
+ var rune = runes[index];
+
+ if (rune.Value == '\u200D')
+ {
+ // Zero Width Joiner, do not measure this or next character
+ index += 2;
+ continue;
+ }
+
+ if (rune.Value == '\uFE0F' && lastMeasureRune != null)
+ {
+ // on variation selector 16 (VS16) following another character,
+ // conditionally add '1' to the measured width if that character is
+ // known to be converted from narrow to wide by the VS16 character.
+ if (version >= Unicode.Version_9_0_0)
+ {
+ width += Vs16Table.GetTable(Unicode.Version_9_0_0).Find(lastMeasureRune.Value.Value);
+ lastMeasureRune = null;
+ }
+
+ index++;
+ continue;
+ }
+
+ // Measure rune at current index
+ var wcw = GetWidth(rune, version);
+ if (wcw < 0)
+ {
+ // Early return -1 on C0 and C1 control characters
+ return wcw;
+ }
+
+ if (wcw > 0)
+ {
+ // Track last character measured to contain a cell, so that
+ // subsequent VS-16 modifiers may be understood.
+ lastMeasureRune = rune;
+ }
+
+ width += wcw;
+ index++;
+ }
+
+ return width;
+ }
+#endif
+}
\ No newline at end of file
diff --git a/src/textOnlyPackages/src/wcwidth.sources/4.0.1/wcwidth.sources.nuspec b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/wcwidth.sources.nuspec
new file mode 100644
index 0000000000..cb8dd2eb87
--- /dev/null
+++ b/src/textOnlyPackages/src/wcwidth.sources/4.0.1/wcwidth.sources.nuspec
@@ -0,0 +1,53 @@
+
+
+
+ Wcwidth.Sources
+ 4.0.1
+ Patrik Svensson and contributors
+ false
+ MIT
+ https://licenses.nuget.org/MIT
+ https://github.com/spectreconsole/wcwidth
+ A .NET library that calculates the width of Unicode characters.
+ https://github.com/spectreconsole/wcwidth/releases
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file