Changeset 5663

Oct 4, 2017, 11:32:37 AM (2 years ago)

Enabling Unicode string properties for \p{prop=string} search

1 added
8 edited


  • icGREP/icgrep-devel/icgrep/UCD/BidiBrackets.h

    r5661 r5663  
    1616namespace UCD {
     17    namespace BPB_ns {
     18        /** Code Point Ranges for bpb mapping to <none>
     19        [0000, 0027], [002a, 005a], [005c, 005c], [005e, 007a],
     20        [007c, 007c], [007e, 0f39], [0f3e, 169a], [169d, 2044],
     21        [2047, 207c], [207f, 208c], [208f, 2307], [230c, 2328],
     22        [232b, 2767], [2776, 27c4], [27c7, 27e5], [27f0, 2982],
     23        [2999, 29d7], [29dc, 29fb], [29fe, 2e21], [2e2a, 3007],
     24        [3012, 3013], [301c, fe58], [fe5f, ff07], [ff0a, ff3a],
     25        [ff3c, ff3c], [ff3e, ff5a], [ff5c, ff5c], [ff5e, ff5e],
     26        [ff61, ff61], [ff64, 10ffff]**/
     28        const UnicodeSet null_codepoint_set
     29                    {{{Full, 1}, {Mixed, 3}, {Full, 117}, {Mixed, 1}, {Full, 58},
     30              {Mixed, 1}, {Full, 77}, {Mixed, 3}, {Full, 19}, {Mixed, 2},
     31              {Full, 33}, {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 12},
     32              {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 33}, {Mixed, 1},
     33              {Full, 14}, {Mixed, 1}, {Full, 1649}, {Mixed, 1}, {Full, 5},
     34              {Mixed, 4}, {Full, 32772}},
     35             {0xfffffcff, 0xd7ffffff, 0xd7ffffff, 0xc3ffffff, 0xe7ffffff,
     36              0xffffff9f, 0x9fffffff, 0xffff9fff, 0xfffff0ff, 0xfffff9ff,
     37              0xffc000ff, 0xffffff9f, 0xffff003f, 0xfe000007, 0xf0ffffff,
     38              0xcfffffff, 0xfffffc03, 0xf00c00ff, 0x81ffffff, 0xfffffcff,
     39              0xd7ffffff, 0x57ffffff, 0xfffffff2}};
     41        /** Code Point Ranges for bpb mapping to <codepoint>
     42        **/
     43        const UnicodeSet reflexive_set
     44                    {{{Empty, 34816}},
     45             {}};
     47        const unsigned buffer_length = 468;
     48        const static char __attribute__ ((aligned (32))) string_buffer[512] = u8R"__()
     173        const static std::vector<codepoint_t> defined_cps = {
     174        0x0028, 0x0029, 0x005b, 0x005d, 0x007b, 0x007d, 0x0f3a, 0x0f3b,
     175        0x0f3c, 0x0f3d, 0x169b, 0x169c, 0x2045, 0x2046, 0x207d, 0x207e,
     176        0x208d, 0x208e, 0x2308, 0x2309, 0x230a, 0x230b, 0x2329, 0x232a,
     177        0x2768, 0x2769, 0x276a, 0x276b, 0x276c, 0x276d, 0x276e, 0x276f,
     178        0x2770, 0x2771, 0x2772, 0x2773, 0x2774, 0x2775, 0x27c5, 0x27c6,
     179        0x27e6, 0x27e7, 0x27e8, 0x27e9, 0x27ea, 0x27eb, 0x27ec, 0x27ed,
     180        0x27ee, 0x27ef, 0x2983, 0x2984, 0x2985, 0x2986, 0x2987, 0x2988,
     181        0x2989, 0x298a, 0x298b, 0x298c, 0x298d, 0x298e, 0x298f, 0x2990,
     182        0x2991, 0x2992, 0x2993, 0x2994, 0x2995, 0x2996, 0x2997, 0x2998,
     183        0x29d8, 0x29d9, 0x29da, 0x29db, 0x29fc, 0x29fd, 0x2e22, 0x2e23,
     184        0x2e24, 0x2e25, 0x2e26, 0x2e27, 0x2e28, 0x2e29, 0x3008, 0x3009,
     185        0x300a, 0x300b, 0x300c, 0x300d, 0x300e, 0x300f, 0x3010, 0x3011,
     186        0x3014, 0x3015, 0x3016, 0x3017, 0x3018, 0x3019, 0x301a, 0x301b,
     187        0xfe59, 0xfe5a, 0xfe5b, 0xfe5c, 0xfe5d, 0xfe5e, 0xff08, 0xff09,
     188        0xff3b, 0xff3d, 0xff5b, 0xff5d, 0xff5f, 0xff60, 0xff62, 0xff63};
     189        static StringPropertyObject property_object(bpb,
     190                                                    null_codepoint_set,
     191                                                    reflexive_set,
     192                                                    static_cast<const char *>(string_buffer),
     193                                                    buffer_length,
     194                                                    defined_cps);
     195    }
    17196  namespace BPT_ns {
    18197    const unsigned independent_prop_values = 3;
  • icGREP/icgrep-devel/icgrep/UCD/DerivedNormalizationProps.h

    r5660 r5663  
    335335        static BinaryPropertyObject property_object{Comp_Ex, codepoint_set};
    336336    }
     337    namespace FC_NFKC_ns {
     338        /** Code Point Ranges for FC_NFKC mapping to <none>
     339        **/
     341        const UnicodeSet null_codepoint_set
     342                    {{{Empty, 34816}},
     343             {}};
     345        /** Code Point Ranges for FC_NFKC mapping to <codepoint>
     346        [0000, 0379], [037b, 03d1], [03d5, 03f1], [03f3, 03f8],
     347        [03fa, 1d2b], [1d2f, 1d2f], [1d3b, 1d3b], [1d43, 20a7],
     348        [20a9, 2101], [2104, 2106], [2108, 2108], [210a, 210a],
     349        [210e, 210f], [2113, 2114], [2117, 2118], [211e, 211f],
     350        [2123, 2123], [2125, 2127], [2129, 212b], [212e, 212f],
     351        [2132, 2132], [2134, 213a], [213c, 213d], [2140, 2144],
     352        [2146, 2c7c], [2c7e, 324f], [3251, 32cb], [32cd, 32cd],
     353        [32d0, 3370], [3372, 3372], [3374, 3374], [3376, 3379],
     354        [337b, 337f], [3388, 3389], [338d, 338f], [3395, 33a8],
     355        [33ad, 33b3], [33c2, 33c2], [33c4, 33c5], [33ca, 33ca],
     356        [33cc, 33cc], [33cf, 33d6], [33d8, 33d8], [33db, 33db],
     357        [33e0, a7f7], [a7f9, 1d3ff], [1d41a, 1d433], [1d44e, 1d467],
     358        [1d482, 1d49b], [1d49d, 1d49d], [1d4a0, 1d4a1], [1d4a3, 1d4a4],
     359        [1d4a7, 1d4a8], [1d4ad, 1d4ad], [1d4b6, 1d4cf], [1d4ea, 1d503],
     360        [1d506, 1d506], [1d50b, 1d50c], [1d515, 1d515], [1d51d, 1d537],
     361        [1d53a, 1d53a], [1d53f, 1d53f], [1d545, 1d545], [1d547, 1d549],
     362        [1d551, 1d56b], [1d586, 1d59f], [1d5ba, 1d5d3], [1d5ee, 1d607],
     363        [1d622, 1d63b], [1d656, 1d66f], [1d68a, 1d6a7], [1d6c1, 1d6d2],
     364        [1d6d4, 1d6e1], [1d6fb, 1d70c], [1d70e, 1d71b], [1d735, 1d746],
     365        [1d748, 1d755], [1d76f, 1d780], [1d782, 1d78f], [1d7a9, 1d7ba],
     366        [1d7bc, 1d7c9], [1d7cb, 1f10f], [1f12f, 1f12f], [1f150, 1f169],
     367        [1f16c, 1f18f], [1f191, 10ffff]**/
     368        const UnicodeSet reflexive_set
     369                    {{{Full, 27}, {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 201},
     370              {Mixed, 2}, {Full, 26}, {Mixed, 1}, {Full, 2}, {Mixed, 3},
     371              {Full, 88}, {Mixed, 1}, {Full, 46}, {Mixed, 1}, {Full, 3},
     372              {Mixed, 1}, {Full, 4}, {Mixed, 4}, {Full, 928}, {Mixed, 1},
     373              {Full, 2400}, {Mixed, 31}, {Full, 201}, {Mixed, 5},
     374              {Full, 30835}},
     375             {0xfbffffff, 0xffe3ffff, 0xfdfbffff, 0x08008fff, 0xfffffff8,
     376              0xfffffeff, 0xc198c573, 0x37f4cee8, 0xffffffdf, 0xdfffffff,
     377              0xfffeffff, 0xffff2fff, 0xfbd5ffff, 0xffe0e300, 0x000fe1ff,
     378              0x097f9434, 0xfeffffff, 0xfc000000, 0x000fffff, 0xffffc000,
     379              0x000000ff, 0x2ffffffc, 0xffc0219b, 0x0000ffff, 0xfffffc00,
     380              0xe020184f, 0x84ffffff, 0xfffe03a0, 0x00000fff, 0xffffffc0,
     381              0xfc000000, 0x000fffff, 0xffffc000, 0x000000ff, 0x0ffffffc,
     382              0xffc00000, 0x0000ffff, 0xfffffc00, 0x000000ff, 0xfff7fffe,
     383              0xf8000003, 0x0fffdfff, 0xffe00000, 0x003fff7f, 0xffff8000,
     384              0x0000fffd, 0xf7fffe00, 0xfffffbff, 0x0000ffff, 0x00008000,
     385              0xffff0000, 0xfffff3ff, 0xfffeffff}};
     387        const unsigned buffer_length = 1578;
     388        const static char __attribute__ ((aligned (32))) string_buffer[1792] = u8R"__( ι
     1029        const static std::vector<codepoint_t> defined_cps = {
     1030        0x037a, 0x03d2, 0x03d3, 0x03d4, 0x03f2, 0x03f9, 0x1d2c, 0x1d2d,
     1031        0x1d2e, 0x1d30, 0x1d31, 0x1d32, 0x1d33, 0x1d34, 0x1d35, 0x1d36,
     1032        0x1d37, 0x1d38, 0x1d39, 0x1d3a, 0x1d3c, 0x1d3d, 0x1d3e, 0x1d3f,
     1033        0x1d40, 0x1d41, 0x1d42, 0x20a8, 0x2102, 0x2103, 0x2107, 0x2109,
     1034        0x210b, 0x210c, 0x210d, 0x2110, 0x2111, 0x2112, 0x2115, 0x2116,
     1035        0x2119, 0x211a, 0x211b, 0x211c, 0x211d, 0x2120, 0x2121, 0x2122,
     1036        0x2124, 0x2128, 0x212c, 0x212d, 0x2130, 0x2131, 0x2133, 0x213b,
     1037        0x213e, 0x213f, 0x2145, 0x2c7d, 0x3250, 0x32cc, 0x32ce, 0x32cf,
     1038        0x3371, 0x3373, 0x3375, 0x337a, 0x3380, 0x3381, 0x3382, 0x3383,
     1039        0x3384, 0x3385, 0x3386, 0x3387, 0x338a, 0x338b, 0x338c, 0x3390,
     1040        0x3391, 0x3392, 0x3393, 0x3394, 0x33a9, 0x33aa, 0x33ab, 0x33ac,
     1041        0x33b4, 0x33b5, 0x33b6, 0x33b7, 0x33b8, 0x33b9, 0x33ba, 0x33bb,
     1042        0x33bc, 0x33bd, 0x33be, 0x33bf, 0x33c0, 0x33c1, 0x33c3, 0x33c6,
     1043        0x33c7, 0x33c8, 0x33c9, 0x33cb, 0x33cd, 0x33ce, 0x33d7, 0x33d9,
     1044        0x33da, 0x33dc, 0x33dd, 0x33de, 0x33df, 0xa7f8, 0x1d400, 0x1d401,
     1045        0x1d402, 0x1d403, 0x1d404, 0x1d405, 0x1d406, 0x1d407, 0x1d408,
     1046        0x1d409, 0x1d40a, 0x1d40b, 0x1d40c, 0x1d40d, 0x1d40e, 0x1d40f,
     1047        0x1d410, 0x1d411, 0x1d412, 0x1d413, 0x1d414, 0x1d415, 0x1d416,
     1048        0x1d417, 0x1d418, 0x1d419, 0x1d434, 0x1d435, 0x1d436, 0x1d437,
     1049        0x1d438, 0x1d439, 0x1d43a, 0x1d43b, 0x1d43c, 0x1d43d, 0x1d43e,
     1050        0x1d43f, 0x1d440, 0x1d441, 0x1d442, 0x1d443, 0x1d444, 0x1d445,
     1051        0x1d446, 0x1d447, 0x1d448, 0x1d449, 0x1d44a, 0x1d44b, 0x1d44c,
     1052        0x1d44d, 0x1d468, 0x1d469, 0x1d46a, 0x1d46b, 0x1d46c, 0x1d46d,
     1053        0x1d46e, 0x1d46f, 0x1d470, 0x1d471, 0x1d472, 0x1d473, 0x1d474,
     1054        0x1d475, 0x1d476, 0x1d477, 0x1d478, 0x1d479, 0x1d47a, 0x1d47b,
     1055        0x1d47c, 0x1d47d, 0x1d47e, 0x1d47f, 0x1d480, 0x1d481, 0x1d49c,
     1056        0x1d49e, 0x1d49f, 0x1d4a2, 0x1d4a5, 0x1d4a6, 0x1d4a9, 0x1d4aa,
     1057        0x1d4ab, 0x1d4ac, 0x1d4ae, 0x1d4af, 0x1d4b0, 0x1d4b1, 0x1d4b2,
     1058        0x1d4b3, 0x1d4b4, 0x1d4b5, 0x1d4d0, 0x1d4d1, 0x1d4d2, 0x1d4d3,
     1059        0x1d4d4, 0x1d4d5, 0x1d4d6, 0x1d4d7, 0x1d4d8, 0x1d4d9, 0x1d4da,
     1060        0x1d4db, 0x1d4dc, 0x1d4dd, 0x1d4de, 0x1d4df, 0x1d4e0, 0x1d4e1,
     1061        0x1d4e2, 0x1d4e3, 0x1d4e4, 0x1d4e5, 0x1d4e6, 0x1d4e7, 0x1d4e8,
     1062        0x1d4e9, 0x1d504, 0x1d505, 0x1d507, 0x1d508, 0x1d509, 0x1d50a,
     1063        0x1d50d, 0x1d50e, 0x1d50f, 0x1d510, 0x1d511, 0x1d512, 0x1d513,
     1064        0x1d514, 0x1d516, 0x1d517, 0x1d518, 0x1d519, 0x1d51a, 0x1d51b,
     1065        0x1d51c, 0x1d538, 0x1d539, 0x1d53b, 0x1d53c, 0x1d53d, 0x1d53e,
     1066        0x1d540, 0x1d541, 0x1d542, 0x1d543, 0x1d544, 0x1d546, 0x1d54a,
     1067        0x1d54b, 0x1d54c, 0x1d54d, 0x1d54e, 0x1d54f, 0x1d550, 0x1d56c,
     1068        0x1d56d, 0x1d56e, 0x1d56f, 0x1d570, 0x1d571, 0x1d572, 0x1d573,
     1069        0x1d574, 0x1d575, 0x1d576, 0x1d577, 0x1d578, 0x1d579, 0x1d57a,
     1070        0x1d57b, 0x1d57c, 0x1d57d, 0x1d57e, 0x1d57f, 0x1d580, 0x1d581,
     1071        0x1d582, 0x1d583, 0x1d584, 0x1d585, 0x1d5a0, 0x1d5a1, 0x1d5a2,
     1072        0x1d5a3, 0x1d5a4, 0x1d5a5, 0x1d5a6, 0x1d5a7, 0x1d5a8, 0x1d5a9,
     1073        0x1d5aa, 0x1d5ab, 0x1d5ac, 0x1d5ad, 0x1d5ae, 0x1d5af, 0x1d5b0,
     1074        0x1d5b1, 0x1d5b2, 0x1d5b3, 0x1d5b4, 0x1d5b5, 0x1d5b6, 0x1d5b7,
     1075        0x1d5b8, 0x1d5b9, 0x1d5d4, 0x1d5d5, 0x1d5d6, 0x1d5d7, 0x1d5d8,
     1076        0x1d5d9, 0x1d5da, 0x1d5db, 0x1d5dc, 0x1d5dd, 0x1d5de, 0x1d5df,
     1077        0x1d5e0, 0x1d5e1, 0x1d5e2, 0x1d5e3, 0x1d5e4, 0x1d5e5, 0x1d5e6,
     1078        0x1d5e7, 0x1d5e8, 0x1d5e9, 0x1d5ea, 0x1d5eb, 0x1d5ec, 0x1d5ed,
     1079        0x1d608, 0x1d609, 0x1d60a, 0x1d60b, 0x1d60c, 0x1d60d, 0x1d60e,
     1080        0x1d60f, 0x1d610, 0x1d611, 0x1d612, 0x1d613, 0x1d614, 0x1d615,
     1081        0x1d616, 0x1d617, 0x1d618, 0x1d619, 0x1d61a, 0x1d61b, 0x1d61c,
     1082        0x1d61d, 0x1d61e, 0x1d61f, 0x1d620, 0x1d621, 0x1d63c, 0x1d63d,
     1083        0x1d63e, 0x1d63f, 0x1d640, 0x1d641, 0x1d642, 0x1d643, 0x1d644,
     1084        0x1d645, 0x1d646, 0x1d647, 0x1d648, 0x1d649, 0x1d64a, 0x1d64b,
     1085        0x1d64c, 0x1d64d, 0x1d64e, 0x1d64f, 0x1d650, 0x1d651, 0x1d652,
     1086        0x1d653, 0x1d654, 0x1d655, 0x1d670, 0x1d671, 0x1d672, 0x1d673,
     1087        0x1d674, 0x1d675, 0x1d676, 0x1d677, 0x1d678, 0x1d679, 0x1d67a,
     1088        0x1d67b, 0x1d67c, 0x1d67d, 0x1d67e, 0x1d67f, 0x1d680, 0x1d681,
     1089        0x1d682, 0x1d683, 0x1d684, 0x1d685, 0x1d686, 0x1d687, 0x1d688,
     1090        0x1d689, 0x1d6a8, 0x1d6a9, 0x1d6aa, 0x1d6ab, 0x1d6ac, 0x1d6ad,
     1091        0x1d6ae, 0x1d6af, 0x1d6b0, 0x1d6b1, 0x1d6b2, 0x1d6b3, 0x1d6b4,
     1092        0x1d6b5, 0x1d6b6, 0x1d6b7, 0x1d6b8, 0x1d6b9, 0x1d6ba, 0x1d6bb,
     1093        0x1d6bc, 0x1d6bd, 0x1d6be, 0x1d6bf, 0x1d6c0, 0x1d6d3, 0x1d6e2,
     1094        0x1d6e3, 0x1d6e4, 0x1d6e5, 0x1d6e6, 0x1d6e7, 0x1d6e8, 0x1d6e9,
     1095        0x1d6ea, 0x1d6eb, 0x1d6ec, 0x1d6ed, 0x1d6ee, 0x1d6ef, 0x1d6f0,
     1096        0x1d6f1, 0x1d6f2, 0x1d6f3, 0x1d6f4, 0x1d6f5, 0x1d6f6, 0x1d6f7,
     1097        0x1d6f8, 0x1d6f9, 0x1d6fa, 0x1d70d, 0x1d71c, 0x1d71d, 0x1d71e,
     1098        0x1d71f, 0x1d720, 0x1d721, 0x1d722, 0x1d723, 0x1d724, 0x1d725,
     1099        0x1d726, 0x1d727, 0x1d728, 0x1d729, 0x1d72a, 0x1d72b, 0x1d72c,
     1100        0x1d72d, 0x1d72e, 0x1d72f, 0x1d730, 0x1d731, 0x1d732, 0x1d733,
     1101        0x1d734, 0x1d747, 0x1d756, 0x1d757, 0x1d758, 0x1d759, 0x1d75a,
     1102        0x1d75b, 0x1d75c, 0x1d75d, 0x1d75e, 0x1d75f, 0x1d760, 0x1d761,
     1103        0x1d762, 0x1d763, 0x1d764, 0x1d765, 0x1d766, 0x1d767, 0x1d768,
     1104        0x1d769, 0x1d76a, 0x1d76b, 0x1d76c, 0x1d76d, 0x1d76e, 0x1d781,
     1105        0x1d790, 0x1d791, 0x1d792, 0x1d793, 0x1d794, 0x1d795, 0x1d796,
     1106        0x1d797, 0x1d798, 0x1d799, 0x1d79a, 0x1d79b, 0x1d79c, 0x1d79d,
     1107        0x1d79e, 0x1d79f, 0x1d7a0, 0x1d7a1, 0x1d7a2, 0x1d7a3, 0x1d7a4,
     1108        0x1d7a5, 0x1d7a6, 0x1d7a7, 0x1d7a8, 0x1d7bb, 0x1d7ca, 0x1f110,
     1109        0x1f111, 0x1f112, 0x1f113, 0x1f114, 0x1f115, 0x1f116, 0x1f117,
     1110        0x1f118, 0x1f119, 0x1f11a, 0x1f11b, 0x1f11c, 0x1f11d, 0x1f11e,
     1111        0x1f11f, 0x1f120, 0x1f121, 0x1f122, 0x1f123, 0x1f124, 0x1f125,
     1112        0x1f126, 0x1f127, 0x1f128, 0x1f129, 0x1f12a, 0x1f12b, 0x1f12c,
     1113        0x1f12d, 0x1f12e, 0x1f130, 0x1f131, 0x1f132, 0x1f133, 0x1f134,
     1114        0x1f135, 0x1f136, 0x1f137, 0x1f138, 0x1f139, 0x1f13a, 0x1f13b,
     1115        0x1f13c, 0x1f13d, 0x1f13e, 0x1f13f, 0x1f140, 0x1f141, 0x1f142,
     1116        0x1f143, 0x1f144, 0x1f145, 0x1f146, 0x1f147, 0x1f148, 0x1f149,
     1117        0x1f14a, 0x1f14b, 0x1f14c, 0x1f14d, 0x1f14e, 0x1f14f, 0x1f16a,
     1118        0x1f16b, 0x1f190};
     1119        static StringPropertyObject property_object(FC_NFKC,
     1120                                                    null_codepoint_set,
     1121                                                    reflexive_set,
     1122                                                    static_cast<const char *>(string_buffer),
     1123                                                    buffer_length,
     1124                                                    defined_cps);
     1125    }
    3371126  namespace NFC_QC_ns {
    3381127    const unsigned independent_prop_values = 3;
    6401429         {&y_Set, &n_Set
    6411430         }};
     1431    }
     1432    namespace NFKC_CF_ns {
     1433        /** Code Point Ranges for NFKC_CF mapping to <none>
     1434        [00ad, 00ad], [034f, 034f], [061c, 061c], [115f, 1160],
     1435        [17b4, 17b5], [180b, 180e], [200b, 200f], [202a, 202e],
     1436        [2060, 206f], [3164, 3164], [fe00, fe0f], [feff, feff],
     1437        [ffa0, ffa0], [fff0, fff8], [1bca0, 1bca3], [1d173, 1d17a],
     1438        [e0000, e0fff]**/
     1440        const UnicodeSet null_codepoint_set
     1441                    {{{Empty, 5}, {Mixed, 1}, {Empty, 20}, {Mixed, 1}, {Empty, 21},
     1442              {Mixed, 1}, {Empty, 89}, {Mixed, 2}, {Empty, 49}, {Mixed, 1},
     1443              {Empty, 2}, {Mixed, 1}, {Empty, 63}, {Mixed, 2}, {Empty, 1},
     1444              {Mixed, 1}, {Empty, 135}, {Mixed, 1}, {Empty, 1636},
     1445              {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 5}, {Mixed, 1},
     1446              {Empty, 1}, {Mixed, 1}, {Empty, 1509}, {Mixed, 1},
     1447              {Empty, 165}, {Mixed, 1}, {Empty, 24948}, {Full, 128},
     1448              {Empty, 6016}},
     1449             {0x00002000, 0x00008000, 0x10000000, 0x80000000, 0x00000001,
     1450              0x00300000, 0x00007800, 0x0000f800, 0x00007c00, 0x0000ffff,
     1451              0x00000010, 0x0000ffff, 0x80000000, 0x00000001, 0x01ff0000,
     1452              0x0000000f, 0x07f80000}};
     1454        /** Code Point Ranges for NFKC_CF mapping to <codepoint>
     1455        [0000, 0040], [005b, 009f], [00a1, 00a7], [00a9, 00a9],
     1456        [00ab, 00ac], [00ae, 00ae], [00b0, 00b1], [00b6, 00b7],
     1457        [00bb, 00bb], [00bf, 00bf], [00d7, 00d7], [00e0, 00ff],
     1458        [0101, 0101], [0103, 0103], [0105, 0105], [0107, 0107],
     1459        [0109, 0109], [010b, 010b], [010d, 010d], [010f, 010f],
     1460        [0111, 0111], [0113, 0113], [0115, 0115], [0117, 0117],
     1461        [0119, 0119], [011b, 011b], [011d, 011d], [011f, 011f],
     1462        [0121, 0121], [0123, 0123], [0125, 0125], [0127, 0127],
     1463        [0129, 0129], [012b, 012b], [012d, 012d], [012f, 012f],
     1464        [0131, 0131], [0135, 0135], [0137, 0138], [013a, 013a],
     1465        [013c, 013c], [013e, 013e], [0142, 0142], [0144, 0144],
     1466        [0146, 0146], [0148, 0148], [014b, 014b], [014d, 014d],
     1467        [014f, 014f], [0151, 0151], [0153, 0153], [0155, 0155],
     1468        [0157, 0157], [0159, 0159], [015b, 015b], [015d, 015d],
     1469        [015f, 015f], [0161, 0161], [0163, 0163], [0165, 0165],
     1470        [0167, 0167], [0169, 0169], [016b, 016b], [016d, 016d],
     1471        [016f, 016f], [0171, 0171], [0173, 0173], [0175, 0175],
     1472        [0177, 0177], [017a, 017a], [017c, 017c], [017e, 017e],
     1473        [0180, 0180], [0183, 0183], [0185, 0185], [0188, 0188],
     1474        [018c, 018d], [0192, 0192], [0195, 0195], [0199, 019b],
     1475        [019e, 019e], [01a1, 01a1], [01a3, 01a3], [01a5, 01a5],
     1476        [01a8, 01a8], [01aa, 01ab], [01ad, 01ad], [01b0, 01b0],
     1477        [01b4, 01b4], [01b6, 01b6], [01b9, 01bb], [01bd, 01c3],
     1478        [01ce, 01ce], [01d0, 01d0], [01d2, 01d2], [01d4, 01d4],
     1479        [01d6, 01d6], [01d8, 01d8], [01da, 01da], [01dc, 01dd],
     1480        [01df, 01df], [01e1, 01e1], [01e3, 01e3], [01e5, 01e5],
     1481        [01e7, 01e7], [01e9, 01e9], [01eb, 01eb], [01ed, 01ed],
     1482        [01ef, 01f0], [01f5, 01f5], [01f9, 01f9], [01fb, 01fb],
     1483        [01fd, 01fd], [01ff, 01ff], [0201, 0201], [0203, 0203],
     1484        [0205, 0205], [0207, 0207], [0209, 0209], [020b, 020b],
     1485        [020d, 020d], [020f, 020f], [0211, 0211], [0213, 0213],
     1486        [0215, 0215], [0217, 0217], [0219, 0219], [021b, 021b],
     1487        [021d, 021d], [021f, 021f], [0221, 0221], [0223, 0223],
     1488        [0225, 0225], [0227, 0227], [0229, 0229], [022b, 022b],
     1489        [022d, 022d], [022f, 022f], [0231, 0231], [0233, 0239],
     1490        [023c, 023c], [023f, 0240], [0242, 0242], [0247, 0247],
     1491        [0249, 0249], [024b, 024b], [024d, 024d], [024f, 02af],
     1492        [02b9, 02d7], [02de, 02df], [02e5, 033f], [0342, 0342],
     1493        [0346, 034e], [0350, 036f], [0371, 0371], [0373, 0373],
     1494        [0375, 0375], [0377, 0379], [037b, 037d], [0380, 0383],
     1495        [038b, 038b], [038d, 038d], [0390, 0390], [03a2, 03a2],
     1496        [03ac, 03c1], [03c3, 03ce], [03d7, 03d7], [03d9, 03d9],
     1497        [03db, 03db], [03dd, 03dd], [03df, 03df], [03e1, 03e1],
     1498        [03e3, 03e3], [03e5, 03e5], [03e7, 03e7], [03e9, 03e9],
     1499        [03eb, 03eb], [03ed, 03ed], [03ef, 03ef], [03f3, 03f3],
     1500        [03f6, 03f6], [03f8, 03f8], [03fb, 03fc], [0430, 045f],
     1501        [0461, 0461], [0463, 0463], [0465, 0465], [0467, 0467],
     1502        [0469, 0469], [046b, 046b], [046d, 046d], [046f, 046f],
     1503        [0471, 0471], [0473, 0473], [0475, 0475], [0477, 0477],
     1504        [0479, 0479], [047b, 047b], [047d, 047d], [047f, 047f],
     1505        [0481, 0489], [048b, 048b], [048d, 048d], [048f, 048f],
     1506        [0491, 0491], [0493, 0493], [0495, 0495], [0497, 0497],
     1507        [0499, 0499], [049b, 049b], [049d, 049d], [049f, 049f],
     1508        [04a1, 04a1], [04a3, 04a3], [04a5, 04a5], [04a7, 04a7],
     1509        [04a9, 04a9], [04ab, 04ab], [04ad, 04ad], [04af, 04af],
     1510        [04b1, 04b1], [04b3, 04b3], [04b5, 04b5], [04b7, 04b7],
     1511        [04b9, 04b9], [04bb, 04bb], [04bd, 04bd], [04bf, 04bf],
     1512        [04c2, 04c2], [04c4, 04c4], [04c6, 04c6], [04c8, 04c8],
     1513        [04ca, 04ca], [04cc, 04cc], [04ce, 04cf], [04d1, 04d1],
     1514        [04d3, 04d3], [04d5, 04d5], [04d7, 04d7], [04d9, 04d9],
     1515        [04db, 04db], [04dd, 04dd], [04df, 04df], [04e1, 04e1],
     1516        [04e3, 04e3], [04e5, 04e5], [04e7, 04e7], [04e9, 04e9],
     1517        [04eb, 04eb], [04ed, 04ed], [04ef, 04ef], [04f1, 04f1],
     1518        [04f3, 04f3], [04f5, 04f5], [04f7, 04f7], [04f9, 04f9],
     1519        [04fb, 04fb], [04fd, 04fd], [04ff, 04ff], [0501, 0501],
     1520        [0503, 0503], [0505, 0505], [0507, 0507], [0509, 0509],
     1521        [050b, 050b], [050d, 050d], [050f, 050f], [0511, 0511],
     1522        [0513, 0513], [0515, 0515], [0517, 0517], [0519, 0519],
     1523        [051b, 051b], [051d, 051d], [051f, 051f], [0521, 0521],
     1524        [0523, 0523], [0525, 0525], [0527, 0527], [0529, 0529],
     1525        [052b, 052b], [052d, 052d], [052f, 0530], [0557, 0586],
     1526        [0588, 061b], [061d, 0674], [0679, 0957], [0960, 09db],
     1527        [09de, 09de], [09e0, 0a32], [0a34, 0a35], [0a37, 0a58],
     1528        [0a5c, 0a5d], [0a5f, 0b5b], [0b5e, 0e32], [0e34, 0eb2],
     1529        [0eb4, 0edb], [0ede, 0f0b], [0f0d, 0f42], [0f44, 0f4c],
     1530        [0f4e, 0f51], [0f53, 0f56], [0f58, 0f5b], [0f5d, 0f68],
     1531        [0f6a, 0f72], [0f74, 0f74], [0f7a, 0f80], [0f82, 0f92],
     1532        [0f94, 0f9c], [0f9e, 0fa1], [0fa3, 0fa6], [0fa8, 0fab],
     1533        [0fad, 0fb8], [0fba, 109f], [10c6, 10c6], [10c8, 10cc],
     1534        [10ce, 10fb], [10fd, 115e], [1161, 13f7], [13fe, 17b3],
     1535        [17b6, 180a], [180f, 1c7f], [1c89, 1d2b], [1d2f, 1d2f],
     1536        [1d3b, 1d3b], [1d4e, 1d4e], [1d6b, 1d77], [1d79, 1d9a],
     1537        [1dc0, 1dff], [1e01, 1e01], [1e03, 1e03], [1e05, 1e05],
     1538        [1e07, 1e07], [1e09, 1e09], [1e0b, 1e0b], [1e0d, 1e0d],
     1539        [1e0f, 1e0f], [1e11, 1e11], [1e13, 1e13], [1e15, 1e15],
     1540        [1e17, 1e17], [1e19, 1e19], [1e1b, 1e1b], [1e1d, 1e1d],
     1541        [1e1f, 1e1f], [1e21, 1e21], [1e23, 1e23], [1e25, 1e25],
     1542        [1e27, 1e27], [1e29, 1e29], [1e2b, 1e2b], [1e2d, 1e2d],
     1543        [1e2f, 1e2f], [1e31, 1e31], [1e33, 1e33], [1e35, 1e35],
     1544        [1e37, 1e37], [1e39, 1e39], [1e3b, 1e3b], [1e3d, 1e3d],
     1545        [1e3f, 1e3f], [1e41, 1e41], [1e43, 1e43], [1e45, 1e45],
     1546        [1e47, 1e47], [1e49, 1e49], [1e4b, 1e4b], [1e4d, 1e4d],
     1547        [1e4f, 1e4f], [1e51, 1e51], [1e53, 1e53], [1e55, 1e55],
     1548        [1e57, 1e57], [1e59, 1e59], [1e5b, 1e5b], [1e5d, 1e5d],
     1549        [1e5f, 1e5f], [1e61, 1e61], [1e63, 1e63], [1e65, 1e65],
     1550        [1e67, 1e67], [1e69, 1e69], [1e6b, 1e6b], [1e6d, 1e6d],
     1551        [1e6f, 1e6f], [1e71, 1e71], [1e73, 1e73], [1e75, 1e75],
     1552        [1e77, 1e77], [1e79, 1e79], [1e7b, 1e7b], [1e7d, 1e7d],
     1553        [1e7f, 1e7f], [1e81, 1e81], [1e83, 1e83], [1e85, 1e85],
     1554        [1e87, 1e87], [1e89, 1e89], [1e8b, 1e8b], [1e8d, 1e8d],
     1555        [1e8f, 1e8f], [1e91, 1e91], [1e93, 1e93], [1e95, 1e99],
     1556        [1e9c, 1e9d], [1e9f, 1e9f], [1ea1, 1ea1], [1ea3, 1ea3],
     1557        [1ea5, 1ea5], [1ea7, 1ea7], [1ea9, 1ea9], [1eab, 1eab],
     1558        [1ead, 1ead], [1eaf, 1eaf], [1eb1, 1eb1], [1eb3, 1eb3],
     1559        [1eb5, 1eb5], [1eb7, 1eb7], [1eb9, 1eb9], [1ebb, 1ebb],
     1560        [1ebd, 1ebd], [1ebf, 1ebf], [1ec1, 1ec1], [1ec3, 1ec3],
     1561        [1ec5, 1ec5], [1ec7, 1ec7], [1ec9, 1ec9], [1ecb, 1ecb],
     1562        [1ecd, 1ecd], [1ecf, 1ecf], [1ed1, 1ed1], [1ed3, 1ed3],
     1563        [1ed5, 1ed5], [1ed7, 1ed7], [1ed9, 1ed9], [1edb, 1edb],
     1564        [1edd, 1edd], [1edf, 1edf], [1ee1, 1ee1], [1ee3, 1ee3],
     1565        [1ee5, 1ee5], [1ee7, 1ee7], [1ee9, 1ee9], [1eeb, 1eeb],
     1566        [1eed, 1eed], [1eef, 1eef], [1ef1, 1ef1], [1ef3, 1ef3],
     1567        [1ef5, 1ef5], [1ef7, 1ef7], [1ef9, 1ef9], [1efb, 1efb],
     1568        [1efd, 1efd], [1eff, 1f07], [1f10, 1f17], [1f1e, 1f27],
     1569        [1f30, 1f37], [1f40, 1f47], [1f4e, 1f58], [1f5a, 1f5a],
     1570        [1f5c, 1f5c], [1f5e, 1f5e], [1f60, 1f67], [1f70, 1f70],
     1571        [1f72, 1f72], [1f74, 1f74], [1f76, 1f76], [1f78, 1f78],
     1572        [1f7a, 1f7a], [1f7c, 1f7c], [1f7e, 1f7f], [1fb0, 1fb1],
     1573        [1fb5, 1fb6], [1fc5, 1fc6], [1fd0, 1fd2], [1fd4, 1fd7],
     1574        [1fdc, 1fdc], [1fe0, 1fe2], [1fe4, 1fe7], [1ff0, 1ff1],
     1575        [1ff5, 1ff6], [1fff, 1fff], [2010, 2010], [2012, 2016],
     1576        [2018, 2023], [2027, 2029], [2030, 2032], [2035, 2035],
     1577        [2038, 203b], [203d, 203d], [203f, 2046], [204a, 2056],
     1578        [2058, 205e], [2072, 2073], [208f, 208f], [209d, 20a7],
     1579        [20a9, 20ff], [2104, 2104], [2108, 2108], [2114, 2114],
     1580        [2117, 2118], [211e, 211f], [2123, 2123], [2125, 2125],
     1581        [2127, 2127], [2129, 2129], [212e, 212e], [213a, 213a],
     1582        [2141, 2144], [214a, 214f], [2180, 2182], [2184, 2188],
     1583        [218a, 222b], [222e, 222e], [2231, 2328], [232b, 245f],
     1584        [24eb, 2a0b], [2a0d, 2a73], [2a77, 2adb], [2add, 2bff],
     1585        [2c2f, 2c5f], [2c61, 2c61], [2c65, 2c66], [2c68, 2c68],
     1586        [2c6a, 2c6a], [2c6c, 2c6c], [2c71, 2c71], [2c73, 2c74],
     1587        [2c76, 2c7b], [2c81, 2c81], [2c83, 2c83], [2c85, 2c85],
     1588        [2c87, 2c87], [2c89, 2c89], [2c8b, 2c8b], [2c8d, 2c8d],
     1589        [2c8f, 2c8f], [2c91, 2c91], [2c93, 2c93], [2c95, 2c95],
     1590        [2c97, 2c97], [2c99, 2c99], [2c9b, 2c9b], [2c9d, 2c9d],
     1591        [2c9f, 2c9f], [2ca1, 2ca1], [2ca3, 2ca3], [2ca5, 2ca5],
     1592        [2ca7, 2ca7], [2ca9, 2ca9], [2cab, 2cab], [2cad, 2cad],
     1593        [2caf, 2caf], [2cb1, 2cb1], [2cb3, 2cb3], [2cb5, 2cb5],
     1594        [2cb7, 2cb7], [2cb9, 2cb9], [2cbb, 2cbb], [2cbd, 2cbd],
     1595        [2cbf, 2cbf], [2cc1, 2cc1], [2cc3, 2cc3], [2cc5, 2cc5],
     1596        [2cc7, 2cc7], [2cc9, 2cc9], [2ccb, 2ccb], [2ccd, 2ccd],
     1597        [2ccf, 2ccf], [2cd1, 2cd1], [2cd3, 2cd3], [2cd5, 2cd5],
     1598        [2cd7, 2cd7], [2cd9, 2cd9], [2cdb, 2cdb], [2cdd, 2cdd],
     1599        [2cdf, 2cdf], [2ce1, 2ce1], [2ce3, 2cea], [2cec, 2cec],
     1600        [2cee, 2cf1], [2cf3, 2d6e], [2d70, 2e9e], [2ea0, 2ef2],
     1601        [2ef4, 2eff], [2fd6, 2fff], [3001, 3035], [3037, 3037],
     1602        [303b, 309a], [309d, 309e], [30a0, 30fe], [3100, 3130],
     1603        [318f, 3191], [31a0, 31ff], [321f, 321f], [3248, 324f],
     1604        [327f, 327f], [32ff, 32ff], [3400, a63f], [a641, a641],
     1605        [a643, a643], [a645, a645], [a647, a647], [a649, a649],
     1606        [a64b, a64b], [a64d, a64d], [a64f, a64f], [a651, a651],
     1607        [a653, a653], [a655, a655], [a657, a657], [a659, a659],
     1608        [a65b, a65b], [a65d, a65d], [a65f, a65f], [a661, a661],
     1609        [a663, a663], [a665, a665], [a667, a667], [a669, a669],
     1610        [a66b, a66b], [a66d, a67f], [a681, a681], [a683, a683],
     1611        [a685, a685], [a687, a687], [a689, a689], [a68b, a68b],
     1612        [a68d, a68d], [a68f, a68f], [a691, a691], [a693, a693],
     1613        [a695, a695], [a697, a697], [a699, a699], [a69b, a69b],
     1614        [a69e, a721], [a723, a723], [a725, a725], [a727, a727],
     1615        [a729, a729], [a72b, a72b], [a72d, a72d], [a72f, a731],
     1616        [a733, a733], [a735, a735], [a737, a737], [a739, a739],
     1617        [a73b, a73b], [a73d, a73d], [a73f, a73f], [a741, a741],
     1618        [a743, a743], [a745, a745], [a747, a747], [a749, a749],
     1619        [a74b, a74b], [a74d, a74d], [a74f, a74f], [a751, a751],
     1620        [a753, a753], [a755, a755], [a757, a757], [a759, a759],
     1621        [a75b, a75b], [a75d, a75d], [a75f, a75f], [a761, a761],
     1622        [a763, a763], [a765, a765], [a767, a767], [a769, a769],
     1623        [a76b, a76b], [a76d, a76d], [a76f, a76f], [a771, a778],
     1624        [a77a, a77a], [a77c, a77c], [a77f, a77f], [a781, a781],
     1625        [a783, a783], [a785, a785], [a787, a78a], [a78c, a78c],
     1626        [a78e, a78f], [a791, a791], [a793, a795], [a797, a797],
     1627        [a799, a799], [a79b, a79b], [a79d, a79d], [a79f, a79f],
     1628        [a7a1, a7a1], [a7a3, a7a3], [a7a5, a7a5], [a7a7, a7a7],
     1629        [a7a9, a7a9], [a7af, a7af], [a7b5, a7b5], [a7b7, a7f7],
     1630        [a7fa, ab5b], [ab60, ab6f], [abc0, f8ff], [fa0e, fa0f],
     1631        [fa11, fa11], [fa13, fa14], [fa1f, fa1f], [fa21, fa21],
     1632        [fa23, fa24], [fa27, fa29], [fa6e, fa6f], [fada, faff],
     1633        [fb07, fb12], [fb18, fb1c], [fb1e, fb1e], [fb37, fb37],
     1634        [fb3d, fb3d], [fb3f, fb3f], [fb42, fb42], [fb45, fb45],
     1635        [fbb2, fbd2], [fd3e, fd4f], [fd90, fd91], [fdc8, fdef],
     1636        [fdfd, fdff], [fe1a, fe2f], [fe45, fe46], [fe53, fe53],
     1637        [fe67, fe67], [fe6c, fe6f], [fe73, fe73], [fe75, fe75],
     1638        [fefd, fefe], [ff00, ff00], [ffbf, ffc1], [ffc8, ffc9],
     1639        [ffd0, ffd1], [ffd8, ffd9], [ffdd, ffdf], [ffe7, ffe7],
     1640        [ffef, ffef], [fff9, 103ff], [10428, 104af], [104d4, 10c7f],
     1641        [10cb3, 1189f], [118c0, 1bc9f], [1bca4, 1d15d], [1d165, 1d172],
     1642        [1d17b, 1d1ba], [1d1c1, 1d3ff], [1d455, 1d455], [1d49d, 1d49d],
     1643        [1d4a0, 1d4a1], [1d4a3, 1d4a4], [1d4a7, 1d4a8], [1d4ad, 1d4ad],
     1644        [1d4ba, 1d4ba], [1d4bc, 1d4bc], [1d4c4, 1d4c4], [1d506, 1d506],
     1645        [1d50b, 1d50c], [1d515, 1d515], [1d51d, 1d51d], [1d53a, 1d53a],
     1646        [1d53f, 1d53f], [1d545, 1d545], [1d547, 1d549], [1d551, 1d551],
     1647        [1d6a6, 1d6a7], [1d7cc, 1d7cd], [1d800, 1e8ff], [1e922, 1edff],
     1648        [1ee04, 1ee04], [1ee20, 1ee20], [1ee23, 1ee23], [1ee25, 1ee26],
     1649        [1ee28, 1ee28], [1ee33, 1ee33], [1ee38, 1ee38], [1ee3a, 1ee3a],
     1650        [1ee3c, 1ee41], [1ee43, 1ee46], [1ee48, 1ee48], [1ee4a, 1ee4a],
     1651        [1ee4c, 1ee4c], [1ee50, 1ee50], [1ee53, 1ee53], [1ee55, 1ee56],
     1652        [1ee58, 1ee58], [1ee5a, 1ee5a], [1ee5c, 1ee5c], [1ee5e, 1ee5e],
     1653        [1ee60, 1ee60], [1ee63, 1ee63], [1ee65, 1ee66], [1ee6b, 1ee6b],
     1654        [1ee73, 1ee73], [1ee78, 1ee78], [1ee7d, 1ee7d], [1ee7f, 1ee7f],
     1655        [1ee8a, 1ee8a], [1ee9c, 1eea0], [1eea4, 1eea4], [1eeaa, 1eeaa],
     1656        [1eebc, 1f0ff], [1f10b, 1f10f], [1f12f, 1f12f], [1f150, 1f169],
     1657        [1f16c, 1f18f], [1f191, 1f1ff], [1f203, 1f20f], [1f23c, 1f23f],
     1658        [1f249, 1f24f], [1f252, 2f7ff], [2fa1e, dffff], [e1000, 10ffff]**/
     1659        const UnicodeSet reflexive_set
     1660                    {{{Full, 2}, {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 1},
     1661              {Mixed, 11}, {Full, 2}, {Mixed, 3}, {Full, 2}, {Mixed, 6},
     1662              {Empty, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 8}, {Full, 1},
     1663              {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 2}, {Mixed, 1},
     1664              {Full, 22}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 2},
     1665              {Mixed, 2}, {Full, 7}, {Mixed, 1}, {Full, 22}, {Mixed, 1},
     1666              {Full, 3}, {Mixed, 2}, {Full, 1}, {Mixed, 1}, {Full, 1},
     1667              {Mixed, 4}, {Full, 7}, {Empty, 1}, {Mixed, 2}, {Full, 2},
     1668              {Mixed, 2}, {Full, 19}, {Mixed, 1}, {Full, 29}, {Mixed, 1},
     1669              {Full, 2}, {Mixed, 1}, {Full, 35}, {Mixed, 1}, {Full, 4},
     1670              {Mixed, 4}, {Empty, 1}, {Full, 2}, {Mixed, 12}, {Empty, 1},
     1671              {Mixed, 9}, {Full, 2}, {Mixed, 3}, {Empty, 1}, {Mixed, 1},
     1672              {Full, 4}, {Mixed, 1}, {Full, 7}, {Mixed, 1}, {Full, 9},
     1673              {Empty, 4}, {Mixed, 1}, {Full, 40}, {Mixed, 1}, {Full, 2},
     1674              {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Full, 9}, {Empty, 1},
     1675              {Mixed, 1}, {Full, 1}, {Mixed, 5}, {Full, 3}, {Mixed, 1},
     1676              {Full, 8}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Empty, 6},
     1677              {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 2}, {Mixed, 1},
     1678              {Full, 2}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 2},
     1679              {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 2},
     1680              {Empty, 3}, {Mixed, 1}, {Empty, 8}, {Full, 914}, {Mixed, 3},
     1681              {Full, 4}, {Mixed, 5}, {Full, 1}, {Mixed, 1}, {Full, 26},
     1682              {Mixed, 2}, {Empty, 2}, {Full, 618}, {Empty, 8}, {Mixed, 2},
     1683              {Empty, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Full, 1},
     1684              {Mixed, 3}, {Empty, 2}, {Mixed, 2}, {Empty, 10}, {Mixed, 2},
     1685              {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 6}, {Empty, 3},
     1686              {Mixed, 2}, {Empty, 4}, {Mixed, 3}, {Full, 32}, {Empty, 1},
     1687              {Mixed, 1}, {Full, 3}, {Mixed, 2}, {Full, 61}, {Empty, 1},
     1688              {Mixed, 1}, {Full, 95}, {Empty, 1}, {Full, 1311}, {Mixed, 1},
     1689              {Full, 164}, {Mixed, 2}, {Full, 1}, {Mixed, 2}, {Full, 17},
     1690              {Empty, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 1},
     1691              {Mixed, 3}, {Empty, 10}, {Mixed, 1}, {Empty, 8}, {Mixed, 1},
     1692              {Empty, 1}, {Full, 136}, {Empty, 1}, {Mixed, 1}, {Full, 38},
     1693              {Mixed, 6}, {Full, 18}, {Mixed, 5}, {Full, 3}, {Mixed, 3},
     1694              {Full, 2093}, {Empty, 16}, {Mixed, 1}, {Full, 22575},
     1695              {Empty, 128}, {Full, 6016}},
     1696             {0xf8000001, 0x88c35afe, 0x00800000, 0xaaaaaaaa, 0x55a2aaaa,
     1697              0xaaaaa954, 0x54aaaaaa, 0x4e243129, 0xee512d2a, 0xb555400f,
     1698              0xaa21aaaa, 0xaaaaaaaa, 0x93faaaaa, 0xffffaa85, 0xfe00ffff,
     1699              0xc0ffffff, 0xffffffe0, 0xffff7fc4, 0x3baaffff, 0x0001280f,
     1700              0xfffff004, 0xaa807ffb, 0x1948aaaa, 0xffff0000, 0xaaaaaaaa,
     1701              0xaaaaabfe, 0xaaaaaaaa, 0xaaaad554, 0xaaaaaaaa, 0xaaaaaaaa,
     1702              0x0001aaaa, 0xff800000, 0xffffff7f, 0xefffffff, 0xfe1fffff,
     1703              0x00ffffff, 0x4fffffff, 0xffb7ffff, 0xb1ffffff, 0xcfffffff,
     1704              0xfff7ffff, 0xfff7ffff, 0xcfffffff, 0xffffefff, 0xef7bdff7,
     1705              0xfc17fdff, 0xdff7fffd, 0xfdffef7b, 0xffffdf40, 0xefffffff,
     1706              0x7fffffff, 0xfffffffe, 0xc0ffffff, 0xffcfffff, 0xffff87ff,
     1707              0xfffffe00, 0x08008fff, 0x00004000, 0xfefff800, 0x07ffffff,
     1708              0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xb3eaaaaa,
     1709              0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xc0ff00ff, 0x00ff00ff,
     1710              0x55ffc0ff, 0xd55500ff, 0x00630000, 0x10f70060, 0x806300f7,
     1711              0xff7d0000, 0xaf27038f, 0x7f7ffc7f, 0x000c0000, 0xe0008000,
     1712              0xfffffeff, 0xc1900110, 0x040042a8, 0x0000fc1e, 0xfffffdf7,
     1713              0xfffe4fff, 0xfffff9ff, 0xfffff800, 0xffffefff, 0xff8fffff,
     1714              0xefffffff, 0xffff8000, 0x0fda1562, 0xaaaaaaaa, 0xaaaaaaaa,
     1715              0xaaaaaaaa, 0xfffbd7fa, 0xffff7fff, 0x7fffffff, 0xfff7ffff,
     1716              0xffc00000, 0xfffffffe, 0xf8bfffff, 0x67ffffff, 0x7fffffff,
     1717              0x0001ffff, 0x00038000, 0x80000000, 0x0000ff00, 0x80000000,
     1718              0x80000000, 0xaaaaaaaa, 0xffffeaaa, 0xcaaaaaaa, 0xaaabaaab,
     1719              0xaaaaaaaa, 0x95feaaaa, 0xaabad7aa, 0xffa082aa, 0xfcffffff,
     1720              0x0fffffff, 0x0000ffff, 0x801ac000, 0x0000039a, 0x0000c000,
     1721              0xfc000000, 0x5f07ff80, 0xa0800000, 0x00000024, 0xfffc0000,
     1722              0x0007ffff, 0xc0000000, 0x0000ffff, 0x00030000, 0xffffff00,
     1723              0xe000ffff, 0xfc000000, 0x0000ffff, 0x00080060, 0x0028f080,
     1724              0x60000000, 0x00000001, 0x80000000, 0xe3030303, 0xfe008080,
     1725              0xffffff00, 0x0000ffff, 0xfff00000, 0xfff80000, 0xfffffff0,
     1726              0x3fffffff, 0xf807ffe0, 0x07ffffff, 0xfffffffe, 0x00200000,
     1727              0x20000000, 0x1400219b, 0x00000010, 0x20201840, 0x84000000,
     1728              0x000203a0, 0x000000c0, 0x00003000, 0xfffffffc, 0x00000010,
     1729              0xf5080169, 0x5569157b, 0xa1080869, 0xf0000400, 0xf0000411,
     1730              0x0000f800, 0x00008000, 0xffff0000, 0xfffff3ff, 0xfffeffff,
     1731              0x0000fff8, 0xf0000000, 0xfffcfe00, 0xc0000000}};
     1733        const unsigned buffer_length = 23235;
     1734        const static char __attribute__ ((aligned (32))) string_buffer[23296] = u8R"__(a
     1761 Ìˆ
     1763 Ì„
     1766 Ì
     1768 Ì§
     1995 Ì†
     1996 Ì‡
     1997 ÌŠ
     1998 Ìš
     1999 Ìƒ
     2000 Ì‹
     2015 Î¹
     2018 Ì
     2019 ÌˆÌ
     2727 Ì“
     2729 Ì“
     2730 Í‚
     2731 ÌˆÍ‚
     2741 Ì“Ì€
     2742 Ì“́
     2743 Ì“Í‚
     2749 Ì”Ì€
     2750 Ì”́
     2751 Ì”Í‚
     2758 ÌˆÌ€
     2759 ÌˆÌ
     2770 Ì
     2771 Ì”
     2784 Ì³
     2794 Ì
     3449 ã‚™
     3450 ã‚š
     3640(æ ª)
     3730æ ª
     4663é »
     4766é »
     4823× ÖŒ
     5104 ÙŒÙ‘
     5105 ÙÙ‘
     5106 ÙŽÙ‘
     5107 ÙÙ‘
     5108 ÙÙ‘
     5109 Ù‘Ù°
     5614صلى الله عليه وسلÙ
     5616جل جلاله
     5651 Ì
     5653 Ì
     5655 Ì
     5657 Ì
     5688 Ù‹
     5690 ÙŒ
     5691 Ù
     5692 ÙŽ
     5694 Ù
     5696 Ù
     5698 Ù‘
     5700 Ù’
     6067 Ì„
     7666ð ­£
     7696å ²
     7697å ±
     7741ã ¯
     7916ð€ ”
     8139é ©
     8173        const static std::vector<codepoint_t> defined_cps = {
     8174        0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048,
     8175        0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
     8176        0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
     8177        0x0059, 0x005a, 0x00a0, 0x00a8, 0x00aa, 0x00af, 0x00b2, 0x00b3,
     8178        0x00b4, 0x00b5, 0x00b8, 0x00b9, 0x00ba, 0x00bc, 0x00bd, 0x00be,
     8179        0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
     8180        0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
     8181        0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d8,
     8182        0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df, 0x0100,
     8183        0x0102, 0x0104, 0x0106, 0x0108, 0x010a, 0x010c, 0x010e, 0x0110,
     8184        0x0112, 0x0114, 0x0116, 0x0118, 0x011a, 0x011c, 0x011e, 0x0120,
     8185        0x0122, 0x0124, 0x0126, 0x0128, 0x012a, 0x012c, 0x012e, 0x0130,
     8186        0x0132, 0x0133, 0x0134, 0x0136, 0x0139, 0x013b, 0x013d, 0x013f,
     8187        0x0140, 0x0141, 0x0143, 0x0145, 0x0147, 0x0149, 0x014a, 0x014c,
     8188        0x014e, 0x0150, 0x0152, 0x0154, 0x0156, 0x0158, 0x015a, 0x015c,
     8189        0x015e, 0x0160, 0x0162, 0x0164, 0x0166, 0x0168, 0x016a, 0x016c,
     8190        0x016e, 0x0170, 0x0172, 0x0174, 0x0176, 0x0178, 0x0179, 0x017b,
     8191        0x017d, 0x017f, 0x0181, 0x0182, 0x0184, 0x0186, 0x0187, 0x0189,
     8192        0x018a, 0x018b, 0x018e, 0x018f, 0x0190, 0x0191, 0x0193, 0x0194,
     8193        0x0196, 0x0197, 0x0198, 0x019c, 0x019d, 0x019f, 0x01a0, 0x01a2,
     8194        0x01a4, 0x01a6, 0x01a7, 0x01a9, 0x01ac, 0x01ae, 0x01af, 0x01b1,
     8195        0x01b2, 0x01b3, 0x01b5, 0x01b7, 0x01b8, 0x01bc, 0x01c4, 0x01c5,
     8196        0x01c6, 0x01c7, 0x01c8, 0x01c9, 0x01ca, 0x01cb, 0x01cc, 0x01cd,
     8197        0x01cf, 0x01d1, 0x01d3, 0x01d5, 0x01d7, 0x01d9, 0x01db, 0x01de,
     8198        0x01e0, 0x01e2, 0x01e4, 0x01e6, 0x01e8, 0x01ea, 0x01ec, 0x01ee,
     8199        0x01f1, 0x01f2, 0x01f3, 0x01f4, 0x01f6, 0x01f7, 0x01f8, 0x01fa,
     8200        0x01fc, 0x01fe, 0x0200, 0x0202, 0x0204, 0x0206, 0x0208, 0x020a,
     8201        0x020c, 0x020e, 0x0210, 0x0212, 0x0214, 0x0216, 0x0218, 0x021a,
     8202        0x021c, 0x021e, 0x0220, 0x0222, 0x0224, 0x0226, 0x0228, 0x022a,
     8203        0x022c, 0x022e, 0x0230, 0x0232, 0x023a, 0x023b, 0x023d, 0x023e,
     8204        0x0241, 0x0243, 0x0244, 0x0245, 0x0246, 0x0248, 0x024a, 0x024c,
     8205        0x024e, 0x02b0, 0x02b1, 0x02b2, 0x02b3, 0x02b4, 0x02b5, 0x02b6,
     8206        0x02b7, 0x02b8, 0x02d8, 0x02d9, 0x02da, 0x02db, 0x02dc, 0x02dd,
     8207        0x02e0, 0x02e1, 0x02e2, 0x02e3, 0x02e4, 0x0340, 0x0341, 0x0343,
     8208        0x0344, 0x0345, 0x0370, 0x0372, 0x0374, 0x0376, 0x037a, 0x037e,
     8209        0x037f, 0x0384, 0x0385, 0x0386, 0x0387, 0x0388, 0x0389, 0x038a,
     8210        0x038c, 0x038e, 0x038f, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395,
     8211        0x0396, 0x0397, 0x0398, 0x0399, 0x039a, 0x039b, 0x039c, 0x039d,
     8212        0x039e, 0x039f, 0x03a0, 0x03a1, 0x03a3, 0x03a4, 0x03a5, 0x03a6,
     8213        0x03a7, 0x03a8, 0x03a9, 0x03aa, 0x03ab, 0x03c2, 0x03cf, 0x03d0,
     8214        0x03d1, 0x03d2, 0x03d3, 0x03d4, 0x03d5, 0x03d6, 0x03d8, 0x03da,
     8215        0x03dc, 0x03de, 0x03e0, 0x03e2, 0x03e4, 0x03e6, 0x03e8, 0x03ea,
     8216        0x03ec, 0x03ee, 0x03f0, 0x03f1, 0x03f2, 0x03f4, 0x03f5, 0x03f7,
     8217        0x03f9, 0x03fa, 0x03fd, 0x03fe, 0x03ff, 0x0400, 0x0401, 0x0402,
     8218        0x0403, 0x0404, 0x0405, 0x0406, 0x0407, 0x0408, 0x0409, 0x040a,
     8219        0x040b, 0x040c, 0x040d, 0x040e, 0x040f, 0x0410, 0x0411, 0x0412,
     8220        0x0413, 0x0414, 0x0415, 0x0416, 0x0417, 0x0418, 0x0419, 0x041a,
     8221        0x041b, 0x041c, 0x041d, 0x041e, 0x041f, 0x0420, 0x0421, 0x0422,
     8222        0x0423, 0x0424, 0x0425, 0x0426, 0x0427, 0x0428, 0x0429, 0x042a,
     8223        0x042b, 0x042c, 0x042d, 0x042e, 0x042f, 0x0460, 0x0462, 0x0464,
     8224        0x0466, 0x0468, 0x046a, 0x046c, 0x046e, 0x0470, 0x0472, 0x0474,
     8225        0x0476, 0x0478, 0x047a, 0x047c, 0x047e, 0x0480, 0x048a, 0x048c,
     8226        0x048e, 0x0490, 0x0492, 0x0494, 0x0496, 0x0498, 0x049a, 0x049c,
     8227        0x049e, 0x04a0, 0x04a2, 0x04a4, 0x04a6, 0x04a8, 0x04aa, 0x04ac,
     8228        0x04ae, 0x04b0, 0x04b2, 0x04b4, 0x04b6, 0x04b8, 0x04ba, 0x04bc,
     8229        0x04be, 0x04c0, 0x04c1, 0x04c3, 0x04c5, 0x04c7, 0x04c9, 0x04cb,
     8230        0x04cd, 0x04d0, 0x04d2, 0x04d4, 0x04d6, 0x04d8, 0x04da, 0x04dc,
     8231        0x04de, 0x04e0, 0x04e2, 0x04e4, 0x04e6, 0x04e8, 0x04ea, 0x04ec,
     8232        0x04ee, 0x04f0, 0x04f2, 0x04f4, 0x04f6, 0x04f8, 0x04fa, 0x04fc,
     8233        0x04fe, 0x0500, 0x0502, 0x0504, 0x0506, 0x0508, 0x050a, 0x050c,
     8234        0x050e, 0x0510, 0x0512, 0x0514, 0x0516, 0x0518, 0x051a, 0x051c,
     8235        0x051e, 0x0520, 0x0522, 0x0524, 0x0526, 0x0528, 0x052a, 0x052c,
     8236        0x052e, 0x0531, 0x0532, 0x0533, 0x0534, 0x0535, 0x0536, 0x0537,
     8237        0x0538, 0x0539, 0x053a, 0x053b, 0x053c, 0x053d, 0x053e, 0x053f,
     8238        0x0540, 0x0541, 0x0542, 0x0543, 0x0544, 0x0545, 0x0546, 0x0547,
     8239        0x0548, 0x0549, 0x054a, 0x054b, 0x054c, 0x054d, 0x054e, 0x054f,
     8240        0x0550, 0x0551, 0x0552, 0x0553, 0x0554, 0x0555, 0x0556, 0x0587,
     8241        0x0675, 0x0676, 0x0677, 0x0678, 0x0958, 0x0959, 0x095a, 0x095b,
     8242        0x095c, 0x095d, 0x095e, 0x095f, 0x09dc, 0x09dd, 0x09df, 0x0a33,
     8243        0x0a36, 0x0a59, 0x0a5a, 0x0a5b, 0x0a5e, 0x0b5c, 0x0b5d, 0x0e33,
     8244        0x0eb3, 0x0edc, 0x0edd, 0x0f0c, 0x0f43, 0x0f4d, 0x0f52, 0x0f57,
     8245        0x0f5c, 0x0f69, 0x0f73, 0x0f75, 0x0f76, 0x0f77, 0x0f78, 0x0f79,
     8246        0x0f81, 0x0f93, 0x0f9d, 0x0fa2, 0x0fa7, 0x0fac, 0x0fb9, 0x10a0,
     8247        0x10a1, 0x10a2, 0x10a3, 0x10a4, 0x10a5, 0x10a6, 0x10a7, 0x10a8,
     8248        0x10a9, 0x10aa, 0x10ab, 0x10ac, 0x10ad, 0x10ae, 0x10af, 0x10b0,
     8249        0x10b1, 0x10b2, 0x10b3, 0x10b4, 0x10b5, 0x10b6, 0x10b7, 0x10b8,
     8250        0x10b9, 0x10ba, 0x10bb, 0x10bc, 0x10bd, 0x10be, 0x10bf, 0x10c0,
     8251        0x10c1, 0x10c2, 0x10c3, 0x10c4, 0x10c5, 0x10c7, 0x10cd, 0x10fc,
     8252        0x13f8, 0x13f9, 0x13fa, 0x13fb, 0x13fc, 0x13fd, 0x1c80, 0x1c81,
     8253        0x1c82, 0x1c83, 0x1c84, 0x1c85, 0x1c86, 0x1c87, 0x1c88, 0x1d2c,
     8254        0x1d2d, 0x1d2e, 0x1d30, 0x1d31, 0x1d32, 0x1d33, 0x1d34, 0x1d35,
     8255        0x1d36, 0x1d37, 0x1d38, 0x1d39, 0x1d3a, 0x1d3c, 0x1d3d, 0x1d3e,
     8256        0x1d3f, 0x1d40, 0x1d41, 0x1d42, 0x1d43, 0x1d44, 0x1d45, 0x1d46,
     8257        0x1d47, 0x1d48, 0x1d49, 0x1d4a, 0x1d4b, 0x1d4c, 0x1d4d, 0x1d4f,
     8258        0x1d50, 0x1d51, 0x1d52, 0x1d53, 0x1d54, 0x1d55, 0x1d56, 0x1d57,
     8259        0x1d58, 0x1d59, 0x1d5a, 0x1d5b, 0x1d5c, 0x1d5d, 0x1d5e, 0x1d5f,
     8260        0x1d60, 0x1d61, 0x1d62, 0x1d63, 0x1d64, 0x1d65, 0x1d66, 0x1d67,
     8261        0x1d68, 0x1d69, 0x1d6a, 0x1d78, 0x1d9b, 0x1d9c, 0x1d9d, 0x1d9e,
     8262        0x1d9f, 0x1da0, 0x1da1, 0x1da2, 0x1da3, 0x1da4, 0x1da5, 0x1da6,
     8263        0x1da7, 0x1da8, 0x1da9, 0x1daa, 0x1dab, 0x1dac, 0x1dad, 0x1dae,
     8264        0x1daf, 0x1db0, 0x1db1, 0x1db2, 0x1db3, 0x1db4, 0x1db5, 0x1db6,
     8265        0x1db7, 0x1db8, 0x1db9, 0x1dba, 0x1dbb, 0x1dbc, 0x1dbd, 0x1dbe,
     8266        0x1dbf, 0x1e00, 0x1e02, 0x1e04, 0x1e06, 0x1e08, 0x1e0a, 0x1e0c,
     8267        0x1e0e, 0x1e10, 0x1e12, 0x1e14, 0x1e16, 0x1e18, 0x1e1a, 0x1e1c,
     8268        0x1e1e, 0x1e20, 0x1e22, 0x1e24, 0x1e26, 0x1e28, 0x1e2a, 0x1e2c,
     8269        0x1e2e, 0x1e30, 0x1e32, 0x1e34, 0x1e36, 0x1e38, 0x1e3a, 0x1e3c,
     8270        0x1e3e, 0x1e40, 0x1e42, 0x1e44, 0x1e46, 0x1e48, 0x1e4a, 0x1e4c,
     8271        0x1e4e, 0x1e50, 0x1e52, 0x1e54, 0x1e56, 0x1e58, 0x1e5a, 0x1e5c,
     8272        0x1e5e, 0x1e60, 0x1e62, 0x1e64, 0x1e66, 0x1e68, 0x1e6a, 0x1e6c,
     8273        0x1e6e, 0x1e70, 0x1e72, 0x1e74, 0x1e76, 0x1e78, 0x1e7a, 0x1e7c,
     8274        0x1e7e, 0x1e80, 0x1e82, 0x1e84, 0x1e86, 0x1e88, 0x1e8a, 0x1e8c,
     8275        0x1e8e, 0x1e90, 0x1e92, 0x1e94, 0x1e9a, 0x1e9b, 0x1e9e, 0x1ea0,
     8276        0x1ea2, 0x1ea4, 0x1ea6, 0x1ea8, 0x1eaa, 0x1eac, 0x1eae, 0x1eb0,
     8277        0x1eb2, 0x1eb4, 0x1eb6, 0x1eb8, 0x1eba, 0x1ebc, 0x1ebe, 0x1ec0,
     8278        0x1ec2, 0x1ec4, 0x1ec6, 0x1ec8, 0x1eca, 0x1ecc, 0x1ece, 0x1ed0,
     8279        0x1ed2, 0x1ed4, 0x1ed6, 0x1ed8, 0x1eda, 0x1edc, 0x1ede, 0x1ee0,
     8280        0x1ee2, 0x1ee4, 0x1ee6, 0x1ee8, 0x1eea, 0x1eec, 0x1eee, 0x1ef0,
     8281        0x1ef2, 0x1ef4, 0x1ef6, 0x1ef8, 0x1efa, 0x1efc, 0x1efe, 0x1f08,
     8282        0x1f09, 0x1f0a, 0x1f0b, 0x1f0c, 0x1f0d, 0x1f0e, 0x1f0f, 0x1f18,
     8283        0x1f19, 0x1f1a, 0x1f1b, 0x1f1c, 0x1f1d, 0x1f28, 0x1f29, 0x1f2a,
     8284        0x1f2b, 0x1f2c, 0x1f2d, 0x1f2e, 0x1f2f, 0x1f38, 0x1f39, 0x1f3a,
     8285        0x1f3b, 0x1f3c, 0x1f3d, 0x1f3e, 0x1f3f, 0x1f48, 0x1f49, 0x1f4a,
     8286        0x1f4b, 0x1f4c, 0x1f4d, 0x1f59, 0x1f5b, 0x1f5d, 0x1f5f, 0x1f68,
     8287        0x1f69, 0x1f6a, 0x1f6b, 0x1f6c, 0x1f6d, 0x1f6e, 0x1f6f, 0x1f71,
     8288        0x1f73, 0x1f75, 0x1f77, 0x1f79, 0x1f7b, 0x1f7d, 0x1f80, 0x1f81,
     8289        0x1f82, 0x1f83, 0x1f84, 0x1f85, 0x1f86, 0x1f87, 0x1f88, 0x1f89,
     8290        0x1f8a, 0x1f8b, 0x1f8c, 0x1f8d, 0x1f8e, 0x1f8f, 0x1f90, 0x1f91,
     8291        0x1f92, 0x1f93, 0x1f94, 0x1f95, 0x1f96, 0x1f97, 0x1f98, 0x1f99,
     8292        0x1f9a, 0x1f9b, 0x1f9c, 0x1f9d, 0x1f9e, 0x1f9f, 0x1fa0, 0x1fa1,
     8293        0x1fa2, 0x1fa3, 0x1fa4, 0x1fa5, 0x1fa6, 0x1fa7, 0x1fa8, 0x1fa9,
     8294        0x1faa, 0x1fab, 0x1fac, 0x1fad, 0x1fae, 0x1faf, 0x1fb2, 0x1fb3,
     8295        0x1fb4, 0x1fb7, 0x1fb8, 0x1fb9, 0x1fba, 0x1fbb, 0x1fbc, 0x1fbd,
     8296        0x1fbe, 0x1fbf, 0x1fc0, 0x1fc1, 0x1fc2, 0x1fc3, 0x1fc4, 0x1fc7,
     8297        0x1fc8, 0x1fc9, 0x1fca, 0x1fcb, 0x1fcc, 0x1fcd, 0x1fce, 0x1fcf,
     8298        0x1fd3, 0x1fd8, 0x1fd9, 0x1fda, 0x1fdb, 0x1fdd, 0x1fde, 0x1fdf,
     8299        0x1fe3, 0x1fe8, 0x1fe9, 0x1fea, 0x1feb, 0x1fec, 0x1fed, 0x1fee,
     8300        0x1fef, 0x1ff2, 0x1ff3, 0x1ff4, 0x1ff7, 0x1ff8, 0x1ff9, 0x1ffa,
     8301        0x1ffb, 0x1ffc, 0x1ffd, 0x1ffe, 0x2000, 0x2001, 0x2002, 0x2003,
     8302        0x2004, 0x2005, 0x2006, 0x2007, 0x2008, 0x2009, 0x200a, 0x2011,
     8303        0x2017, 0x2024, 0x2025, 0x2026, 0x202f, 0x2033, 0x2034, 0x2036,
     8304        0x2037, 0x203c, 0x203e, 0x2047, 0x2048, 0x2049, 0x2057, 0x205f,
     8305        0x2070, 0x2071, 0x2074, 0x2075, 0x2076, 0x2077, 0x2078, 0x2079,
     8306        0x207a, 0x207b, 0x207c, 0x207d, 0x207e, 0x207f, 0x2080, 0x2081,
     8307        0x2082, 0x2083, 0x2084, 0x2085, 0x2086, 0x2087, 0x2088, 0x2089,
     8308        0x208a, 0x208b, 0x208c, 0x208d, 0x208e, 0x2090, 0x2091, 0x2092,
     8309        0x2093, 0x2094, 0x2095, 0x2096, 0x2097, 0x2098, 0x2099, 0x209a,
     8310        0x209b, 0x209c, 0x20a8, 0x2100, 0x2101, 0x2102, 0x2103, 0x2105,
     8311        0x2106, 0x2107, 0x2109, 0x210a, 0x210b, 0x210c, 0x210d, 0x210e,
     8312        0x210f, 0x2110, 0x2111, 0x2112, 0x2113, 0x2115, 0x2116, 0x2119,
     8313        0x211a, 0x211b, 0x211c, 0x211d, 0x2120, 0x2121, 0x2122, 0x2124,
     8314        0x2126, 0x2128, 0x212a, 0x212b, 0x212c, 0x212d, 0x212f, 0x2130,
     8315        0x2131, 0x2132, 0x2133, 0x2134, 0x2135, 0x2136, 0x2137, 0x2138,
     8316        0x2139, 0x213b, 0x213c, 0x213d, 0x213e, 0x213f, 0x2140, 0x2145,
     8317        0x2146, 0x2147, 0x2148, 0x2149, 0x2150, 0x2151, 0x2152, 0x2153,
     8318        0x2154, 0x2155, 0x2156, 0x2157, 0x2158, 0x2159, 0x215a, 0x215b,
     8319        0x215c, 0x215d, 0x215e, 0x215f, 0x2160, 0x2161, 0x2162, 0x2163,
     8320        0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, 0x216a, 0x216b,
     8321        0x216c, 0x216d, 0x216e, 0x216f, 0x2170, 0x2171, 0x2172, 0x2173,
     8322        0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179, 0x217a, 0x217b,
     8323        0x217c, 0x217d, 0x217e, 0x217f, 0x2183, 0x2189, 0x222c, 0x222d,
     8324        0x222f, 0x2230, 0x2329, 0x232a, 0x2460, 0x2461, 0x2462, 0x2463,
     8325        0x2464, 0x2465, 0x2466, 0x2467, 0x2468, 0x2469, 0x246a, 0x246b,
     8326        0x246c, 0x246d, 0x246e, 0x246f, 0x2470, 0x2471, 0x2472, 0x2473,
     8327        0x2474, 0x2475, 0x2476, 0x2477, 0x2478, 0x2479, 0x247a, 0x247b,
     8328        0x247c, 0x247d, 0x247e, 0x247f, 0x2480, 0x2481, 0x2482, 0x2483,
     8329        0x2484, 0x2485, 0x2486, 0x2487, 0x2488, 0x2489, 0x248a, 0x248b,
     8330        0x248c, 0x248d, 0x248e, 0x248f, 0x2490, 0x2491, 0x2492, 0x2493,
     8331        0x2494, 0x2495, 0x2496, 0x2497, 0x2498, 0x2499, 0x249a, 0x249b,
     8332        0x249c, 0x249d, 0x249e, 0x249f, 0x24a0, 0x24a1, 0x24a2, 0x24a3,
     8333        0x24a4, 0x24a5, 0x24a6, 0x24a7, 0x24a8, 0x24a9, 0x24aa, 0x24ab,
     8334        0x24ac, 0x24ad, 0x24ae, 0x24af, 0x24b0, 0x24b1, 0x24b2, 0x24b3,
     8335        0x24b4, 0x24b5, 0x24b6, 0x24b7, 0x24b8, 0x24b9, 0x24ba, 0x24bb,
     8336        0x24bc, 0x24bd, 0x24be, 0x24bf, 0x24c0, 0x24c1, 0x24c2, 0x24c3,
     8337        0x24c4, 0x24c5, 0x24c6, 0x24c7, 0x24c8, 0x24c9, 0x24ca, 0x24cb,
     8338        0x24cc, 0x24cd, 0x24ce, 0x24cf, 0x24d0, 0x24d1, 0x24d2, 0x24d3,
     8339        0x24d4, 0x24d5, 0x24d6, 0x24d7, 0x24d8, 0x24d9, 0x24da, 0x24db,
     8340        0x24dc, 0x24dd, 0x24de, 0x24df, 0x24e0, 0x24e1, 0x24e2, 0x24e3,
     8341        0x24e4, 0x24e5, 0x24e6, 0x24e7, 0x24e8, 0x24e9, 0x24ea, 0x2a0c,
     8342        0x2a74, 0x2a75, 0x2a76, 0x2adc, 0x2c00, 0x2c01, 0x2c02, 0x2c03,
     8343        0x2c04, 0x2c05, 0x2c06, 0x2c07, 0x2c08, 0x2c09, 0x2c0a, 0x2c0b,
     8344        0x2c0c, 0x2c0d, 0x2c0e, 0x2c0f, 0x2c10, 0x2c11, 0x2c12, 0x2c13,
     8345        0x2c14, 0x2c15, 0x2c16, 0x2c17, 0x2c18, 0x2c19, 0x2c1a, 0x2c1b,
     8346        0x2c1c, 0x2c1d, 0x2c1e, 0x2c1f, 0x2c20, 0x2c21, 0x2c22, 0x2c23,
     8347        0x2c24, 0x2c25, 0x2c26, 0x2c27, 0x2c28, 0x2c29, 0x2c2a, 0x2c2b,
     8348        0x2c2c, 0x2c2d, 0x2c2e, 0x2c60, 0x2c62, 0x2c63, 0x2c64, 0x2c67,
     8349        0x2c69, 0x2c6b, 0x2c6d, 0x2c6e, 0x2c6f, 0x2c70, 0x2c72, 0x2c75,
     8350        0x2c7c, 0x2c7d, 0x2c7e, 0x2c7f, 0x2c80, 0x2c82, 0x2c84, 0x2c86,
     8351        0x2c88, 0x2c8a, 0x2c8c, 0x2c8e, 0x2c90, 0x2c92, 0x2c94, 0x2c96,
     8352        0x2c98, 0x2c9a, 0x2c9c, 0x2c9e, 0x2ca0, 0x2ca2, 0x2ca4, 0x2ca6,
     8353        0x2ca8, 0x2caa, 0x2cac, 0x2cae, 0x2cb0, 0x2cb2, 0x2cb4, 0x2cb6,
     8354        0x2cb8, 0x2cba, 0x2cbc, 0x2cbe, 0x2cc0, 0x2cc2, 0x2cc4, 0x2cc6,
     8355        0x2cc8, 0x2cca, 0x2ccc, 0x2cce, 0x2cd0, 0x2cd2, 0x2cd4, 0x2cd6,
     8356        0x2cd8, 0x2cda, 0x2cdc, 0x2cde, 0x2ce0, 0x2ce2, 0x2ceb, 0x2ced,
     8357        0x2cf2, 0x2d6f, 0x2e9f, 0x2ef3, 0x2f00, 0x2f01, 0x2f02, 0x2f03,
     8358        0x2f04, 0x2f05, 0x2f06, 0x2f07, 0x2f08, 0x2f09, 0x2f0a, 0x2f0b,
     8359        0x2f0c, 0x2f0d, 0x2f0e, 0x2f0f, 0x2f10, 0x2f11, 0x2f12, 0x2f13,
     8360        0x2f14, 0x2f15, 0x2f16, 0x2f17, 0x2f18, 0x2f19, 0x2f1a, 0x2f1b,
     8361        0x2f1c, 0x2f1d, 0x2f1e, 0x2f1f, 0x2f20, 0x2f21, 0x2f22, 0x2f23,
     8362        0x2f24, 0x2f25, 0x2f26, 0x2f27, 0x2f28, 0x2f29, 0x2f2a, 0x2f2b,
     8363        0x2f2c, 0x2f2d, 0x2f2e, 0x2f2f, 0x2f30, 0x2f31, 0x2f32, 0x2f33,
     8364        0x2f34, 0x2f35, 0x2f36, 0x2f37, 0x2f38, 0x2f39, 0x2f3a, 0x2f3b,
     8365        0x2f3c, 0x2f3d, 0x2f3e, 0x2f3f, 0x2f40, 0x2f41, 0x2f42, 0x2f43,
     8366        0x2f44, 0x2f45, 0x2f46, 0x2f47, 0x2f48, 0x2f49, 0x2f4a, 0x2f4b,
     8367        0x2f4c, 0x2f4d, 0x2f4e, 0x2f4f, 0x2f50, 0x2f51, 0x2f52, 0x2f53,
     8368        0x2f54, 0x2f55, 0x2f56, 0x2f57, 0x2f58, 0x2f59, 0x2f5a, 0x2f5b,
     8369        0x2f5c, 0x2f5d, 0x2f5e, 0x2f5f, 0x2f60, 0x2f61, 0x2f62, 0x2f63,
     8370        0x2f64, 0x2f65, 0x2f66, 0x2f67, 0x2f68, 0x2f69, 0x2f6a, 0x2f6b,
     8371        0x2f6c, 0x2f6d, 0x2f6e, 0x2f6f, 0x2f70, 0x2f71, 0x2f72, 0x2f73,
     8372        0x2f74, 0x2f75, 0x2f76, 0x2f77, 0x2f78, 0x2f79, 0x2f7a, 0x2f7b,
     8373        0x2f7c, 0x2f7d, 0x2f7e, 0x2f7f, 0x2f80, 0x2f81, 0x2f82, 0x2f83,
     8374        0x2f84, 0x2f85, 0x2f86, 0x2f87, 0x2f88, 0x2f89, 0x2f8a, 0x2f8b,
     8375        0x2f8c, 0x2f8d, 0x2f8e, 0x2f8f, 0x2f90, 0x2f91, 0x2f92, 0x2f93,
     8376        0x2f94, 0x2f95, 0x2f96, 0x2f97, 0x2f98, 0x2f99, 0x2f9a, 0x2f9b,
     8377        0x2f9c, 0x2f9d, 0x2f9e, 0x2f9f, 0x2fa0, 0x2fa1, 0x2fa2, 0x2fa3,
     8378        0x2fa4, 0x2fa5, 0x2fa6, 0x2fa7, 0x2fa8, 0x2fa9, 0x2faa, 0x2fab,
     8379        0x2fac, 0x2fad, 0x2fae, 0x2faf, 0x2fb0, 0x2fb1, 0x2fb2, 0x2fb3,
     8380        0x2fb4, 0x2fb5, 0x2fb6, 0x2fb7, 0x2fb8, 0x2fb9, 0x2fba, 0x2fbb,
     8381        0x2fbc, 0x2fbd, 0x2fbe, 0x2fbf, 0x2fc0, 0x2fc1, 0x2fc2, 0x2fc3,
     8382        0x2fc4, 0x2fc5, 0x2fc6, 0x2fc7, 0x2fc8, 0x2fc9, 0x2fca, 0x2fcb,
     8383        0x2fcc, 0x2fcd, 0x2fce, 0x2fcf, 0x2fd0, 0x2fd1, 0x2fd2, 0x2fd3,
     8384        0x2fd4, 0x2fd5, 0x3000, 0x3036, 0x3038, 0x3039, 0x303a, 0x309b,
     8385        0x309c, 0x309f, 0x30ff, 0x3131, 0x3132, 0x3133, 0x3134, 0x3135,
     8386        0x3136, 0x3137, 0x3138, 0x3139, 0x313a, 0x313b, 0x313c, 0x313d,
     8387        0x313e, 0x313f, 0x3140, 0x3141, 0x3142, 0x3143, 0x3144, 0x3145,
     8388        0x3146, 0x3147, 0x3148, 0x3149, 0x314a, 0x314b, 0x314c, 0x314d,
     8389        0x314e, 0x314f, 0x3150, 0x3151, 0x3152, 0x3153, 0x3154, 0x3155,
     8390        0x3156, 0x3157, 0x3158, 0x3159, 0x315a, 0x315b, 0x315c, 0x315d,
     8391        0x315e, 0x315f, 0x3160, 0x3161, 0x3162, 0x3163, 0x3165, 0x3166,
     8392        0x3167, 0x3168, 0x3169, 0x316a, 0x316b, 0x316c, 0x316d, 0x316e,
     8393        0x316f, 0x3170, 0x3171, 0x3172, 0x3173, 0x3174, 0x3175, 0x3176,
     8394        0x3177, 0x3178, 0x3179, 0x317a, 0x317b, 0x317c, 0x317d, 0x317e,
     8395        0x317f, 0x3180, 0x3181, 0x3182, 0x3183, 0x3184, 0x3185, 0x3186,
     8396        0x3187, 0x3188, 0x3189, 0x318a, 0x318b, 0x318c, 0x318d, 0x318e,
     8397        0x3192, 0x3193, 0x3194, 0x3195, 0x3196, 0x3197, 0x3198, 0x3199,
     8398        0x319a, 0x319b, 0x319c, 0x319d, 0x319e, 0x319f, 0x3200, 0x3201,
     8399        0x3202, 0x3203, 0x3204, 0x3205, 0x3206, 0x3207, 0x3208, 0x3209,
     8400        0x320a, 0x320b, 0x320c, 0x320d, 0x320e, 0x320f, 0x3210, 0x3211,
     8401        0x3212, 0x3213, 0x3214, 0x3215, 0x3216, 0x3217, 0x3218, 0x3219,
     8402        0x321a, 0x321b, 0x321c, 0x321d, 0x321e, 0x3220, 0x3221, 0x3222,
     8403        0x3223, 0x3224, 0x3225, 0x3226, 0x3227, 0x3228, 0x3229, 0x322a,
     8404        0x322b, 0x322c, 0x322d, 0x322e, 0x322f, 0x3230, 0x3231, 0x3232,
     8405        0x3233, 0x3234, 0x3235, 0x3236, 0x3237, 0x3238, 0x3239, 0x323a,
     8406        0x323b, 0x323c, 0x323d, 0x323e, 0x323f, 0x3240, 0x3241, 0x3242,
     8407        0x3243, 0x3244, 0x3245, 0x3246, 0x3247, 0x3250, 0x3251, 0x3252,
     8408        0x3253, 0x3254, 0x3255, 0x3256, 0x3257, 0x3258, 0x3259, 0x325a,
     8409        0x325b, 0x325c, 0x325d, 0x325e, 0x325f, 0x3260, 0x3261, 0x3262,
     8410        0x3263, 0x3264, 0x3265, 0x3266, 0x3267, 0x3268, 0x3269, 0x326a,
     8411        0x326b, 0x326c, 0x326d, 0x326e, 0x326f, 0x3270, 0x3271, 0x3272,
     8412        0x3273, 0x3274, 0x3275, 0x3276, 0x3277, 0x3278, 0x3279, 0x327a,
     8413        0x327b, 0x327c, 0x327d, 0x327e, 0x3280, 0x3281, 0x3282, 0x3283,
     8414        0x3284, 0x3285, 0x3286, 0x3287, 0x3288, 0x3289, 0x328a, 0x328b,
     8415        0x328c, 0x328d, 0x328e, 0x328f, 0x3290, 0x3291, 0x3292, 0x3293,
     8416        0x3294, 0x3295, 0x3296, 0x3297, 0x3298, 0x3299, 0x329a, 0x329b,
     8417        0x329c, 0x329d, 0x329e, 0x329f, 0x32a0, 0x32a1, 0x32a2, 0x32a3,
     8418        0x32a4, 0x32a5, 0x32a6, 0x32a7, 0x32a8, 0x32a9, 0x32aa, 0x32ab,
     8419        0x32ac, 0x32ad, 0x32ae, 0x32af, 0x32b0, 0x32b1, 0x32b2, 0x32b3,
     8420        0x32b4, 0x32b5, 0x32b6, 0x32b7, 0x32b8, 0x32b9, 0x32ba, 0x32bb,
     8421        0x32bc, 0x32bd, 0x32be, 0x32bf, 0x32c0, 0x32c1, 0x32c2, 0x32c3,
     8422        0x32c4, 0x32c5, 0x32c6, 0x32c7, 0x32c8, 0x32c9, 0x32ca, 0x32cb,
     8423        0x32cc, 0x32cd, 0x32ce, 0x32cf, 0x32d0, 0x32d1, 0x32d2, 0x32d3,
     8424        0x32d4, 0x32d5, 0x32d6, 0x32d7, 0x32d8, 0x32d9, 0x32da, 0x32db,
     8425        0x32dc, 0x32dd, 0x32de, 0x32df, 0x32e0, 0x32e1, 0x32e2, 0x32e3,
     8426        0x32e4, 0x32e5, 0x32e6, 0x32e7, 0x32e8, 0x32e9, 0x32ea, 0x32eb,
     8427        0x32ec, 0x32ed, 0x32ee, 0x32ef, 0x32f0, 0x32f1, 0x32f2, 0x32f3,
     8428        0x32f4, 0x32f5, 0x32f6, 0x32f7, 0x32f8, 0x32f9, 0x32fa, 0x32fb,
     8429        0x32fc, 0x32fd, 0x32fe, 0x3300, 0x3301, 0x3302, 0x3303, 0x3304,
     8430        0x3305, 0x3306, 0x3307, 0x3308, 0x3309, 0x330a, 0x330b, 0x330c,
     8431        0x330d, 0x330e, 0x330f, 0x3310, 0x3311, 0x3312, 0x3313, 0x3314,
     8432        0x3315, 0x3316, 0x3317, 0x3318, 0x3319, 0x331a, 0x331b, 0x331c,
     8433        0x331d, 0x331e, 0x331f, 0x3320, 0x3321, 0x3322, 0x3323, 0x3324,
     8434        0x3325, 0x3326, 0x3327, 0x3328, 0x3329, 0x332a, 0x332b, 0x332c,
     8435        0x332d, 0x332e, 0x332f, 0x3330, 0x3331, 0x3332, 0x3333, 0x3334,
     8436        0x3335, 0x3336, 0x3337, 0x3338, 0x3339, 0x333a, 0x333b, 0x333c,
     8437        0x333d, 0x333e, 0x333f, 0x3340, 0x3341, 0x3342, 0x3343, 0x3344,
     8438        0x3345, 0x3346, 0x3347, 0x3348, 0x3349, 0x334a, 0x334b, 0x334c,
     8439        0x334d, 0x334e, 0x334f, 0x3350, 0x3351, 0x3352, 0x3353, 0x3354,
     8440        0x3355, 0x3356, 0x3357, 0x3358, 0x3359, 0x335a, 0x335b, 0x335c,
     8441        0x335d, 0x335e, 0x335f, 0x3360, 0x3361, 0x3362, 0x3363, 0x3364,
     8442        0x3365, 0x3366, 0x3367, 0x3368, 0x3369, 0x336a, 0x336b, 0x336c,
     8443        0x336d, 0x336e, 0x336f, 0x3370, 0x3371, 0x3372, 0x3373, 0x3374,
     8444        0x3375, 0x3376, 0x3377, 0x3378, 0x3379, 0x337a, 0x337b, 0x337c,
     8445        0x337d, 0x337e, 0x337f, 0x3380, 0x3381, 0x3382, 0x3383, 0x3384,
     8446        0x3385, 0x3386, 0x3387, 0x3388, 0x3389, 0x338a, 0x338b, 0x338c,
     8447        0x338d, 0x338e, 0x338f, 0x3390, 0x3391, 0x3392, 0x3393, 0x3394,
     8448        0x3395, 0x3396, 0x3397, 0x3398, 0x3399, 0x339a, 0x339b, 0x339c,
     8449        0x339d, 0x339e, 0x339f, 0x33a0, 0x33a1, 0x33a2, 0x33a3, 0x33a4,
     8450        0x33a5, 0x33a6, 0x33a7, 0x33a8, 0x33a9, 0x33aa, 0x33ab, 0x33ac,
     8451        0x33ad, 0x33ae, 0x33af, 0x33b0, 0x33b1, 0x33b2, 0x33b3, 0x33b4,
     8452        0x33b5, 0x33b6, 0x33b7, 0x33b8, 0x33b9, 0x33ba, 0x33bb, 0x33bc,
     8453        0x33bd, 0x33be, 0x33bf, 0x33c0, 0x33c1, 0x33c2, 0x33c3, 0x33c4,
     8454        0x33c5, 0x33c6, 0x33c7, 0x33c8, 0x33c9, 0x33ca, 0x33cb, 0x33cc,
     8455        0x33cd, 0x33ce, 0x33cf, 0x33d0, 0x33d1, 0x33d2, 0x33d3, 0x33d4,
     8456        0x33d5, 0x33d6, 0x33d7, 0x33d8, 0x33d9, 0x33da, 0x33db, 0x33dc,
     8457        0x33dd, 0x33de, 0x33df, 0x33e0, 0x33e1, 0x33e2, 0x33e3, 0x33e4,
     8458        0x33e5, 0x33e6, 0x33e7, 0x33e8, 0x33e9, 0x33ea, 0x33eb, 0x33ec,
     8459        0x33ed, 0x33ee, 0x33ef, 0x33f0, 0x33f1, 0x33f2, 0x33f3, 0x33f4,
     8460        0x33f5, 0x33f6, 0x33f7, 0x33f8, 0x33f9, 0x33fa, 0x33fb, 0x33fc,
     8461        0x33fd, 0x33fe, 0x33ff, 0xa640, 0xa642, 0xa644, 0xa646, 0xa648,
     8462        0xa64a, 0xa64c, 0xa64e, 0xa650, 0xa652, 0xa654, 0xa656, 0xa658,
     8463        0xa65a, 0xa65c, 0xa65e, 0xa660, 0xa662, 0xa664, 0xa666, 0xa668,
     8464        0xa66a, 0xa66c, 0xa680, 0xa682, 0xa684, 0xa686, 0xa688, 0xa68a,
     8465        0xa68c, 0xa68e, 0xa690, 0xa692, 0xa694, 0xa696, 0xa698, 0xa69a,
     8466        0xa69c, 0xa69d, 0xa722, 0xa724, 0xa726, 0xa728, 0xa72a, 0xa72c,
     8467        0xa72e, 0xa732, 0xa734, 0xa736, 0xa738, 0xa73a, 0xa73c, 0xa73e,
     8468        0xa740, 0xa742, 0xa744, 0xa746, 0xa748, 0xa74a, 0xa74c, 0xa74e,
     8469        0xa750, 0xa752, 0xa754, 0xa756, 0xa758, 0xa75a, 0xa75c, 0xa75e,
     8470        0xa760, 0xa762, 0xa764, 0xa766, 0xa768, 0xa76a, 0xa76c, 0xa76e,
     8471        0xa770, 0xa779, 0xa77b, 0xa77d, 0xa77e, 0xa780, 0xa782, 0xa784,
     8472        0xa786, 0xa78b, 0xa78d, 0xa790, 0xa792, 0xa796, 0xa798, 0xa79a,
     8473        0xa79c, 0xa79e, 0xa7a0, 0xa7a2, 0xa7a4, 0xa7a6, 0xa7a8, 0xa7aa,
     8474        0xa7ab, 0xa7ac, 0xa7ad, 0xa7ae, 0xa7b0, 0xa7b1, 0xa7b2, 0xa7b3,
     8475        0xa7b4, 0xa7b6, 0xa7f8, 0xa7f9, 0xab5c, 0xab5d, 0xab5e, 0xab5f,
     8476        0xab70, 0xab71, 0xab72, 0xab73, 0xab74, 0xab75, 0xab76, 0xab77,
     8477        0xab78, 0xab79, 0xab7a, 0xab7b, 0xab7c, 0xab7d, 0xab7e, 0xab7f,
     8478        0xab80, 0xab81, 0xab82, 0xab83, 0xab84, 0xab85, 0xab86, 0xab87,
     8479        0xab88, 0xab89, 0xab8a, 0xab8b, 0xab8c, 0xab8d, 0xab8e, 0xab8f,
     8480        0xab90, 0xab91, 0xab92, 0xab93, 0xab94, 0xab95, 0xab96, 0xab97,
     8481        0xab98, 0xab99, 0xab9a, 0xab9b, 0xab9c, 0xab9d, 0xab9e, 0xab9f,
     8482        0xaba0, 0xaba1, 0xaba2, 0xaba3, 0xaba4, 0xaba5, 0xaba6, 0xaba7,
     8483        0xaba8, 0xaba9, 0xabaa, 0xabab, 0xabac, 0xabad, 0xabae, 0xabaf,
     8484        0xabb0, 0xabb1, 0xabb2, 0xabb3, 0xabb4, 0xabb5, 0xabb6, 0xabb7,
     8485        0xabb8, 0xabb9, 0xabba, 0xabbb, 0xabbc, 0xabbd, 0xabbe, 0xabbf,
     8486        0xf900, 0xf901, 0xf902, 0xf903, 0xf904, 0xf905, 0xf906, 0xf907,
     8487        0xf908, 0xf909, 0xf90a, 0xf90b, 0xf90c, 0xf90d, 0xf90e, 0xf90f,
     8488        0xf910, 0xf911, 0xf912, 0xf913, 0xf914, 0xf915, 0xf916, 0xf917,
     8489        0xf918, 0xf919, 0xf91a, 0xf91b, 0xf91c, 0xf91d, 0xf91e, 0xf91f,
     8490        0xf920, 0xf921, 0xf922, 0xf923, 0xf924, 0xf925, 0xf926, 0xf927,
     8491        0xf928, 0xf929, 0xf92a, 0xf92b, 0xf92c, 0xf92d, 0xf92e, 0xf92f,
     8492        0xf930, 0xf931, 0xf932, 0xf933, 0xf934, 0xf935, 0xf936, 0xf937,
     8493        0xf938, 0xf939, 0xf93a, 0xf93b, 0xf93c, 0xf93d, 0xf93e, 0xf93f,
     8494        0xf940, 0xf941, 0xf942, 0xf943, 0xf944, 0xf945, 0xf946, 0xf947,
     8495        0xf948, 0xf949, 0xf94a, 0xf94b, 0xf94c, 0xf94d, 0xf94e, 0xf94f,
     8496        0xf950, 0xf951, 0xf952, 0xf953, 0xf954, 0xf955, 0xf956, 0xf957,
     8497        0xf958, 0xf959, 0xf95a, 0xf95b, 0xf95c, 0xf95d, 0xf95e, 0xf95f,
     8498        0xf960, 0xf961, 0xf962, 0xf963, 0xf964, 0xf965, 0xf966, 0xf967,
     8499        0xf968, 0xf969, 0xf96a, 0xf96b, 0xf96c, 0xf96d, 0xf96e, 0xf96f,
     8500        0xf970, 0xf971, 0xf972, 0xf973, 0xf974, 0xf975, 0xf976, 0xf977,
     8501        0xf978, 0xf979, 0xf97a, 0xf97b, 0xf97c, 0xf97d, 0xf97e, 0xf97f,
     8502        0xf980, 0xf981, 0xf982, 0xf983, 0xf984, 0xf985, 0xf986, 0xf987,
     8503        0xf988, 0xf989, 0xf98a, 0xf98b, 0xf98c, 0xf98d, 0xf98e, 0xf98f,
     8504        0xf990, 0xf991, 0xf992, 0xf993, 0xf994, 0xf995, 0xf996, 0xf997,
     8505        0xf998, 0xf999, 0xf99a, 0xf99b, 0xf99c, 0xf99d, 0xf99e, 0xf99f,
     8506        0xf9a0, 0xf9a1, 0xf9a2, 0xf9a3, 0xf9a4, 0xf9a5, 0xf9a6, 0xf9a7,
     8507        0xf9a8, 0xf9a9, 0xf9aa, 0xf9ab, 0xf9ac, 0xf9ad, 0xf9ae, 0xf9af,
     8508        0xf9b0, 0xf9b1, 0xf9b2, 0xf9b3, 0xf9b4, 0xf9b5, 0xf9b6, 0xf9b7,
     8509        0xf9b8, 0xf9b9, 0xf9ba, 0xf9bb, 0xf9bc, 0xf9bd, 0xf9be, 0xf9bf,
     8510        0xf9c0, 0xf9c1, 0xf9c2, 0xf9c3, 0xf9c4, 0xf9c5, 0xf9c6, 0xf9c7,
     8511        0xf9c8, 0xf9c9, 0xf9ca, 0xf9cb, 0xf9cc, 0xf9cd, 0xf9ce, 0xf9cf,
     8512        0xf9d0, 0xf9d1, 0xf9d2, 0xf9d3, 0xf9d4, 0xf9d5, 0xf9d6, 0xf9d7,
     8513        0xf9d8, 0xf9d9, 0xf9da, 0xf9db, 0xf9dc, 0xf9dd, 0xf9de, 0xf9df,
     8514        0xf9e0, 0xf9e1, 0xf9e2, 0xf9e3, 0xf9e4, 0xf9e5, 0xf9e6, 0xf9e7,
     8515        0xf9e8, 0xf9e9, 0xf9ea, 0xf9eb, 0xf9ec, 0xf9ed, 0xf9ee, 0xf9ef,
     8516        0xf9f0, 0xf9f1, 0xf9f2, 0xf9f3, 0xf9f4, 0xf9f5, 0xf9f6, 0xf9f7,
     8517        0xf9f8, 0xf9f9, 0xf9fa, 0xf9fb, 0xf9fc, 0xf9fd, 0xf9fe, 0xf9ff,
     8518        0xfa00, 0xfa01, 0xfa02, 0xfa03, 0xfa04, 0xfa05, 0xfa06, 0xfa07,
     8519        0xfa08, 0xfa09, 0xfa0a, 0xfa0b, 0xfa0c, 0xfa0d, 0xfa10, 0xfa12,
     8520        0xfa15, 0xfa16, 0xfa17, 0xfa18, 0xfa19, 0xfa1a, 0xfa1b, 0xfa1c,
     8521        0xfa1d, 0xfa1e, 0xfa20, 0xfa22, 0xfa25, 0xfa26, 0xfa2a, 0xfa2b,
     8522        0xfa2c, 0xfa2d, 0xfa2e, 0xfa2f, 0xfa30, 0xfa31, 0xfa32, 0xfa33,
     8523        0xfa34, 0xfa35, 0xfa36, 0xfa37, 0xfa38, 0xfa39, 0xfa3a, 0xfa3b,
     8524        0xfa3c, 0xfa3d, 0xfa3e, 0xfa3f, 0xfa40, 0xfa41, 0xfa42, 0xfa43,
     8525        0xfa44, 0xfa45, 0xfa46, 0xfa47, 0xfa48, 0xfa49, 0xfa4a, 0xfa4b,
     8526        0xfa4c, 0xfa4d, 0xfa4e, 0xfa4f, 0xfa50, 0xfa51, 0xfa52, 0xfa53,
     8527        0xfa54, 0xfa55, 0xfa56, 0xfa57, 0xfa58, 0xfa59, 0xfa5a, 0xfa5b,
     8528        0xfa5c, 0xfa5d, 0xfa5e, 0xfa5f, 0xfa60, 0xfa61, 0xfa62, 0xfa63,
     8529        0xfa64, 0xfa65, 0xfa66, 0xfa67, 0xfa68, 0xfa69, 0xfa6a, 0xfa6b,
     8530        0xfa6c, 0xfa6d, 0xfa70, 0xfa71, 0xfa72, 0xfa73, 0xfa74, 0xfa75,
     8531        0xfa76, 0xfa77, 0xfa78, 0xfa79, 0xfa7a, 0xfa7b, 0xfa7c, 0xfa7d,
     8532        0xfa7e, 0xfa7f, 0xfa80, 0xfa81, 0xfa82, 0xfa83, 0xfa84, 0xfa85,
     8533        0xfa86, 0xfa87, 0xfa88, 0xfa89, 0xfa8a, 0xfa8b, 0xfa8c, 0xfa8d,
     8534        0xfa8e, 0xfa8f, 0xfa90, 0xfa91, 0xfa92, 0xfa93, 0xfa94, 0xfa95,
     8535        0xfa96, 0xfa97, 0xfa98, 0xfa99, 0xfa9a, 0xfa9b, 0xfa9c, 0xfa9d,
     8536        0xfa9e, 0xfa9f, 0xfaa0, 0xfaa1, 0xfaa2, 0xfaa3, 0xfaa4, 0xfaa5,
     8537        0xfaa6, 0xfaa7, 0xfaa8, 0xfaa9, 0xfaaa, 0xfaab, 0xfaac, 0xfaad,
     8538        0xfaae, 0xfaaf, 0xfab0, 0xfab1, 0xfab2, 0xfab3, 0xfab4, 0xfab5,
     8539        0xfab6, 0xfab7, 0xfab8, 0xfab9, 0xfaba, 0xfabb, 0xfabc, 0xfabd,
     8540        0xfabe, 0xfabf, 0xfac0, 0xfac1, 0xfac2, 0xfac3, 0xfac4, 0xfac5,
     8541        0xfac6, 0xfac7, 0xfac8, 0xfac9, 0xfaca, 0xfacb, 0xfacc, 0xfacd,
     8542        0xface, 0xfacf, 0xfad0, 0xfad1, 0xfad2, 0xfad3, 0xfad4, 0xfad5,
     8543        0xfad6, 0xfad7, 0xfad8, 0xfad9, 0xfb00, 0xfb01, 0xfb02, 0xfb03,
     8544        0xfb04, 0xfb05, 0xfb06, 0xfb13, 0xfb14, 0xfb15, 0xfb16, 0xfb17,
     8545        0xfb1d, 0xfb1f, 0xfb20, 0xfb21, 0xfb22, 0xfb23, 0xfb24, 0xfb25,
     8546        0xfb26, 0xfb27, 0xfb28, 0xfb29, 0xfb2a, 0xfb2b, 0xfb2c, 0xfb2d,
     8547        0xfb2e, 0xfb2f, 0xfb30, 0xfb31, 0xfb32, 0xfb33, 0xfb34, 0xfb35,
     8548        0xfb36, 0xfb38, 0xfb39, 0xfb3a, 0xfb3b, 0xfb3c, 0xfb3e, 0xfb40,
     8549        0xfb41, 0xfb43, 0xfb44, 0xfb46, 0xfb47, 0xfb48, 0xfb49, 0xfb4a,
     8550        0xfb4b, 0xfb4c, 0xfb4d, 0xfb4e, 0xfb4f, 0xfb50, 0xfb51, 0xfb52,
     8551        0xfb53, 0xfb54, 0xfb55, 0xfb56, 0xfb57, 0xfb58, 0xfb59, 0xfb5a,
     8552        0xfb5b, 0xfb5c, 0xfb5d, 0xfb5e, 0xfb5f, 0xfb60, 0xfb61, 0xfb62,
     8553        0xfb63, 0xfb64, 0xfb65, 0xfb66, 0xfb67, 0xfb68, 0xfb69, 0xfb6a,
     8554        0xfb6b, 0xfb6c, 0xfb6d, 0xfb6e, 0xfb6f, 0xfb70, 0xfb71, 0xfb72,
     8555        0xfb73, 0xfb74, 0xfb75, 0xfb76, 0xfb77, 0xfb78, 0xfb79, 0xfb7a,
     8556        0xfb7b, 0xfb7c, 0xfb7d, 0xfb7e, 0xfb7f, 0xfb80, 0xfb81, 0xfb82,
     8557        0xfb83, 0xfb84, 0xfb85, 0xfb86, 0xfb87, 0xfb88, 0xfb89, 0xfb8a,
     8558        0xfb8b, 0xfb8c, 0xfb8d, 0xfb8e, 0xfb8f, 0xfb90, 0xfb91, 0xfb92,
     8559        0xfb93, 0xfb94, 0xfb95, 0xfb96, 0xfb97, 0xfb98, 0xfb99, 0xfb9a,
     8560        0xfb9b, 0xfb9c, 0xfb9d, 0xfb9e, 0xfb9f, 0xfba0, 0xfba1, 0xfba2,
     8561        0xfba3, 0xfba4, 0xfba5, 0xfba6, 0xfba7, 0xfba8, 0xfba9, 0xfbaa,
     8562        0xfbab, 0xfbac, 0xfbad, 0xfbae, 0xfbaf, 0xfbb0, 0xfbb1, 0xfbd3,
     8563        0xfbd4, 0xfbd5, 0xfbd6, 0xfbd7, 0xfbd8, 0xfbd9, 0xfbda, 0xfbdb,
     8564        0xfbdc, 0xfbdd, 0xfbde, 0xfbdf, 0xfbe0, 0xfbe1, 0xfbe2, 0xfbe3,
     8565        0xfbe4, 0xfbe5, 0xfbe6, 0xfbe7, 0xfbe8, 0xfbe9, 0xfbea, 0xfbeb,
     8566        0xfbec, 0xfbed, 0xfbee, 0xfbef, 0xfbf0, 0xfbf1, 0xfbf2, 0xfbf3,
     8567        0xfbf4, 0xfbf5, 0xfbf6, 0xfbf7, 0xfbf8, 0xfbf9, 0xfbfa, 0xfbfb,
     8568        0xfbfc, 0xfbfd, 0xfbfe, 0xfbff, 0xfc00, 0xfc01, 0xfc02, 0xfc03,
     8569        0xfc04, 0xfc05, 0xfc06, 0xfc07, 0xfc08, 0xfc09, 0xfc0a, 0xfc0b,
     8570        0xfc0c, 0xfc0d, 0xfc0e, 0xfc0f, 0xfc10, 0xfc11, 0xfc12, 0xfc13,
     8571        0xfc14, 0xfc15, 0xfc16, 0xfc17, 0xfc18, 0xfc19, 0xfc1a, 0xfc1b,
     8572        0xfc1c, 0xfc1d, 0xfc1e, 0xfc1f, 0xfc20, 0xfc21, 0xfc22, 0xfc23,
     8573        0xfc24, 0xfc25, 0xfc26, 0xfc27, 0xfc28, 0xfc29, 0xfc2a, 0xfc2b,
     8574        0xfc2c, 0xfc2d, 0xfc2e, 0xfc2f, 0xfc30, 0xfc31, 0xfc32, 0xfc33,
     8575        0xfc34, 0xfc35, 0xfc36, 0xfc37, 0xfc38, 0xfc39, 0xfc3a, 0xfc3b,
     8576        0xfc3c, 0xfc3d, 0xfc3e, 0xfc3f, 0xfc40, 0xfc41, 0xfc42, 0xfc43,
     8577        0xfc44, 0xfc45, 0xfc46, 0xfc47, 0xfc48, 0xfc49, 0xfc4a, 0xfc4b,
     8578        0xfc4c, 0xfc4d, 0xfc4e, 0xfc4f, 0xfc50, 0xfc51, 0xfc52, 0xfc53,
     8579        0xfc54, 0xfc55, 0xfc56, 0xfc57, 0xfc58, 0xfc59, 0xfc5a, 0xfc5b,
     8580        0xfc5c, 0xfc5d, 0xfc5e, 0xfc5f, 0xfc60, 0xfc61, 0xfc62, 0xfc63,
     8581        0xfc64, 0xfc65, 0xfc66, 0xfc67, 0xfc68, 0xfc69, 0xfc6a, 0xfc6b,
     8582        0xfc6c, 0xfc6d, 0xfc6e, 0xfc6f, 0xfc70, 0xfc71, 0xfc72, 0xfc73,
     8583        0xfc74, 0xfc75, 0xfc76, 0xfc77, 0xfc78, 0xfc79, 0xfc7a, 0xfc7b,
     8584        0xfc7c, 0xfc7d, 0xfc7e, 0xfc7f, 0xfc80, 0xfc81, 0xfc82, 0xfc83,
     8585        0xfc84, 0xfc85, 0xfc86, 0xfc87, 0xfc88, 0xfc89, 0xfc8a, 0xfc8b,
     8586        0xfc8c, 0xfc8d, 0xfc8e, 0xfc8f, 0xfc90, 0xfc91, 0xfc92, 0xfc93,
     8587        0xfc94, 0xfc95, 0xfc96, 0xfc97, 0xfc98, 0xfc99, 0xfc9a, 0xfc9b,
     8588        0xfc9c, 0xfc9d, 0xfc9e, 0xfc9f, 0xfca0, 0xfca1, 0xfca2, 0xfca3,
     8589        0xfca4, 0xfca5, 0xfca6, 0xfca7, 0xfca8, 0xfca9, 0xfcaa, 0xfcab,
     8590        0xfcac, 0xfcad, 0xfcae, 0xfcaf, 0xfcb0, 0xfcb1, 0xfcb2, 0xfcb3,
     8591        0xfcb4, 0xfcb5, 0xfcb6, 0xfcb7, 0xfcb8, 0xfcb9, 0xfcba, 0xfcbb,
     8592        0xfcbc, 0xfcbd, 0xfcbe, 0xfcbf, 0xfcc0, 0xfcc1, 0xfcc2, 0xfcc3,
     8593        0xfcc4, 0xfcc5, 0xfcc6, 0xfcc7, 0xfcc8, 0xfcc9, 0xfcca, 0xfccb,
     8594        0xfccc, 0xfccd, 0xfcce, 0xfccf, 0xfcd0, 0xfcd1, 0xfcd2, 0xfcd3,
     8595        0xfcd4, 0xfcd5, 0xfcd6, 0xfcd7, 0xfcd8, 0xfcd9, 0xfcda, 0xfcdb,
     8596        0xfcdc, 0xfcdd, 0xfcde, 0xfcdf, 0xfce0, 0xfce1, 0xfce2, 0xfce3,
     8597        0xfce4, 0xfce5, 0xfce6, 0xfce7, 0xfce8, 0xfce9, 0xfcea, 0xfceb,
     8598        0xfcec, 0xfced, 0xfcee, 0xfcef, 0xfcf0, 0xfcf1, 0xfcf2, 0xfcf3,
     8599        0xfcf4, 0xfcf5, 0xfcf6, 0xfcf7, 0xfcf8, 0xfcf9, 0xfcfa, 0xfcfb,
     8600        0xfcfc, 0xfcfd, 0xfcfe, 0xfcff, 0xfd00, 0xfd01, 0xfd02, 0xfd03,
     8601        0xfd04, 0xfd05, 0xfd06, 0xfd07, 0xfd08, 0xfd09, 0xfd0a, 0xfd0b,
     8602        0xfd0c, 0xfd0d, 0xfd0e, 0xfd0f, 0xfd10, 0xfd11, 0xfd12, 0xfd13,
     8603        0xfd14, 0xfd15, 0xfd16, 0xfd17, 0xfd18, 0xfd19, 0xfd1a, 0xfd1b,
     8604        0xfd1c, 0xfd1d, 0xfd1e, 0xfd1f, 0xfd20, 0xfd21, 0xfd22, 0xfd23,
     8605        0xfd24, 0xfd25, 0xfd26, 0xfd27, 0xfd28, 0xfd29, 0xfd2a, 0xfd2b,
     8606        0xfd2c, 0xfd2d, 0xfd2e, 0xfd2f, 0xfd30, 0xfd31, 0xfd32, 0xfd33,
     8607        0xfd34, 0xfd35, 0xfd36, 0xfd37, 0xfd38, 0xfd39, 0xfd3a, 0xfd3b,
     8608        0xfd3c, 0xfd3d, 0xfd50, 0xfd51, 0xfd52, 0xfd53, 0xfd54, 0xfd55,
     8609        0xfd56, 0xfd57, 0xfd58, 0xfd59, 0xfd5a, 0xfd5b, 0xfd5c, 0xfd5d,
     8610        0xfd5e, 0xfd5f, 0xfd60, 0xfd61, 0xfd62, 0xfd63, 0xfd64, 0xfd65,
     8611        0xfd66, 0xfd67, 0xfd68, 0xfd69, 0xfd6a, 0xfd6b, 0xfd6c, 0xfd6d,
     8612        0xfd6e, 0xfd6f, 0xfd70, 0xfd71, 0xfd72, 0xfd73, 0xfd74, 0xfd75,
     8613        0xfd76, 0xfd77, 0xfd78, 0xfd79, 0xfd7a, 0xfd7b, 0xfd7c, 0xfd7d,
     8614        0xfd7e, 0xfd7f, 0xfd80, 0xfd81, 0xfd82, 0xfd83, 0xfd84, 0xfd85,
     8615        0xfd86, 0xfd87, 0xfd88, 0xfd89, 0xfd8a, 0xfd8b, 0xfd8c, 0xfd8d,
     8616        0xfd8e, 0xfd8f, 0xfd92, 0xfd93, 0xfd94, 0xfd95, 0xfd96, 0xfd97,
     8617        0xfd98, 0xfd99, 0xfd9a, 0xfd9b, 0xfd9c, 0xfd9d, 0xfd9e, 0xfd9f,
     8618        0xfda0, 0xfda1, 0xfda2, 0xfda3, 0xfda4, 0xfda5, 0xfda6, 0xfda7,
     8619        0xfda8, 0xfda9, 0xfdaa, 0xfdab, 0xfdac, 0xfdad, 0xfdae, 0xfdaf,
     8620        0xfdb0, 0xfdb1, 0xfdb2, 0xfdb3, 0xfdb4, 0xfdb5, 0xfdb6, 0xfdb7,
     8621        0xfdb8, 0xfdb9, 0xfdba, 0xfdbb, 0xfdbc, 0xfdbd, 0xfdbe, 0xfdbf,
     8622        0xfdc0, 0xfdc1, 0xfdc2, 0xfdc3, 0xfdc4, 0xfdc5, 0xfdc6, 0xfdc7,
     8623        0xfdf0, 0xfdf1, 0xfdf2, 0xfdf3, 0xfdf4, 0xfdf5, 0xfdf6, 0xfdf7,
     8624        0xfdf8, 0xfdf9, 0xfdfa, 0xfdfb, 0xfdfc, 0xfe10, 0xfe11, 0xfe12,
     8625        0xfe13, 0xfe14, 0xfe15, 0xfe16, 0xfe17, 0xfe18, 0xfe19, 0xfe30,
     8626        0xfe31, 0xfe32, 0xfe33, 0xfe34, 0xfe35, 0xfe36, 0xfe37, 0xfe38,
     8627        0xfe39, 0xfe3a, 0xfe3b, 0xfe3c, 0xfe3d, 0xfe3e, 0xfe3f, 0xfe40,
     8628        0xfe41, 0xfe42, 0xfe43, 0xfe44, 0xfe47, 0xfe48, 0xfe49, 0xfe4a,
     8629        0xfe4b, 0xfe4c, 0xfe4d, 0xfe4e, 0xfe4f, 0xfe50, 0xfe51, 0xfe52,
     8630        0xfe54, 0xfe55, 0xfe56, 0xfe57, 0xfe58, 0xfe59, 0xfe5a, 0xfe5b,
     8631        0xfe5c, 0xfe5d, 0xfe5e, 0xfe5f, 0xfe60, 0xfe61, 0xfe62, 0xfe63,
     8632        0xfe64, 0xfe65, 0xfe66, 0xfe68, 0xfe69, 0xfe6a, 0xfe6b, 0xfe70,
     8633        0xfe71, 0xfe72, 0xfe74, 0xfe76, 0xfe77, 0xfe78, 0xfe79, 0xfe7a,
     8634        0xfe7b, 0xfe7c, 0xfe7d, 0xfe7e, 0xfe7f, 0xfe80, 0xfe81, 0xfe82,
     8635        0xfe83, 0xfe84, 0xfe85, 0xfe86, 0xfe87, 0xfe88, 0xfe89, 0xfe8a,
     8636        0xfe8b, 0xfe8c, 0xfe8d, 0xfe8e, 0xfe8f, 0xfe90, 0xfe91, 0xfe92,
     8637        0xfe93, 0xfe94, 0xfe95, 0xfe96, 0xfe97, 0xfe98, 0xfe99, 0xfe9a,
     8638        0xfe9b, 0xfe9c, 0xfe9d, 0xfe9e, 0xfe9f, 0xfea0, 0xfea1, 0xfea2,
     8639        0xfea3, 0xfea4, 0xfea5, 0xfea6, 0xfea7, 0xfea8, 0xfea9, 0xfeaa,
     8640        0xfeab, 0xfeac, 0xfead, 0xfeae, 0xfeaf, 0xfeb0, 0xfeb1, 0xfeb2,
     8641        0xfeb3, 0xfeb4, 0xfeb5, 0xfeb6, 0xfeb7, 0xfeb8, 0xfeb9, 0xfeba,
     8642        0xfebb, 0xfebc, 0xfebd, 0xfebe, 0xfebf, 0xfec0, 0xfec1, 0xfec2,
     8643        0xfec3, 0xfec4, 0xfec5, 0xfec6, 0xfec7, 0xfec8, 0xfec9, 0xfeca,
     8644        0xfecb, 0xfecc, 0xfecd, 0xfece, 0xfecf, 0xfed0, 0xfed1, 0xfed2,
     8645        0xfed3, 0xfed4, 0xfed5, 0xfed6, 0xfed7, 0xfed8, 0xfed9, 0xfeda,
     8646        0xfedb, 0xfedc, 0xfedd, 0xfede, 0xfedf, 0xfee0, 0xfee1, 0xfee2,
     8647        0xfee3, 0xfee4, 0xfee5, 0xfee6, 0xfee7, 0xfee8, 0xfee9, 0xfeea,
     8648        0xfeeb, 0xfeec, 0xfeed, 0xfeee, 0xfeef, 0xfef0, 0xfef1, 0xfef2,
     8649        0xfef3, 0xfef4, 0xfef5, 0xfef6, 0xfef7, 0xfef8, 0xfef9, 0xfefa,
     8650        0xfefb, 0xfefc, 0xff01, 0xff02, 0xff03, 0xff04, 0xff05, 0xff06,
     8651        0xff07, 0xff08, 0xff09, 0xff0a, 0xff0b, 0xff0c, 0xff0d, 0xff0e,
     8652        0xff0f, 0xff10, 0xff11, 0xff12, 0xff13, 0xff14, 0xff15, 0xff16,
     8653        0xff17, 0xff18, 0xff19, 0xff1a, 0xff1b, 0xff1c, 0xff1d, 0xff1e,
     8654        0xff1f, 0xff20, 0xff21, 0xff22, 0xff23, 0xff24, 0xff25, 0xff26,
     8655        0xff27, 0xff28, 0xff29, 0xff2a, 0xff2b, 0xff2c, 0xff2d, 0xff2e,
     8656        0xff2f, 0xff30, 0xff31, 0xff32, 0xff33, 0xff34, 0xff35, 0xff36,
     8657        0xff37, 0xff38, 0xff39, 0xff3a, 0xff3b, 0xff3c, 0xff3d, 0xff3e,
     8658        0xff3f, 0xff40, 0xff41, 0xff42, 0xff43, 0xff44, 0xff45, 0xff46,
     8659        0xff47, 0xff48, 0xff49, 0xff4a, 0xff4b, 0xff4c, 0xff4d, 0xff4e,
     8660        0xff4f, 0xff50, 0xff51, 0xff52, 0xff53, 0xff54, 0xff55, 0xff56,
     8661        0xff57, 0xff58, 0xff59, 0xff5a, 0xff5b, 0xff5c, 0xff5d, 0xff5e,
     8662        0xff5f, 0xff60, 0xff61, 0xff62, 0xff63, 0xff64, 0xff65, 0xff66,
     8663        0xff67, 0xff68, 0xff69, 0xff6a, 0xff6b, 0xff6c, 0xff6d, 0xff6e,
     8664        0xff6f, 0xff70, 0xff71, 0xff72, 0xff73, 0xff74, 0xff75, 0xff76,
     8665        0xff77, 0xff78, 0xff79, 0xff7a, 0xff7b, 0xff7c, 0xff7d, 0xff7e,
     8666        0xff7f, 0xff80, 0xff81, 0xff82, 0xff83, 0xff84, 0xff85, 0xff86,
     8667        0xff87, 0xff88, 0xff89, 0xff8a, 0xff8b, 0xff8c, 0xff8d, 0xff8e,
     8668        0xff8f, 0xff90, 0xff91, 0xff92, 0xff93, 0xff94, 0xff95, 0xff96,
     8669        0xff97, 0xff98, 0xff99, 0xff9a, 0xff9b, 0xff9c, 0xff9d, 0xff9e,
     8670        0xff9f, 0xffa1, 0xffa2, 0xffa3, 0xffa4, 0xffa5, 0xffa6, 0xffa7,
     8671        0xffa8, 0xffa9, 0xffaa, 0xffab, 0xffac, 0xffad, 0xffae, 0xffaf,
     8672        0xffb0, 0xffb1, 0xffb2, 0xffb3, 0xffb4, 0xffb5, 0xffb6, 0xffb7,
     8673        0xffb8, 0xffb9, 0xffba, 0xffbb, 0xffbc, 0xffbd, 0xffbe, 0xffc2,
     8674        0xffc3, 0xffc4, 0xffc5, 0xffc6, 0xffc7, 0xffca, 0xffcb, 0xffcc,
     8675        0xffcd, 0xffce, 0xffcf, 0xffd2, 0xffd3, 0xffd4, 0xffd5, 0xffd6,
     8676        0xffd7, 0xffda, 0xffdb, 0xffdc, 0xffe0, 0xffe1, 0xffe2, 0xffe3,
     8677        0xffe4, 0xffe5, 0xffe6, 0xffe8, 0xffe9, 0xffea, 0xffeb, 0xffec,
     8678        0xffed, 0xffee, 0x10400, 0x10401, 0x10402, 0x10403, 0x10404,
     8679        0x10405, 0x10406, 0x10407, 0x10408, 0x10409, 0x1040a, 0x1040b,
     8680        0x1040c, 0x1040d, 0x1040e, 0x1040f, 0x10410, 0x10411, 0x10412,
     8681        0x10413, 0x10414, 0x10415, 0x10416, 0x10417, 0x10418, 0x10419,
     8682        0x1041a, 0x1041b, 0x1041c, 0x1041d, 0x1041e, 0x1041f, 0x10420,
     8683        0x10421, 0x10422, 0x10423, 0x10424, 0x10425, 0x10426, 0x10427,
     8684        0x104b0, 0x104b1, 0x104b2, 0x104b3, 0x104b4, 0x104b5, 0x104b6,
     8685        0x104b7, 0x104b8, 0x104b9, 0x104ba, 0x104bb, 0x104bc, 0x104bd,
     8686        0x104be, 0x104bf, 0x104c0, 0x104c1, 0x104c2, 0x104c3, 0x104c4,
     8687        0x104c5, 0x104c6, 0x104c7, 0x104c8, 0x104c9, 0x104ca, 0x104cb,
     8688        0x104cc, 0x104cd, 0x104ce, 0x104cf, 0x104d0, 0x104d1, 0x104d2,
     8689        0x104d3, 0x10c80, 0x10c81, 0x10c82, 0x10c83, 0x10c84, 0x10c85,
     8690        0x10c86, 0x10c87, 0x10c88, 0x10c89, 0x10c8a, 0x10c8b, 0x10c8c,
     8691        0x10c8d, 0x10c8e, 0x10c8f, 0x10c90, 0x10c91, 0x10c92, 0x10c93,
     8692        0x10c94, 0x10c95, 0x10c96, 0x10c97, 0x10c98, 0x10c99, 0x10c9a,
     8693        0x10c9b, 0x10c9c, 0x10c9d, 0x10c9e, 0x10c9f, 0x10ca0, 0x10ca1,
     8694        0x10ca2, 0x10ca3, 0x10ca4, 0x10ca5, 0x10ca6, 0x10ca7, 0x10ca8,
     8695        0x10ca9, 0x10caa, 0x10cab, 0x10cac, 0x10cad, 0x10cae, 0x10caf,
     8696        0x10cb0, 0x10cb1, 0x10cb2, 0x118a0, 0x118a1, 0x118a2, 0x118a3,
     8697        0x118a4, 0x118a5, 0x118a6, 0x118a7, 0x118a8, 0x118a9, 0x118aa,
     8698        0x118ab, 0x118ac, 0x118ad, 0x118ae, 0x118af, 0x118b0, 0x118b1,
     8699        0x118b2, 0x118b3, 0x118b4, 0x118b5, 0x118b6, 0x118b7, 0x118b8,
     8700        0x118b9, 0x118ba, 0x118bb, 0x118bc, 0x118bd, 0x118be, 0x118bf,
     8701        0x1d15e, 0x1d15f, 0x1d160, 0x1d161, 0x1d162, 0x1d163, 0x1d164,
     8702        0x1d1bb, 0x1d1bc, 0x1d1bd, 0x1d1be, 0x1d1bf, 0x1d1c0, 0x1d400,
     8703        0x1d401, 0x1d402, 0x1d403, 0x1d404, 0x1d405, 0x1d406, 0x1d407,
     8704        0x1d408, 0x1d409, 0x1d40a, 0x1d40b, 0x1d40c, 0x1d40d, 0x1d40e,
     8705        0x1d40f, 0x1d410, 0x1d411, 0x1d412, 0x1d413, 0x1d414, 0x1d415,
     8706        0x1d416, 0x1d417, 0x1d418, 0x1d419, 0x1d41a, 0x1d41b, 0x1d41c,
     8707        0x1d41d, 0x1d41e, 0x1d41f, 0x1d420, 0x1d421, 0x1d422, 0x1d423,
     8708        0x1d424, 0x1d425, 0x1d426, 0x1d427, 0x1d428, 0x1d429, 0x1d42a,
     8709        0x1d42b, 0x1d42c, 0x1d42d, 0x1d42e, 0x1d42f, 0x1d430, 0x1d431,
     8710        0x1d432, 0x1d433, 0x1d434, 0x1d435, 0x1d436, 0x1d437, 0x1d438,
     8711        0x1d439, 0x1d43a, 0x1d43b, 0x1d43c, 0x1d43d, 0x1d43e, 0x1d43f,
     8712        0x1d440, 0x1d441, 0x1d442, 0x1d443, 0x1d444, 0x1d445, 0x1d446,
     8713        0x1d447, 0x1d448, 0x1d449, 0x1d44a, 0x1d44b, 0x1d44c, 0x1d44d,
     8714        0x1d44e, 0x1d44f, 0x1d450, 0x1d451, 0x1d452, 0x1d453, 0x1d454,
     8715        0x1d456, 0x1d457, 0x1d458, 0x1d459, 0x1d45a, 0x1d45b, 0x1d45c,
     8716        0x1d45d, 0x1d45e, 0x1d45f, 0x1d460, 0x1d461, 0x1d462, 0x1d463,
     8717        0x1d464, 0x1d465, 0x1d466, 0x1d467, 0x1d468, 0x1d469, 0x1d46a,
     8718        0x1d46b, 0x1d46c, 0x1d46d, 0x1d46e, 0x1d46f, 0x1d470, 0x1d471,
     8719        0x1d472, 0x1d473, 0x1d474, 0x1d475, 0x1d476, 0x1d477, 0x1d478,
     8720        0x1d479, 0x1d47a, 0x1d47b, 0x1d47c, 0x1d47d, 0x1d47e, 0x1d47f,
     8721        0x1d480, 0x1d481, 0x1d482, 0x1d483, 0x1d484, 0x1d485, 0x1d486,
     8722        0x1d487, 0x1d488, 0x1d489, 0x1d48a, 0x1d48b, 0x1d48c, 0x1d48d,
     8723        0x1d48e, 0x1d48f, 0x1d490, 0x1d491, 0x1d492, 0x1d493, 0x1d494,
     8724        0x1d495, 0x1d496, 0x1d497, 0x1d498, 0x1d499, 0x1d49a, 0x1d49b,
     8725        0x1d49c, 0x1d49e, 0x1d49f, 0x1d4a2, 0x1d4a5, 0x1d4a6, 0x1d4a9,
     8726        0x1d4aa, 0x1d4ab, 0x1d4ac, 0x1d4ae, 0x1d4af, 0x1d4b0, 0x1d4b1,
     8727        0x1d4b2, 0x1d4b3, 0x1d4b4, 0x1d4b5, 0x1d4b6, 0x1d4b7, 0x1d4b8,
     8728        0x1d4b9, 0x1d4bb, 0x1d4bd, 0x1d4be, 0x1d4bf, 0x1d4c0, 0x1d4c1,
     8729        0x1d4c2, 0x1d4c3, 0x1d4c5, 0x1d4c6, 0x1d4c7, 0x1d4c8, 0x1d4c9,
     8730        0x1d4ca, 0x1d4cb, 0x1d4cc, 0x1d4cd, 0x1d4ce, 0x1d4cf, 0x1d4d0,
     8731        0x1d4d1, 0x1d4d2, 0x1d4d3, 0x1d4d4, 0x1d4d5, 0x1d4d6, 0x1d4d7,
     8732        0x1d4d8, 0x1d4d9, 0x1d4da, 0x1d4db, 0x1d4dc, 0x1d4dd, 0x1d4de,
     8733        0x1d4df, 0x1d4e0, 0x1d4e1, 0x1d4e2, 0x1d4e3, 0x1d4e4, 0x1d4e5,
     8734        0x1d4e6, 0x1d4e7, 0x1d4e8, 0x1d4e9, 0x1d4ea, 0x1d4eb, 0x1d4ec,
     8735        0x1d4ed, 0x1d4ee, 0x1d4ef, 0x1d4f0, 0x1d4f1, 0x1d4f2, 0x1d4f3,
     8736        0x1d4f4, 0x1d4f5, 0x1d4f6, 0x1d4f7, 0x1d4f8, 0x1d4f9, 0x1d4fa,
     8737        0x1d4fb, 0x1d4fc, 0x1d4fd, 0x1d4fe, 0x1d4ff, 0x1d500, 0x1d501,
     8738        0x1d502, 0x1d503, 0x1d504, 0x1d505, 0x1d507, 0x1d508, 0x1d509,
     8739        0x1d50a, 0x1d50d, 0x1d50e, 0x1d50f, 0x1d510, 0x1d511, 0x1d512,
     8740        0x1d513, 0x1d514, 0x1d516, 0x1d517, 0x1d518, 0x1d519, 0x1d51a,
     8741        0x1d51b, 0x1d51c, 0x1d51e, 0x1d51f, 0x1d520, 0x1d521, 0x1d522,
     8742        0x1d523, 0x1d524, 0x1d525, 0x1d526, 0x1d527, 0x1d528, 0x1d529,
     8743        0x1d52a, 0x1d52b, 0x1d52c, 0x1d52d, 0x1d52e, 0x1d52f, 0x1d530,
     8744        0x1d531, 0x1d532, 0x1d533, 0x1d534, 0x1d535, 0x1d536, 0x1d537,