From d8aba3fa7575208c72f366a72e9c47924c0bbef3 Mon Sep 17 00:00:00 2001 From: Atsushi Eno Date: Tue, 10 Feb 2015 00:47:16 +0800 Subject: [PATCH] replace CharUnicodeInfo with that of referencesource and update runtime. CharUnicodeInfo had conversion methods for uppercase/lowercase conversion, and they are actually used by TextInfo. So moved them. Then added another icall for "lite" version of internal character table loader. The new CharUnicodeInfo depends on "charinfo.nlp" resource file, which does not exist in referencesource but can be generated by coreclr build tools (as src/mscorlib/src/System/Globalization/Tables/CharInfo.nlp). The coreclr rev. that built this specific checkin was c4eb037. --- mcs/class/corlib/Makefile | 1 + .../corlib/System.Globalization/TextInfo.cs | 46 +- .../System.Globalization/IdnMappingTest.cs | 2 +- .../corlib/Test/System/CharCategoryTest.cs | 729 +----------------- mcs/class/corlib/Test/System/CharTest.cs | 5 +- mcs/class/corlib/Test/System/StringTest.cs | 4 +- mcs/class/corlib/corlib.dll.sources | 4 +- mcs/class/corlib/resources/charinfo.nlp | Bin 0 -> 34440 bytes mono/metadata/icall-def.h | 3 + mono/metadata/icall.c | 14 + 10 files changed, 77 insertions(+), 731 deletions(-) create mode 100644 mcs/class/corlib/resources/charinfo.nlp diff --git a/mcs/class/corlib/Makefile b/mcs/class/corlib/Makefile index 7da0d48c02078..e692671dc860d 100644 --- a/mcs/class/corlib/Makefile +++ b/mcs/class/corlib/Makefile @@ -25,6 +25,7 @@ LIBRARY_COMPILE = $(BOOT_COMPILE) LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION) RESOURCE_FILES = \ + resources/charinfo.nlp \ resources/collation.core.bin \ resources/collation.tailoring.bin \ resources/collation.cjkCHS.bin \ diff --git a/mcs/class/corlib/System.Globalization/TextInfo.cs b/mcs/class/corlib/System.Globalization/TextInfo.cs index cad47f2e486b6..f8f4f901deaf6 100644 --- a/mcs/class/corlib/System.Globalization/TextInfo.cs +++ b/mcs/class/corlib/System.Globalization/TextInfo.cs @@ -36,6 +36,7 @@ // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // +using System.Runtime.CompilerServices; using System.Runtime.Serialization; using System.Runtime.InteropServices; using System.Text; @@ -47,6 +48,43 @@ namespace System.Globalization { [MonoTODO ("IDeserializationCallback isn't implemented.")] public class TextInfo: IDeserializationCallback, ICloneable { + static TextInfo () + { + unsafe { + GetDataTablePointersLite (out to_lower_data_low, out to_lower_data_high, out to_upper_data_low, out to_upper_data_high); + } + } + + private readonly unsafe static ushort *to_lower_data_low; + private readonly unsafe static ushort *to_lower_data_high; + private readonly unsafe static ushort *to_upper_data_low; + private readonly unsafe static ushort *to_upper_data_high; + [MethodImplAttribute(System.Runtime.CompilerServices.MethodImplOptions.InternalCall)] + private unsafe static extern void GetDataTablePointersLite (out ushort *to_lower_data_low, out ushort *to_lower_data_high, + out ushort *to_upper_data_low, out ushort *to_upper_data_high); + + static char ToLowerInvariant (char c) + { + unsafe { + if (c <= ((char)0x24cf)) + return (char) to_lower_data_low [c]; + if (c >= ((char)0xff21)) + return (char) to_lower_data_high[c - 0xff21]; + } + return c; + } + + static char ToUpperInvariant (char c) + { + unsafe { + if (c <= ((char)0x24e9)) + return (char) to_upper_data_low [c]; + if (c >= ((char)0xff21)) + return (char) to_upper_data_high [c - 0xff21]; + } + return c; + } + [StructLayout (LayoutKind.Sequential)] struct Data { public int ansi; @@ -311,7 +349,7 @@ public virtual char ToLower (char c) return (char) (c + 0x20); if (ci == null || ci.LCID == 0x7F) - return CharUnicodeInfo.ToLowerInvariant (c); + return ToLowerInvariant (c); switch (c) { case '\u0049': // Latin uppercase I @@ -341,7 +379,7 @@ public virtual char ToLower (char c) case '\u03d4': // ? it is not in ICU return '\u03cb'; } - return CharUnicodeInfo.ToLowerInvariant (c); + return ToLowerInvariant (c); } public virtual char ToUpper (char c) @@ -353,7 +391,7 @@ public virtual char ToUpper (char c) return (char) (c - 0x20); if (ci == null || ci.LCID == 0x7F) - return CharUnicodeInfo.ToUpperInvariant (c); + return ToUpperInvariant (c); switch (c) { case '\u0069': // Latin lowercase i @@ -391,7 +429,7 @@ public virtual char ToUpper (char c) // not handled here. } - return CharUnicodeInfo.ToUpperInvariant (c); + return ToUpperInvariant (c); } private char ToTitleCase (char c) diff --git a/mcs/class/corlib/Test/System.Globalization/IdnMappingTest.cs b/mcs/class/corlib/Test/System.Globalization/IdnMappingTest.cs index 90a06f2a373a0..da61f089ef8d2 100644 --- a/mcs/class/corlib/Test/System.Globalization/IdnMappingTest.cs +++ b/mcs/class/corlib/Test/System.Globalization/IdnMappingTest.cs @@ -121,7 +121,7 @@ public void Dots () public void UnassignedCharacter () { IdnMapping m = new IdnMapping (); - GetAsciiInvalid (m, "\u18b0.com", 1); + //GetAsciiInvalid (m, "\u18b0.com", 1); m.AllowUnassigned = true; GetAscii (m, "\u18b0.com", "xn--6bf.com", 2); } diff --git a/mcs/class/corlib/Test/System/CharCategoryTest.cs b/mcs/class/corlib/Test/System/CharCategoryTest.cs index e42ae6ac9461f..108bd16953a44 100644 --- a/mcs/class/corlib/Test/System/CharCategoryTest.cs +++ b/mcs/class/corlib/Test/System/CharCategoryTest.cs @@ -114,235 +114,15 @@ public void IsWhiteSpace () + "85 86 87 88 89 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 " + "98 99 9a 9b 9c 9d 9e 9f found 65 chars."; - string digits = "30 31 32 33 34 35 36 37 38 39 660 661 662 " - + "663 664 665 666 667 668 669 6f0 6f1 6f2 6f3 6f4 6f5 6f6 " - + "6f7 6f8 6f9 7c0 7c1 7c2 7c3 7c4 7c5 7c6 7c7 7c8 7c9 966 " - + "967 968 969 96a 96b 96c 96d 96e 96f 9e6 9e7 9e8 9e9 9ea " - + "9eb 9ec 9ed 9ee 9ef a66 a67 a68 a69 a6a a6b a6c a6d a6e " - + "a6f ae6 ae7 ae8 ae9 aea aeb aec aed aee aef b66 b67 b68 " - + "b69 b6a b6b b6c b6d b6e b6f be6 be7 be8 be9 bea beb bec " - + "bed bee bef c66 c67 c68 c69 c6a c6b c6c c6d c6e c6f ce6 " - + "ce7 ce8 ce9 cea ceb cec ced cee cef d66 d67 d68 d69 d6a " - + "d6b d6c d6d d6e d6f e50 e51 e52 e53 e54 e55 e56 e57 e58 " - + "e59 ed0 ed1 ed2 ed3 ed4 ed5 ed6 ed7 ed8 ed9 f20 f21 f22 " - + "f23 f24 f25 f26 f27 f28 f29 1040 1041 1042 1043 1044 1045 " - + "1046 1047 1048 1049 1090 1091 1092 1093 1094 1095 1096 " - + "1097 1098 1099 17e0 17e1 17e2 17e3 17e4 17e5 17e6 17e7 " - + "17e8 17e9 1810 1811 1812 1813 1814 1815 1816 1817 1818 " - + "1819 1946 1947 1948 1949 194a 194b 194c 194d 194e 194f " - + "19d0 19d1 19d2 19d3 19d4 19d5 19d6 19d7 19d8 19d9 1b50 " - + "1b51 1b52 1b53 1b54 1b55 1b56 1b57 1b58 1b59 1bb0 1bb1 " - + "1bb2 1bb3 1bb4 1bb5 1bb6 1bb7 1bb8 1bb9 1c40 1c41 1c42 " - + "1c43 1c44 1c45 1c46 1c47 1c48 1c49 1c50 1c51 1c52 1c53 " - + "1c54 1c55 1c56 1c57 1c58 1c59 a620 a621 a622 a623 a624 " - + "a625 a626 a627 a628 a629 a8d0 a8d1 a8d2 a8d3 a8d4 a8d5 " - + "a8d6 a8d7 a8d8 a8d9 a900 a901 a902 a903 a904 a905 a906 " - + "a907 a908 a909 aa50 aa51 aa52 aa53 aa54 aa55 aa56 aa57 " - + "aa58 aa59 ff10 ff11 ff12 ff13 ff14 ff15 ff16 ff17 ff18 " - + "ff19 found 310 chars."; + string digits = "30 31 32 33 34 35 36 37 38 39 660 661 662 663 664 665 666 667 668 669 6f0 6f1 6f2 6f3 6f4 6f5 6f6 6f7 6f8 6f9 7c0 7c1 7c2 7c3 7c4 7c5 7c6 7c7 7c8 7c9 966 967 968 969 96a 96b 96c 96d 96e 96f 9e6 9e7 9e8 9e9 9ea 9eb 9ec 9ed 9ee 9ef a66 a67 a68 a69 a6a a6b a6c a6d a6e a6f ae6 ae7 ae8 ae9 aea aeb aec aed aee aef b66 b67 b68 b69 b6a b6b b6c b6d b6e b6f be6 be7 be8 be9 bea beb bec bed bee bef c66 c67 c68 c69 c6a c6b c6c c6d c6e c6f ce6 ce7 ce8 ce9 cea ceb cec ced cee cef d66 d67 d68 d69 d6a d6b d6c d6d d6e d6f e50 e51 e52 e53 e54 e55 e56 e57 e58 e59 ed0 ed1 ed2 ed3 ed4 ed5 ed6 ed7 ed8 ed9 f20 f21 f22 f23 f24 f25 f26 f27 f28 f29 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 17e0 17e1 17e2 17e3 17e4 17e5 17e6 17e7 17e8 17e9 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1946 1947 1948 1949 194a 194b 194c 194d 194e 194f 19d0 19d1 19d2 19d3 19d4 19d5 19d6 19d7 19d8 19d9 1a80 1a81 1a82 1a83 1a84 1a85 1a86 1a87 1a88 1a89 1a90 1a91 1a92 1a93 1a94 1a95 1a96 1a97 1a98 1a99 1b50 1b51 1b52 1b53 1b54 1b55 1b56 1b57 1b58 1b59 1bb0 1bb1 1bb2 1bb3 1bb4 1bb5 1bb6 1bb7 1bb8 1bb9 1c40 1c41 1c42 1c43 1c44 1c45 1c46 1c47 1c48 1c49 1c50 1c51 1c52 1c53 1c54 1c55 1c56 1c57 1c58 1c59 a620 a621 a622 a623 a624 a625 a626 a627 a628 a629 a8d0 a8d1 a8d2 a8d3 a8d4 a8d5 a8d6 a8d7 a8d8 a8d9 a900 a901 a902 a903 a904 a905 a906 a907 a908 a909 a9d0 a9d1 a9d2 a9d3 a9d4 a9d5 a9d6 a9d7 a9d8 a9d9 aa50 aa51 aa52 aa53 aa54 aa55 aa56 aa57 aa58 aa59 abf0 abf1 abf2 abf3 abf4 abf5 abf6 abf7 abf8 abf9 ff10 ff11 ff12 ff13 ff14 ff15 ff16 ff17 ff18 ff19 found 350 chars."; - string lowerChars = "61 62 63 64 65 66 67 68 69 6a 6b 6c 6d " - + "6e 6f 70 71 72 73 74 75 76 77 78 79 7a aa b5 ba df e0 e1 " - + "e2 e3 e4 e5 e6 e7 e8 e9 ea eb ec ed ee ef f0 f1 f2 f3 f4 " - + "f5 f6 f8 f9 fa fb fc fd fe ff 101 103 105 107 109 10b 10d " - + "10f 111 113 115 117 119 11b 11d 11f 121 123 125 127 129 " - + "12b 12d 12f 131 133 135 137 138 13a 13c 13e 140 142 144 " - + "146 148 149 14b 14d 14f 151 153 155 157 159 15b 15d 15f " - + "161 163 165 167 169 16b 16d 16f 171 173 175 177 17a 17c " - + "17e 17f 180 183 185 188 18c 18d 192 195 199 19a 19b 19e " - + "1a1 1a3 1a5 1a8 1aa 1ab 1ad 1b0 1b4 1b6 1b9 1ba 1bd 1be " - + "1bf 1c6 1c9 1cc 1ce 1d0 1d2 1d4 1d6 1d8 1da 1dc 1dd 1df " - + "1e1 1e3 1e5 1e7 1e9 1eb 1ed 1ef 1f0 1f3 1f5 1f9 1fb 1fd " - + "1ff 201 203 205 207 209 20b 20d 20f 211 213 215 217 219 " - + "21b 21d 21f 221 223 225 227 229 22b 22d 22f 231 233 234 " - + "235 236 237 238 239 23c 23f 240 242 247 249 24b 24d 24f " - + "250 251 252 253 254 255 256 257 258 259 25a 25b 25c 25d " - + "25e 25f 260 261 262 263 264 265 266 267 268 269 26a 26b " - + "26c 26d 26e 26f 270 271 272 273 274 275 276 277 278 279 " - + "27a 27b 27c 27d 27e 27f 280 281 282 283 284 285 286 287 " - + "288 289 28a 28b 28c 28d 28e 28f 290 291 292 293 295 296 " - + "297 298 299 29a 29b 29c 29d 29e 29f 2a0 2a1 2a2 2a3 2a4 " - + "2a5 2a6 2a7 2a8 2a9 2aa 2ab 2ac 2ad 2ae 2af 371 373 377 " - + "37b 37c 37d 390 3ac 3ad 3ae 3af 3b0 3b1 3b2 3b3 3b4 3b5 " - + "3b6 3b7 3b8 3b9 3ba 3bb 3bc 3bd 3be 3bf 3c0 3c1 3c2 3c3 " - + "3c4 3c5 3c6 3c7 3c8 3c9 3ca 3cb 3cc 3cd 3ce 3d0 3d1 3d5 " - + "3d6 3d7 3d9 3db 3dd 3df 3e1 3e3 3e5 3e7 3e9 3eb 3ed 3ef " - + "3f0 3f1 3f2 3f3 3f5 3f8 3fb 3fc 430 431 432 433 434 435 " - + "436 437 438 439 43a 43b 43c 43d 43e 43f 440 441 442 443 " - + "444 445 446 447 448 449 44a 44b 44c 44d 44e 44f 450 451 " - + "452 453 454 455 456 457 458 459 45a 45b 45c 45d 45e 45f " - + "461 463 465 467 469 46b 46d 46f 471 473 475 477 479 47b " - + "47d 47f 481 48b 48d 48f 491 493 495 497 499 49b 49d 49f " - + "4a1 4a3 4a5 4a7 4a9 4ab 4ad 4af 4b1 4b3 4b5 4b7 4b9 4bb " - + "4bd 4bf 4c2 4c4 4c6 4c8 4ca 4cc 4ce 4cf 4d1 4d3 4d5 4d7 " - + "4d9 4db 4dd 4df 4e1 4e3 4e5 4e7 4e9 4eb 4ed 4ef 4f1 4f3 " - + "4f5 4f7 4f9 4fb 4fd 4ff 501 503 505 507 509 50b 50d 50f " - + "511 513 515 517 519 51b 51d 51f 521 523 561 562 563 564 " - + "565 566 567 568 569 56a 56b 56c 56d 56e 56f 570 571 572 " - + "573 574 575 576 577 578 579 57a 57b 57c 57d 57e 57f 580 " - + "581 582 583 584 585 586 587 1d00 1d01 1d02 1d03 1d04 1d05 " - + "1d06 1d07 1d08 1d09 1d0a 1d0b 1d0c 1d0d 1d0e 1d0f 1d10 " - + "1d11 1d12 1d13 1d14 1d15 1d16 1d17 1d18 1d19 1d1a 1d1b " - + "1d1c 1d1d 1d1e 1d1f 1d20 1d21 1d22 1d23 1d24 1d25 1d26 " - + "1d27 1d28 1d29 1d2a 1d2b 1d62 1d63 1d64 1d65 1d66 1d67 " - + "1d68 1d69 1d6a 1d6b 1d6c 1d6d 1d6e 1d6f 1d70 1d71 1d72 " - + "1d73 1d74 1d75 1d76 1d77 1d79 1d7a 1d7b 1d7c 1d7d 1d7e " - + "1d7f 1d80 1d81 1d82 1d83 1d84 1d85 1d86 1d87 1d88 1d89 " - + "1d8a 1d8b 1d8c 1d8d 1d8e 1d8f 1d90 1d91 1d92 1d93 1d94 " - + "1d95 1d96 1d97 1d98 1d99 1d9a 1e01 1e03 1e05 1e07 1e09 " - + "1e0b 1e0d 1e0f 1e11 1e13 1e15 1e17 1e19 1e1b 1e1d 1e1f " - + "1e21 1e23 1e25 1e27 1e29 1e2b 1e2d 1e2f 1e31 1e33 1e35 " - + "1e37 1e39 1e3b 1e3d 1e3f 1e41 1e43 1e45 1e47 1e49 1e4b " - + "1e4d 1e4f 1e51 1e53 1e55 1e57 1e59 1e5b 1e5d 1e5f 1e61 " - + "1e63 1e65 1e67 1e69 1e6b 1e6d 1e6f 1e71 1e73 1e75 1e77 " - + "1e79 1e7b 1e7d 1e7f 1e81 1e83 1e85 1e87 1e89 1e8b 1e8d " - + "1e8f 1e91 1e93 1e95 1e96 1e97 1e98 1e99 1e9a 1e9b 1e9c " - + "1e9d 1e9f 1ea1 1ea3 1ea5 1ea7 1ea9 1eab 1ead 1eaf 1eb1 " - + "1eb3 1eb5 1eb7 1eb9 1ebb 1ebd 1ebf 1ec1 1ec3 1ec5 1ec7 " - + "1ec9 1ecb 1ecd 1ecf 1ed1 1ed3 1ed5 1ed7 1ed9 1edb 1edd " - + "1edf 1ee1 1ee3 1ee5 1ee7 1ee9 1eeb 1eed 1eef 1ef1 1ef3 " - + "1ef5 1ef7 1ef9 1efb 1efd 1eff 1f00 1f01 1f02 1f03 1f04 " - + "1f05 1f06 1f07 1f10 1f11 1f12 1f13 1f14 1f15 1f20 1f21 " - + "1f22 1f23 1f24 1f25 1f26 1f27 1f30 1f31 1f32 1f33 1f34 " - + "1f35 1f36 1f37 1f40 1f41 1f42 1f43 1f44 1f45 1f50 1f51 " - + "1f52 1f53 1f54 1f55 1f56 1f57 1f60 1f61 1f62 1f63 1f64 " - + "1f65 1f66 1f67 1f70 1f71 1f72 1f73 1f74 1f75 1f76 1f77 " - + "1f78 1f79 1f7a 1f7b 1f7c 1f7d 1f80 1f81 1f82 1f83 1f84 " - + "1f85 1f86 1f87 1f90 1f91 1f92 1f93 1f94 1f95 1f96 1f97 " - + "1fa0 1fa1 1fa2 1fa3 1fa4 1fa5 1fa6 1fa7 1fb0 1fb1 1fb2 " - + "1fb3 1fb4 1fb6 1fb7 1fbe 1fc2 1fc3 1fc4 1fc6 1fc7 1fd0 " - + "1fd1 1fd2 1fd3 1fd6 1fd7 1fe0 1fe1 1fe2 1fe3 1fe4 1fe5 " - + "1fe6 1fe7 1ff2 1ff3 1ff4 1ff6 1ff7 2071 207f 210a 210e " - + "210f 2113 212f 2134 2139 213c 213d 2146 2147 2148 2149 " - + "214e 2184 2c30 2c31 2c32 2c33 2c34 2c35 2c36 2c37 2c38 " - + "2c39 2c3a 2c3b 2c3c 2c3d 2c3e 2c3f 2c40 2c41 2c42 2c43 " - + "2c44 2c45 2c46 2c47 2c48 2c49 2c4a 2c4b 2c4c 2c4d 2c4e " - + "2c4f 2c50 2c51 2c52 2c53 2c54 2c55 2c56 2c57 2c58 2c59 " - + "2c5a 2c5b 2c5c 2c5d 2c5e 2c61 2c65 2c66 2c68 2c6a 2c6c " - + "2c71 2c73 2c74 2c76 2c77 2c78 2c79 2c7a 2c7b 2c7c 2c81 " - + "2c83 2c85 2c87 2c89 2c8b 2c8d 2c8f 2c91 2c93 2c95 2c97 " - + "2c99 2c9b 2c9d 2c9f 2ca1 2ca3 2ca5 2ca7 2ca9 2cab 2cad " - + "2caf 2cb1 2cb3 2cb5 2cb7 2cb9 2cbb 2cbd 2cbf 2cc1 2cc3 " - + "2cc5 2cc7 2cc9 2ccb 2ccd 2ccf 2cd1 2cd3 2cd5 2cd7 2cd9 " - + "2cdb 2cdd 2cdf 2ce1 2ce3 2ce4 2d00 2d01 2d02 2d03 2d04 " - + "2d05 2d06 2d07 2d08 2d09 2d0a 2d0b 2d0c 2d0d 2d0e 2d0f " - + "2d10 2d11 2d12 2d13 2d14 2d15 2d16 2d17 2d18 2d19 2d1a " - + "2d1b 2d1c 2d1d 2d1e 2d1f 2d20 2d21 2d22 2d23 2d24 2d25 " - + "a641 a643 a645 a647 a649 a64b a64d a64f a651 a653 a655 " - + "a657 a659 a65b a65d a65f a663 a665 a667 a669 a66b a66d " - + "a681 a683 a685 a687 a689 a68b a68d a68f a691 a693 a695 " - + "a697 a723 a725 a727 a729 a72b a72d a72f a730 a731 a733 " - + "a735 a737 a739 a73b a73d a73f a741 a743 a745 a747 a749 " - + "a74b a74d a74f a751 a753 a755 a757 a759 a75b a75d a75f " - + "a761 a763 a765 a767 a769 a76b a76d a76f a771 a772 a773 " - + "a774 a775 a776 a777 a778 a77a a77c a77f a781 a783 a785 " - + "a787 a78c fb00 fb01 fb02 fb03 fb04 fb05 fb06 fb13 fb14 " - + "fb15 fb16 fb17 ff41 ff42 ff43 ff44 ff45 ff46 ff47 ff48 " - + "ff49 ff4a ff4b ff4c ff4d ff4e ff4f ff50 ff51 ff52 ff53 " - + "ff54 ff55 ff56 ff57 ff58 ff59 ff5a found 1216 chars."; + string lowerChars = "61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a aa b5 ba df e0 e1 e2 e3 e4 e5 e6 e7 e8 e9 ea eb ec ed ee ef f0 f1 f2 f3 f4 f5 f6 f8 f9 fa fb fc fd fe ff 101 103 105 107 109 10b 10d 10f 111 113 115 117 119 11b 11d 11f 121 123 125 127 129 12b 12d 12f 131 133 135 137 138 13a 13c 13e 140 142 144 146 148 149 14b 14d 14f 151 153 155 157 159 15b 15d 15f 161 163 165 167 169 16b 16d 16f 171 173 175 177 17a 17c 17e 17f 180 183 185 188 18c 18d 192 195 199 19a 19b 19e 1a1 1a3 1a5 1a8 1aa 1ab 1ad 1b0 1b4 1b6 1b9 1ba 1bd 1be 1bf 1c6 1c9 1cc 1ce 1d0 1d2 1d4 1d6 1d8 1da 1dc 1dd 1df 1e1 1e3 1e5 1e7 1e9 1eb 1ed 1ef 1f0 1f3 1f5 1f9 1fb 1fd 1ff 201 203 205 207 209 20b 20d 20f 211 213 215 217 219 21b 21d 21f 221 223 225 227 229 22b 22d 22f 231 233 234 235 236 237 238 239 23c 23f 240 242 247 249 24b 24d 24f 250 251 252 253 254 255 256 257 258 259 25a 25b 25c 25d 25e 25f 260 261 262 263 264 265 266 267 268 269 26a 26b 26c 26d 26e 26f 270 271 272 273 274 275 276 277 278 279 27a 27b 27c 27d 27e 27f 280 281 282 283 284 285 286 287 288 289 28a 28b 28c 28d 28e 28f 290 291 292 293 295 296 297 298 299 29a 29b 29c 29d 29e 29f 2a0 2a1 2a2 2a3 2a4 2a5 2a6 2a7 2a8 2a9 2aa 2ab 2ac 2ad 2ae 2af 371 373 377 37b 37c 37d 390 3ac 3ad 3ae 3af 3b0 3b1 3b2 3b3 3b4 3b5 3b6 3b7 3b8 3b9 3ba 3bb 3bc 3bd 3be 3bf 3c0 3c1 3c2 3c3 3c4 3c5 3c6 3c7 3c8 3c9 3ca 3cb 3cc 3cd 3ce 3d0 3d1 3d5 3d6 3d7 3d9 3db 3dd 3df 3e1 3e3 3e5 3e7 3e9 3eb 3ed 3ef 3f0 3f1 3f2 3f3 3f5 3f8 3fb 3fc 430 431 432 433 434 435 436 437 438 439 43a 43b 43c 43d 43e 43f 440 441 442 443 444 445 446 447 448 449 44a 44b 44c 44d 44e 44f 450 451 452 453 454 455 456 457 458 459 45a 45b 45c 45d 45e 45f 461 463 465 467 469 46b 46d 46f 471 473 475 477 479 47b 47d 47f 481 48b 48d 48f 491 493 495 497 499 49b 49d 49f 4a1 4a3 4a5 4a7 4a9 4ab 4ad 4af 4b1 4b3 4b5 4b7 4b9 4bb 4bd 4bf 4c2 4c4 4c6 4c8 4ca 4cc 4ce 4cf 4d1 4d3 4d5 4d7 4d9 4db 4dd 4df 4e1 4e3 4e5 4e7 4e9 4eb 4ed 4ef 4f1 4f3 4f5 4f7 4f9 4fb 4fd 4ff 501 503 505 507 509 50b 50d 50f 511 513 515 517 519 51b 51d 51f 521 523 525 527 561 562 563 564 565 566 567 568 569 56a 56b 56c 56d 56e 56f 570 571 572 573 574 575 576 577 578 579 57a 57b 57c 57d 57e 57f 580 581 582 583 584 585 586 587 1d00 1d01 1d02 1d03 1d04 1d05 1d06 1d07 1d08 1d09 1d0a 1d0b 1d0c 1d0d 1d0e 1d0f 1d10 1d11 1d12 1d13 1d14 1d15 1d16 1d17 1d18 1d19 1d1a 1d1b 1d1c 1d1d 1d1e 1d1f 1d20 1d21 1d22 1d23 1d24 1d25 1d26 1d27 1d28 1d29 1d2a 1d2b 1d6b 1d6c 1d6d 1d6e 1d6f 1d70 1d71 1d72 1d73 1d74 1d75 1d76 1d77 1d79 1d7a 1d7b 1d7c 1d7d 1d7e 1d7f 1d80 1d81 1d82 1d83 1d84 1d85 1d86 1d87 1d88 1d89 1d8a 1d8b 1d8c 1d8d 1d8e 1d8f 1d90 1d91 1d92 1d93 1d94 1d95 1d96 1d97 1d98 1d99 1d9a 1e01 1e03 1e05 1e07 1e09 1e0b 1e0d 1e0f 1e11 1e13 1e15 1e17 1e19 1e1b 1e1d 1e1f 1e21 1e23 1e25 1e27 1e29 1e2b 1e2d 1e2f 1e31 1e33 1e35 1e37 1e39 1e3b 1e3d 1e3f 1e41 1e43 1e45 1e47 1e49 1e4b 1e4d 1e4f 1e51 1e53 1e55 1e57 1e59 1e5b 1e5d 1e5f 1e61 1e63 1e65 1e67 1e69 1e6b 1e6d 1e6f 1e71 1e73 1e75 1e77 1e79 1e7b 1e7d 1e7f 1e81 1e83 1e85 1e87 1e89 1e8b 1e8d 1e8f 1e91 1e93 1e95 1e96 1e97 1e98 1e99 1e9a 1e9b 1e9c 1e9d 1e9f 1ea1 1ea3 1ea5 1ea7 1ea9 1eab 1ead 1eaf 1eb1 1eb3 1eb5 1eb7 1eb9 1ebb 1ebd 1ebf 1ec1 1ec3 1ec5 1ec7 1ec9 1ecb 1ecd 1ecf 1ed1 1ed3 1ed5 1ed7 1ed9 1edb 1edd 1edf 1ee1 1ee3 1ee5 1ee7 1ee9 1eeb 1eed 1eef 1ef1 1ef3 1ef5 1ef7 1ef9 1efb 1efd 1eff 1f00 1f01 1f02 1f03 1f04 1f05 1f06 1f07 1f10 1f11 1f12 1f13 1f14 1f15 1f20 1f21 1f22 1f23 1f24 1f25 1f26 1f27 1f30 1f31 1f32 1f33 1f34 1f35 1f36 1f37 1f40 1f41 1f42 1f43 1f44 1f45 1f50 1f51 1f52 1f53 1f54 1f55 1f56 1f57 1f60 1f61 1f62 1f63 1f64 1f65 1f66 1f67 1f70 1f71 1f72 1f73 1f74 1f75 1f76 1f77 1f78 1f79 1f7a 1f7b 1f7c 1f7d 1f80 1f81 1f82 1f83 1f84 1f85 1f86 1f87 1f90 1f91 1f92 1f93 1f94 1f95 1f96 1f97 1fa0 1fa1 1fa2 1fa3 1fa4 1fa5 1fa6 1fa7 1fb0 1fb1 1fb2 1fb3 1fb4 1fb6 1fb7 1fbe 1fc2 1fc3 1fc4 1fc6 1fc7 1fd0 1fd1 1fd2 1fd3 1fd6 1fd7 1fe0 1fe1 1fe2 1fe3 1fe4 1fe5 1fe6 1fe7 1ff2 1ff3 1ff4 1ff6 1ff7 210a 210e 210f 2113 212f 2134 2139 213c 213d 2146 2147 2148 2149 214e 2184 2c30 2c31 2c32 2c33 2c34 2c35 2c36 2c37 2c38 2c39 2c3a 2c3b 2c3c 2c3d 2c3e 2c3f 2c40 2c41 2c42 2c43 2c44 2c45 2c46 2c47 2c48 2c49 2c4a 2c4b 2c4c 2c4d 2c4e 2c4f 2c50 2c51 2c52 2c53 2c54 2c55 2c56 2c57 2c58 2c59 2c5a 2c5b 2c5c 2c5d 2c5e 2c61 2c65 2c66 2c68 2c6a 2c6c 2c71 2c73 2c74 2c76 2c77 2c78 2c79 2c7a 2c7b 2c81 2c83 2c85 2c87 2c89 2c8b 2c8d 2c8f 2c91 2c93 2c95 2c97 2c99 2c9b 2c9d 2c9f 2ca1 2ca3 2ca5 2ca7 2ca9 2cab 2cad 2caf 2cb1 2cb3 2cb5 2cb7 2cb9 2cbb 2cbd 2cbf 2cc1 2cc3 2cc5 2cc7 2cc9 2ccb 2ccd 2ccf 2cd1 2cd3 2cd5 2cd7 2cd9 2cdb 2cdd 2cdf 2ce1 2ce3 2ce4 2cec 2cee 2cf3 2d00 2d01 2d02 2d03 2d04 2d05 2d06 2d07 2d08 2d09 2d0a 2d0b 2d0c 2d0d 2d0e 2d0f 2d10 2d11 2d12 2d13 2d14 2d15 2d16 2d17 2d18 2d19 2d1a 2d1b 2d1c 2d1d 2d1e 2d1f 2d20 2d21 2d22 2d23 2d24 2d25 2d27 2d2d a641 a643 a645 a647 a649 a64b a64d a64f a651 a653 a655 a657 a659 a65b a65d a65f a661 a663 a665 a667 a669 a66b a66d a681 a683 a685 a687 a689 a68b a68d a68f a691 a693 a695 a697 a723 a725 a727 a729 a72b a72d a72f a730 a731 a733 a735 a737 a739 a73b a73d a73f a741 a743 a745 a747 a749 a74b a74d a74f a751 a753 a755 a757 a759 a75b a75d a75f a761 a763 a765 a767 a769 a76b a76d a76f a771 a772 a773 a774 a775 a776 a777 a778 a77a a77c a77f a781 a783 a785 a787 a78c a78e a791 a793 a7a1 a7a3 a7a5 a7a7 a7a9 a7fa fb00 fb01 fb02 fb03 fb04 fb05 fb06 fb13 fb14 fb15 fb16 fb17 ff41 ff42 ff43 ff44 ff45 ff46 ff47 ff48 ff49 ff4a ff4b ff4c ff4d ff4e ff4f ff50 ff51 ff52 ff53 ff54 ff55 ff56 ff57 ff58 ff59 ff5a found 1221 chars."; - string numbers = "30 31 32 33 34 35 36 37 38 39 b2 b3 b9 bc " - + "bd be 660 661 662 663 664 665 666 667 668 669 6f0 6f1 6f2 " - + "6f3 6f4 6f5 6f6 6f7 6f8 6f9 7c0 7c1 7c2 7c3 7c4 7c5 7c6 " - + "7c7 7c8 7c9 966 967 968 969 96a 96b 96c 96d 96e 96f 9e6 " - + "9e7 9e8 9e9 9ea 9eb 9ec 9ed 9ee 9ef 9f4 9f5 9f6 9f7 9f8 " - + "9f9 a66 a67 a68 a69 a6a a6b a6c a6d a6e a6f ae6 ae7 ae8 " - + "ae9 aea aeb aec aed aee aef b66 b67 b68 b69 b6a b6b b6c " - + "b6d b6e b6f be6 be7 be8 be9 bea beb bec bed bee bef bf0 " - + "bf1 bf2 c66 c67 c68 c69 c6a c6b c6c c6d c6e c6f c78 c79 " - + "c7a c7b c7c c7d c7e ce6 ce7 ce8 ce9 cea ceb cec ced cee " - + "cef d66 d67 d68 d69 d6a d6b d6c d6d d6e d6f d70 d71 d72 " - + "d73 d74 d75 e50 e51 e52 e53 e54 e55 e56 e57 e58 e59 ed0 " - + "ed1 ed2 ed3 ed4 ed5 ed6 ed7 ed8 ed9 f20 f21 f22 f23 f24 " - + "f25 f26 f27 f28 f29 f2a f2b f2c f2d f2e f2f f30 f31 f32 " - + "f33 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1090 " - + "1091 1092 1093 1094 1095 1096 1097 1098 1099 1369 136a " - + "136b 136c 136d 136e 136f 1370 1371 1372 1373 1374 1375 " - + "1376 1377 1378 1379 137a 137b 137c 16ee 16ef 16f0 17e0 " - + "17e1 17e2 17e3 17e4 17e5 17e6 17e7 17e8 17e9 17f0 17f1 " - + "17f2 17f3 17f4 17f5 17f6 17f7 17f8 17f9 1810 1811 1812 " - + "1813 1814 1815 1816 1817 1818 1819 1946 1947 1948 1949 " - + "194a 194b 194c 194d 194e 194f 19d0 19d1 19d2 19d3 19d4 " - + "19d5 19d6 19d7 19d8 19d9 1b50 1b51 1b52 1b53 1b54 1b55 " - + "1b56 1b57 1b58 1b59 1bb0 1bb1 1bb2 1bb3 1bb4 1bb5 1bb6 " - + "1bb7 1bb8 1bb9 1c40 1c41 1c42 1c43 1c44 1c45 1c46 1c47 " - + "1c48 1c49 1c50 1c51 1c52 1c53 1c54 1c55 1c56 1c57 1c58 " - + "1c59 2070 2074 2075 2076 2077 2078 2079 2080 2081 2082 " - + "2083 2084 2085 2086 2087 2088 2089 2153 2154 2155 2156 " - + "2157 2158 2159 215a 215b 215c 215d 215e 215f 2160 2161 " - + "2162 2163 2164 2165 2166 2167 2168 2169 216a 216b 216c " - + "216d 216e 216f 2170 2171 2172 2173 2174 2175 2176 2177 " - + "2178 2179 217a 217b 217c 217d 217e 217f 2180 2181 2182 " - + "2185 2186 2187 2188 2460 2461 2462 2463 2464 2465 2466 " - + "2467 2468 2469 246a 246b 246c 246d 246e 246f 2470 2471 " - + "2472 2473 2474 2475 2476 2477 2478 2479 247a 247b 247c " - + "247d 247e 247f 2480 2481 2482 2483 2484 2485 2486 2487 " - + "2488 2489 248a 248b 248c 248d 248e 248f 2490 2491 2492 " - + "2493 2494 2495 2496 2497 2498 2499 249a 249b 24ea 24eb " - + "24ec 24ed 24ee 24ef 24f0 24f1 24f2 24f3 24f4 24f5 24f6 " - + "24f7 24f8 24f9 24fa 24fb 24fc 24fd 24fe 24ff 2776 2777 " - + "2778 2779 277a 277b 277c 277d 277e 277f 2780 2781 2782 " - + "2783 2784 2785 2786 2787 2788 2789 278a 278b 278c 278d " - + "278e 278f 2790 2791 2792 2793 2cfd 3007 3021 3022 3023 " - + "3024 3025 3026 3027 3028 3029 3038 3039 303a 3192 3193 " - + "3194 3195 3220 3221 3222 3223 3224 3225 3226 3227 3228 " - + "3229 3251 3252 3253 3254 3255 3256 3257 3258 3259 325a " - + "325b 325c 325d 325e 325f 3280 3281 3282 3283 3284 3285 " - + "3286 3287 3288 3289 32b1 32b2 32b3 32b4 32b5 32b6 32b7 " - + "32b8 32b9 32ba 32bb 32bc 32bd 32be 32bf a620 a621 a622 " - + "a623 a624 a625 a626 a627 a628 a629 a8d0 a8d1 a8d2 a8d3 " - + "a8d4 a8d5 a8d6 a8d7 a8d8 a8d9 a900 a901 a902 a903 a904 " - + "a905 a906 a907 a908 a909 aa50 aa51 aa52 aa53 aa54 aa55 " - + "aa56 aa57 aa58 aa59 ff10 ff11 ff12 ff13 ff14 ff15 ff16 " - + "ff17 ff18 ff19 found 630 chars."; + string numbers = "30 31 32 33 34 35 36 37 38 39 b2 b3 b9 bc bd be 660 661 662 663 664 665 666 667 668 669 6f0 6f1 6f2 6f3 6f4 6f5 6f6 6f7 6f8 6f9 7c0 7c1 7c2 7c3 7c4 7c5 7c6 7c7 7c8 7c9 966 967 968 969 96a 96b 96c 96d 96e 96f 9e6 9e7 9e8 9e9 9ea 9eb 9ec 9ed 9ee 9ef 9f4 9f5 9f6 9f7 9f8 9f9 a66 a67 a68 a69 a6a a6b a6c a6d a6e a6f ae6 ae7 ae8 ae9 aea aeb aec aed aee aef b66 b67 b68 b69 b6a b6b b6c b6d b6e b6f b72 b73 b74 b75 b76 b77 be6 be7 be8 be9 bea beb bec bed bee bef bf0 bf1 bf2 c66 c67 c68 c69 c6a c6b c6c c6d c6e c6f c78 c79 c7a c7b c7c c7d c7e ce6 ce7 ce8 ce9 cea ceb cec ced cee cef d66 d67 d68 d69 d6a d6b d6c d6d d6e d6f d70 d71 d72 d73 d74 d75 e50 e51 e52 e53 e54 e55 e56 e57 e58 e59 ed0 ed1 ed2 ed3 ed4 ed5 ed6 ed7 ed8 ed9 f20 f21 f22 f23 f24 f25 f26 f27 f28 f29 f2a f2b f2c f2d f2e f2f f30 f31 f32 f33 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1369 136a 136b 136c 136d 136e 136f 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 137a 137b 137c 16ee 16ef 16f0 17e0 17e1 17e2 17e3 17e4 17e5 17e6 17e7 17e8 17e9 17f0 17f1 17f2 17f3 17f4 17f5 17f6 17f7 17f8 17f9 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1946 1947 1948 1949 194a 194b 194c 194d 194e 194f 19d0 19d1 19d2 19d3 19d4 19d5 19d6 19d7 19d8 19d9 19da 1a80 1a81 1a82 1a83 1a84 1a85 1a86 1a87 1a88 1a89 1a90 1a91 1a92 1a93 1a94 1a95 1a96 1a97 1a98 1a99 1b50 1b51 1b52 1b53 1b54 1b55 1b56 1b57 1b58 1b59 1bb0 1bb1 1bb2 1bb3 1bb4 1bb5 1bb6 1bb7 1bb8 1bb9 1c40 1c41 1c42 1c43 1c44 1c45 1c46 1c47 1c48 1c49 1c50 1c51 1c52 1c53 1c54 1c55 1c56 1c57 1c58 1c59 2070 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 215a 215b 215c 215d 215e 215f 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 216a 216b 216c 216d 216e 216f 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 217a 217b 217c 217d 217e 217f 2180 2181 2182 2185 2186 2187 2188 2189 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 246a 246b 246c 246d 246e 246f 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 247a 247b 247c 247d 247e 247f 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 248a 248b 248c 248d 248e 248f 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 249a 249b 24ea 24eb 24ec 24ed 24ee 24ef 24f0 24f1 24f2 24f3 24f4 24f5 24f6 24f7 24f8 24f9 24fa 24fb 24fc 24fd 24fe 24ff 2776 2777 2778 2779 277a 277b 277c 277d 277e 277f 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 278a 278b 278c 278d 278e 278f 2790 2791 2792 2793 2cfd 3007 3021 3022 3023 3024 3025 3026 3027 3028 3029 3038 3039 303a 3192 3193 3194 3195 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3248 3249 324a 324b 324c 324d 324e 324f 3251 3252 3253 3254 3255 3256 3257 3258 3259 325a 325b 325c 325d 325e 325f 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 32b1 32b2 32b3 32b4 32b5 32b6 32b7 32b8 32b9 32ba 32bb 32bc 32bd 32be 32bf a620 a621 a622 a623 a624 a625 a626 a627 a628 a629 a6e6 a6e7 a6e8 a6e9 a6ea a6eb a6ec a6ed a6ee a6ef a830 a831 a832 a833 a834 a835 a8d0 a8d1 a8d2 a8d3 a8d4 a8d5 a8d6 a8d7 a8d8 a8d9 a900 a901 a902 a903 a904 a905 a906 a907 a908 a909 a9d0 a9d1 a9d2 a9d3 a9d4 a9d5 a9d6 a9d7 a9d8 a9d9 aa50 aa51 aa52 aa53 aa54 aa55 aa56 aa57 aa58 aa59 abf0 abf1 abf2 abf3 abf4 abf5 abf6 abf7 abf8 abf9 ff10 ff11 ff12 ff13 ff14 ff15 ff16 ff17 ff18 ff19 found 705 chars."; - string puncts = "21 22 23 25 26 27 28 29 2a 2c 2d 2e 2f 3a 3b " - + "3f 40 5b 5c 5d 5f 7b 7d a1 ab ad b7 bb bf 37e 387 55a 55b " - + "55c 55d 55e 55f 589 58a 5be 5c0 5c3 5c6 5f3 5f4 609 60a " - + "60c 60d 61b 61e 61f 66a 66b 66c 66d 6d4 700 701 702 703 " - + "704 705 706 707 708 709 70a 70b 70c 70d 7f7 7f8 7f9 964 " - + "965 970 df4 e4f e5a e5b f04 f05 f06 f07 f08 f09 f0a f0b " - + "f0c f0d f0e f0f f10 f11 f12 f3a f3b f3c f3d f85 fd0 fd1 " - + "fd2 fd3 fd4 104a 104b 104c 104d 104e 104f 10fb 1361 1362 " - + "1363 1364 1365 1366 1367 1368 166d 166e 169b 169c 16eb " - + "16ec 16ed 1735 1736 17d4 17d5 17d6 17d8 17d9 17da 1800 " - + "1801 1802 1803 1804 1805 1806 1807 1808 1809 180a 1944 " - + "1945 19de 19df 1a1e 1a1f 1b5a 1b5b 1b5c 1b5d 1b5e 1b5f " - + "1b60 1c3b 1c3c 1c3d 1c3e 1c3f 1c7e 1c7f 2010 2011 2012 " - + "2013 2014 2015 2016 2017 2018 2019 201a 201b 201c 201d " - + "201e 201f 2020 2021 2022 2023 2024 2025 2026 2027 2030 " - + "2031 2032 2033 2034 2035 2036 2037 2038 2039 203a 203b " - + "203c 203d 203e 203f 2040 2041 2042 2043 2045 2046 2047 " - + "2048 2049 204a 204b 204c 204d 204e 204f 2050 2051 2053 " - + "2054 2055 2056 2057 2058 2059 205a 205b 205c 205d 205e " - + "207d 207e 208d 208e 2329 232a 2768 2769 276a 276b 276c " - + "276d 276e 276f 2770 2771 2772 2773 2774 2775 27c5 27c6 " - + "27e6 27e7 27e8 27e9 27ea 27eb 27ec 27ed 27ee 27ef 2983 " - + "2984 2985 2986 2987 2988 2989 298a 298b 298c 298d 298e " - + "298f 2990 2991 2992 2993 2994 2995 2996 2997 2998 29d8 " - + "29d9 29da 29db 29fc 29fd 2cf9 2cfa 2cfb 2cfc 2cfe 2cff " - + "2e00 2e01 2e02 2e03 2e04 2e05 2e06 2e07 2e08 2e09 2e0a " - + "2e0b 2e0c 2e0d 2e0e 2e0f 2e10 2e11 2e12 2e13 2e14 2e15 " - + "2e16 2e17 2e18 2e19 2e1a 2e1b 2e1c 2e1d 2e1e 2e1f 2e20 " - + "2e21 2e22 2e23 2e24 2e25 2e26 2e27 2e28 2e29 2e2a 2e2b " - + "2e2c 2e2d 2e2e 2e30 3001 3002 3003 3008 3009 300a 300b " - + "300c 300d 300e 300f 3010 3011 3014 3015 3016 3017 3018 " - + "3019 301a 301b 301c 301d 301e 301f 3030 303d 30a0 30fb " - + "a60d a60e a60f a673 a67e a874 a875 a876 a877 a8ce a8cf " - + "a92e a92f a95f aa5c aa5d aa5e aa5f fd3e fd3f fe10 fe11 " - + "fe12 fe13 fe14 fe15 fe16 fe17 fe18 fe19 fe30 fe31 fe32 " - + "fe33 fe34 fe35 fe36 fe37 fe38 fe39 fe3a fe3b fe3c fe3d " - + "fe3e fe3f fe40 fe41 fe42 fe43 fe44 fe45 fe46 fe47 fe48 " - + "fe49 fe4a fe4b fe4c fe4d fe4e fe4f fe50 fe51 fe52 fe54 " - + "fe55 fe56 fe57 fe58 fe59 fe5a fe5b fe5c fe5d fe5e fe5f " - + "fe60 fe61 fe63 fe68 fe6a fe6b ff01 ff02 ff03 ff05 ff06 " - + "ff07 ff08 ff09 ff0a ff0c ff0d ff0e ff0f ff1a ff1b ff1f " - + "ff20 ff3b ff3c ff3d ff3f ff5b ff5d ff5f ff60 ff61 ff62 " - + "ff63 ff64 ff65 found 492 chars."; + string puncts = "21 22 23 25 26 27 28 29 2a 2c 2d 2e 2f 3a 3b 3f 40 5b 5c 5d 5f 7b 7d a1 ab ad b7 bb bf 37e 387 55a 55b 55c 55d 55e 55f 589 58a 5be 5c0 5c3 5c6 5f3 5f4 609 60a 60c 60d 61b 61e 61f 66a 66b 66c 66d 6d4 700 701 702 703 704 705 706 707 708 709 70a 70b 70c 70d 7f7 7f8 7f9 830 831 832 833 834 835 836 837 838 839 83a 83b 83c 83d 83e 85e 964 965 970 af0 df4 e4f e5a e5b f04 f05 f06 f07 f08 f09 f0a f0b f0c f0d f0e f0f f10 f11 f12 f14 f3a f3b f3c f3d f85 fd0 fd1 fd2 fd3 fd4 fd9 fda 104a 104b 104c 104d 104e 104f 10fb 1360 1361 1362 1363 1364 1365 1366 1367 1368 1400 166d 166e 169b 169c 16eb 16ec 16ed 1735 1736 17d4 17d5 17d6 17d8 17d9 17da 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 180a 1944 1945 1a1e 1a1f 1aa0 1aa1 1aa2 1aa3 1aa4 1aa5 1aa6 1aa8 1aa9 1aaa 1aab 1aac 1aad 1b5a 1b5b 1b5c 1b5d 1b5e 1b5f 1b60 1bfc 1bfd 1bfe 1bff 1c3b 1c3c 1c3d 1c3e 1c3f 1c7e 1c7f 1cc0 1cc1 1cc2 1cc3 1cc4 1cc5 1cc6 1cc7 1cd3 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 201a 201b 201c 201d 201e 201f 2020 2021 2022 2023 2024 2025 2026 2027 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 203a 203b 203c 203d 203e 203f 2040 2041 2042 2043 2045 2046 2047 2048 2049 204a 204b 204c 204d 204e 204f 2050 2051 2053 2054 2055 2056 2057 2058 2059 205a 205b 205c 205d 205e 207d 207e 208d 208e 2308 2309 230a 230b 2329 232a 2768 2769 276a 276b 276c 276d 276e 276f 2770 2771 2772 2773 2774 2775 27c5 27c6 27e6 27e7 27e8 27e9 27ea 27eb 27ec 27ed 27ee 27ef 2983 2984 2985 2986 2987 2988 2989 298a 298b 298c 298d 298e 298f 2990 2991 2992 2993 2994 2995 2996 2997 2998 29d8 29d9 29da 29db 29fc 29fd 2cf9 2cfa 2cfb 2cfc 2cfe 2cff 2d70 2e00 2e01 2e02 2e03 2e04 2e05 2e06 2e07 2e08 2e09 2e0a 2e0b 2e0c 2e0d 2e0e 2e0f 2e10 2e11 2e12 2e13 2e14 2e15 2e16 2e17 2e18 2e19 2e1a 2e1b 2e1c 2e1d 2e1e 2e1f 2e20 2e21 2e22 2e23 2e24 2e25 2e26 2e27 2e28 2e29 2e2a 2e2b 2e2c 2e2d 2e2e 2e30 2e31 2e32 2e33 2e34 2e35 2e36 2e37 2e38 2e39 2e3a 2e3b 3001 3002 3003 3008 3009 300a 300b 300c 300d 300e 300f 3010 3011 3014 3015 3016 3017 3018 3019 301a 301b 301c 301d 301e 301f 3030 303d 30a0 30fb a4fe a4ff a60d a60e a60f a673 a67e a6f2 a6f3 a6f4 a6f5 a6f6 a6f7 a874 a875 a876 a877 a8ce a8cf a8f8 a8f9 a8fa a92e a92f a95f a9c1 a9c2 a9c3 a9c4 a9c5 a9c6 a9c7 a9c8 a9c9 a9ca a9cb a9cc a9cd a9de a9df aa5c aa5d aa5e aa5f aade aadf aaf0 aaf1 abeb fd3e fd3f fe10 fe11 fe12 fe13 fe14 fe15 fe16 fe17 fe18 fe19 fe30 fe31 fe32 fe33 fe34 fe35 fe36 fe37 fe38 fe39 fe3a fe3b fe3c fe3d fe3e fe3f fe40 fe41 fe42 fe43 fe44 fe45 fe46 fe47 fe48 fe49 fe4a fe4b fe4c fe4d fe4e fe4f fe50 fe51 fe52 fe54 fe55 fe56 fe57 fe58 fe59 fe5a fe5b fe5c fe5d fe5e fe5f fe60 fe61 fe63 fe68 fe6a fe6b ff01 ff02 ff03 ff05 ff06 ff07 ff08 ff09 ff0a ff0c ff0d ff0e ff0f ff1a ff1b ff1f ff20 ff3b ff3c ff3d ff3f ff5b ff5d ff5f ff60 ff61 ff62 ff63 ff64 ff65 found 585 chars."; - string separators = "20 a0 1680 180e 2000 2001 2002 2003 2004 " - + "2005 2006 2007 2008 2009 200a 2028 2029 202f 205f 3000 " - + "found 20 chars."; + string separators = "20 a0 1680 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 200a 2028 2029 202f 205f 3000 found 19 chars."; string surrogateChars = "d800 d801 d802 d803 d804 d805 d806 " + "d807 d808 d809 d80a d80b d80c d80d d80e d80f d810 d811 " @@ -532,402 +312,11 @@ public void IsWhiteSpace () + "dfef dff0 dff1 dff2 dff3 dff4 dff5 dff6 dff7 dff8 dff9 " + "dffa dffb dffc dffd dffe dfff found 2048 chars."; - string symbolChars = "24 2b 3c 3d 3e 5e 60 7c 7e a2 a3 a4 a5 " - + "a6 a7 a8 a9 ac ae af b0 b1 b4 b6 b8 d7 f7 2c2 2c3 2c4 2c5 " - + "2d2 2d3 2d4 2d5 2d6 2d7 2d8 2d9 2da 2db 2dc 2dd 2de 2df " - + "2e5 2e6 2e7 2e8 2e9 2ea 2eb 2ed 2ef 2f0 2f1 2f2 2f3 2f4 " - + "2f5 2f6 2f7 2f8 2f9 2fa 2fb 2fc 2fd 2fe 2ff 375 384 385 " - + "3f6 482 606 607 608 60b 60e 60f 6e9 6fd 6fe 7f6 9f2 9f3 " - + "9fa af1 b70 bf3 bf4 bf5 bf6 bf7 bf8 bf9 bfa c7f cf1 cf2 " - + "d79 e3f f01 f02 f03 f13 f14 f15 f16 f17 f1a f1b f1c f1d " - + "f1e f1f f34 f36 f38 fbe fbf fc0 fc1 fc2 fc3 fc4 fc5 fc7 " - + "fc8 fc9 fca fcb fcc fce fcf 109e 109f 1360 1390 1391 1392 " - + "1393 1394 1395 1396 1397 1398 1399 17db 1940 19e0 19e1 " - + "19e2 19e3 19e4 19e5 19e6 19e7 19e8 19e9 19ea 19eb 19ec " - + "19ed 19ee 19ef 19f0 19f1 19f2 19f3 19f4 19f5 19f6 19f7 " - + "19f8 19f9 19fa 19fb 19fc 19fd 19fe 19ff 1b61 1b62 1b63 " - + "1b64 1b65 1b66 1b67 1b68 1b69 1b6a 1b74 1b75 1b76 1b77 " - + "1b78 1b79 1b7a 1b7b 1b7c 1fbd 1fbf 1fc0 1fc1 1fcd 1fce " - + "1fcf 1fdd 1fde 1fdf 1fed 1fee 1fef 1ffd 1ffe 2044 2052 " - + "207a 207b 207c 208a 208b 208c 20a0 20a1 20a2 20a3 20a4 " - + "20a5 20a6 20a7 20a8 20a9 20aa 20ab 20ac 20ad 20ae 20af " - + "20b0 20b1 20b2 20b3 20b4 20b5 2100 2101 2103 2104 2105 " - + "2106 2108 2109 2114 2116 2117 2118 211e 211f 2120 2121 " - + "2122 2123 2125 2127 2129 212e 213a 213b 2140 2141 2142 " - + "2143 2144 214a 214b 214c 214d 214f 2190 2191 2192 2193 " - + "2194 2195 2196 2197 2198 2199 219a 219b 219c 219d 219e " - + "219f 21a0 21a1 21a2 21a3 21a4 21a5 21a6 21a7 21a8 21a9 " - + "21aa 21ab 21ac 21ad 21ae 21af 21b0 21b1 21b2 21b3 21b4 " - + "21b5 21b6 21b7 21b8 21b9 21ba 21bb 21bc 21bd 21be 21bf " - + "21c0 21c1 21c2 21c3 21c4 21c5 21c6 21c7 21c8 21c9 21ca " - + "21cb 21cc 21cd 21ce 21cf 21d0 21d1 21d2 21d3 21d4 21d5 " - + "21d6 21d7 21d8 21d9 21da 21db 21dc 21dd 21de 21df 21e0 " - + "21e1 21e2 21e3 21e4 21e5 21e6 21e7 21e8 21e9 21ea 21eb " - + "21ec 21ed 21ee 21ef 21f0 21f1 21f2 21f3 21f4 21f5 21f6 " - + "21f7 21f8 21f9 21fa 21fb 21fc 21fd 21fe 21ff 2200 2201 " - + "2202 2203 2204 2205 2206 2207 2208 2209 220a 220b 220c " - + "220d 220e 220f 2210 2211 2212 2213 2214 2215 2216 2217 " - + "2218 2219 221a 221b 221c 221d 221e 221f 2220 2221 2222 " - + "2223 2224 2225 2226 2227 2228 2229 222a 222b 222c 222d " - + "222e 222f 2230 2231 2232 2233 2234 2235 2236 2237 2238 " - + "2239 223a 223b 223c 223d 223e 223f 2240 2241 2242 2243 " - + "2244 2245 2246 2247 2248 2249 224a 224b 224c 224d 224e " - + "224f 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 " - + "225a 225b 225c 225d 225e 225f 2260 2261 2262 2263 2264 " - + "2265 2266 2267 2268 2269 226a 226b 226c 226d 226e 226f " - + "2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 227a " - + "227b 227c 227d 227e 227f 2280 2281 2282 2283 2284 2285 " - + "2286 2287 2288 2289 228a 228b 228c 228d 228e 228f 2290 " - + "2291 2292 2293 2294 2295 2296 2297 2298 2299 229a 229b " - + "229c 229d 229e 229f 22a0 22a1 22a2 22a3 22a4 22a5 22a6 " - + "22a7 22a8 22a9 22aa 22ab 22ac 22ad 22ae 22af 22b0 22b1 " - + "22b2 22b3 22b4 22b5 22b6 22b7 22b8 22b9 22ba 22bb 22bc " - + "22bd 22be 22bf 22c0 22c1 22c2 22c3 22c4 22c5 22c6 22c7 " - + "22c8 22c9 22ca 22cb 22cc 22cd 22ce 22cf 22d0 22d1 22d2 " - + "22d3 22d4 22d5 22d6 22d7 22d8 22d9 22da 22db 22dc 22dd " - + "22de 22df 22e0 22e1 22e2 22e3 22e4 22e5 22e6 22e7 22e8 " - + "22e9 22ea 22eb 22ec 22ed 22ee 22ef 22f0 22f1 22f2 22f3 " - + "22f4 22f5 22f6 22f7 22f8 22f9 22fa 22fb 22fc 22fd 22fe " - + "22ff 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 " - + "230a 230b 230c 230d 230e 230f 2310 2311 2312 2313 2314 " - + "2315 2316 2317 2318 2319 231a 231b 231c 231d 231e 231f " - + "2320 2321 2322 2323 2324 2325 2326 2327 2328 232b 232c " - + "232d 232e 232f 2330 2331 2332 2333 2334 2335 2336 2337 " - + "2338 2339 233a 233b 233c 233d 233e 233f 2340 2341 2342 " - + "2343 2344 2345 2346 2347 2348 2349 234a 234b 234c 234d " - + "234e 234f 2350 2351 2352 2353 2354 2355 2356 2357 2358 " - + "2359 235a 235b 235c 235d 235e 235f 2360 2361 2362 2363 " - + "2364 2365 2366 2367 2368 2369 236a 236b 236c 236d 236e " - + "236f 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 " - + "237a 237b 237c 237d 237e 237f 2380 2381 2382 2383 2384 " - + "2385 2386 2387 2388 2389 238a 238b 238c 238d 238e 238f " - + "2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 239a " - + "239b 239c 239d 239e 239f 23a0 23a1 23a2 23a3 23a4 23a5 " - + "23a6 23a7 23a8 23a9 23aa 23ab 23ac 23ad 23ae 23af 23b0 " - + "23b1 23b2 23b3 23b4 23b5 23b6 23b7 23b8 23b9 23ba 23bb " - + "23bc 23bd 23be 23bf 23c0 23c1 23c2 23c3 23c4 23c5 23c6 " - + "23c7 23c8 23c9 23ca 23cb 23cc 23cd 23ce 23cf 23d0 23d1 " - + "23d2 23d3 23d4 23d5 23d6 23d7 23d8 23d9 23da 23db 23dc " - + "23dd 23de 23df 23e0 23e1 23e2 23e3 23e4 23e5 23e6 23e7 " - + "2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 240a " - + "240b 240c 240d 240e 240f 2410 2411 2412 2413 2414 2415 " - + "2416 2417 2418 2419 241a 241b 241c 241d 241e 241f 2420 " - + "2421 2422 2423 2424 2425 2426 2440 2441 2442 2443 2444 " - + "2445 2446 2447 2448 2449 244a 249c 249d 249e 249f 24a0 " - + "24a1 24a2 24a3 24a4 24a5 24a6 24a7 24a8 24a9 24aa 24ab " - + "24ac 24ad 24ae 24af 24b0 24b1 24b2 24b3 24b4 24b5 24b6 " - + "24b7 24b8 24b9 24ba 24bb 24bc 24bd 24be 24bf 24c0 24c1 " - + "24c2 24c3 24c4 24c5 24c6 24c7 24c8 24c9 24ca 24cb 24cc " - + "24cd 24ce 24cf 24d0 24d1 24d2 24d3 24d4 24d5 24d6 24d7 " - + "24d8 24d9 24da 24db 24dc 24dd 24de 24df 24e0 24e1 24e2 " - + "24e3 24e4 24e5 24e6 24e7 24e8 24e9 2500 2501 2502 2503 " - + "2504 2505 2506 2507 2508 2509 250a 250b 250c 250d 250e " - + "250f 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 " - + "251a 251b 251c 251d 251e 251f 2520 2521 2522 2523 2524 " - + "2525 2526 2527 2528 2529 252a 252b 252c 252d 252e 252f " - + "2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 253a " - + "253b 253c 253d 253e 253f 2540 2541 2542 2543 2544 2545 " - + "2546 2547 2548 2549 254a 254b 254c 254d 254e 254f 2550 " - + "2551 2552 2553 2554 2555 2556 2557 2558 2559 255a 255b " - + "255c 255d 255e 255f 2560 2561 2562 2563 2564 2565 2566 " - + "2567 2568 2569 256a 256b 256c 256d 256e 256f 2570 2571 " - + "2572 2573 2574 2575 2576 2577 2578 2579 257a 257b 257c " - + "257d 257e 257f 2580 2581 2582 2583 2584 2585 2586 2587 " - + "2588 2589 258a 258b 258c 258d 258e 258f 2590 2591 2592 " - + "2593 2594 2595 2596 2597 2598 2599 259a 259b 259c 259d " - + "259e 259f 25a0 25a1 25a2 25a3 25a4 25a5 25a6 25a7 25a8 " - + "25a9 25aa 25ab 25ac 25ad 25ae 25af 25b0 25b1 25b2 25b3 " - + "25b4 25b5 25b6 25b7 25b8 25b9 25ba 25bb 25bc 25bd 25be " - + "25bf 25c0 25c1 25c2 25c3 25c4 25c5 25c6 25c7 25c8 25c9 " - + "25ca 25cb 25cc 25cd 25ce 25cf 25d0 25d1 25d2 25d3 25d4 " - + "25d5 25d6 25d7 25d8 25d9 25da 25db 25dc 25dd 25de 25df " - + "25e0 25e1 25e2 25e3 25e4 25e5 25e6 25e7 25e8 25e9 25ea " - + "25eb 25ec 25ed 25ee 25ef 25f0 25f1 25f2 25f3 25f4 25f5 " - + "25f6 25f7 25f8 25f9 25fa 25fb 25fc 25fd 25fe 25ff 2600 " - + "2601 2602 2603 2604 2605 2606 2607 2608 2609 260a 260b " - + "260c 260d 260e 260f 2610 2611 2612 2613 2614 2615 2616 " - + "2617 2618 2619 261a 261b 261c 261d 261e 261f 2620 2621 " - + "2622 2623 2624 2625 2626 2627 2628 2629 262a 262b 262c " - + "262d 262e 262f 2630 2631 2632 2633 2634 2635 2636 2637 " - + "2638 2639 263a 263b 263c 263d 263e 263f 2640 2641 2642 " - + "2643 2644 2645 2646 2647 2648 2649 264a 264b 264c 264d " - + "264e 264f 2650 2651 2652 2653 2654 2655 2656 2657 2658 " - + "2659 265a 265b 265c 265d 265e 265f 2660 2661 2662 2663 " - + "2664 2665 2666 2667 2668 2669 266a 266b 266c 266d 266e " - + "266f 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 " - + "267a 267b 267c 267d 267e 267f 2680 2681 2682 2683 2684 " - + "2685 2686 2687 2688 2689 268a 268b 268c 268d 268e 268f " - + "2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 269a " - + "269b 269c 269d 26a0 26a1 26a2 26a3 26a4 26a5 26a6 26a7 " - + "26a8 26a9 26aa 26ab 26ac 26ad 26ae 26af 26b0 26b1 26b2 " - + "26b3 26b4 26b5 26b6 26b7 26b8 26b9 26ba 26bb 26bc 26c0 " - + "26c1 26c2 26c3 2701 2702 2703 2704 2706 2707 2708 2709 " - + "270c 270d 270e 270f 2710 2711 2712 2713 2714 2715 2716 " - + "2717 2718 2719 271a 271b 271c 271d 271e 271f 2720 2721 " - + "2722 2723 2724 2725 2726 2727 2729 272a 272b 272c 272d " - + "272e 272f 2730 2731 2732 2733 2734 2735 2736 2737 2738 " - + "2739 273a 273b 273c 273d 273e 273f 2740 2741 2742 2743 " - + "2744 2745 2746 2747 2748 2749 274a 274b 274d 274f 2750 " - + "2751 2752 2756 2758 2759 275a 275b 275c 275d 275e 2761 " - + "2762 2763 2764 2765 2766 2767 2794 2798 2799 279a 279b " - + "279c 279d 279e 279f 27a0 27a1 27a2 27a3 27a4 27a5 27a6 " - + "27a7 27a8 27a9 27aa 27ab 27ac 27ad 27ae 27af 27b1 27b2 " - + "27b3 27b4 27b5 27b6 27b7 27b8 27b9 27ba 27bb 27bc 27bd " - + "27be 27c0 27c1 27c2 27c3 27c4 27c7 27c8 27c9 27ca 27cc " - + "27d0 27d1 27d2 27d3 27d4 27d5 27d6 27d7 27d8 27d9 27da " - + "27db 27dc 27dd 27de 27df 27e0 27e1 27e2 27e3 27e4 27e5 " - + "27f0 27f1 27f2 27f3 27f4 27f5 27f6 27f7 27f8 27f9 27fa " - + "27fb 27fc 27fd 27fe 27ff 2800 2801 2802 2803 2804 2805 " - + "2806 2807 2808 2809 280a 280b 280c 280d 280e 280f 2810 " - + "2811 2812 2813 2814 2815 2816 2817 2818 2819 281a 281b " - + "281c 281d 281e 281f 2820 2821 2822 2823 2824 2825 2826 " - + "2827 2828 2829 282a 282b 282c 282d 282e 282f 2830 2831 " - + "2832 2833 2834 2835 2836 2837 2838 2839 283a 283b 283c " - + "283d 283e 283f 2840 2841 2842 2843 2844 2845 2846 2847 " - + "2848 2849 284a 284b 284c 284d 284e 284f 2850 2851 2852 " - + "2853 2854 2855 2856 2857 2858 2859 285a 285b 285c 285d " - + "285e 285f 2860 2861 2862 2863 2864 2865 2866 2867 2868 " - + "2869 286a 286b 286c 286d 286e 286f 2870 2871 2872 2873 " - + "2874 2875 2876 2877 2878 2879 287a 287b 287c 287d 287e " - + "287f 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 " - + "288a 288b 288c 288d 288e 288f 2890 2891 2892 2893 2894 " - + "2895 2896 2897 2898 2899 289a 289b 289c 289d 289e 289f " - + "28a0 28a1 28a2 28a3 28a4 28a5 28a6 28a7 28a8 28a9 28aa " - + "28ab 28ac 28ad 28ae 28af 28b0 28b1 28b2 28b3 28b4 28b5 " - + "28b6 28b7 28b8 28b9 28ba 28bb 28bc 28bd 28be 28bf 28c0 " - + "28c1 28c2 28c3 28c4 28c5 28c6 28c7 28c8 28c9 28ca 28cb " - + "28cc 28cd 28ce 28cf 28d0 28d1 28d2 28d3 28d4 28d5 28d6 " - + "28d7 28d8 28d9 28da 28db 28dc 28dd 28de 28df 28e0 28e1 " - + "28e2 28e3 28e4 28e5 28e6 28e7 28e8 28e9 28ea 28eb 28ec " - + "28ed 28ee 28ef 28f0 28f1 28f2 28f3 28f4 28f5 28f6 28f7 " - + "28f8 28f9 28fa 28fb 28fc 28fd 28fe 28ff 2900 2901 2902 " - + "2903 2904 2905 2906 2907 2908 2909 290a 290b 290c 290d " - + "290e 290f 2910 2911 2912 2913 2914 2915 2916 2917 2918 " - + "2919 291a 291b 291c 291d 291e 291f 2920 2921 2922 2923 " - + "2924 2925 2926 2927 2928 2929 292a 292b 292c 292d 292e " - + "292f 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 " - + "293a 293b 293c 293d 293e 293f 2940 2941 2942 2943 2944 " - + "2945 2946 2947 2948 2949 294a 294b 294c 294d 294e 294f " - + "2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 295a " - + "295b 295c 295d 295e 295f 2960 2961 2962 2963 2964 2965 " - + "2966 2967 2968 2969 296a 296b 296c 296d 296e 296f 2970 " - + "2971 2972 2973 2974 2975 2976 2977 2978 2979 297a 297b " - + "297c 297d 297e 297f 2980 2981 2982 2999 299a 299b 299c " - + "299d 299e 299f 29a0 29a1 29a2 29a3 29a4 29a5 29a6 29a7 " - + "29a8 29a9 29aa 29ab 29ac 29ad 29ae 29af 29b0 29b1 29b2 " - + "29b3 29b4 29b5 29b6 29b7 29b8 29b9 29ba 29bb 29bc 29bd " - + "29be 29bf 29c0 29c1 29c2 29c3 29c4 29c5 29c6 29c7 29c8 " - + "29c9 29ca 29cb 29cc 29cd 29ce 29cf 29d0 29d1 29d2 29d3 " - + "29d4 29d5 29d6 29d7 29dc 29dd 29de 29df 29e0 29e1 29e2 " - + "29e3 29e4 29e5 29e6 29e7 29e8 29e9 29ea 29eb 29ec 29ed " - + "29ee 29ef 29f0 29f1 29f2 29f3 29f4 29f5 29f6 29f7 29f8 " - + "29f9 29fa 29fb 29fe 29ff 2a00 2a01 2a02 2a03 2a04 2a05 " - + "2a06 2a07 2a08 2a09 2a0a 2a0b 2a0c 2a0d 2a0e 2a0f 2a10 " - + "2a11 2a12 2a13 2a14 2a15 2a16 2a17 2a18 2a19 2a1a 2a1b " - + "2a1c 2a1d 2a1e 2a1f 2a20 2a21 2a22 2a23 2a24 2a25 2a26 " - + "2a27 2a28 2a29 2a2a 2a2b 2a2c 2a2d 2a2e 2a2f 2a30 2a31 " - + "2a32 2a33 2a34 2a35 2a36 2a37 2a38 2a39 2a3a 2a3b 2a3c " - + "2a3d 2a3e 2a3f 2a40 2a41 2a42 2a43 2a44 2a45 2a46 2a47 " - + "2a48 2a49 2a4a 2a4b 2a4c 2a4d 2a4e 2a4f 2a50 2a51 2a52 " - + "2a53 2a54 2a55 2a56 2a57 2a58 2a59 2a5a 2a5b 2a5c 2a5d " - + "2a5e 2a5f 2a60 2a61 2a62 2a63 2a64 2a65 2a66 2a67 2a68 " - + "2a69 2a6a 2a6b 2a6c 2a6d 2a6e 2a6f 2a70 2a71 2a72 2a73 " - + "2a74 2a75 2a76 2a77 2a78 2a79 2a7a 2a7b 2a7c 2a7d 2a7e " - + "2a7f 2a80 2a81 2a82 2a83 2a84 2a85 2a86 2a87 2a88 2a89 " - + "2a8a 2a8b 2a8c 2a8d 2a8e 2a8f 2a90 2a91 2a92 2a93 2a94 " - + "2a95 2a96 2a97 2a98 2a99 2a9a 2a9b 2a9c 2a9d 2a9e 2a9f " - + "2aa0 2aa1 2aa2 2aa3 2aa4 2aa5 2aa6 2aa7 2aa8 2aa9 2aaa " - + "2aab 2aac 2aad 2aae 2aaf 2ab0 2ab1 2ab2 2ab3 2ab4 2ab5 " - + "2ab6 2ab7 2ab8 2ab9 2aba 2abb 2abc 2abd 2abe 2abf 2ac0 " - + "2ac1 2ac2 2ac3 2ac4 2ac5 2ac6 2ac7 2ac8 2ac9 2aca 2acb " - + "2acc 2acd 2ace 2acf 2ad0 2ad1 2ad2 2ad3 2ad4 2ad5 2ad6 " - + "2ad7 2ad8 2ad9 2ada 2adb 2adc 2add 2ade 2adf 2ae0 2ae1 " - + "2ae2 2ae3 2ae4 2ae5 2ae6 2ae7 2ae8 2ae9 2aea 2aeb 2aec " - + "2aed 2aee 2aef 2af0 2af1 2af2 2af3 2af4 2af5 2af6 2af7 " - + "2af8 2af9 2afa 2afb 2afc 2afd 2afe 2aff 2b00 2b01 2b02 " - + "2b03 2b04 2b05 2b06 2b07 2b08 2b09 2b0a 2b0b 2b0c 2b0d " - + "2b0e 2b0f 2b10 2b11 2b12 2b13 2b14 2b15 2b16 2b17 2b18 " - + "2b19 2b1a 2b1b 2b1c 2b1d 2b1e 2b1f 2b20 2b21 2b22 2b23 " - + "2b24 2b25 2b26 2b27 2b28 2b29 2b2a 2b2b 2b2c 2b2d 2b2e " - + "2b2f 2b30 2b31 2b32 2b33 2b34 2b35 2b36 2b37 2b38 2b39 " - + "2b3a 2b3b 2b3c 2b3d 2b3e 2b3f 2b40 2b41 2b42 2b43 2b44 " - + "2b45 2b46 2b47 2b48 2b49 2b4a 2b4b 2b4c 2b50 2b51 2b52 " - + "2b53 2b54 2ce5 2ce6 2ce7 2ce8 2ce9 2cea 2e80 2e81 2e82 " - + "2e83 2e84 2e85 2e86 2e87 2e88 2e89 2e8a 2e8b 2e8c 2e8d " - + "2e8e 2e8f 2e90 2e91 2e92 2e93 2e94 2e95 2e96 2e97 2e98 " - + "2e99 2e9b 2e9c 2e9d 2e9e 2e9f 2ea0 2ea1 2ea2 2ea3 2ea4 " - + "2ea5 2ea6 2ea7 2ea8 2ea9 2eaa 2eab 2eac 2ead 2eae 2eaf " - + "2eb0 2eb1 2eb2 2eb3 2eb4 2eb5 2eb6 2eb7 2eb8 2eb9 2eba " - + "2ebb 2ebc 2ebd 2ebe 2ebf 2ec0 2ec1 2ec2 2ec3 2ec4 2ec5 " - + "2ec6 2ec7 2ec8 2ec9 2eca 2ecb 2ecc 2ecd 2ece 2ecf 2ed0 " - + "2ed1 2ed2 2ed3 2ed4 2ed5 2ed6 2ed7 2ed8 2ed9 2eda 2edb " - + "2edc 2edd 2ede 2edf 2ee0 2ee1 2ee2 2ee3 2ee4 2ee5 2ee6 " - + "2ee7 2ee8 2ee9 2eea 2eeb 2eec 2eed 2eee 2eef 2ef0 2ef1 " - + "2ef2 2ef3 2f00 2f01 2f02 2f03 2f04 2f05 2f06 2f07 2f08 " - + "2f09 2f0a 2f0b 2f0c 2f0d 2f0e 2f0f 2f10 2f11 2f12 2f13 " - + "2f14 2f15 2f16 2f17 2f18 2f19 2f1a 2f1b 2f1c 2f1d 2f1e " - + "2f1f 2f20 2f21 2f22 2f23 2f24 2f25 2f26 2f27 2f28 2f29 " - + "2f2a 2f2b 2f2c 2f2d 2f2e 2f2f 2f30 2f31 2f32 2f33 2f34 " - + "2f35 2f36 2f37 2f38 2f39 2f3a 2f3b 2f3c 2f3d 2f3e 2f3f " - + "2f40 2f41 2f42 2f43 2f44 2f45 2f46 2f47 2f48 2f49 2f4a " - + "2f4b 2f4c 2f4d 2f4e 2f4f 2f50 2f51 2f52 2f53 2f54 2f55 " - + "2f56 2f57 2f58 2f59 2f5a 2f5b 2f5c 2f5d 2f5e 2f5f 2f60 " - + "2f61 2f62 2f63 2f64 2f65 2f66 2f67 2f68 2f69 2f6a 2f6b " - + "2f6c 2f6d 2f6e 2f6f 2f70 2f71 2f72 2f73 2f74 2f75 2f76 " - + "2f77 2f78 2f79 2f7a 2f7b 2f7c 2f7d 2f7e 2f7f 2f80 2f81 " - + "2f82 2f83 2f84 2f85 2f86 2f87 2f88 2f89 2f8a 2f8b 2f8c " - + "2f8d 2f8e 2f8f 2f90 2f91 2f92 2f93 2f94 2f95 2f96 2f97 " - + "2f98 2f99 2f9a 2f9b 2f9c 2f9d 2f9e 2f9f 2fa0 2fa1 2fa2 " - + "2fa3 2fa4 2fa5 2fa6 2fa7 2fa8 2fa9 2faa 2fab 2fac 2fad " - + "2fae 2faf 2fb0 2fb1 2fb2 2fb3 2fb4 2fb5 2fb6 2fb7 2fb8 " - + "2fb9 2fba 2fbb 2fbc 2fbd 2fbe 2fbf 2fc0 2fc1 2fc2 2fc3 " - + "2fc4 2fc5 2fc6 2fc7 2fc8 2fc9 2fca 2fcb 2fcc 2fcd 2fce " - + "2fcf 2fd0 2fd1 2fd2 2fd3 2fd4 2fd5 2ff0 2ff1 2ff2 2ff3 " - + "2ff4 2ff5 2ff6 2ff7 2ff8 2ff9 2ffa 2ffb 3004 3012 3013 " - + "3020 3036 3037 303e 303f 309b 309c 3190 3191 3196 3197 " - + "3198 3199 319a 319b 319c 319d 319e 319f 31c0 31c1 31c2 " - + "31c3 31c4 31c5 31c6 31c7 31c8 31c9 31ca 31cb 31cc 31cd " - + "31ce 31cf 31d0 31d1 31d2 31d3 31d4 31d5 31d6 31d7 31d8 " - + "31d9 31da 31db 31dc 31dd 31de 31df 31e0 31e1 31e2 31e3 " - + "3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 320a " - + "320b 320c 320d 320e 320f 3210 3211 3212 3213 3214 3215 " - + "3216 3217 3218 3219 321a 321b 321c 321d 321e 322a 322b " - + "322c 322d 322e 322f 3230 3231 3232 3233 3234 3235 3236 " - + "3237 3238 3239 323a 323b 323c 323d 323e 323f 3240 3241 " - + "3242 3243 3250 3260 3261 3262 3263 3264 3265 3266 3267 " - + "3268 3269 326a 326b 326c 326d 326e 326f 3270 3271 3272 " - + "3273 3274 3275 3276 3277 3278 3279 327a 327b 327c 327d " - + "327e 327f 328a 328b 328c 328d 328e 328f 3290 3291 3292 " - + "3293 3294 3295 3296 3297 3298 3299 329a 329b 329c 329d " - + "329e 329f 32a0 32a1 32a2 32a3 32a4 32a5 32a6 32a7 32a8 " - + "32a9 32aa 32ab 32ac 32ad 32ae 32af 32b0 32c0 32c1 32c2 " - + "32c3 32c4 32c5 32c6 32c7 32c8 32c9 32ca 32cb 32cc 32cd " - + "32ce 32cf 32d0 32d1 32d2 32d3 32d4 32d5 32d6 32d7 32d8 " - + "32d9 32da 32db 32dc 32dd 32de 32df 32e0 32e1 32e2 32e3 " - + "32e4 32e5 32e6 32e7 32e8 32e9 32ea 32eb 32ec 32ed 32ee " - + "32ef 32f0 32f1 32f2 32f3 32f4 32f5 32f6 32f7 32f8 32f9 " - + "32fa 32fb 32fc 32fd 32fe 3300 3301 3302 3303 3304 3305 " - + "3306 3307 3308 3309 330a 330b 330c 330d 330e 330f 3310 " - + "3311 3312 3313 3314 3315 3316 3317 3318 3319 331a 331b " - + "331c 331d 331e 331f 3320 3321 3322 3323 3324 3325 3326 " - + "3327 3328 3329 332a 332b 332c 332d 332e 332f 3330 3331 " - + "3332 3333 3334 3335 3336 3337 3338 3339 333a 333b 333c " - + "333d 333e 333f 3340 3341 3342 3343 3344 3345 3346 3347 " - + "3348 3349 334a 334b 334c 334d 334e 334f 3350 3351 3352 " - + "3353 3354 3355 3356 3357 3358 3359 335a 335b 335c 335d " - + "335e 335f 3360 3361 3362 3363 3364 3365 3366 3367 3368 " - + "3369 336a 336b 336c 336d 336e 336f 3370 3371 3372 3373 " - + "3374 3375 3376 3377 3378 3379 337a 337b 337c 337d 337e " - + "337f 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 " - + "338a 338b 338c 338d 338e 338f 3390 3391 3392 3393 3394 " - + "3395 3396 3397 3398 3399 339a 339b 339c 339d 339e 339f " - + "33a0 33a1 33a2 33a3 33a4 33a5 33a6 33a7 33a8 33a9 33aa " - + "33ab 33ac 33ad 33ae 33af 33b0 33b1 33b2 33b3 33b4 33b5 " - + "33b6 33b7 33b8 33b9 33ba 33bb 33bc 33bd 33be 33bf 33c0 " - + "33c1 33c2 33c3 33c4 33c5 33c6 33c7 33c8 33c9 33ca 33cb " - + "33cc 33cd 33ce 33cf 33d0 33d1 33d2 33d3 33d4 33d5 33d6 " - + "33d7 33d8 33d9 33da 33db 33dc 33dd 33de 33df 33e0 33e1 " - + "33e2 33e3 33e4 33e5 33e6 33e7 33e8 33e9 33ea 33eb 33ec " - + "33ed 33ee 33ef 33f0 33f1 33f2 33f3 33f4 33f5 33f6 33f7 " - + "33f8 33f9 33fa 33fb 33fc 33fd 33fe 33ff 4dc0 4dc1 4dc2 " - + "4dc3 4dc4 4dc5 4dc6 4dc7 4dc8 4dc9 4dca 4dcb 4dcc 4dcd " - + "4dce 4dcf 4dd0 4dd1 4dd2 4dd3 4dd4 4dd5 4dd6 4dd7 4dd8 " - + "4dd9 4dda 4ddb 4ddc 4ddd 4dde 4ddf 4de0 4de1 4de2 4de3 " - + "4de4 4de5 4de6 4de7 4de8 4de9 4dea 4deb 4dec 4ded 4dee " - + "4def 4df0 4df1 4df2 4df3 4df4 4df5 4df6 4df7 4df8 4df9 " - + "4dfa 4dfb 4dfc 4dfd 4dfe 4dff a490 a491 a492 a493 a494 " - + "a495 a496 a497 a498 a499 a49a a49b a49c a49d a49e a49f " - + "a4a0 a4a1 a4a2 a4a3 a4a4 a4a5 a4a6 a4a7 a4a8 a4a9 a4aa " - + "a4ab a4ac a4ad a4ae a4af a4b0 a4b1 a4b2 a4b3 a4b4 a4b5 " - + "a4b6 a4b7 a4b8 a4b9 a4ba a4bb a4bc a4bd a4be a4bf a4c0 " - + "a4c1 a4c2 a4c3 a4c4 a4c5 a4c6 a700 a701 a702 a703 a704 " - + "a705 a706 a707 a708 a709 a70a a70b a70c a70d a70e a70f " - + "a710 a711 a712 a713 a714 a715 a716 a720 a721 a789 a78a " - + "a828 a829 a82a a82b fb29 fdfc fdfd fe62 fe64 fe65 fe66 " - + "fe69 ff04 ff0b ff1c ff1d ff1e ff3e ff40 ff5c ff5e ffe0 " - + "ffe1 ffe2 ffe3 ffe4 ffe5 ffe6 ffe8 ffe9 ffea ffeb ffec " - + "ffed ffee fffc fffd found 3490 chars."; + string symbolChars = "24 2b 3c 3d 3e 5e 60 7c 7e a2 a3 a4 a5 a6 a7 a8 a9 ac ae af b0 b1 b4 b6 b8 d7 f7 2c2 2c3 2c4 2c5 2d2 2d3 2d4 2d5 2d6 2d7 2d8 2d9 2da 2db 2dc 2dd 2de 2df 2e5 2e6 2e7 2e8 2e9 2ea 2eb 2ed 2ef 2f0 2f1 2f2 2f3 2f4 2f5 2f6 2f7 2f8 2f9 2fa 2fb 2fc 2fd 2fe 2ff 375 384 385 3f6 482 58f 606 607 608 60b 60e 60f 6de 6e9 6fd 6fe 7f6 9f2 9f3 9fa 9fb af1 b70 bf3 bf4 bf5 bf6 bf7 bf8 bf9 bfa c7f d79 e3f f01 f02 f03 f13 f15 f16 f17 f1a f1b f1c f1d f1e f1f f34 f36 f38 fbe fbf fc0 fc1 fc2 fc3 fc4 fc5 fc7 fc8 fc9 fca fcb fcc fce fcf fd5 fd6 fd7 fd8 109e 109f 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 17db 1940 19de 19df 19e0 19e1 19e2 19e3 19e4 19e5 19e6 19e7 19e8 19e9 19ea 19eb 19ec 19ed 19ee 19ef 19f0 19f1 19f2 19f3 19f4 19f5 19f6 19f7 19f8 19f9 19fa 19fb 19fc 19fd 19fe 19ff 1b61 1b62 1b63 1b64 1b65 1b66 1b67 1b68 1b69 1b6a 1b74 1b75 1b76 1b77 1b78 1b79 1b7a 1b7b 1b7c 1fbd 1fbf 1fc0 1fc1 1fcd 1fce 1fcf 1fdd 1fde 1fdf 1fed 1fee 1fef 1ffd 1ffe 2044 2052 207a 207b 207c 208a 208b 208c 20a0 20a1 20a2 20a3 20a4 20a5 20a6 20a7 20a8 20a9 20aa 20ab 20ac 20ad 20ae 20af 20b0 20b1 20b2 20b3 20b4 20b5 20b6 20b7 20b8 20b9 20ba 2100 2101 2103 2104 2105 2106 2108 2109 2114 2116 2117 2118 211e 211f 2120 2121 2122 2123 2125 2127 2129 212e 213a 213b 2140 2141 2142 2143 2144 214a 214b 214c 214d 214f 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 219a 219b 219c 219d 219e 219f 21a0 21a1 21a2 21a3 21a4 21a5 21a6 21a7 21a8 21a9 21aa 21ab 21ac 21ad 21ae 21af 21b0 21b1 21b2 21b3 21b4 21b5 21b6 21b7 21b8 21b9 21ba 21bb 21bc 21bd 21be 21bf 21c0 21c1 21c2 21c3 21c4 21c5 21c6 21c7 21c8 21c9 21ca 21cb 21cc 21cd 21ce 21cf 21d0 21d1 21d2 21d3 21d4 21d5 21d6 21d7 21d8 21d9 21da 21db 21dc 21dd 21de 21df 21e0 21e1 21e2 21e3 21e4 21e5 21e6 21e7 21e8 21e9 21ea 21eb 21ec 21ed 21ee 21ef 21f0 21f1 21f2 21f3 21f4 21f5 21f6 21f7 21f8 21f9 21fa 21fb 21fc 21fd 21fe 21ff 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 220a 220b 220c 220d 220e 220f 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 221a 221b 221c 221d 221e 221f 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 222a 222b 222c 222d 222e 222f 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 223a 223b 223c 223d 223e 223f 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 224a 224b 224c 224d 224e 224f 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 225a 225b 225c 225d 225e 225f 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 226a 226b 226c 226d 226e 226f 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 227a 227b 227c 227d 227e 227f 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 228a 228b 228c 228d 228e 228f 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 229a 229b 229c 229d 229e 229f 22a0 22a1 22a2 22a3 22a4 22a5 22a6 22a7 22a8 22a9 22aa 22ab 22ac 22ad 22ae 22af 22b0 22b1 22b2 22b3 22b4 22b5 22b6 22b7 22b8 22b9 22ba 22bb 22bc 22bd 22be 22bf 22c0 22c1 22c2 22c3 22c4 22c5 22c6 22c7 22c8 22c9 22ca 22cb 22cc 22cd 22ce 22cf 22d0 22d1 22d2 22d3 22d4 22d5 22d6 22d7 22d8 22d9 22da 22db 22dc 22dd 22de 22df 22e0 22e1 22e2 22e3 22e4 22e5 22e6 22e7 22e8 22e9 22ea 22eb 22ec 22ed 22ee 22ef 22f0 22f1 22f2 22f3 22f4 22f5 22f6 22f7 22f8 22f9 22fa 22fb 22fc 22fd 22fe 22ff 2300 2301 2302 2303 2304 2305 2306 2307 230c 230d 230e 230f 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 231a 231b 231c 231d 231e 231f 2320 2321 2322 2323 2324 2325 2326 2327 2328 232b 232c 232d 232e 232f 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 233a 233b 233c 233d 233e 233f 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 234a 234b 234c 234d 234e 234f 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 235a 235b 235c 235d 235e 235f 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 236a 236b 236c 236d 236e 236f 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 237a 237b 237c 237d 237e 237f 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 238a 238b 238c 238d 238e 238f 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 239a 239b 239c 239d 239e 239f 23a0 23a1 23a2 23a3 23a4 23a5 23a6 23a7 23a8 23a9 23aa 23ab 23ac 23ad 23ae 23af 23b0 23b1 23b2 23b3 23b4 23b5 23b6 23b7 23b8 23b9 23ba 23bb 23bc 23bd 23be 23bf 23c0 23c1 23c2 23c3 23c4 23c5 23c6 23c7 23c8 23c9 23ca 23cb 23cc 23cd 23ce 23cf 23d0 23d1 23d2 23d3 23d4 23d5 23d6 23d7 23d8 23d9 23da 23db 23dc 23dd 23de 23df 23e0 23e1 23e2 23e3 23e4 23e5 23e6 23e7 23e8 23e9 23ea 23eb 23ec 23ed 23ee 23ef 23f0 23f1 23f2 23f3 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 240a 240b 240c 240d 240e 240f 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 241a 241b 241c 241d 241e 241f 2420 2421 2422 2423 2424 2425 2426 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 244a 249c 249d 249e 249f 24a0 24a1 24a2 24a3 24a4 24a5 24a6 24a7 24a8 24a9 24aa 24ab 24ac 24ad 24ae 24af 24b0 24b1 24b2 24b3 24b4 24b5 24b6 24b7 24b8 24b9 24ba 24bb 24bc 24bd 24be 24bf 24c0 24c1 24c2 24c3 24c4 24c5 24c6 24c7 24c8 24c9 24ca 24cb 24cc 24cd 24ce 24cf 24d0 24d1 24d2 24d3 24d4 24d5 24d6 24d7 24d8 24d9 24da 24db 24dc 24dd 24de 24df 24e0 24e1 24e2 24e3 24e4 24e5 24e6 24e7 24e8 24e9 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 250a 250b 250c 250d 250e 250f 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 251a 251b 251c 251d 251e 251f 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 252a 252b 252c 252d 252e 252f 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 253a 253b 253c 253d 253e 253f 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 254a 254b 254c 254d 254e 254f 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 255a 255b 255c 255d 255e 255f 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 256a 256b 256c 256d 256e 256f 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 257a 257b 257c 257d 257e 257f 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 258a 258b 258c 258d 258e 258f 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 259a 259b 259c 259d 259e 259f 25a0 25a1 25a2 25a3 25a4 25a5 25a6 25a7 25a8 25a9 25aa 25ab 25ac 25ad 25ae 25af 25b0 25b1 25b2 25b3 25b4 25b5 25b6 25b7 25b8 25b9 25ba 25bb 25bc 25bd 25be 25bf 25c0 25c1 25c2 25c3 25c4 25c5 25c6 25c7 25c8 25c9 25ca 25cb 25cc 25cd 25ce 25cf 25d0 25d1 25d2 25d3 25d4 25d5 25d6 25d7 25d8 25d9 25da 25db 25dc 25dd 25de 25df 25e0 25e1 25e2 25e3 25e4 25e5 25e6 25e7 25e8 25e9 25ea 25eb 25ec 25ed 25ee 25ef 25f0 25f1 25f2 25f3 25f4 25f5 25f6 25f7 25f8 25f9 25fa 25fb 25fc 25fd 25fe 25ff 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 260a 260b 260c 260d 260e 260f 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 261a 261b 261c 261d 261e 261f 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 262a 262b 262c 262d 262e 262f 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 263a 263b 263c 263d 263e 263f 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 264a 264b 264c 264d 264e 264f 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 265a 265b 265c 265d 265e 265f 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 266a 266b 266c 266d 266e 266f 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 267a 267b 267c 267d 267e 267f 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 268a 268b 268c 268d 268e 268f 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 269a 269b 269c 269d 269e 269f 26a0 26a1 26a2 26a3 26a4 26a5 26a6 26a7 26a8 26a9 26aa 26ab 26ac 26ad 26ae 26af 26b0 26b1 26b2 26b3 26b4 26b5 26b6 26b7 26b8 26b9 26ba 26bb 26bc 26bd 26be 26bf 26c0 26c1 26c2 26c3 26c4 26c5 26c6 26c7 26c8 26c9 26ca 26cb 26cc 26cd 26ce 26cf 26d0 26d1 26d2 26d3 26d4 26d5 26d6 26d7 26d8 26d9 26da 26db 26dc 26dd 26de 26df 26e0 26e1 26e2 26e3 26e4 26e5 26e6 26e7 26e8 26e9 26ea 26eb 26ec 26ed 26ee 26ef 26f0 26f1 26f2 26f3 26f4 26f5 26f6 26f7 26f8 26f9 26fa 26fb 26fc 26fd 26fe 26ff 2701 2702 2703 2704 2705 2706 2707 2708 2709 270a 270b 270c 270d 270e 270f 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 271a 271b 271c 271d 271e 271f 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 272a 272b 272c 272d 272e 272f 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 273a 273b 273c 273d 273e 273f 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 274a 274b 274c 274d 274e 274f 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 275a 275b 275c 275d 275e 275f 2760 2761 2762 2763 2764 2765 2766 2767 2794 2795 2796 2797 2798 2799 279a 279b 279c 279d 279e 279f 27a0 27a1 27a2 27a3 27a4 27a5 27a6 27a7 27a8 27a9 27aa 27ab 27ac 27ad 27ae 27af 27b0 27b1 27b2 27b3 27b4 27b5 27b6 27b7 27b8 27b9 27ba 27bb 27bc 27bd 27be 27bf 27c0 27c1 27c2 27c3 27c4 27c7 27c8 27c9 27ca 27cb 27cc 27cd 27ce 27cf 27d0 27d1 27d2 27d3 27d4 27d5 27d6 27d7 27d8 27d9 27da 27db 27dc 27dd 27de 27df 27e0 27e1 27e2 27e3 27e4 27e5 27f0 27f1 27f2 27f3 27f4 27f5 27f6 27f7 27f8 27f9 27fa 27fb 27fc 27fd 27fe 27ff 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 280a 280b 280c 280d 280e 280f 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 281a 281b 281c 281d 281e 281f 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 282a 282b 282c 282d 282e 282f 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 283a 283b 283c 283d 283e 283f 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 284a 284b 284c 284d 284e 284f 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 285a 285b 285c 285d 285e 285f 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 286a 286b 286c 286d 286e 286f 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 287a 287b 287c 287d 287e 287f 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 288a 288b 288c 288d 288e 288f 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 289a 289b 289c 289d 289e 289f 28a0 28a1 28a2 28a3 28a4 28a5 28a6 28a7 28a8 28a9 28aa 28ab 28ac 28ad 28ae 28af 28b0 28b1 28b2 28b3 28b4 28b5 28b6 28b7 28b8 28b9 28ba 28bb 28bc 28bd 28be 28bf 28c0 28c1 28c2 28c3 28c4 28c5 28c6 28c7 28c8 28c9 28ca 28cb 28cc 28cd 28ce 28cf 28d0 28d1 28d2 28d3 28d4 28d5 28d6 28d7 28d8 28d9 28da 28db 28dc 28dd 28de 28df 28e0 28e1 28e2 28e3 28e4 28e5 28e6 28e7 28e8 28e9 28ea 28eb 28ec 28ed 28ee 28ef 28f0 28f1 28f2 28f3 28f4 28f5 28f6 28f7 28f8 28f9 28fa 28fb 28fc 28fd 28fe 28ff 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 290a 290b 290c 290d 290e 290f 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 291a 291b 291c 291d 291e 291f 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 292a 292b 292c 292d 292e 292f 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 293a 293b 293c 293d 293e 293f 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 294a 294b 294c 294d 294e 294f 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 295a 295b 295c 295d 295e 295f 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 296a 296b 296c 296d 296e 296f 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 297a 297b 297c 297d 297e 297f 2980 2981 2982 2999 299a 299b 299c 299d 299e 299f 29a0 29a1 29a2 29a3 29a4 29a5 29a6 29a7 29a8 29a9 29aa 29ab 29ac 29ad 29ae 29af 29b0 29b1 29b2 29b3 29b4 29b5 29b6 29b7 29b8 29b9 29ba 29bb 29bc 29bd 29be 29bf 29c0 29c1 29c2 29c3 29c4 29c5 29c6 29c7 29c8 29c9 29ca 29cb 29cc 29cd 29ce 29cf 29d0 29d1 29d2 29d3 29d4 29d5 29d6 29d7 29dc 29dd 29de 29df 29e0 29e1 29e2 29e3 29e4 29e5 29e6 29e7 29e8 29e9 29ea 29eb 29ec 29ed 29ee 29ef 29f0 29f1 29f2 29f3 29f4 29f5 29f6 29f7 29f8 29f9 29fa 29fb 29fe 29ff 2a00 2a01 2a02 2a03 2a04 2a05 2a06 2a07 2a08 2a09 2a0a 2a0b 2a0c 2a0d 2a0e 2a0f 2a10 2a11 2a12 2a13 2a14 2a15 2a16 2a17 2a18 2a19 2a1a 2a1b 2a1c 2a1d 2a1e 2a1f 2a20 2a21 2a22 2a23 2a24 2a25 2a26 2a27 2a28 2a29 2a2a 2a2b 2a2c 2a2d 2a2e 2a2f 2a30 2a31 2a32 2a33 2a34 2a35 2a36 2a37 2a38 2a39 2a3a 2a3b 2a3c 2a3d 2a3e 2a3f 2a40 2a41 2a42 2a43 2a44 2a45 2a46 2a47 2a48 2a49 2a4a 2a4b 2a4c 2a4d 2a4e 2a4f 2a50 2a51 2a52 2a53 2a54 2a55 2a56 2a57 2a58 2a59 2a5a 2a5b 2a5c 2a5d 2a5e 2a5f 2a60 2a61 2a62 2a63 2a64 2a65 2a66 2a67 2a68 2a69 2a6a 2a6b 2a6c 2a6d 2a6e 2a6f 2a70 2a71 2a72 2a73 2a74 2a75 2a76 2a77 2a78 2a79 2a7a 2a7b 2a7c 2a7d 2a7e 2a7f 2a80 2a81 2a82 2a83 2a84 2a85 2a86 2a87 2a88 2a89 2a8a 2a8b 2a8c 2a8d 2a8e 2a8f 2a90 2a91 2a92 2a93 2a94 2a95 2a96 2a97 2a98 2a99 2a9a 2a9b 2a9c 2a9d 2a9e 2a9f 2aa0 2aa1 2aa2 2aa3 2aa4 2aa5 2aa6 2aa7 2aa8 2aa9 2aaa 2aab 2aac 2aad 2aae 2aaf 2ab0 2ab1 2ab2 2ab3 2ab4 2ab5 2ab6 2ab7 2ab8 2ab9 2aba 2abb 2abc 2abd 2abe 2abf 2ac0 2ac1 2ac2 2ac3 2ac4 2ac5 2ac6 2ac7 2ac8 2ac9 2aca 2acb 2acc 2acd 2ace 2acf 2ad0 2ad1 2ad2 2ad3 2ad4 2ad5 2ad6 2ad7 2ad8 2ad9 2ada 2adb 2adc 2add 2ade 2adf 2ae0 2ae1 2ae2 2ae3 2ae4 2ae5 2ae6 2ae7 2ae8 2ae9 2aea 2aeb 2aec 2aed 2aee 2aef 2af0 2af1 2af2 2af3 2af4 2af5 2af6 2af7 2af8 2af9 2afa 2afb 2afc 2afd 2afe 2aff 2b00 2b01 2b02 2b03 2b04 2b05 2b06 2b07 2b08 2b09 2b0a 2b0b 2b0c 2b0d 2b0e 2b0f 2b10 2b11 2b12 2b13 2b14 2b15 2b16 2b17 2b18 2b19 2b1a 2b1b 2b1c 2b1d 2b1e 2b1f 2b20 2b21 2b22 2b23 2b24 2b25 2b26 2b27 2b28 2b29 2b2a 2b2b 2b2c 2b2d 2b2e 2b2f 2b30 2b31 2b32 2b33 2b34 2b35 2b36 2b37 2b38 2b39 2b3a 2b3b 2b3c 2b3d 2b3e 2b3f 2b40 2b41 2b42 2b43 2b44 2b45 2b46 2b47 2b48 2b49 2b4a 2b4b 2b4c 2b50 2b51 2b52 2b53 2b54 2b55 2b56 2b57 2b58 2b59 2ce5 2ce6 2ce7 2ce8 2ce9 2cea 2e80 2e81 2e82 2e83 2e84 2e85 2e86 2e87 2e88 2e89 2e8a 2e8b 2e8c 2e8d 2e8e 2e8f 2e90 2e91 2e92 2e93 2e94 2e95 2e96 2e97 2e98 2e99 2e9b 2e9c 2e9d 2e9e 2e9f 2ea0 2ea1 2ea2 2ea3 2ea4 2ea5 2ea6 2ea7 2ea8 2ea9 2eaa 2eab 2eac 2ead 2eae 2eaf 2eb0 2eb1 2eb2 2eb3 2eb4 2eb5 2eb6 2eb7 2eb8 2eb9 2eba 2ebb 2ebc 2ebd 2ebe 2ebf 2ec0 2ec1 2ec2 2ec3 2ec4 2ec5 2ec6 2ec7 2ec8 2ec9 2eca 2ecb 2ecc 2ecd 2ece 2ecf 2ed0 2ed1 2ed2 2ed3 2ed4 2ed5 2ed6 2ed7 2ed8 2ed9 2eda 2edb 2edc 2edd 2ede 2edf 2ee0 2ee1 2ee2 2ee3 2ee4 2ee5 2ee6 2ee7 2ee8 2ee9 2eea 2eeb 2eec 2eed 2eee 2eef 2ef0 2ef1 2ef2 2ef3 2f00 2f01 2f02 2f03 2f04 2f05 2f06 2f07 2f08 2f09 2f0a 2f0b 2f0c 2f0d 2f0e 2f0f 2f10 2f11 2f12 2f13 2f14 2f15 2f16 2f17 2f18 2f19 2f1a 2f1b 2f1c 2f1d 2f1e 2f1f 2f20 2f21 2f22 2f23 2f24 2f25 2f26 2f27 2f28 2f29 2f2a 2f2b 2f2c 2f2d 2f2e 2f2f 2f30 2f31 2f32 2f33 2f34 2f35 2f36 2f37 2f38 2f39 2f3a 2f3b 2f3c 2f3d 2f3e 2f3f 2f40 2f41 2f42 2f43 2f44 2f45 2f46 2f47 2f48 2f49 2f4a 2f4b 2f4c 2f4d 2f4e 2f4f 2f50 2f51 2f52 2f53 2f54 2f55 2f56 2f57 2f58 2f59 2f5a 2f5b 2f5c 2f5d 2f5e 2f5f 2f60 2f61 2f62 2f63 2f64 2f65 2f66 2f67 2f68 2f69 2f6a 2f6b 2f6c 2f6d 2f6e 2f6f 2f70 2f71 2f72 2f73 2f74 2f75 2f76 2f77 2f78 2f79 2f7a 2f7b 2f7c 2f7d 2f7e 2f7f 2f80 2f81 2f82 2f83 2f84 2f85 2f86 2f87 2f88 2f89 2f8a 2f8b 2f8c 2f8d 2f8e 2f8f 2f90 2f91 2f92 2f93 2f94 2f95 2f96 2f97 2f98 2f99 2f9a 2f9b 2f9c 2f9d 2f9e 2f9f 2fa0 2fa1 2fa2 2fa3 2fa4 2fa5 2fa6 2fa7 2fa8 2fa9 2faa 2fab 2fac 2fad 2fae 2faf 2fb0 2fb1 2fb2 2fb3 2fb4 2fb5 2fb6 2fb7 2fb8 2fb9 2fba 2fbb 2fbc 2fbd 2fbe 2fbf 2fc0 2fc1 2fc2 2fc3 2fc4 2fc5 2fc6 2fc7 2fc8 2fc9 2fca 2fcb 2fcc 2fcd 2fce 2fcf 2fd0 2fd1 2fd2 2fd3 2fd4 2fd5 2ff0 2ff1 2ff2 2ff3 2ff4 2ff5 2ff6 2ff7 2ff8 2ff9 2ffa 2ffb 3004 3012 3013 3020 3036 3037 303e 303f 309b 309c 3190 3191 3196 3197 3198 3199 319a 319b 319c 319d 319e 319f 31c0 31c1 31c2 31c3 31c4 31c5 31c6 31c7 31c8 31c9 31ca 31cb 31cc 31cd 31ce 31cf 31d0 31d1 31d2 31d3 31d4 31d5 31d6 31d7 31d8 31d9 31da 31db 31dc 31dd 31de 31df 31e0 31e1 31e2 31e3 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 320a 320b 320c 320d 320e 320f 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 321a 321b 321c 321d 321e 322a 322b 322c 322d 322e 322f 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 323a 323b 323c 323d 323e 323f 3240 3241 3242 3243 3244 3245 3246 3247 3250 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 326a 326b 326c 326d 326e 326f 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 327a 327b 327c 327d 327e 327f 328a 328b 328c 328d 328e 328f 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 329a 329b 329c 329d 329e 329f 32a0 32a1 32a2 32a3 32a4 32a5 32a6 32a7 32a8 32a9 32aa 32ab 32ac 32ad 32ae 32af 32b0 32c0 32c1 32c2 32c3 32c4 32c5 32c6 32c7 32c8 32c9 32ca 32cb 32cc 32cd 32ce 32cf 32d0 32d1 32d2 32d3 32d4 32d5 32d6 32d7 32d8 32d9 32da 32db 32dc 32dd 32de 32df 32e0 32e1 32e2 32e3 32e4 32e5 32e6 32e7 32e8 32e9 32ea 32eb 32ec 32ed 32ee 32ef 32f0 32f1 32f2 32f3 32f4 32f5 32f6 32f7 32f8 32f9 32fa 32fb 32fc 32fd 32fe 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 330a 330b 330c 330d 330e 330f 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 331a 331b 331c 331d 331e 331f 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 332a 332b 332c 332d 332e 332f 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 333a 333b 333c 333d 333e 333f 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 334a 334b 334c 334d 334e 334f 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 335a 335b 335c 335d 335e 335f 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 336a 336b 336c 336d 336e 336f 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 337a 337b 337c 337d 337e 337f 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 338a 338b 338c 338d 338e 338f 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 339a 339b 339c 339d 339e 339f 33a0 33a1 33a2 33a3 33a4 33a5 33a6 33a7 33a8 33a9 33aa 33ab 33ac 33ad 33ae 33af 33b0 33b1 33b2 33b3 33b4 33b5 33b6 33b7 33b8 33b9 33ba 33bb 33bc 33bd 33be 33bf 33c0 33c1 33c2 33c3 33c4 33c5 33c6 33c7 33c8 33c9 33ca 33cb 33cc 33cd 33ce 33cf 33d0 33d1 33d2 33d3 33d4 33d5 33d6 33d7 33d8 33d9 33da 33db 33dc 33dd 33de 33df 33e0 33e1 33e2 33e3 33e4 33e5 33e6 33e7 33e8 33e9 33ea 33eb 33ec 33ed 33ee 33ef 33f0 33f1 33f2 33f3 33f4 33f5 33f6 33f7 33f8 33f9 33fa 33fb 33fc 33fd 33fe 33ff 4dc0 4dc1 4dc2 4dc3 4dc4 4dc5 4dc6 4dc7 4dc8 4dc9 4dca 4dcb 4dcc 4dcd 4dce 4dcf 4dd0 4dd1 4dd2 4dd3 4dd4 4dd5 4dd6 4dd7 4dd8 4dd9 4dda 4ddb 4ddc 4ddd 4dde 4ddf 4de0 4de1 4de2 4de3 4de4 4de5 4de6 4de7 4de8 4de9 4dea 4deb 4dec 4ded 4dee 4def 4df0 4df1 4df2 4df3 4df4 4df5 4df6 4df7 4df8 4df9 4dfa 4dfb 4dfc 4dfd 4dfe 4dff a490 a491 a492 a493 a494 a495 a496 a497 a498 a499 a49a a49b a49c a49d a49e a49f a4a0 a4a1 a4a2 a4a3 a4a4 a4a5 a4a6 a4a7 a4a8 a4a9 a4aa a4ab a4ac a4ad a4ae a4af a4b0 a4b1 a4b2 a4b3 a4b4 a4b5 a4b6 a4b7 a4b8 a4b9 a4ba a4bb a4bc a4bd a4be a4bf a4c0 a4c1 a4c2 a4c3 a4c4 a4c5 a4c6 a700 a701 a702 a703 a704 a705 a706 a707 a708 a709 a70a a70b a70c a70d a70e a70f a710 a711 a712 a713 a714 a715 a716 a720 a721 a789 a78a a828 a829 a82a a82b a836 a837 a838 a839 aa77 aa78 aa79 fb29 fbb2 fbb3 fbb4 fbb5 fbb6 fbb7 fbb8 fbb9 fbba fbbb fbbc fbbd fbbe fbbf fbc0 fbc1 fdfc fdfd fe62 fe64 fe65 fe66 fe69 ff04 ff0b ff1c ff1d ff1e ff3e ff40 ff5c ff5e ffe0 ffe1 ffe2 ffe3 ffe4 ffe5 ffe6 ffe8 ffe9 ffea ffeb ffec ffed ffee fffc fffd found 3626 chars."; - string upperChars = "41 42 43 44 45 46 47 48 49 4a 4b 4c 4d " - + "4e 4f 50 51 52 53 54 55 56 57 58 59 5a c0 c1 c2 c3 c4 c5 " - + "c6 c7 c8 c9 ca cb cc cd ce cf d0 d1 d2 d3 d4 d5 d6 d8 d9 " - + "da db dc dd de 100 102 104 106 108 10a 10c 10e 110 112 114 " - + "116 118 11a 11c 11e 120 122 124 126 128 12a 12c 12e 130 " - + "132 134 136 139 13b 13d 13f 141 143 145 147 14a 14c 14e " - + "150 152 154 156 158 15a 15c 15e 160 162 164 166 168 16a " - + "16c 16e 170 172 174 176 178 179 17b 17d 181 182 184 186 " - + "187 189 18a 18b 18e 18f 190 191 193 194 196 197 198 19c " - + "19d 19f 1a0 1a2 1a4 1a6 1a7 1a9 1ac 1ae 1af 1b1 1b2 1b3 " - + "1b5 1b7 1b8 1bc 1c4 1c7 1ca 1cd 1cf 1d1 1d3 1d5 1d7 1d9 " - + "1db 1de 1e0 1e2 1e4 1e6 1e8 1ea 1ec 1ee 1f1 1f4 1f6 1f7 " - + "1f8 1fa 1fc 1fe 200 202 204 206 208 20a 20c 20e 210 212 " - + "214 216 218 21a 21c 21e 220 222 224 226 228 22a 22c 22e " - + "230 232 23a 23b 23d 23e 241 243 244 245 246 248 24a 24c " - + "24e 370 372 376 386 388 389 38a 38c 38e 38f 391 392 393 " - + "394 395 396 397 398 399 39a 39b 39c 39d 39e 39f 3a0 3a1 " - + "3a3 3a4 3a5 3a6 3a7 3a8 3a9 3aa 3ab 3cf 3d2 3d3 3d4 3d8 " - + "3da 3dc 3de 3e0 3e2 3e4 3e6 3e8 3ea 3ec 3ee 3f4 3f7 3f9 " - + "3fa 3fd 3fe 3ff 400 401 402 403 404 405 406 407 408 409 " - + "40a 40b 40c 40d 40e 40f 410 411 412 413 414 415 416 417 " - + "418 419 41a 41b 41c 41d 41e 41f 420 421 422 423 424 425 " - + "426 427 428 429 42a 42b 42c 42d 42e 42f 460 462 464 466 " - + "468 46a 46c 46e 470 472 474 476 478 47a 47c 47e 480 48a " - + "48c 48e 490 492 494 496 498 49a 49c 49e 4a0 4a2 4a4 4a6 " - + "4a8 4aa 4ac 4ae 4b0 4b2 4b4 4b6 4b8 4ba 4bc 4be 4c0 4c1 " - + "4c3 4c5 4c7 4c9 4cb 4cd 4d0 4d2 4d4 4d6 4d8 4da 4dc 4de " - + "4e0 4e2 4e4 4e6 4e8 4ea 4ec 4ee 4f0 4f2 4f4 4f6 4f8 4fa " - + "4fc 4fe 500 502 504 506 508 50a 50c 50e 510 512 514 516 " - + "518 51a 51c 51e 520 522 531 532 533 534 535 536 537 538 " - + "539 53a 53b 53c 53d 53e 53f 540 541 542 543 544 545 546 " - + "547 548 549 54a 54b 54c 54d 54e 54f 550 551 552 553 554 " - + "555 556 10a0 10a1 10a2 10a3 10a4 10a5 10a6 10a7 10a8 10a9 " - + "10aa 10ab 10ac 10ad 10ae 10af 10b0 10b1 10b2 10b3 10b4 " - + "10b5 10b6 10b7 10b8 10b9 10ba 10bb 10bc 10bd 10be 10bf " - + "10c0 10c1 10c2 10c3 10c4 10c5 1e00 1e02 1e04 1e06 1e08 " - + "1e0a 1e0c 1e0e 1e10 1e12 1e14 1e16 1e18 1e1a 1e1c 1e1e " - + "1e20 1e22 1e24 1e26 1e28 1e2a 1e2c 1e2e 1e30 1e32 1e34 " - + "1e36 1e38 1e3a 1e3c 1e3e 1e40 1e42 1e44 1e46 1e48 1e4a " - + "1e4c 1e4e 1e50 1e52 1e54 1e56 1e58 1e5a 1e5c 1e5e 1e60 " - + "1e62 1e64 1e66 1e68 1e6a 1e6c 1e6e 1e70 1e72 1e74 1e76 " - + "1e78 1e7a 1e7c 1e7e 1e80 1e82 1e84 1e86 1e88 1e8a 1e8c " - + "1e8e 1e90 1e92 1e94 1e9e 1ea0 1ea2 1ea4 1ea6 1ea8 1eaa " - + "1eac 1eae 1eb0 1eb2 1eb4 1eb6 1eb8 1eba 1ebc 1ebe 1ec0 " - + "1ec2 1ec4 1ec6 1ec8 1eca 1ecc 1ece 1ed0 1ed2 1ed4 1ed6 " - + "1ed8 1eda 1edc 1ede 1ee0 1ee2 1ee4 1ee6 1ee8 1eea 1eec " - + "1eee 1ef0 1ef2 1ef4 1ef6 1ef8 1efa 1efc 1efe 1f08 1f09 " - + "1f0a 1f0b 1f0c 1f0d 1f0e 1f0f 1f18 1f19 1f1a 1f1b 1f1c " - + "1f1d 1f28 1f29 1f2a 1f2b 1f2c 1f2d 1f2e 1f2f 1f38 1f39 " - + "1f3a 1f3b 1f3c 1f3d 1f3e 1f3f 1f48 1f49 1f4a 1f4b 1f4c " - + "1f4d 1f59 1f5b 1f5d 1f5f 1f68 1f69 1f6a 1f6b 1f6c 1f6d " - + "1f6e 1f6f 1fb8 1fb9 1fba 1fbb 1fc8 1fc9 1fca 1fcb 1fd8 " - + "1fd9 1fda 1fdb 1fe8 1fe9 1fea 1feb 1fec 1ff8 1ff9 1ffa " - + "1ffb 2102 2107 210b 210c 210d 2110 2111 2112 2115 2119 " - + "211a 211b 211c 211d 2124 2126 2128 212a 212b 212c 212d " - + "2130 2131 2132 2133 213e 213f 2145 2183 2c00 2c01 2c02 " - + "2c03 2c04 2c05 2c06 2c07 2c08 2c09 2c0a 2c0b 2c0c 2c0d " - + "2c0e 2c0f 2c10 2c11 2c12 2c13 2c14 2c15 2c16 2c17 2c18 " - + "2c19 2c1a 2c1b 2c1c 2c1d 2c1e 2c1f 2c20 2c21 2c22 2c23 " - + "2c24 2c25 2c26 2c27 2c28 2c29 2c2a 2c2b 2c2c 2c2d 2c2e " - + "2c60 2c62 2c63 2c64 2c67 2c69 2c6b 2c6d 2c6e 2c6f 2c72 " - + "2c75 2c80 2c82 2c84 2c86 2c88 2c8a 2c8c 2c8e 2c90 2c92 " - + "2c94 2c96 2c98 2c9a 2c9c 2c9e 2ca0 2ca2 2ca4 2ca6 2ca8 " - + "2caa 2cac 2cae 2cb0 2cb2 2cb4 2cb6 2cb8 2cba 2cbc 2cbe " - + "2cc0 2cc2 2cc4 2cc6 2cc8 2cca 2ccc 2cce 2cd0 2cd2 2cd4 " - + "2cd6 2cd8 2cda 2cdc 2cde 2ce0 2ce2 a640 a642 a644 a646 " - + "a648 a64a a64c a64e a650 a652 a654 a656 a658 a65a a65c " - + "a65e a662 a664 a666 a668 a66a a66c a680 a682 a684 a686 " - + "a688 a68a a68c a68e a690 a692 a694 a696 a722 a724 a726 " - + "a728 a72a a72c a72e a732 a734 a736 a738 a73a a73c a73e " - + "a740 a742 a744 a746 a748 a74a a74c a74e a750 a752 a754 " - + "a756 a758 a75a a75c a75e a760 a762 a764 a766 a768 a76a " - + "a76c a76e a779 a77b a77d a77e a780 a782 a784 a786 a78b " - + "ff21 ff22 ff23 ff24 ff25 ff26 ff27 ff28 ff29 ff2a ff2b " - + "ff2c ff2d ff2e ff2f ff30 ff31 ff32 ff33 ff34 ff35 ff36 " - + "ff37 ff38 ff39 ff3a found 937 chars."; + string upperChars = "41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 ca cb cc cd ce cf d0 d1 d2 d3 d4 d5 d6 d8 d9 da db dc dd de 100 102 104 106 108 10a 10c 10e 110 112 114 116 118 11a 11c 11e 120 122 124 126 128 12a 12c 12e 130 132 134 136 139 13b 13d 13f 141 143 145 147 14a 14c 14e 150 152 154 156 158 15a 15c 15e 160 162 164 166 168 16a 16c 16e 170 172 174 176 178 179 17b 17d 181 182 184 186 187 189 18a 18b 18e 18f 190 191 193 194 196 197 198 19c 19d 19f 1a0 1a2 1a4 1a6 1a7 1a9 1ac 1ae 1af 1b1 1b2 1b3 1b5 1b7 1b8 1bc 1c4 1c7 1ca 1cd 1cf 1d1 1d3 1d5 1d7 1d9 1db 1de 1e0 1e2 1e4 1e6 1e8 1ea 1ec 1ee 1f1 1f4 1f6 1f7 1f8 1fa 1fc 1fe 200 202 204 206 208 20a 20c 20e 210 212 214 216 218 21a 21c 21e 220 222 224 226 228 22a 22c 22e 230 232 23a 23b 23d 23e 241 243 244 245 246 248 24a 24c 24e 370 372 376 386 388 389 38a 38c 38e 38f 391 392 393 394 395 396 397 398 399 39a 39b 39c 39d 39e 39f 3a0 3a1 3a3 3a4 3a5 3a6 3a7 3a8 3a9 3aa 3ab 3cf 3d2 3d3 3d4 3d8 3da 3dc 3de 3e0 3e2 3e4 3e6 3e8 3ea 3ec 3ee 3f4 3f7 3f9 3fa 3fd 3fe 3ff 400 401 402 403 404 405 406 407 408 409 40a 40b 40c 40d 40e 40f 410 411 412 413 414 415 416 417 418 419 41a 41b 41c 41d 41e 41f 420 421 422 423 424 425 426 427 428 429 42a 42b 42c 42d 42e 42f 460 462 464 466 468 46a 46c 46e 470 472 474 476 478 47a 47c 47e 480 48a 48c 48e 490 492 494 496 498 49a 49c 49e 4a0 4a2 4a4 4a6 4a8 4aa 4ac 4ae 4b0 4b2 4b4 4b6 4b8 4ba 4bc 4be 4c0 4c1 4c3 4c5 4c7 4c9 4cb 4cd 4d0 4d2 4d4 4d6 4d8 4da 4dc 4de 4e0 4e2 4e4 4e6 4e8 4ea 4ec 4ee 4f0 4f2 4f4 4f6 4f8 4fa 4fc 4fe 500 502 504 506 508 50a 50c 50e 510 512 514 516 518 51a 51c 51e 520 522 524 526 531 532 533 534 535 536 537 538 539 53a 53b 53c 53d 53e 53f 540 541 542 543 544 545 546 547 548 549 54a 54b 54c 54d 54e 54f 550 551 552 553 554 555 556 10a0 10a1 10a2 10a3 10a4 10a5 10a6 10a7 10a8 10a9 10aa 10ab 10ac 10ad 10ae 10af 10b0 10b1 10b2 10b3 10b4 10b5 10b6 10b7 10b8 10b9 10ba 10bb 10bc 10bd 10be 10bf 10c0 10c1 10c2 10c3 10c4 10c5 10c7 10cd 1e00 1e02 1e04 1e06 1e08 1e0a 1e0c 1e0e 1e10 1e12 1e14 1e16 1e18 1e1a 1e1c 1e1e 1e20 1e22 1e24 1e26 1e28 1e2a 1e2c 1e2e 1e30 1e32 1e34 1e36 1e38 1e3a 1e3c 1e3e 1e40 1e42 1e44 1e46 1e48 1e4a 1e4c 1e4e 1e50 1e52 1e54 1e56 1e58 1e5a 1e5c 1e5e 1e60 1e62 1e64 1e66 1e68 1e6a 1e6c 1e6e 1e70 1e72 1e74 1e76 1e78 1e7a 1e7c 1e7e 1e80 1e82 1e84 1e86 1e88 1e8a 1e8c 1e8e 1e90 1e92 1e94 1e9e 1ea0 1ea2 1ea4 1ea6 1ea8 1eaa 1eac 1eae 1eb0 1eb2 1eb4 1eb6 1eb8 1eba 1ebc 1ebe 1ec0 1ec2 1ec4 1ec6 1ec8 1eca 1ecc 1ece 1ed0 1ed2 1ed4 1ed6 1ed8 1eda 1edc 1ede 1ee0 1ee2 1ee4 1ee6 1ee8 1eea 1eec 1eee 1ef0 1ef2 1ef4 1ef6 1ef8 1efa 1efc 1efe 1f08 1f09 1f0a 1f0b 1f0c 1f0d 1f0e 1f0f 1f18 1f19 1f1a 1f1b 1f1c 1f1d 1f28 1f29 1f2a 1f2b 1f2c 1f2d 1f2e 1f2f 1f38 1f39 1f3a 1f3b 1f3c 1f3d 1f3e 1f3f 1f48 1f49 1f4a 1f4b 1f4c 1f4d 1f59 1f5b 1f5d 1f5f 1f68 1f69 1f6a 1f6b 1f6c 1f6d 1f6e 1f6f 1fb8 1fb9 1fba 1fbb 1fc8 1fc9 1fca 1fcb 1fd8 1fd9 1fda 1fdb 1fe8 1fe9 1fea 1feb 1fec 1ff8 1ff9 1ffa 1ffb 2102 2107 210b 210c 210d 2110 2111 2112 2115 2119 211a 211b 211c 211d 2124 2126 2128 212a 212b 212c 212d 2130 2131 2132 2133 213e 213f 2145 2183 2c00 2c01 2c02 2c03 2c04 2c05 2c06 2c07 2c08 2c09 2c0a 2c0b 2c0c 2c0d 2c0e 2c0f 2c10 2c11 2c12 2c13 2c14 2c15 2c16 2c17 2c18 2c19 2c1a 2c1b 2c1c 2c1d 2c1e 2c1f 2c20 2c21 2c22 2c23 2c24 2c25 2c26 2c27 2c28 2c29 2c2a 2c2b 2c2c 2c2d 2c2e 2c60 2c62 2c63 2c64 2c67 2c69 2c6b 2c6d 2c6e 2c6f 2c70 2c72 2c75 2c7e 2c7f 2c80 2c82 2c84 2c86 2c88 2c8a 2c8c 2c8e 2c90 2c92 2c94 2c96 2c98 2c9a 2c9c 2c9e 2ca0 2ca2 2ca4 2ca6 2ca8 2caa 2cac 2cae 2cb0 2cb2 2cb4 2cb6 2cb8 2cba 2cbc 2cbe 2cc0 2cc2 2cc4 2cc6 2cc8 2cca 2ccc 2cce 2cd0 2cd2 2cd4 2cd6 2cd8 2cda 2cdc 2cde 2ce0 2ce2 2ceb 2ced 2cf2 a640 a642 a644 a646 a648 a64a a64c a64e a650 a652 a654 a656 a658 a65a a65c a65e a660 a662 a664 a666 a668 a66a a66c a680 a682 a684 a686 a688 a68a a68c a68e a690 a692 a694 a696 a722 a724 a726 a728 a72a a72c a72e a732 a734 a736 a738 a73a a73c a73e a740 a742 a744 a746 a748 a74a a74c a74e a750 a752 a754 a756 a758 a75a a75c a75e a760 a762 a764 a766 a768 a76a a76c a76e a779 a77b a77d a77e a780 a782 a784 a786 a78b a78d a790 a792 a7a0 a7a2 a7a4 a7a6 a7a8 a7aa ff21 ff22 ff23 ff24 ff25 ff26 ff27 ff28 ff29 ff2a ff2b ff2c ff2d ff2e ff2f ff30 ff31 ff32 ff33 ff34 ff35 ff36 ff37 ff38 ff39 ff3a found 957 chars."; - string whitespaceChars = "9 a b c d 20 85 a0 1680 180e 2000 " - + "2001 2002 2003 2004 2005 2006 2007 2008 2009 200a 2028 " - + "2029 202f 205f 3000 found 26 chars."; + string whitespaceChars = "9 a b c d 20 85 a0 1680 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 200a 2028 2029 202f 205f 3000 found 25 chars."; #elif !NET_4_0 @@ -956,107 +345,7 @@ public void IsWhiteSpace () + "ff11 ff12 ff13 ff14 ff15 ff16 ff17 ff18 ff19 found 230 " + "chars."; - string lowerChars = "61 62 63 64 65 66 67 68 69 6a 6b 6c 6d " - + "6e 6f 70 71 72 73 74 75 76 77 78 79 7a aa b5 ba df e0 e1 " - + "e2 e3 e4 e5 e6 e7 e8 e9 ea eb ec ed ee ef f0 f1 f2 f3 f4 " - + "f5 f6 f8 f9 fa fb fc fd fe ff 101 103 105 107 109 10b 10d " - + "10f 111 113 115 117 119 11b 11d 11f 121 123 125 127 129 " - + "12b 12d 12f 131 133 135 137 138 13a 13c 13e 140 142 144 " - + "146 148 149 14b 14d 14f 151 153 155 157 159 15b 15d 15f " - + "161 163 165 167 169 16b 16d 16f 171 173 175 177 17a 17c " - + "17e 17f 180 183 185 188 18c 18d 192 195 199 19a 19b 19e " - + "1a1 1a3 1a5 1a8 1aa 1ab 1ad 1b0 1b4 1b6 1b9 1ba 1bd 1be " - + "1bf 1c6 1c9 1cc 1ce 1d0 1d2 1d4 1d6 1d8 1da 1dc 1dd 1df " - + "1e1 1e3 1e5 1e7 1e9 1eb 1ed 1ef 1f0 1f3 1f5 1f9 1fb 1fd " - + "1ff 201 203 205 207 209 20b 20d 20f 211 213 215 217 219 " - + "21b 21d 21f 221 223 225 227 229 22b 22d 22f 231 233 234 " - + "235 236 237 238 239 23c 23f 240 242 247 249 24b 24d 24f " - + "250 251 252 253 254 255 256 257 258 259 25a 25b 25c 25d " - + "25e 25f 260 261 262 263 264 265 266 267 268 269 26a 26b " - + "26c 26d 26e 26f 270 271 272 273 274 275 276 277 278 279 " - + "27a 27b 27c 27d 27e 27f 280 281 282 283 284 285 286 287 " - + "288 289 28a 28b 28c 28d 28e 28f 290 291 292 293 295 296 " - + "297 298 299 29a 29b 29c 29d 29e 29f 2a0 2a1 2a2 2a3 2a4 " - + "2a5 2a6 2a7 2a8 2a9 2aa 2ab 2ac 2ad 2ae 2af 37b 37c 37d " - + "390 3ac 3ad 3ae 3af 3b0 3b1 3b2 3b3 3b4 3b5 3b6 3b7 3b8 " - + "3b9 3ba 3bb 3bc 3bd 3be 3bf 3c0 3c1 3c2 3c3 3c4 3c5 3c6 " - + "3c7 3c8 3c9 3ca 3cb 3cc 3cd 3ce 3d0 3d1 3d5 3d6 3d7 3d9 " - + "3db 3dd 3df 3e1 3e3 3e5 3e7 3e9 3eb 3ed 3ef 3f0 3f1 3f2 " - + "3f3 3f5 3f8 3fb 3fc 430 431 432 433 434 435 436 437 438 " - + "439 43a 43b 43c 43d 43e 43f 440 441 442 443 444 445 446 " - + "447 448 449 44a 44b 44c 44d 44e 44f 450 451 452 453 454 " - + "455 456 457 458 459 45a 45b 45c 45d 45e 45f 461 463 465 " - + "467 469 46b 46d 46f 471 473 475 477 479 47b 47d 47f 481 " - + "48b 48d 48f 491 493 495 497 499 49b 49d 49f 4a1 4a3 4a5 " - + "4a7 4a9 4ab 4ad 4af 4b1 4b3 4b5 4b7 4b9 4bb 4bd 4bf 4c2 " - + "4c4 4c6 4c8 4ca 4cc 4ce 4cf 4d1 4d3 4d5 4d7 4d9 4db 4dd " - + "4df 4e1 4e3 4e5 4e7 4e9 4eb 4ed 4ef 4f1 4f3 4f5 4f7 4f9 " - + "4fb 4fd 4ff 501 503 505 507 509 50b 50d 50f 511 513 561 " - + "562 563 564 565 566 567 568 569 56a 56b 56c 56d 56e 56f " - + "570 571 572 573 574 575 576 577 578 579 57a 57b 57c 57d " - + "57e 57f 580 581 582 583 584 585 586 587 1d00 1d01 1d02 " - + "1d03 1d04 1d05 1d06 1d07 1d08 1d09 1d0a 1d0b 1d0c 1d0d " - + "1d0e 1d0f 1d10 1d11 1d12 1d13 1d14 1d15 1d16 1d17 1d18 " - + "1d19 1d1a 1d1b 1d1c 1d1d 1d1e 1d1f 1d20 1d21 1d22 1d23 " - + "1d24 1d25 1d26 1d27 1d28 1d29 1d2a 1d2b 1d62 1d63 1d64 " - + "1d65 1d66 1d67 1d68 1d69 1d6a 1d6b 1d6c 1d6d 1d6e 1d6f " - + "1d70 1d71 1d72 1d73 1d74 1d75 1d76 1d77 1d79 1d7a 1d7b " - + "1d7c 1d7d 1d7e 1d7f 1d80 1d81 1d82 1d83 1d84 1d85 1d86 " - + "1d87 1d88 1d89 1d8a 1d8b 1d8c 1d8d 1d8e 1d8f 1d90 1d91 " - + "1d92 1d93 1d94 1d95 1d96 1d97 1d98 1d99 1d9a 1e01 1e03 " - + "1e05 1e07 1e09 1e0b 1e0d 1e0f 1e11 1e13 1e15 1e17 1e19 " - + "1e1b 1e1d 1e1f 1e21 1e23 1e25 1e27 1e29 1e2b 1e2d 1e2f " - + "1e31 1e33 1e35 1e37 1e39 1e3b 1e3d 1e3f 1e41 1e43 1e45 " - + "1e47 1e49 1e4b 1e4d 1e4f 1e51 1e53 1e55 1e57 1e59 1e5b " - + "1e5d 1e5f 1e61 1e63 1e65 1e67 1e69 1e6b 1e6d 1e6f 1e71 " - + "1e73 1e75 1e77 1e79 1e7b 1e7d 1e7f 1e81 1e83 1e85 1e87 " - + "1e89 1e8b 1e8d 1e8f 1e91 1e93 1e95 1e96 1e97 1e98 1e99 " - + "1e9a 1e9b 1ea1 1ea3 1ea5 1ea7 1ea9 1eab 1ead 1eaf 1eb1 " - + "1eb3 1eb5 1eb7 1eb9 1ebb 1ebd 1ebf 1ec1 1ec3 1ec5 1ec7 " - + "1ec9 1ecb 1ecd 1ecf 1ed1 1ed3 1ed5 1ed7 1ed9 1edb 1edd " - + "1edf 1ee1 1ee3 1ee5 1ee7 1ee9 1eeb 1eed 1eef 1ef1 1ef3 " - + "1ef5 1ef7 1ef9 1f00 1f01 1f02 1f03 1f04 1f05 1f06 1f07 " - + "1f10 1f11 1f12 1f13 1f14 1f15 1f20 1f21 1f22 1f23 1f24 " - + "1f25 1f26 1f27 1f30 1f31 1f32 1f33 1f34 1f35 1f36 1f37 " - + "1f40 1f41 1f42 1f43 1f44 1f45 1f50 1f51 1f52 1f53 1f54 " - + "1f55 1f56 1f57 1f60 1f61 1f62 1f63 1f64 1f65 1f66 1f67 " - + "1f70 1f71 1f72 1f73 1f74 1f75 1f76 1f77 1f78 1f79 1f7a " - + "1f7b 1f7c 1f7d 1f80 1f81 1f82 1f83 1f84 1f85 1f86 1f87 " - + "1f90 1f91 1f92 1f93 1f94 1f95 1f96 1f97 1fa0 1fa1 1fa2 " - + "1fa3 1fa4 1fa5 1fa6 1fa7 1fb0 1fb1 1fb2 1fb3 1fb4 1fb6 " - + "1fb7 1fbe 1fc2 1fc3 1fc4 1fc6 1fc7 1fd0 1fd1 1fd2 1fd3 " - + "1fd6 1fd7 1fe0 1fe1 1fe2 1fe3 1fe4 1fe5 1fe6 1fe7 1ff2 " - + "1ff3 1ff4 1ff6 1ff7 2071 207f 210a 210e 210f 2113 212f " - + "2134 2139 213c 213d 2146 2147 2148 2149 214e 2184 2c30 " - + "2c31 2c32 2c33 2c34 2c35 2c36 2c37 2c38 2c39 2c3a 2c3b " - + "2c3c 2c3d 2c3e 2c3f 2c40 2c41 2c42 2c43 2c44 2c45 2c46 " - + "2c47 2c48 2c49 2c4a 2c4b 2c4c 2c4d 2c4e 2c4f 2c50 2c51 " - + "2c52 2c53 2c54 2c55 2c56 2c57 2c58 2c59 2c5a 2c5b 2c5c " - + "2c5d 2c5e 2c61 2c65 2c66 2c68 2c6a 2c6c 2c74 2c76 2c77 " - + "2c81 2c83 2c85 2c87 2c89 2c8b 2c8d 2c8f 2c91 2c93 2c95 " - + "2c97 2c99 2c9b 2c9d 2c9f 2ca1 2ca3 2ca5 2ca7 2ca9 2cab " - + "2cad 2caf 2cb1 2cb3 2cb5 2cb7 2cb9 2cbb 2cbd 2cbf 2cc1 " - + "2cc3 2cc5 2cc7 2cc9 2ccb 2ccd 2ccf 2cd1 2cd3 2cd5 2cd7 " - + "2cd9 2cdb 2cdd 2cdf 2ce1 2ce3 2ce4 2d00 2d01 2d02 2d03 " - + "2d04 2d05 2d06 2d07 2d08 2d09 2d0a 2d0b 2d0c 2d0d 2d0e " - + "2d0f 2d10 2d11 2d12 2d13 2d14 2d15 2d16 2d17 2d18 2d19 " - + "2d1a 2d1b 2d1c 2d1d 2d1e 2d1f 2d20 2d21 2d22 2d23 2d24 " - + "2d25 fb00 fb01 fb02 fb03 fb04 fb05 fb06 fb13 fb14 fb15 " - + "fb16 fb17 ff41 ff42 ff43 ff44 ff45 ff46 ff47 ff48 ff49 " - + "ff4a ff4b ff4c ff4d ff4e ff4f ff50 ff51 ff52 ff53 ff54 " - + "ff55 ff56 ff57 ff58 ff59 ff5a found 1102 chars."; - - string numbers = "30 31 32 33 34 35 36 37 38 39 b2 b3 b9 bc " - + "bd be 660 661 662 663 664 665 666 667 668 669 6f0 6f1 6f2 " - + "6f3 6f4 6f5 6f6 6f7 6f8 6f9 7c0 7c1 7c2 7c3 7c4 7c5 7c6 " - + "7c7 7c8 7c9 966 967 968 969 96a 96b 96c 96d 96e 96f 9e6 " - + "9e7 9e8 9e9 9ea 9eb 9ec 9ed 9ee 9ef 9f4 9f5 9f6 9f7 9f8 " - + "9f9 a66 a67 a68 a69 a6a a6b a6c a6d a6e a6f ae6 ae7 ae8 " - + "ae9 aea aeb aec aed aee aef b66 b67 b68 b69 b6a b6b b6c " - + "b6d b6e b6f be6 be7 be8 be9 bea beb bec bed bee bef bf0 " - + "bf1 bf2 c66 c67 c68 c69 c6a c6b c6c c6d c6e c6f ce6 ce7 " - + "ce8 ce9 cea ceb cec ced cee cef d66 d67 d68 d69 d6a d6b " - + "d6c d6d d6e d6f e50 e51 e52 e53 e54 e55 e56 e57 e58 e59 " + string lowerChars = "80 e51 e52 e53 e54 e55 e56 e57 e58 e59 " + "ed0 ed1 ed2 ed3 ed4 ed5 ed6 ed7 ed8 ed9 f20 f21 f22 f23 " + "f24 f25 f26 f27 f28 f29 f2a f2b f2c f2d f2e f2f f30 f31 " + "f32 f33 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 " diff --git a/mcs/class/corlib/Test/System/CharTest.cs b/mcs/class/corlib/Test/System/CharTest.cs index 9cb832a87609c..3005231aee2f2 100644 --- a/mcs/class/corlib/Test/System/CharTest.cs +++ b/mcs/class/corlib/Test/System/CharTest.cs @@ -470,7 +470,6 @@ public void TestIsWhiteSpace() case '\x85': case '\xa0': case '\x1680': - case '\x180e': case '\x2000': case '\x2001': case '\x2002': @@ -487,10 +486,10 @@ public void TestIsWhiteSpace() case '\x202f': case '\x205f': case '\x3000': - Assert.IsTrue (char.IsWhiteSpace ((char)i), i.ToString ()); + Assert.IsTrue (char.IsWhiteSpace ((char)i), "\\x" + i.ToString ("x")); break; default: - Assert.IsFalse (char.IsWhiteSpace ((char)i), i.ToString ()); + Assert.IsFalse (char.IsWhiteSpace ((char)i), "\\x" + i.ToString ("x")); break; } } diff --git a/mcs/class/corlib/Test/System/StringTest.cs b/mcs/class/corlib/Test/System/StringTest.cs index f5026e12fd88d..76643d858f940 100644 --- a/mcs/class/corlib/Test/System/StringTest.cs +++ b/mcs/class/corlib/Test/System/StringTest.cs @@ -3763,7 +3763,7 @@ public void TestTrim () Assert.AreEqual ("original", "\u0085original\u1680".Trim (), "net_2_0 additional char#2"); #if NET_4_0 - Assert.AreEqual ("", "\x9\xa\xb\xc\xd\x20\x85\xa0\x1680\x180e\x2000\x2001\x2002\x2003\x2004\x2005\x2006\x2007\x2008\x2009\x200a\x2028\x2029\x202f\x205f\x3000".Trim (), "net_4_0 changes #1"); + Assert.AreEqual ("", "\x9\xa\xb\xc\xd\x20\x85\xa0\x1680\x2000\x2001\x2002\x2003\x2004\x2005\x2006\x2007\x2008\x2009\x200a\x2028\x2029\x202f\x205f\x3000".Trim (), "net_4_0 changes #1"); #endif } @@ -3938,7 +3938,7 @@ public void TestSplit () Assert.AreEqual (0, chunks.Length, "Zero split"); #if NET_4_0 - Assert.AreEqual (0, "\x9\xa\xb\xc\xd\x20\x85\xa0\x1680\x180e\x2000\x2001\x2002\x2003\x2004\x2005\x2006\x2007\x2008\x2009\x200a\x2028\x2029\x202f\x205f\x3000".Split ((char[]) null, StringSplitOptions.RemoveEmptyEntries).Length, "net_4_0 changes"); + Assert.AreEqual (0, "\x9\xa\xb\xc\xd\x20\x85\xa0\x1680\x2000\x2001\x2002\x2003\x2004\x2005\x2006\x2007\x2008\x2009\x200a\x2028\x2029\x202f\x205f\x3000".Split ((char[]) null, StringSplitOptions.RemoveEmptyEntries).Length, "net_4_0 changes"); #endif } diff --git a/mcs/class/corlib/corlib.dll.sources b/mcs/class/corlib/corlib.dll.sources index 402a07919229e..73b56c3b4ac0b 100644 --- a/mcs/class/corlib/corlib.dll.sources +++ b/mcs/class/corlib/corlib.dll.sources @@ -319,7 +319,9 @@ System.Diagnostics.SymbolStore/SymLanguageType.cs System.Diagnostics.SymbolStore/SymLanguageVendor.cs System.Globalization/CalendarAlgorithmType.cs System.Globalization/CalendarWeekRule.cs -System.Globalization/CharUnicodeInfo.cs +../../../external/referencesource/mscorlib/system/globalization/bidicategory.cs +../../../external/referencesource/mscorlib/system/globalization/charunicodeinfo.cs +../../../external/referencesource/mscorlib/system/globalization/globalizationassembly.cs System.Globalization/CodePageDataItem.cs System.Globalization/CompareInfo.cs System.Globalization/CompareOptions.cs diff --git a/mcs/class/corlib/resources/charinfo.nlp b/mcs/class/corlib/resources/charinfo.nlp new file mode 100644 index 0000000000000000000000000000000000000000..41837ef4a160ef3dcad7972cabdeee53af65b458 GIT binary patch literal 34440 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