From 703725e43b6754ee46064afb616c6df1ca86dd4c Mon Sep 17 00:00:00 2001 From: Alex Dowad Date: Sat, 31 Dec 2022 07:22:54 +0200 Subject: [PATCH] Optimize conversion of CP936 to Unicode In the previous commit, the branch in mb_strlen which implements the function using the mblen_table (when one is available) was removed. This made mb_strlen faster for just about every legacy text encoding which had an mblen_table... except for CP936, which became much slower. This indicated that our decoding filter for CP936 was slow. I checked and found iterating over the PUA table was a major bottleneck. After optimizing that bottleneck out, benchmarks for text encoding conversion speed were as follows: CP936, short - to UTF-8 - faster by 10.44% (0.0003 vs 0.0003) CP936, short - to UTF-16BE - faster by 11.45% (0.0003 vs 0.0003) CP936, medium - to UTF-8 - faster by 139.09% (0.0012 vs 0.0005) CP936, medium - to UTF-16BE - faster by 140.34% (0.0013 vs 0.0005) CP936, long - to UTF-16BE - faster by 215.88% (0.0538 vs 0.0170) CP936, long - to UTF-8 - faster by 232.41% (0.0528 vs 0.0159) This does not fully express how much faster the CP936 decoder is now, since these conversion benchmarks are not only measuring the speed of decoding CP936, but then also re-encoding the codepoints as UTF-8 or UTF-16. For functions like mb_strlen, which just need to decode but not re-encode the text, the gain in performance is much larger. --- ext/mbstring/libmbfl/filters/mbfilter_cp936.c | 40 +- .../libmbfl/filters/unicode_table_cp936.h | 467 +++++++++++++----- 2 files changed, 365 insertions(+), 142 deletions(-) diff --git a/ext/mbstring/libmbfl/filters/mbfilter_cp936.c b/ext/mbstring/libmbfl/filters/mbfilter_cp936.c index 40ae8c86f91..b3c6d1a6f28 100644 --- a/ext/mbstring/libmbfl/filters/mbfilter_cp936.c +++ b/ext/mbstring/libmbfl/filters/mbfilter_cp936.c @@ -291,37 +291,45 @@ static size_t mb_cp936_to_wchar(unsigned char **in, size_t *in_len, uint32_t *bu } unsigned char c2 = *p++; + if (c2 < 0x40 || c2 == 0x7F || c2 == 0xFF) { + *out++ = MBFL_BAD_INPUT; + continue; + } - if (((c >= 0xAA && c <= 0xAF) || (c >= 0xF8 && c <= 0xFE)) && (c2 >= 0xA1 && c2 <= 0xFE)) { + if (((c >= 0xAA && c <= 0xAF) || (c >= 0xF8 && c <= 0xFE)) && c2 >= 0xA1) { /* UDA part 1, 2: U+E000-U+E4C5 */ *out++ = 94*(c >= 0xF8 ? c - 0xF2 : c - 0xAA) + (c2 - 0xA1) + 0xE000; - } else if (c >= 0xA1 && c <= 0xA7 && c2 >= 0x40 && c2 < 0xA1 && c2 != 0x7F) { + } else if (c >= 0xA1 && c <= 0xA7 && c2 < 0xA1) { /* UDA part 3: U+E4C6-U+E765*/ *out++ = 96*(c - 0xA1) + c2 - (c2 >= 0x80 ? 0x41 : 0x40) + 0xE4C6; } else { - unsigned int w = (c << 8) | c2; + unsigned int w = (c - 0x81)*192 + c2 - 0x40; /* Convert c, c2 into GB 2312 table lookup index */ - if ((w >= 0xA2AB && w <= 0xA9FE) || (w >= 0xD7FA && w <= 0xD7FE) || (w >= 0xFE50 && w <= 0xFEA0)) { - for (int k = 0; k < mbfl_cp936_pua_tbl_max; k++) { - if (w >= mbfl_cp936_pua_tbl[k][2] && w <= mbfl_cp936_pua_tbl[k][2] + mbfl_cp936_pua_tbl[k][1] - mbfl_cp936_pua_tbl[k][0]) { - *out++ = w - mbfl_cp936_pua_tbl[k][2] + mbfl_cp936_pua_tbl[k][0]; - goto next_iteration; + /* For CP936 and GB18030, certain GB 2312 byte combinations are mapped to PUA codepoints, + * whereas the same combinations aren't mapped to any codepoint for HZ and EUC-CN + * To avoid duplicating the entire GB 2312 -> Unicode lookup table, we have three + * auxiliary tables which are consulted instead for specific ranges of lookup indices */ + if (w >= 0x192B) { + if (w <= 0x1EBE) { + *out++ = cp936_pua_tbl1[w - 0x192B]; + continue; + } else if (w >= 0x413A) { + if (w <= 0x413E) { + *out++ = cp936_pua_tbl2[w - 0x413A]; + continue; + } else if (w >= 0x5DD0 && w <= 0x5E20) { + *out++ = cp936_pua_tbl3[w - 0x5DD0]; + continue; } } } - if (c < 0xFF && c > 0x80 && c2 >= 0x40 && c2 < 0xFF && c2 != 0x7F) { - w = (c - 0x81)*192 + c2 - 0x40; - ZEND_ASSERT(w < cp936_ucs_table_size); - *out++ = cp936_ucs_table[w]; - } else { - *out++ = MBFL_BAD_INPUT; - } + ZEND_ASSERT(w < cp936_ucs_table_size); + *out++ = cp936_ucs_table[w]; } } else { *out++ = 0xF8F5; } -next_iteration: ; } *in_len = e - p; diff --git a/ext/mbstring/libmbfl/filters/unicode_table_cp936.h b/ext/mbstring/libmbfl/filters/unicode_table_cp936.h index 754a6ec89c1..c225c586ffb 100644 --- a/ext/mbstring/libmbfl/filters/unicode_table_cp936.h +++ b/ext/mbstring/libmbfl/filters/unicode_table_cp936.h @@ -30,8 +30,9 @@ */ #ifdef UNICODE_TABLE_CP936_DEF +/* CP936 -> Unicode, but without PUA codepoints used in CP936 and GB18030 */ const unsigned short cp936_ucs_table[] = { -/* 0x8100 */ +/* 0x8140 */ 0x4e02,0x4e04,0x4e05,0x4e06,0x4e0f,0x4e12,0x4e17,0x4e1f, 0x4e20,0x4e21,0x4e23,0x4e26,0x4e29,0x4e2e,0x4e2f,0x4e31, 0x4e33,0x4e35,0x4e37,0x4e3c,0x4e40,0x4e41,0x4e42,0x4e44, @@ -56,7 +57,7 @@ const unsigned short cp936_ucs_table[] = { 0x4f7d,0x4f80,0x4f81,0x4f82,0x4f85,0x4f86,0x4f87,0x4f8a, 0x4f8c,0x4f8e,0x4f90,0x4f92,0x4f93,0x4f95,0x4f96,0x4f98, 0x4f99,0x4f9a,0x4f9c,0x4f9e,0x4f9f,0x4fa1,0x4fa2,0x0000, -/* 0x8200 */ +/* 0x8240 */ 0x4fa4,0x4fab,0x4fad,0x4fb0,0x4fb1,0x4fb2,0x4fb3,0x4fb4, 0x4fb6,0x4fb7,0x4fb8,0x4fb9,0x4fba,0x4fbb,0x4fbc,0x4fbd, 0x4fbe,0x4fc0,0x4fc1,0x4fc2,0x4fc6,0x4fc7,0x4fc8,0x4fc9, @@ -81,7 +82,7 @@ const unsigned short cp936_ucs_table[] = { 0x509d,0x509e,0x509f,0x50a0,0x50a1,0x50a2,0x50a4,0x50a6, 0x50aa,0x50ab,0x50ad,0x50ae,0x50af,0x50b0,0x50b1,0x50b3, 0x50b4,0x50b5,0x50b6,0x50b7,0x50b8,0x50b9,0x50bc,0x0000, -/* 0x8300 */ +/* 0x8340 */ 0x50bd,0x50be,0x50bf,0x50c0,0x50c1,0x50c2,0x50c3,0x50c4, 0x50c5,0x50c6,0x50c7,0x50c8,0x50c9,0x50ca,0x50cb,0x50cc, 0x50cd,0x50ce,0x50d0,0x50d1,0x50d2,0x50d3,0x50d4,0x50d5, @@ -106,7 +107,7 @@ const unsigned short cp936_ucs_table[] = { 0x51ad,0x51ae,0x51b4,0x51b8,0x51b9,0x51ba,0x51be,0x51bf, 0x51c1,0x51c2,0x51c3,0x51c5,0x51c8,0x51ca,0x51cd,0x51ce, 0x51d0,0x51d2,0x51d3,0x51d4,0x51d5,0x51d6,0x51d7,0x0000, -/* 0x8400 */ +/* 0x8440 */ 0x51d8,0x51d9,0x51da,0x51dc,0x51de,0x51df,0x51e2,0x51e3, 0x51e5,0x51e6,0x51e7,0x51e8,0x51e9,0x51ea,0x51ec,0x51ee, 0x51f1,0x51f2,0x51f4,0x51f7,0x51fe,0x5204,0x5205,0x5209, @@ -131,7 +132,7 @@ const unsigned short cp936_ucs_table[] = { 0x52ee,0x52ef,0x52f1,0x52f2,0x52f3,0x52f4,0x52f5,0x52f6, 0x52f7,0x52f8,0x52fb,0x52fc,0x52fd,0x5301,0x5302,0x5303, 0x5304,0x5307,0x5309,0x530a,0x530b,0x530c,0x530e,0x0000, -/* 0x8500 */ +/* 0x8540 */ 0x5311,0x5312,0x5313,0x5314,0x5318,0x531b,0x531c,0x531e, 0x531f,0x5322,0x5324,0x5325,0x5327,0x5328,0x5329,0x532b, 0x532c,0x532d,0x532f,0x5330,0x5331,0x5332,0x5333,0x5334, @@ -156,7 +157,7 @@ const unsigned short cp936_ucs_table[] = { 0x5470,0x5474,0x5479,0x547a,0x547e,0x547f,0x5481,0x5483, 0x5485,0x5487,0x5488,0x5489,0x548a,0x548d,0x5491,0x5493, 0x5497,0x5498,0x549c,0x549e,0x549f,0x54a0,0x54a1,0x0000, -/* 0x8600 */ +/* 0x8640 */ 0x54a2,0x54a5,0x54ae,0x54b0,0x54b2,0x54b5,0x54b6,0x54b7, 0x54b9,0x54ba,0x54bc,0x54be,0x54c3,0x54c5,0x54ca,0x54cb, 0x54d6,0x54d8,0x54db,0x54e0,0x54e1,0x54e2,0x54e3,0x54e4, @@ -181,7 +182,7 @@ const unsigned short cp936_ucs_table[] = { 0x55da,0x55db,0x55de,0x55e0,0x55e2,0x55e7,0x55e9,0x55ed, 0x55ee,0x55f0,0x55f1,0x55f4,0x55f6,0x55f8,0x55f9,0x55fa, 0x55fb,0x55fc,0x55ff,0x5602,0x5603,0x5604,0x5605,0x0000, -/* 0x8700 */ +/* 0x8740 */ 0x5606,0x5607,0x560a,0x560b,0x560d,0x5610,0x5611,0x5612, 0x5613,0x5614,0x5615,0x5616,0x5617,0x5619,0x561a,0x561c, 0x561d,0x5620,0x5621,0x5622,0x5625,0x5626,0x5628,0x5629, @@ -206,7 +207,7 @@ const unsigned short cp936_ucs_table[] = { 0x56ea,0x56ec,0x56ee,0x56ef,0x56f2,0x56f3,0x56f6,0x56f7, 0x56f8,0x56fb,0x56fc,0x5700,0x5701,0x5702,0x5705,0x5707, 0x570b,0x570c,0x570d,0x570e,0x570f,0x5710,0x5711,0x0000, -/* 0x8800 */ +/* 0x8840 */ 0x5712,0x5713,0x5714,0x5715,0x5716,0x5717,0x5718,0x5719, 0x571a,0x571b,0x571d,0x571e,0x5720,0x5721,0x5722,0x5724, 0x5725,0x5726,0x5727,0x572b,0x5731,0x5732,0x5734,0x5735, @@ -231,7 +232,7 @@ const unsigned short cp936_ucs_table[] = { 0x5823,0x5825,0x5826,0x5827,0x5828,0x5829,0x582b,0x582c, 0x582d,0x582e,0x582f,0x5831,0x5832,0x5833,0x5834,0x5836, 0x5837,0x5838,0x5839,0x583a,0x583b,0x583c,0x583d,0x0000, -/* 0x8900 */ +/* 0x8940 */ 0x583e,0x583f,0x5840,0x5841,0x5842,0x5843,0x5845,0x5846, 0x5847,0x5848,0x5849,0x584a,0x584b,0x584e,0x584f,0x5850, 0x5852,0x5853,0x5855,0x5856,0x5857,0x5859,0x585a,0x585b, @@ -256,7 +257,7 @@ const unsigned short cp936_ucs_table[] = { 0x590e,0x5910,0x5911,0x5912,0x5913,0x5917,0x5918,0x591b, 0x591d,0x591e,0x5920,0x5921,0x5922,0x5923,0x5926,0x5928, 0x592c,0x5930,0x5932,0x5933,0x5935,0x5936,0x593b,0x0000, -/* 0x8a00 */ +/* 0x8A40 */ 0x593d,0x593e,0x593f,0x5940,0x5943,0x5945,0x5946,0x594a, 0x594c,0x594d,0x5950,0x5952,0x5953,0x5959,0x595b,0x595c, 0x595d,0x595e,0x595f,0x5961,0x5963,0x5964,0x5966,0x5967, @@ -281,7 +282,7 @@ const unsigned short cp936_ucs_table[] = { 0x5a45,0x5a47,0x5a48,0x5a4b,0x5a4c,0x5a4d,0x5a4e,0x5a4f, 0x5a50,0x5a51,0x5a52,0x5a53,0x5a54,0x5a56,0x5a57,0x5a58, 0x5a59,0x5a5b,0x5a5c,0x5a5d,0x5a5e,0x5a5f,0x5a60,0x0000, -/* 0x8b00 */ +/* 0x8B40 */ 0x5a61,0x5a63,0x5a64,0x5a65,0x5a66,0x5a68,0x5a69,0x5a6b, 0x5a6c,0x5a6d,0x5a6e,0x5a6f,0x5a70,0x5a71,0x5a72,0x5a73, 0x5a78,0x5a79,0x5a7b,0x5a7c,0x5a7d,0x5a7e,0x5a80,0x5a81, @@ -306,7 +307,7 @@ const unsigned short cp936_ucs_table[] = { 0x5b2d,0x5b2e,0x5b2f,0x5b30,0x5b31,0x5b33,0x5b35,0x5b36, 0x5b38,0x5b39,0x5b3a,0x5b3b,0x5b3c,0x5b3d,0x5b3e,0x5b3f, 0x5b41,0x5b42,0x5b43,0x5b44,0x5b45,0x5b46,0x5b47,0x0000, -/* 0x8c00 */ +/* 0x8C40 */ 0x5b48,0x5b49,0x5b4a,0x5b4b,0x5b4c,0x5b4d,0x5b4e,0x5b4f, 0x5b52,0x5b56,0x5b5e,0x5b60,0x5b61,0x5b67,0x5b68,0x5b6b, 0x5b6d,0x5b6e,0x5b6f,0x5b72,0x5b74,0x5b76,0x5b77,0x5b78, @@ -331,7 +332,7 @@ const unsigned short cp936_ucs_table[] = { 0x5c83,0x5c84,0x5c85,0x5c86,0x5c87,0x5c89,0x5c8a,0x5c8b, 0x5c8e,0x5c8f,0x5c92,0x5c93,0x5c95,0x5c9d,0x5c9e,0x5c9f, 0x5ca0,0x5ca1,0x5ca4,0x5ca5,0x5ca6,0x5ca7,0x5ca8,0x0000, -/* 0x8d00 */ +/* 0x8D40 */ 0x5caa,0x5cae,0x5caf,0x5cb0,0x5cb2,0x5cb4,0x5cb6,0x5cb9, 0x5cba,0x5cbb,0x5cbc,0x5cbe,0x5cc0,0x5cc2,0x5cc3,0x5cc5, 0x5cc6,0x5cc7,0x5cc8,0x5cc9,0x5cca,0x5ccc,0x5ccd,0x5cce, @@ -356,7 +357,7 @@ const unsigned short cp936_ucs_table[] = { 0x5d88,0x5d89,0x5d8a,0x5d8b,0x5d8c,0x5d8d,0x5d8e,0x5d8f, 0x5d90,0x5d91,0x5d92,0x5d93,0x5d94,0x5d95,0x5d96,0x5d97, 0x5d98,0x5d9a,0x5d9b,0x5d9c,0x5d9e,0x5d9f,0x5da0,0x0000, -/* 0x8e00 */ +/* 0x8E40 */ 0x5da1,0x5da2,0x5da3,0x5da4,0x5da5,0x5da6,0x5da7,0x5da8, 0x5da9,0x5daa,0x5dab,0x5dac,0x5dad,0x5dae,0x5daf,0x5db0, 0x5db1,0x5db2,0x5db3,0x5db4,0x5db5,0x5db6,0x5db8,0x5db9, @@ -381,7 +382,7 @@ const unsigned short cp936_ucs_table[] = { 0x5ea4,0x5ea8,0x5ea9,0x5eaa,0x5eab,0x5eac,0x5eae,0x5eaf, 0x5eb0,0x5eb1,0x5eb2,0x5eb4,0x5eba,0x5ebb,0x5ebc,0x5ebd, 0x5ebf,0x5ec0,0x5ec1,0x5ec2,0x5ec3,0x5ec4,0x5ec5,0x0000, -/* 0x8f00 */ +/* 0x8F40 */ 0x5ec6,0x5ec7,0x5ec8,0x5ecb,0x5ecc,0x5ecd,0x5ece,0x5ecf, 0x5ed0,0x5ed4,0x5ed5,0x5ed7,0x5ed8,0x5ed9,0x5eda,0x5edc, 0x5edd,0x5ede,0x5edf,0x5ee0,0x5ee1,0x5ee2,0x5ee3,0x5ee4, @@ -406,7 +407,7 @@ const unsigned short cp936_ucs_table[] = { 0x5fda,0x5fdb,0x5fdc,0x5fde,0x5fdf,0x5fe2,0x5fe3,0x5fe5, 0x5fe6,0x5fe8,0x5fe9,0x5fec,0x5fef,0x5ff0,0x5ff2,0x5ff3, 0x5ff4,0x5ff6,0x5ff7,0x5ff9,0x5ffa,0x5ffc,0x6007,0x0000, -/* 0x9000 */ +/* 0x9040 */ 0x6008,0x6009,0x600b,0x600c,0x6010,0x6011,0x6013,0x6017, 0x6018,0x601a,0x601e,0x601f,0x6022,0x6023,0x6024,0x602c, 0x602d,0x602e,0x6030,0x6031,0x6032,0x6033,0x6034,0x6036, @@ -431,7 +432,7 @@ const unsigned short cp936_ucs_table[] = { 0x612f,0x6130,0x6131,0x6132,0x6133,0x6134,0x6135,0x6136, 0x6137,0x6138,0x6139,0x613a,0x613b,0x613c,0x613d,0x613e, 0x6140,0x6141,0x6142,0x6143,0x6144,0x6145,0x6146,0x0000, -/* 0x9100 */ +/* 0x9140 */ 0x6147,0x6149,0x614b,0x614d,0x614f,0x6150,0x6152,0x6153, 0x6154,0x6156,0x6157,0x6158,0x6159,0x615a,0x615b,0x615c, 0x615e,0x615f,0x6160,0x6161,0x6163,0x6164,0x6165,0x6166, @@ -456,7 +457,7 @@ const unsigned short cp936_ucs_table[] = { 0x6223,0x6226,0x6227,0x6228,0x6229,0x622b,0x622d,0x622f, 0x6230,0x6231,0x6232,0x6235,0x6236,0x6238,0x6239,0x623a, 0x623b,0x623c,0x6242,0x6244,0x6245,0x6246,0x624a,0x0000, -/* 0x9200 */ +/* 0x9240 */ 0x624f,0x6250,0x6255,0x6256,0x6257,0x6259,0x625a,0x625c, 0x625d,0x625e,0x625f,0x6260,0x6261,0x6262,0x6264,0x6265, 0x6268,0x6271,0x6272,0x6274,0x6275,0x6277,0x6278,0x627a, @@ -481,7 +482,7 @@ const unsigned short cp936_ucs_table[] = { 0x6395,0x6397,0x6399,0x639a,0x639b,0x639c,0x639d,0x639e, 0x639f,0x63a1,0x63a4,0x63a6,0x63ab,0x63af,0x63b1,0x63b2, 0x63b5,0x63b6,0x63b9,0x63bb,0x63bd,0x63bf,0x63c0,0x0000, -/* 0x9300 */ +/* 0x9340 */ 0x63c1,0x63c2,0x63c3,0x63c5,0x63c7,0x63c8,0x63ca,0x63cb, 0x63cc,0x63d1,0x63d3,0x63d4,0x63d5,0x63d7,0x63d8,0x63d9, 0x63da,0x63db,0x63dc,0x63dd,0x63df,0x63e2,0x63e4,0x63e5, @@ -506,7 +507,7 @@ const unsigned short cp936_ucs_table[] = { 0x64b9,0x64bb,0x64bd,0x64be,0x64bf,0x64c1,0x64c3,0x64c4, 0x64c6,0x64c7,0x64c8,0x64c9,0x64ca,0x64cb,0x64cc,0x64cf, 0x64d1,0x64d3,0x64d4,0x64d5,0x64d6,0x64d9,0x64da,0x0000, -/* 0x9400 */ +/* 0x9440 */ 0x64db,0x64dc,0x64dd,0x64df,0x64e0,0x64e1,0x64e3,0x64e5, 0x64e7,0x64e8,0x64e9,0x64ea,0x64eb,0x64ec,0x64ed,0x64ee, 0x64ef,0x64f0,0x64f1,0x64f2,0x64f3,0x64f4,0x64f5,0x64f6, @@ -531,7 +532,7 @@ const unsigned short cp936_ucs_table[] = { 0x65c7,0x65c8,0x65c9,0x65ca,0x65cd,0x65d0,0x65d1,0x65d3, 0x65d4,0x65d5,0x65d8,0x65d9,0x65da,0x65db,0x65dc,0x65dd, 0x65de,0x65df,0x65e1,0x65e3,0x65e4,0x65ea,0x65eb,0x0000, -/* 0x9500 */ +/* 0x9540 */ 0x65f2,0x65f3,0x65f4,0x65f5,0x65f8,0x65f9,0x65fb,0x65fc, 0x65fd,0x65fe,0x65ff,0x6601,0x6604,0x6605,0x6607,0x6608, 0x6609,0x660b,0x660d,0x6610,0x6611,0x6612,0x6616,0x6617, @@ -556,7 +557,7 @@ const unsigned short cp936_ucs_table[] = { 0x66e1,0x66e2,0x66e3,0x66e4,0x66e5,0x66e7,0x66e8,0x66ea, 0x66eb,0x66ec,0x66ed,0x66ee,0x66ef,0x66f1,0x66f5,0x66f6, 0x66f8,0x66fa,0x66fb,0x66fd,0x6701,0x6702,0x6703,0x0000, -/* 0x9600 */ +/* 0x9640 */ 0x6704,0x6705,0x6706,0x6707,0x670c,0x670e,0x670f,0x6711, 0x6712,0x6713,0x6716,0x6718,0x6719,0x671a,0x671c,0x671e, 0x6720,0x6721,0x6722,0x6723,0x6724,0x6725,0x6727,0x6729, @@ -581,7 +582,7 @@ const unsigned short cp936_ucs_table[] = { 0x682c,0x682d,0x682e,0x682f,0x6830,0x6831,0x6834,0x6835, 0x6836,0x683a,0x683b,0x683f,0x6847,0x684b,0x684d,0x684f, 0x6852,0x6856,0x6857,0x6858,0x6859,0x685a,0x685b,0x0000, -/* 0x9700 */ +/* 0x9740 */ 0x685c,0x685d,0x685e,0x685f,0x686a,0x686c,0x686d,0x686e, 0x686f,0x6870,0x6871,0x6872,0x6873,0x6875,0x6878,0x6879, 0x687a,0x687b,0x687c,0x687d,0x687e,0x687f,0x6880,0x6882, @@ -606,7 +607,7 @@ const unsigned short cp936_ucs_table[] = { 0x6944,0x6945,0x6946,0x6947,0x6948,0x6949,0x694a,0x694b, 0x694c,0x694d,0x694e,0x694f,0x6950,0x6951,0x6952,0x6953, 0x6955,0x6956,0x6958,0x6959,0x695b,0x695c,0x695f,0x0000, -/* 0x9800 */ +/* 0x9840 */ 0x6961,0x6962,0x6964,0x6965,0x6967,0x6968,0x6969,0x696a, 0x696c,0x696d,0x696f,0x6970,0x6972,0x6973,0x6974,0x6975, 0x6976,0x697a,0x697b,0x697d,0x697e,0x697f,0x6981,0x6983, @@ -631,7 +632,7 @@ const unsigned short cp936_ucs_table[] = { 0x6a3f,0x6a40,0x6a41,0x6a42,0x6a43,0x6a45,0x6a46,0x6a48, 0x6a49,0x6a4a,0x6a4b,0x6a4c,0x6a4d,0x6a4e,0x6a4f,0x6a51, 0x6a52,0x6a53,0x6a54,0x6a55,0x6a56,0x6a57,0x6a5a,0x0000, -/* 0x9900 */ +/* 0x9940 */ 0x6a5c,0x6a5d,0x6a5e,0x6a5f,0x6a60,0x6a62,0x6a63,0x6a64, 0x6a66,0x6a67,0x6a68,0x6a69,0x6a6a,0x6a6b,0x6a6c,0x6a6d, 0x6a6e,0x6a6f,0x6a70,0x6a72,0x6a73,0x6a74,0x6a75,0x6a76, @@ -656,7 +657,7 @@ const unsigned short cp936_ucs_table[] = { 0x6b12,0x6b13,0x6b14,0x6b15,0x6b16,0x6b17,0x6b18,0x6b19, 0x6b1a,0x6b1b,0x6b1c,0x6b1d,0x6b1e,0x6b1f,0x6b25,0x6b26, 0x6b28,0x6b29,0x6b2a,0x6b2b,0x6b2c,0x6b2d,0x6b2e,0x0000, -/* 0x9a00 */ +/* 0x9A40 */ 0x6b2f,0x6b30,0x6b31,0x6b33,0x6b34,0x6b35,0x6b36,0x6b38, 0x6b3b,0x6b3c,0x6b3d,0x6b3f,0x6b40,0x6b41,0x6b42,0x6b44, 0x6b45,0x6b48,0x6b4a,0x6b4b,0x6b4d,0x6b4e,0x6b4f,0x6b50, @@ -681,7 +682,7 @@ const unsigned short cp936_ucs_table[] = { 0x6c33,0x6c36,0x6c37,0x6c39,0x6c3a,0x6c3b,0x6c3c,0x6c3e, 0x6c3f,0x6c43,0x6c44,0x6c45,0x6c48,0x6c4b,0x6c4c,0x6c4d, 0x6c4e,0x6c4f,0x6c51,0x6c52,0x6c53,0x6c56,0x6c58,0x0000, -/* 0x9b00 */ +/* 0x9B40 */ 0x6c59,0x6c5a,0x6c62,0x6c63,0x6c65,0x6c66,0x6c67,0x6c6b, 0x6c6c,0x6c6d,0x6c6e,0x6c6f,0x6c71,0x6c73,0x6c75,0x6c77, 0x6c78,0x6c7a,0x6c7b,0x6c7c,0x6c7f,0x6c80,0x6c84,0x6c87, @@ -706,7 +707,7 @@ const unsigned short cp936_ucs_table[] = { 0x6d9c,0x6da2,0x6da5,0x6dac,0x6dad,0x6db0,0x6db1,0x6db3, 0x6db4,0x6db6,0x6db7,0x6db9,0x6dba,0x6dbb,0x6dbc,0x6dbd, 0x6dbe,0x6dc1,0x6dc2,0x6dc3,0x6dc8,0x6dc9,0x6dca,0x0000, -/* 0x9c00 */ +/* 0x9C40 */ 0x6dcd,0x6dce,0x6dcf,0x6dd0,0x6dd2,0x6dd3,0x6dd4,0x6dd5, 0x6dd7,0x6dda,0x6ddb,0x6ddc,0x6ddf,0x6de2,0x6de3,0x6de5, 0x6de7,0x6de8,0x6de9,0x6dea,0x6ded,0x6def,0x6df0,0x6df2, @@ -731,7 +732,7 @@ const unsigned short cp936_ucs_table[] = { 0x6ec6,0x6ec8,0x6ec9,0x6eca,0x6ecc,0x6ecd,0x6ece,0x6ed0, 0x6ed2,0x6ed6,0x6ed8,0x6ed9,0x6edb,0x6edc,0x6edd,0x6ee3, 0x6ee7,0x6eea,0x6eeb,0x6eec,0x6eed,0x6eee,0x6eef,0x0000, -/* 0x9d00 */ +/* 0x9D40 */ 0x6ef0,0x6ef1,0x6ef2,0x6ef3,0x6ef5,0x6ef6,0x6ef7,0x6ef8, 0x6efa,0x6efb,0x6efc,0x6efd,0x6efe,0x6eff,0x6f00,0x6f01, 0x6f03,0x6f04,0x6f05,0x6f07,0x6f08,0x6f0a,0x6f0b,0x6f0c, @@ -756,7 +757,7 @@ const unsigned short cp936_ucs_table[] = { 0x6fca,0x6fcb,0x6fcc,0x6fcd,0x6fce,0x6fcf,0x6fd0,0x6fd3, 0x6fd4,0x6fd5,0x6fd6,0x6fd7,0x6fd8,0x6fd9,0x6fda,0x6fdb, 0x6fdc,0x6fdd,0x6fdf,0x6fe2,0x6fe3,0x6fe4,0x6fe5,0x0000, -/* 0x9e00 */ +/* 0x9E40 */ 0x6fe6,0x6fe7,0x6fe8,0x6fe9,0x6fea,0x6feb,0x6fec,0x6fed, 0x6ff0,0x6ff1,0x6ff2,0x6ff3,0x6ff4,0x6ff5,0x6ff6,0x6ff7, 0x6ff8,0x6ff9,0x6ffa,0x6ffb,0x6ffc,0x6ffd,0x6ffe,0x6fff, @@ -781,7 +782,7 @@ const unsigned short cp936_ucs_table[] = { 0x70b6,0x70ba,0x70be,0x70bf,0x70c4,0x70c5,0x70c6,0x70c7, 0x70c9,0x70cb,0x70cc,0x70cd,0x70ce,0x70cf,0x70d0,0x70d1, 0x70d2,0x70d3,0x70d4,0x70d5,0x70d6,0x70d7,0x70da,0x0000, -/* 0x9f00 */ +/* 0x9F40 */ 0x70dc,0x70dd,0x70de,0x70e0,0x70e1,0x70e2,0x70e3,0x70e5, 0x70ea,0x70ee,0x70f0,0x70f1,0x70f2,0x70f3,0x70f4,0x70f5, 0x70f6,0x70f8,0x70fa,0x70fb,0x70fc,0x70fe,0x70ff,0x7100, @@ -806,7 +807,7 @@ const unsigned short cp936_ucs_table[] = { 0x71bb,0x71bc,0x71bd,0x71be,0x71bf,0x71c0,0x71c1,0x71c2, 0x71c4,0x71c5,0x71c6,0x71c7,0x71c8,0x71c9,0x71ca,0x71cb, 0x71cc,0x71cd,0x71cf,0x71d0,0x71d1,0x71d2,0x71d3,0x0000, -/* 0xa000 */ +/* 0xA040 */ 0x71d6,0x71d7,0x71d8,0x71d9,0x71da,0x71db,0x71dc,0x71dd, 0x71de,0x71df,0x71e1,0x71e2,0x71e3,0x71e4,0x71e6,0x71e8, 0x71e9,0x71ea,0x71eb,0x71ec,0x71ed,0x71ef,0x71f0,0x71f1, @@ -831,7 +832,7 @@ const unsigned short cp936_ucs_table[] = { 0x72ba,0x72bb,0x72bc,0x72bd,0x72be,0x72bf,0x72c0,0x72c5, 0x72c6,0x72c7,0x72c9,0x72ca,0x72cb,0x72cc,0x72cf,0x72d1, 0x72d3,0x72d4,0x72d5,0x72d6,0x72d8,0x72da,0x72db,0x0000, -/* 0xa100 */ +/* 0xA140 */ 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, @@ -856,7 +857,7 @@ const unsigned short cp936_ucs_table[] = { 0x00a4,0xffe0,0xffe1,0x2030,0x00a7,0x2116,0x2606,0x2605, 0x25cb,0x25cf,0x25ce,0x25c7,0x25c6,0x25a1,0x25a0,0x25b3, 0x25b2,0x203b,0x2192,0x2190,0x2191,0x2193,0x3013,0x0000, -/* 0xa200 */ +/* 0xA240 */ 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, @@ -881,7 +882,7 @@ const unsigned short cp936_ucs_table[] = { 0x3223,0x3224,0x3225,0x3226,0x3227,0x3228,0x3229,0x0000, 0x0000,0x2160,0x2161,0x2162,0x2163,0x2164,0x2165,0x2166, 0x2167,0x2168,0x2169,0x216a,0x216b,0x0000,0x0000,0x0000, -/* 0xa300 */ +/* 0xA340 */ 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, @@ -906,7 +907,7 @@ const unsigned short cp936_ucs_table[] = { 0xff48,0xff49,0xff4a,0xff4b,0xff4c,0xff4d,0xff4e,0xff4f, 0xff50,0xff51,0xff52,0xff53,0xff54,0xff55,0xff56,0xff57, 0xff58,0xff59,0xff5a,0xff5b,0xff5c,0xff5d,0xffe3,0x0000, -/* 0xa400 */ +/* 0xA440 */ 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, @@ -931,7 +932,7 @@ const unsigned short cp936_ucs_table[] = { 0x3088,0x3089,0x308a,0x308b,0x308c,0x308d,0x308e,0x308f, 0x3090,0x3091,0x3092,0x3093,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xa500 */ +/* 0xA540 */ 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, @@ -956,7 +957,7 @@ const unsigned short cp936_ucs_table[] = { 0x30e8,0x30e9,0x30ea,0x30eb,0x30ec,0x30ed,0x30ee,0x30ef, 0x30f0,0x30f1,0x30f2,0x30f3,0x30f4,0x30f5,0x30f6,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xa600 */ +/* 0xA640 */ 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, @@ -981,7 +982,7 @@ const unsigned short cp936_ucs_table[] = { 0xfe41,0xfe42,0xfe43,0xfe44,0x0000,0x0000,0xfe3b,0xfe3c, 0xfe37,0xfe38,0xfe31,0x0000,0xfe33,0xfe34,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xa700 */ +/* 0xA740 */ 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, @@ -1006,7 +1007,7 @@ const unsigned short cp936_ucs_table[] = { 0x0446,0x0447,0x0448,0x0449,0x044a,0x044b,0x044c,0x044d, 0x044e,0x044f,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xa800 */ +/* 0xA840 */ 0x02ca,0x02cb,0x02d9,0x2013,0x2015,0x2025,0x2035,0x2105, 0x2109,0x2196,0x2197,0x2198,0x2199,0x2215,0x221f,0x2223, 0x2252,0x2266,0x2267,0x22bf,0x2550,0x2551,0x2552,0x2553, @@ -1031,7 +1032,7 @@ const unsigned short cp936_ucs_table[] = { 0x3128,0x3129,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xa900 */ +/* 0xA940 */ 0x3021,0x3022,0x3023,0x3024,0x3025,0x3026,0x3027,0x3028, 0x3029,0x32a3,0x338e,0x338f,0x339c,0x339d,0x339e,0x33a1, 0x33c4,0x33ce,0x33d1,0x33d2,0x33d5,0xfe30,0xffe2,0xffe4, @@ -1056,7 +1057,7 @@ const unsigned short cp936_ucs_table[] = { 0x2544,0x2545,0x2546,0x2547,0x2548,0x2549,0x254a,0x254b, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xaa00 */ +/* 0xAA40 */ 0x72dc,0x72dd,0x72df,0x72e2,0x72e3,0x72e4,0x72e5,0x72e6, 0x72e7,0x72ea,0x72eb,0x72f5,0x72f6,0x72f9,0x72fd,0x72fe, 0x72ff,0x7300,0x7302,0x7304,0x7305,0x7306,0x7307,0x7308, @@ -1081,7 +1082,7 @@ const unsigned short cp936_ucs_table[] = { 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xab00 */ +/* 0xAB40 */ 0x7372,0x7373,0x7374,0x7375,0x7376,0x7377,0x7378,0x7379, 0x737a,0x737b,0x737c,0x737d,0x737f,0x7380,0x7381,0x7382, 0x7383,0x7385,0x7386,0x7388,0x738a,0x738c,0x738d,0x738f, @@ -1106,7 +1107,7 @@ const unsigned short cp936_ucs_table[] = { 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xac00 */ +/* 0xAC40 */ 0x73f8,0x73f9,0x73fa,0x73fb,0x73fc,0x73fd,0x73fe,0x73ff, 0x7400,0x7401,0x7402,0x7404,0x7407,0x7408,0x740b,0x740c, 0x740d,0x740e,0x7411,0x7412,0x7413,0x7414,0x7415,0x7416, @@ -1131,7 +1132,7 @@ const unsigned short cp936_ucs_table[] = { 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xad00 */ +/* 0xAD40 */ 0x747b,0x747c,0x747d,0x747f,0x7482,0x7484,0x7485,0x7486, 0x7488,0x7489,0x748a,0x748c,0x748d,0x748f,0x7491,0x7492, 0x7493,0x7494,0x7495,0x7496,0x7497,0x7498,0x7499,0x749a, @@ -1156,7 +1157,7 @@ const unsigned short cp936_ucs_table[] = { 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xae00 */ +/* 0xAE40 */ 0x74f3,0x74f5,0x74f8,0x74f9,0x74fa,0x74fb,0x74fc,0x74fd, 0x74fe,0x7500,0x7501,0x7502,0x7503,0x7505,0x7506,0x7507, 0x7508,0x7509,0x750a,0x750b,0x750c,0x750e,0x7510,0x7512, @@ -1181,7 +1182,7 @@ const unsigned short cp936_ucs_table[] = { 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xaf00 */ +/* 0xAF40 */ 0x7588,0x7589,0x758a,0x758c,0x758d,0x758e,0x7590,0x7593, 0x7595,0x7598,0x759b,0x759c,0x759e,0x75a2,0x75a6,0x75a7, 0x75a8,0x75a9,0x75aa,0x75ad,0x75b6,0x75b7,0x75ba,0x75bb, @@ -1206,7 +1207,7 @@ const unsigned short cp936_ucs_table[] = { 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xb000 */ +/* 0xB040 */ 0x7645,0x7646,0x7647,0x7648,0x7649,0x764a,0x764b,0x764e, 0x764f,0x7650,0x7651,0x7652,0x7653,0x7655,0x7657,0x7658, 0x7659,0x765a,0x765b,0x765d,0x765f,0x7660,0x7661,0x7662, @@ -1231,7 +1232,7 @@ const unsigned short cp936_ucs_table[] = { 0x62cc,0x4f34,0x74e3,0x534a,0x529e,0x7eca,0x90a6,0x5e2e, 0x6886,0x699c,0x8180,0x7ed1,0x68d2,0x78c5,0x868c,0x9551, 0x508d,0x8c24,0x82de,0x80de,0x5305,0x8912,0x5265,0x0000, -/* 0xb100 */ +/* 0xB140 */ 0x76c4,0x76c7,0x76c9,0x76cb,0x76cc,0x76d3,0x76d5,0x76d9, 0x76da,0x76dc,0x76dd,0x76de,0x76e0,0x76e1,0x76e2,0x76e3, 0x76e4,0x76e6,0x76e7,0x76e8,0x76e9,0x76ea,0x76eb,0x76ec, @@ -1256,7 +1257,7 @@ const unsigned short cp936_ucs_table[] = { 0x8fab,0x904d,0x6807,0x5f6a,0x8198,0x8868,0x9cd6,0x618b, 0x522b,0x762a,0x5f6c,0x658c,0x6fd2,0x6ee8,0x5bbe,0x6448, 0x5175,0x51b0,0x67c4,0x4e19,0x79c9,0x997c,0x70b3,0x0000, -/* 0xb200 */ +/* 0xB240 */ 0x775d,0x775e,0x775f,0x7760,0x7764,0x7767,0x7769,0x776a, 0x776d,0x776e,0x776f,0x7770,0x7771,0x7772,0x7773,0x7774, 0x7775,0x7776,0x7777,0x7778,0x777a,0x777b,0x777c,0x7781, @@ -1281,7 +1282,7 @@ const unsigned short cp936_ucs_table[] = { 0x8336,0x67e5,0x78b4,0x643d,0x5bdf,0x5c94,0x5dee,0x8be7, 0x62c6,0x67f4,0x8c7a,0x6400,0x63ba,0x8749,0x998b,0x8c17, 0x7f20,0x94f2,0x4ea7,0x9610,0x98a4,0x660c,0x7316,0x0000, -/* 0xb300 */ +/* 0xB340 */ 0x77e6,0x77e8,0x77ea,0x77ef,0x77f0,0x77f1,0x77f2,0x77f4, 0x77f5,0x77f7,0x77f9,0x77fa,0x77fb,0x77fc,0x7803,0x7804, 0x7805,0x7806,0x7807,0x7808,0x780a,0x780b,0x780e,0x780f, @@ -1306,7 +1307,7 @@ const unsigned short cp936_ucs_table[] = { 0x5ba0,0x62bd,0x916c,0x7574,0x8e0c,0x7a20,0x6101,0x7b79, 0x4ec7,0x7ef8,0x7785,0x4e11,0x81ed,0x521d,0x51fa,0x6a71, 0x53a8,0x8e87,0x9504,0x96cf,0x6ec1,0x9664,0x695a,0x0000, -/* 0xb400 */ +/* 0xB440 */ 0x7884,0x7885,0x7886,0x7888,0x788a,0x788b,0x788f,0x7890, 0x7892,0x7894,0x7895,0x7896,0x7899,0x789d,0x789e,0x78a0, 0x78a2,0x78a4,0x78a6,0x78a8,0x78a9,0x78aa,0x78ab,0x78ac, @@ -1331,7 +1332,7 @@ const unsigned short cp936_ucs_table[] = { 0x78cb,0x64ae,0x6413,0x63aa,0x632b,0x9519,0x642d,0x8fbe, 0x7b54,0x7629,0x6253,0x5927,0x5446,0x6b79,0x50a3,0x6234, 0x5e26,0x6b86,0x4ee3,0x8d37,0x888b,0x5f85,0x902e,0x0000, -/* 0xb500 */ +/* 0xB540 */ 0x790d,0x790e,0x790f,0x7910,0x7911,0x7912,0x7914,0x7915, 0x7916,0x7917,0x7918,0x7919,0x791a,0x791b,0x791c,0x791d, 0x791f,0x7920,0x7921,0x7922,0x7923,0x7925,0x7926,0x7927, @@ -1356,7 +1357,7 @@ const unsigned short cp936_ucs_table[] = { 0x4f43,0x7538,0x5e97,0x60e6,0x5960,0x6dc0,0x6bbf,0x7889, 0x53fc,0x96d5,0x51cb,0x5201,0x6389,0x540a,0x9493,0x8c03, 0x8dcc,0x7239,0x789f,0x8776,0x8fed,0x8c0d,0x53e0,0x0000, -/* 0xb600 */ +/* 0xB640 */ 0x7993,0x7994,0x7995,0x7996,0x7997,0x7998,0x7999,0x799b, 0x799c,0x799d,0x799e,0x799f,0x79a0,0x79a1,0x79a2,0x79a3, 0x79a4,0x79a5,0x79a6,0x79a8,0x79a9,0x79aa,0x79ab,0x79ac, @@ -1381,7 +1382,7 @@ const unsigned short cp936_ucs_table[] = { 0x60f0,0x5815,0x86fe,0x5ce8,0x9e45,0x4fc4,0x989d,0x8bb9, 0x5a25,0x6076,0x5384,0x627c,0x904f,0x9102,0x997f,0x6069, 0x800c,0x513f,0x8033,0x5c14,0x9975,0x6d31,0x4e8c,0x0000, -/* 0xb700 */ +/* 0xB740 */ 0x7a1d,0x7a1f,0x7a21,0x7a22,0x7a24,0x7a25,0x7a26,0x7a27, 0x7a28,0x7a29,0x7a2a,0x7a2b,0x7a2c,0x7a2d,0x7a2e,0x7a2f, 0x7a30,0x7a31,0x7a32,0x7a34,0x7a35,0x7a36,0x7a38,0x7a3a, @@ -1406,7 +1407,7 @@ const unsigned short cp936_ucs_table[] = { 0x75af,0x70fd,0x9022,0x51af,0x7f1d,0x8bbd,0x5949,0x51e4, 0x4f5b,0x5426,0x592b,0x6577,0x80a4,0x5b75,0x6276,0x62c2, 0x8f90,0x5e45,0x6c1f,0x7b26,0x4f0f,0x4fd8,0x670d,0x0000, -/* 0xb800 */ +/* 0xB840 */ 0x7aa3,0x7aa4,0x7aa7,0x7aa9,0x7aaa,0x7aab,0x7aae,0x7aaf, 0x7ab0,0x7ab1,0x7ab2,0x7ab4,0x7ab5,0x7ab6,0x7ab7,0x7ab8, 0x7ab9,0x7aba,0x7abb,0x7abc,0x7abd,0x7abe,0x7ac0,0x7ac1, @@ -1431,7 +1432,7 @@ const unsigned short cp936_ucs_table[] = { 0x6b4c,0x6401,0x6208,0x9e3d,0x80f3,0x7599,0x5272,0x9769, 0x845b,0x683c,0x86e4,0x9601,0x9694,0x94ec,0x4e2a,0x5404, 0x7ed9,0x6839,0x8ddf,0x8015,0x66f4,0x5e9a,0x7fb9,0x0000, -/* 0xb900 */ +/* 0xB940 */ 0x7b2f,0x7b30,0x7b32,0x7b34,0x7b35,0x7b36,0x7b37,0x7b39, 0x7b3b,0x7b3d,0x7b3f,0x7b40,0x7b41,0x7b42,0x7b43,0x7b44, 0x7b46,0x7b48,0x7b4a,0x7b4d,0x7b4e,0x7b53,0x7b55,0x7b57, @@ -1456,7 +1457,7 @@ const unsigned short cp936_ucs_table[] = { 0x7845,0x5f52,0x9f9f,0x95fa,0x8f68,0x9b3c,0x8be1,0x7678, 0x6842,0x67dc,0x8dea,0x8d35,0x523d,0x8f8a,0x6eda,0x68cd, 0x9505,0x90ed,0x56fd,0x679c,0x88f9,0x8fc7,0x54c8,0x0000, -/* 0xba00 */ +/* 0xBA40 */ 0x7bc5,0x7bc8,0x7bc9,0x7bca,0x7bcb,0x7bcd,0x7bce,0x7bcf, 0x7bd0,0x7bd2,0x7bd4,0x7bd5,0x7bd6,0x7bd7,0x7bd8,0x7bdb, 0x7bdc,0x7bde,0x7bdf,0x7be0,0x7be2,0x7be3,0x7be4,0x7be7, @@ -1481,7 +1482,7 @@ const unsigned short cp936_ucs_table[] = { 0x9e3f,0x6d2a,0x5b8f,0x5f18,0x7ea2,0x5589,0x4faf,0x7334, 0x543c,0x539a,0x5019,0x540e,0x547c,0x4e4e,0x5ffd,0x745a, 0x58f6,0x846b,0x80e1,0x8774,0x72d0,0x7cca,0x6e56,0x0000, -/* 0xbb00 */ +/* 0xBB40 */ 0x7c43,0x7c44,0x7c45,0x7c46,0x7c47,0x7c48,0x7c49,0x7c4a, 0x7c4b,0x7c4c,0x7c4e,0x7c4f,0x7c50,0x7c51,0x7c52,0x7c53, 0x7c54,0x7c55,0x7c56,0x7c57,0x7c58,0x7c59,0x7c5a,0x7c5b, @@ -1506,7 +1507,7 @@ const unsigned short cp936_ucs_table[] = { 0x660f,0x5a5a,0x9b42,0x6d51,0x6df7,0x8c41,0x6d3b,0x4f19, 0x706b,0x83b7,0x6216,0x60d1,0x970d,0x8d27,0x7978,0x51fb, 0x573e,0x57fa,0x673a,0x7578,0x7a3d,0x79ef,0x7b95,0x0000, -/* 0xbc00 */ +/* 0xBC40 */ 0x7cbf,0x7cc0,0x7cc2,0x7cc3,0x7cc4,0x7cc6,0x7cc9,0x7ccb, 0x7cce,0x7ccf,0x7cd0,0x7cd1,0x7cd2,0x7cd3,0x7cd4,0x7cd8, 0x7cda,0x7cdb,0x7cdd,0x7cde,0x7ce1,0x7ce2,0x7ce3,0x7ce4, @@ -1531,7 +1532,7 @@ const unsigned short cp936_ucs_table[] = { 0x8270,0x5978,0x7f04,0x8327,0x68c0,0x67ec,0x78b1,0x7877, 0x62e3,0x6361,0x7b80,0x4fed,0x526a,0x51cf,0x8350,0x69db, 0x9274,0x8df5,0x8d31,0x89c1,0x952e,0x7bad,0x4ef6,0x0000, -/* 0xbd00 */ +/* 0xBD40 */ 0x7d37,0x7d38,0x7d39,0x7d3a,0x7d3b,0x7d3c,0x7d3d,0x7d3e, 0x7d3f,0x7d40,0x7d41,0x7d42,0x7d43,0x7d44,0x7d45,0x7d46, 0x7d47,0x7d48,0x7d49,0x7d4a,0x7d4b,0x7d4c,0x7d4d,0x7d4e, @@ -1556,7 +1557,7 @@ const unsigned short cp936_ucs_table[] = { 0x501f,0x4ecb,0x75a5,0x8beb,0x5c4a,0x5dfe,0x7b4b,0x65a4, 0x91d1,0x4eca,0x6d25,0x895f,0x7d27,0x9526,0x4ec5,0x8c28, 0x8fdb,0x9773,0x664b,0x7981,0x8fd1,0x70ec,0x6d78,0x0000, -/* 0xbe00 */ +/* 0xBE40 */ 0x7d99,0x7d9a,0x7d9b,0x7d9c,0x7d9d,0x7d9e,0x7d9f,0x7da0, 0x7da1,0x7da2,0x7da3,0x7da4,0x7da5,0x7da7,0x7da8,0x7da9, 0x7daa,0x7dab,0x7dac,0x7dad,0x7daf,0x7db0,0x7db1,0x7db2, @@ -1581,7 +1582,7 @@ const unsigned short cp936_ucs_table[] = { 0x6350,0x9e43,0x5a1f,0x5026,0x7737,0x5377,0x7ee2,0x6485, 0x652b,0x6289,0x6398,0x5014,0x7235,0x89c9,0x51b3,0x8bc0, 0x7edd,0x5747,0x83cc,0x94a7,0x519b,0x541b,0x5cfb,0x0000, -/* 0xbf00 */ +/* 0xBF40 */ 0x7dfb,0x7dfc,0x7dfd,0x7dfe,0x7dff,0x7e00,0x7e01,0x7e02, 0x7e03,0x7e04,0x7e05,0x7e06,0x7e07,0x7e08,0x7e09,0x7e0a, 0x7e0b,0x7e0c,0x7e0d,0x7e0e,0x7e0f,0x7e10,0x7e11,0x7e12, @@ -1606,7 +1607,7 @@ const unsigned short cp936_ucs_table[] = { 0x80ef,0x5757,0x7b77,0x4fa9,0x5feb,0x5bbd,0x6b3e,0x5321, 0x7b50,0x72c2,0x6846,0x77ff,0x7736,0x65f7,0x51b5,0x4e8f, 0x76d4,0x5cbf,0x7aa5,0x8475,0x594e,0x9b41,0x5080,0x0000, -/* 0xc000 */ +/* 0xC040 */ 0x7e5e,0x7e5f,0x7e60,0x7e61,0x7e62,0x7e63,0x7e64,0x7e65, 0x7e66,0x7e67,0x7e68,0x7e69,0x7e6a,0x7e6b,0x7e6c,0x7e6d, 0x7e6e,0x7e6f,0x7e70,0x7e71,0x7e72,0x7e73,0x7e74,0x7e75, @@ -1631,7 +1632,7 @@ const unsigned short cp936_ucs_table[] = { 0x9ece,0x7bf1,0x72f8,0x79bb,0x6f13,0x7406,0x674e,0x91cc, 0x9ca4,0x793c,0x8389,0x8354,0x540f,0x6817,0x4e3d,0x5389, 0x52b1,0x783e,0x5386,0x5229,0x5088,0x4f8b,0x4fd0,0x0000, -/* 0xc100 */ +/* 0xC140 */ 0x7f56,0x7f59,0x7f5b,0x7f5c,0x7f5d,0x7f5e,0x7f60,0x7f63, 0x7f64,0x7f65,0x7f66,0x7f67,0x7f6b,0x7f6c,0x7f6d,0x7f6f, 0x7f70,0x7f73,0x7f75,0x7f76,0x7f77,0x7f78,0x7f7a,0x7f7b, @@ -1656,7 +1657,7 @@ const unsigned short cp936_ucs_table[] = { 0x51cc,0x7075,0x9675,0x5cad,0x9886,0x53e6,0x4ee4,0x6e9c, 0x7409,0x69b4,0x786b,0x998f,0x7559,0x5218,0x7624,0x6d41, 0x67f3,0x516d,0x9f99,0x804b,0x5499,0x7b3c,0x7abf,0x0000, -/* 0xc200 */ +/* 0xC240 */ 0x7fe4,0x7fe7,0x7fe8,0x7fea,0x7feb,0x7fec,0x7fed,0x7fef, 0x7ff2,0x7ff4,0x7ff5,0x7ff6,0x7ff7,0x7ff8,0x7ff9,0x7ffa, 0x7ffd,0x7ffe,0x7fff,0x8002,0x8007,0x8008,0x8009,0x800a, @@ -1681,7 +1682,7 @@ const unsigned short cp936_ucs_table[] = { 0x5988,0x9ebb,0x739b,0x7801,0x8682,0x9a6c,0x9a82,0x561b, 0x5417,0x57cb,0x4e70,0x9ea6,0x5356,0x8fc8,0x8109,0x7792, 0x9992,0x86ee,0x6ee1,0x8513,0x66fc,0x6162,0x6f2b,0x0000, -/* 0xc300 */ +/* 0xC340 */ 0x807e,0x8081,0x8082,0x8085,0x8088,0x808a,0x808d,0x808e, 0x808f,0x8090,0x8091,0x8092,0x8094,0x8095,0x8097,0x8099, 0x809e,0x80a3,0x80a6,0x80a7,0x80a8,0x80ac,0x80b0,0x80b3, @@ -1706,7 +1707,7 @@ const unsigned short cp936_ucs_table[] = { 0x63cf,0x7784,0x85d0,0x79d2,0x6e3a,0x5e99,0x5999,0x8511, 0x706d,0x6c11,0x62bf,0x76bf,0x654f,0x60af,0x95fd,0x660e, 0x879f,0x9e23,0x94ed,0x540d,0x547d,0x8c2c,0x6478,0x0000, -/* 0xc400 */ +/* 0xC440 */ 0x8140,0x8141,0x8142,0x8143,0x8144,0x8145,0x8147,0x8149, 0x814d,0x814e,0x814f,0x8152,0x8156,0x8157,0x8158,0x815b, 0x815c,0x815d,0x815e,0x815f,0x8161,0x8162,0x8163,0x8164, @@ -1731,7 +1732,7 @@ const unsigned short cp936_ucs_table[] = { 0x852b,0x62c8,0x5e74,0x78be,0x64b5,0x637b,0x5ff5,0x5a18, 0x917f,0x9e1f,0x5c3f,0x634f,0x8042,0x5b7d,0x556e,0x954a, 0x954d,0x6d85,0x60a8,0x67e0,0x72de,0x51dd,0x5b81,0x0000, -/* 0xc500 */ +/* 0xC540 */ 0x81d4,0x81d5,0x81d6,0x81d7,0x81d8,0x81d9,0x81da,0x81db, 0x81dc,0x81dd,0x81de,0x81df,0x81e0,0x81e1,0x81e2,0x81e4, 0x81e5,0x81e6,0x81e8,0x81e9,0x81eb,0x81ee,0x81ef,0x81f0, @@ -1756,7 +1757,7 @@ const unsigned short cp936_ucs_table[] = { 0x76c6,0x7830,0x62a8,0x70f9,0x6f8e,0x5f6d,0x84ec,0x68da, 0x787c,0x7bf7,0x81a8,0x670b,0x9e4f,0x6367,0x78b0,0x576f, 0x7812,0x9739,0x6279,0x62ab,0x5288,0x7435,0x6bd7,0x0000, -/* 0xc600 */ +/* 0xC640 */ 0x826a,0x826b,0x826c,0x826d,0x8271,0x8275,0x8276,0x8277, 0x8278,0x827b,0x827c,0x8280,0x8281,0x8283,0x8285,0x8286, 0x8287,0x8289,0x828c,0x8290,0x8293,0x8294,0x8295,0x8296, @@ -1781,7 +1782,7 @@ const unsigned short cp936_ucs_table[] = { 0x7566,0x5d0e,0x8110,0x9f50,0x65d7,0x7948,0x7941,0x9a91, 0x8d77,0x5c82,0x4e5e,0x4f01,0x542f,0x5951,0x780c,0x5668, 0x6c14,0x8fc4,0x5f03,0x6c7d,0x6ce3,0x8bab,0x6390,0x0000, -/* 0xc700 */ +/* 0xC740 */ 0x833e,0x833f,0x8341,0x8342,0x8344,0x8345,0x8348,0x834a, 0x834b,0x834c,0x834d,0x834e,0x8353,0x8355,0x8356,0x8357, 0x8358,0x8359,0x835d,0x8362,0x8370,0x8371,0x8372,0x8373, @@ -1806,7 +1807,7 @@ const unsigned short cp936_ucs_table[] = { 0x6c30,0x60c5,0x9877,0x8bf7,0x5e86,0x743c,0x7a77,0x79cb, 0x4e18,0x90b1,0x7403,0x6c42,0x56da,0x914b,0x6cc5,0x8d8b, 0x533a,0x86c6,0x66f2,0x8eaf,0x5c48,0x9a71,0x6e20,0x0000, -/* 0xc800 */ +/* 0xC840 */ 0x83ee,0x83ef,0x83f3,0x83f4,0x83f5,0x83f6,0x83f7,0x83fa, 0x83fb,0x83fc,0x83fe,0x83ff,0x8400,0x8402,0x8405,0x8407, 0x8408,0x8409,0x840a,0x8410,0x8412,0x8413,0x8414,0x8415, @@ -1831,7 +1832,7 @@ const unsigned short cp936_ucs_table[] = { 0x8fb1,0x4e73,0x6c5d,0x5165,0x8925,0x8f6f,0x962e,0x854a, 0x745e,0x9510,0x95f0,0x6da6,0x82e5,0x5f31,0x6492,0x6d12, 0x8428,0x816e,0x9cc3,0x585e,0x8d5b,0x4e09,0x53c1,0x0000, -/* 0xc900 */ +/* 0xC940 */ 0x847d,0x847e,0x847f,0x8480,0x8481,0x8483,0x8484,0x8485, 0x8486,0x848a,0x848d,0x848f,0x8490,0x8491,0x8492,0x8493, 0x8494,0x8495,0x8496,0x8498,0x849a,0x849b,0x849d,0x849e, @@ -1856,7 +1857,7 @@ const unsigned short cp936_ucs_table[] = { 0x8bbe,0x7837,0x7533,0x547b,0x4f38,0x8eab,0x6df1,0x5a20, 0x7ec5,0x795e,0x6c88,0x5ba1,0x5a76,0x751a,0x80be,0x614e, 0x6e17,0x58f0,0x751f,0x7525,0x7272,0x5347,0x7ef3,0x0000, -/* 0xca00 */ +/* 0xCA40 */ 0x8503,0x8504,0x8505,0x8506,0x8507,0x8508,0x8509,0x850a, 0x850b,0x850d,0x850e,0x850f,0x8510,0x8512,0x8514,0x8515, 0x8516,0x8518,0x8519,0x851b,0x851c,0x851d,0x851e,0x8520, @@ -1881,7 +1882,7 @@ const unsigned short cp936_ucs_table[] = { 0x758f,0x4e66,0x8d4e,0x5b70,0x719f,0x85af,0x6691,0x66d9, 0x7f72,0x8700,0x9ecd,0x9f20,0x5c5e,0x672f,0x8ff0,0x6811, 0x675f,0x620d,0x7ad6,0x5885,0x5eb6,0x6570,0x6f31,0x0000, -/* 0xcb00 */ +/* 0xCB40 */ 0x8582,0x8583,0x8586,0x8588,0x8589,0x858a,0x858b,0x858c, 0x858d,0x858e,0x8590,0x8591,0x8592,0x8593,0x8594,0x8595, 0x8596,0x8597,0x8598,0x8599,0x859a,0x859d,0x859e,0x859f, @@ -1906,7 +1907,7 @@ const unsigned short cp936_ucs_table[] = { 0x9ad3,0x788e,0x5c81,0x7a57,0x9042,0x96a7,0x795f,0x5b59, 0x635f,0x7b0b,0x84d1,0x68ad,0x5506,0x7f29,0x7410,0x7d22, 0x9501,0x6240,0x584c,0x4ed6,0x5b83,0x5979,0x5854,0x0000, -/* 0xcc00 */ +/* 0xCC40 */ 0x85f9,0x85fa,0x85fc,0x85fd,0x85fe,0x8600,0x8601,0x8602, 0x8603,0x8604,0x8606,0x8607,0x8608,0x8609,0x860a,0x860b, 0x860c,0x860d,0x860e,0x860f,0x8610,0x8612,0x8613,0x8614, @@ -1931,7 +1932,7 @@ const unsigned short cp936_ucs_table[] = { 0x60d5,0x6d95,0x5243,0x5c49,0x5929,0x6dfb,0x586b,0x7530, 0x751c,0x606c,0x8214,0x8146,0x6311,0x6761,0x8fe2,0x773a, 0x8df3,0x8d34,0x94c1,0x5e16,0x5385,0x542c,0x70c3,0x0000, -/* 0xcd00 */ +/* 0xCD40 */ 0x866d,0x866f,0x8670,0x8672,0x8673,0x8674,0x8675,0x8676, 0x8677,0x8678,0x8683,0x8684,0x8685,0x8686,0x8687,0x8688, 0x8689,0x868e,0x868f,0x8690,0x8691,0x8692,0x8694,0x8696, @@ -1956,7 +1957,7 @@ const unsigned short cp936_ucs_table[] = { 0x4e38,0x70f7,0x5b8c,0x7897,0x633d,0x665a,0x7696,0x60cb, 0x5b9b,0x5a49,0x4e07,0x8155,0x6c6a,0x738b,0x4ea1,0x6789, 0x7f51,0x5f80,0x65fa,0x671b,0x5fd8,0x5984,0x5a01,0x0000, -/* 0xce00 */ +/* 0xCE40 */ 0x8719,0x871b,0x871d,0x871f,0x8720,0x8724,0x8726,0x8727, 0x8728,0x872a,0x872b,0x872c,0x872d,0x872f,0x8730,0x8732, 0x8733,0x8735,0x8736,0x8738,0x8739,0x873a,0x873c,0x873d, @@ -1981,7 +1982,7 @@ const unsigned short cp936_ucs_table[] = { 0x821e,0x4f0d,0x4fae,0x575e,0x620a,0x96fe,0x6664,0x7269, 0x52ff,0x52a1,0x609f,0x8bef,0x6614,0x7199,0x6790,0x897f, 0x7852,0x77fd,0x6670,0x563b,0x5438,0x9521,0x727a,0x0000, -/* 0xcf00 */ +/* 0xCF40 */ 0x87a5,0x87a6,0x87a7,0x87a9,0x87aa,0x87ae,0x87b0,0x87b1, 0x87b2,0x87b4,0x87b6,0x87b7,0x87b8,0x87b9,0x87bb,0x87bc, 0x87be,0x87bf,0x87c1,0x87c2,0x87c3,0x87c4,0x87c5,0x87c7, @@ -2006,7 +2007,7 @@ const unsigned short cp936_ucs_table[] = { 0x7fd4,0x7965,0x8be6,0x60f3,0x54cd,0x4eab,0x9879,0x5df7, 0x6a61,0x50cf,0x5411,0x8c61,0x8427,0x785d,0x9704,0x524a, 0x54ee,0x56a3,0x9500,0x6d88,0x5bb5,0x6dc6,0x6653,0x0000, -/* 0xd000 */ +/* 0xD040 */ 0x8824,0x8825,0x8826,0x8827,0x8828,0x8829,0x882a,0x882b, 0x882c,0x882d,0x882e,0x882f,0x8830,0x8831,0x8833,0x8834, 0x8835,0x8836,0x8837,0x8838,0x883a,0x883b,0x883d,0x883e, @@ -2031,7 +2032,7 @@ const unsigned short cp936_ucs_table[] = { 0x9700,0x865a,0x5618,0x987b,0x5f90,0x8bb8,0x84c4,0x9157, 0x53d9,0x65ed,0x5e8f,0x755c,0x6064,0x7d6e,0x5a7f,0x7eea, 0x7eed,0x8f69,0x55a7,0x5ba3,0x60ac,0x65cb,0x7384,0x0000, -/* 0xd100 */ +/* 0xD140 */ 0x88ac,0x88ae,0x88af,0x88b0,0x88b2,0x88b3,0x88b4,0x88b5, 0x88b6,0x88b8,0x88b9,0x88ba,0x88bb,0x88bd,0x88be,0x88bf, 0x88c0,0x88c3,0x88c4,0x88c7,0x88c8,0x88ca,0x88cb,0x88cc, @@ -2056,7 +2057,7 @@ const unsigned short cp936_ucs_table[] = { 0x8c1a,0x9a8c,0x6b83,0x592e,0x9e2f,0x79e7,0x6768,0x626c, 0x4f6f,0x75a1,0x7f8a,0x6d0b,0x9633,0x6c27,0x4ef0,0x75d2, 0x517b,0x6837,0x6f3e,0x9080,0x8170,0x5996,0x7476,0x0000, -/* 0xd200 */ +/* 0xD240 */ 0x8938,0x8939,0x893a,0x893b,0x893c,0x893d,0x893e,0x893f, 0x8940,0x8942,0x8943,0x8945,0x8946,0x8947,0x8948,0x8949, 0x894a,0x894b,0x894c,0x894d,0x894e,0x894f,0x8950,0x8951, @@ -2081,7 +2082,7 @@ const unsigned short cp936_ucs_table[] = { 0x8be3,0x8bae,0x8c0a,0x8bd1,0x5f02,0x7ffc,0x7fcc,0x7ece, 0x8335,0x836b,0x56e0,0x6bb7,0x97f3,0x9634,0x59fb,0x541f, 0x94f6,0x6deb,0x5bc5,0x996e,0x5c39,0x5f15,0x9690,0x0000, -/* 0xd300 */ +/* 0xD340 */ 0x89a2,0x89a3,0x89a4,0x89a5,0x89a6,0x89a7,0x89a8,0x89a9, 0x89aa,0x89ab,0x89ac,0x89ad,0x89ae,0x89af,0x89b0,0x89b1, 0x89b2,0x89b3,0x89b4,0x89b5,0x89b6,0x89b7,0x89b8,0x89b9, @@ -2106,7 +2107,7 @@ const unsigned short cp936_ucs_table[] = { 0x4e88,0x5a31,0x96e8,0x4e0e,0x5c7f,0x79b9,0x5b87,0x8bed, 0x7fbd,0x7389,0x57df,0x828b,0x90c1,0x5401,0x9047,0x55bb, 0x5cea,0x5fa1,0x6108,0x6b32,0x72f1,0x80b2,0x8a89,0x0000, -/* 0xd400 */ +/* 0xD440 */ 0x8a1e,0x8a1f,0x8a20,0x8a21,0x8a22,0x8a23,0x8a24,0x8a25, 0x8a26,0x8a27,0x8a28,0x8a29,0x8a2a,0x8a2b,0x8a2c,0x8a2d, 0x8a2e,0x8a2f,0x8a30,0x8a31,0x8a32,0x8a33,0x8a34,0x8a35, @@ -2131,7 +2132,7 @@ const unsigned short cp936_ucs_table[] = { 0x6fa1,0x86a4,0x8e81,0x566a,0x9020,0x7682,0x7076,0x71e5, 0x8d23,0x62e9,0x5219,0x6cfd,0x8d3c,0x600e,0x589e,0x618e, 0x66fe,0x8d60,0x624e,0x55b3,0x6e23,0x672d,0x8f67,0x0000, -/* 0xd500 */ +/* 0xD540 */ 0x8a81,0x8a82,0x8a83,0x8a84,0x8a85,0x8a86,0x8a87,0x8a88, 0x8a8b,0x8a8c,0x8a8d,0x8a8e,0x8a8f,0x8a90,0x8a91,0x8a92, 0x8a94,0x8a95,0x8a96,0x8a97,0x8a98,0x8a99,0x8a9a,0x8a9b, @@ -2156,7 +2157,7 @@ const unsigned short cp936_ucs_table[] = { 0x7827,0x81fb,0x8d1e,0x9488,0x4fa6,0x6795,0x75b9,0x8bca, 0x9707,0x632f,0x9547,0x9635,0x84b8,0x6323,0x7741,0x5f81, 0x72f0,0x4e89,0x6014,0x6574,0x62ef,0x6b63,0x653f,0x0000, -/* 0xd600 */ +/* 0xD640 */ 0x8ae4,0x8ae5,0x8ae6,0x8ae7,0x8ae8,0x8ae9,0x8aea,0x8aeb, 0x8aec,0x8aed,0x8aee,0x8aef,0x8af0,0x8af1,0x8af2,0x8af3, 0x8af4,0x8af5,0x8af6,0x8af7,0x8af8,0x8af9,0x8afa,0x8afb, @@ -2181,7 +2182,7 @@ const unsigned short cp936_ucs_table[] = { 0x9aa4,0x73e0,0x682a,0x86db,0x6731,0x732a,0x8bf8,0x8bdb, 0x9010,0x7af9,0x70db,0x716e,0x62c4,0x77a9,0x5631,0x4e3b, 0x8457,0x67f1,0x52a9,0x86c0,0x8d2e,0x94f8,0x7b51,0x0000, -/* 0xd700 */ +/* 0xD740 */ 0x8b46,0x8b47,0x8b48,0x8b49,0x8b4a,0x8b4b,0x8b4c,0x8b4d, 0x8b4e,0x8b4f,0x8b50,0x8b51,0x8b52,0x8b53,0x8b54,0x8b55, 0x8b56,0x8b57,0x8b58,0x8b59,0x8b5a,0x8b5b,0x8b5c,0x8b5d, @@ -2206,7 +2207,7 @@ const unsigned short cp936_ucs_table[] = { 0x963b,0x7ec4,0x94bb,0x7e82,0x5634,0x9189,0x6700,0x7f6a, 0x5c0a,0x9075,0x6628,0x5de6,0x4f50,0x67de,0x505a,0x4f5c, 0x5750,0x5ea7,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xd800 */ +/* 0xD840 */ 0x8c38,0x8c39,0x8c3a,0x8c3b,0x8c3c,0x8c3d,0x8c3e,0x8c3f, 0x8c40,0x8c42,0x8c43,0x8c44,0x8c45,0x8c48,0x8c4a,0x8c4b, 0x8c4d,0x8c4e,0x8c4f,0x8c50,0x8c51,0x8c52,0x8c53,0x8c54, @@ -2231,7 +2232,7 @@ const unsigned short cp936_ucs_table[] = { 0x7f54,0x4ebb,0x4ec3,0x4ec9,0x4ec2,0x4ee8,0x4ee1,0x4eeb, 0x4ede,0x4f1b,0x4ef3,0x4f22,0x4f64,0x4ef5,0x4f25,0x4f27, 0x4f09,0x4f2b,0x4f5e,0x4f67,0x6538,0x4f5a,0x4f5d,0x0000, -/* 0xd900 */ +/* 0xD940 */ 0x8cae,0x8caf,0x8cb0,0x8cb1,0x8cb2,0x8cb3,0x8cb4,0x8cb5, 0x8cb6,0x8cb7,0x8cb8,0x8cb9,0x8cba,0x8cbb,0x8cbc,0x8cbd, 0x8cbe,0x8cbf,0x8cc0,0x8cc1,0x8cc2,0x8cc3,0x8cc4,0x8cc5, @@ -2256,7 +2257,7 @@ const unsigned short cp936_ucs_table[] = { 0x52f9,0x530d,0x8a07,0x5310,0x51eb,0x5919,0x5155,0x4ea0, 0x5156,0x4eb3,0x886e,0x88a4,0x4eb5,0x8114,0x88d2,0x7980, 0x5b34,0x8803,0x7fb8,0x51ab,0x51b1,0x51bd,0x51bc,0x0000, -/* 0xda00 */ +/* 0xDA40 */ 0x8d0e,0x8d0f,0x8d10,0x8d11,0x8d12,0x8d13,0x8d14,0x8d15, 0x8d16,0x8d17,0x8d18,0x8d19,0x8d1a,0x8d1b,0x8d1c,0x8d20, 0x8d51,0x8d52,0x8d57,0x8d5f,0x8d65,0x8d68,0x8d69,0x8d6a, @@ -2281,7 +2282,7 @@ const unsigned short cp936_ucs_table[] = { 0x963c,0x9642,0x9649,0x9654,0x965f,0x9667,0x966c,0x9672, 0x9674,0x9688,0x968d,0x9697,0x96b0,0x9097,0x909b,0x909d, 0x9099,0x90ac,0x90a1,0x90b4,0x90b3,0x90b6,0x90ba,0x0000, -/* 0xdb00 */ +/* 0xDB40 */ 0x8dd5,0x8dd8,0x8dd9,0x8ddc,0x8de0,0x8de1,0x8de2,0x8de5, 0x8de6,0x8de7,0x8de9,0x8ded,0x8dee,0x8df0,0x8df1,0x8df2, 0x8df4,0x8df6,0x8dfc,0x8dfe,0x8dff,0x8e00,0x8e01,0x8e02, @@ -2306,7 +2307,7 @@ const unsigned short cp936_ucs_table[] = { 0x576d,0x5776,0x5773,0x57ad,0x57a4,0x578c,0x57b2,0x57cf, 0x57a7,0x57b4,0x5793,0x57a0,0x57d5,0x57d8,0x57da,0x57d9, 0x57d2,0x57b8,0x57f4,0x57ef,0x57f8,0x57e4,0x57dd,0x0000, -/* 0xdc00 */ +/* 0xDC40 */ 0x8e73,0x8e75,0x8e77,0x8e78,0x8e79,0x8e7a,0x8e7b,0x8e7d, 0x8e7e,0x8e80,0x8e82,0x8e83,0x8e84,0x8e86,0x8e88,0x8e89, 0x8e8a,0x8e8b,0x8e8c,0x8e8d,0x8e8e,0x8e91,0x8e92,0x8e93, @@ -2331,7 +2332,7 @@ const unsigned short cp936_ucs_table[] = { 0x8351,0x835b,0x835c,0x8308,0x8392,0x833c,0x8334,0x8331, 0x839b,0x835e,0x832f,0x834f,0x8347,0x8343,0x835f,0x8340, 0x8317,0x8360,0x832d,0x833a,0x8333,0x8366,0x8365,0x0000, -/* 0xdd00 */ +/* 0xDD40 */ 0x8ee5,0x8ee6,0x8ee7,0x8ee8,0x8ee9,0x8eea,0x8eeb,0x8eec, 0x8eed,0x8eee,0x8eef,0x8ef0,0x8ef1,0x8ef2,0x8ef3,0x8ef4, 0x8ef5,0x8ef6,0x8ef7,0x8ef8,0x8ef9,0x8efa,0x8efb,0x8efc, @@ -2356,7 +2357,7 @@ const unsigned short cp936_ucs_table[] = { 0x84c1,0x84cd,0x84d0,0x84e6,0x84bd,0x84d3,0x84ca,0x84bf, 0x84ba,0x84e0,0x84a1,0x84b9,0x84b4,0x8497,0x84e5,0x84e3, 0x850c,0x750d,0x8538,0x84f0,0x8539,0x851f,0x853a,0x0000, -/* 0xde00 */ +/* 0xDE40 */ 0x8f45,0x8f46,0x8f47,0x8f48,0x8f49,0x8f4a,0x8f4b,0x8f4c, 0x8f4d,0x8f4e,0x8f4f,0x8f50,0x8f51,0x8f52,0x8f53,0x8f54, 0x8f55,0x8f56,0x8f57,0x8f58,0x8f59,0x8f5a,0x8f5b,0x8f5c, @@ -2381,7 +2382,7 @@ const unsigned short cp936_ucs_table[] = { 0x63bc,0x63f2,0x63f8,0x63e0,0x63ff,0x63c4,0x63de,0x63ce, 0x6452,0x63c6,0x63be,0x6445,0x6441,0x640b,0x641b,0x6420, 0x640c,0x6426,0x6421,0x645e,0x6484,0x646d,0x6496,0x0000, -/* 0xdf00 */ +/* 0xDF40 */ 0x9019,0x901c,0x9023,0x9024,0x9025,0x9027,0x9028,0x9029, 0x902a,0x902b,0x902c,0x9030,0x9031,0x9032,0x9033,0x9034, 0x9037,0x9039,0x903a,0x903d,0x903f,0x9040,0x9043,0x9045, @@ -2406,7 +2407,7 @@ const unsigned short cp936_ucs_table[] = { 0x54de,0x551b,0x54e7,0x5520,0x54fd,0x5514,0x54f3,0x5522, 0x5523,0x550f,0x5511,0x5527,0x552a,0x5567,0x558f,0x55b5, 0x5549,0x556d,0x5541,0x5555,0x553f,0x5550,0x553c,0x0000, -/* 0xe000 */ +/* 0xE040 */ 0x90c2,0x90c3,0x90c6,0x90c8,0x90c9,0x90cb,0x90cc,0x90cd, 0x90d2,0x90d4,0x90d5,0x90d6,0x90d8,0x90d9,0x90da,0x90de, 0x90df,0x90e0,0x90e3,0x90e4,0x90e5,0x90e9,0x90ea,0x90ec, @@ -2431,7 +2432,7 @@ const unsigned short cp936_ucs_table[] = { 0x567c,0x5685,0x5693,0x56af,0x56d4,0x56d7,0x56dd,0x56e1, 0x56f5,0x56eb,0x56f9,0x56ff,0x5704,0x570a,0x5709,0x571c, 0x5e0f,0x5e19,0x5e14,0x5e11,0x5e31,0x5e3b,0x5e3c,0x0000, -/* 0xe100 */ +/* 0xE140 */ 0x9145,0x9147,0x9148,0x9151,0x9153,0x9154,0x9155,0x9156, 0x9158,0x9159,0x915b,0x915c,0x915f,0x9160,0x9166,0x9167, 0x9168,0x916b,0x916d,0x9173,0x917a,0x917b,0x917c,0x9180, @@ -2456,7 +2457,7 @@ const unsigned short cp936_ucs_table[] = { 0x5fbc,0x8862,0x5f61,0x72ad,0x72b0,0x72b4,0x72b7,0x72b8, 0x72c3,0x72c1,0x72ce,0x72cd,0x72d2,0x72e8,0x72ef,0x72e9, 0x72f2,0x72f4,0x72f7,0x7301,0x72f3,0x7303,0x72fa,0x0000, -/* 0xe200 */ +/* 0xE240 */ 0x91e6,0x91e7,0x91e8,0x91e9,0x91ea,0x91eb,0x91ec,0x91ed, 0x91ee,0x91ef,0x91f0,0x91f1,0x91f2,0x91f3,0x91f4,0x91f5, 0x91f6,0x91f7,0x91f8,0x91f9,0x91fa,0x91fb,0x91fc,0x91fd, @@ -2481,7 +2482,7 @@ const unsigned short cp936_ucs_table[] = { 0x5fe4,0x5ffe,0x6005,0x6006,0x5fea,0x5fed,0x5ff8,0x6019, 0x6035,0x6026,0x601b,0x600f,0x600d,0x6029,0x602b,0x600a, 0x603f,0x6021,0x6078,0x6079,0x607b,0x607a,0x6042,0x0000, -/* 0xe300 */ +/* 0xE340 */ 0x9246,0x9247,0x9248,0x9249,0x924a,0x924b,0x924c,0x924d, 0x924e,0x924f,0x9250,0x9251,0x9252,0x9253,0x9254,0x9255, 0x9256,0x9257,0x9258,0x9259,0x925a,0x925b,0x925c,0x925d, @@ -2506,7 +2507,7 @@ const unsigned short cp936_ucs_table[] = { 0x6c68,0x6c69,0x6c74,0x6c76,0x6c86,0x6ca9,0x6cd0,0x6cd4, 0x6cad,0x6cf7,0x6cf8,0x6cf1,0x6cd7,0x6cb2,0x6ce0,0x6cd6, 0x6cfa,0x6ceb,0x6cee,0x6cb1,0x6cd3,0x6cef,0x6cfe,0x0000, -/* 0xe400 */ +/* 0xE440 */ 0x92a8,0x92a9,0x92aa,0x92ab,0x92ac,0x92ad,0x92af,0x92b0, 0x92b1,0x92b2,0x92b3,0x92b4,0x92b5,0x92b6,0x92b7,0x92b8, 0x92b9,0x92ba,0x92bb,0x92bc,0x92bd,0x92be,0x92bf,0x92c0, @@ -2531,7 +2532,7 @@ const unsigned short cp936_ucs_table[] = { 0x6ec2,0x6e9f,0x6f62,0x6f46,0x6f47,0x6f24,0x6f15,0x6ef9, 0x6f2f,0x6f36,0x6f4b,0x6f74,0x6f2a,0x6f09,0x6f29,0x6f89, 0x6f8d,0x6f8c,0x6f78,0x6f72,0x6f7c,0x6f7a,0x6fd1,0x0000, -/* 0xe500 */ +/* 0xE540 */ 0x930a,0x930b,0x930c,0x930d,0x930e,0x930f,0x9310,0x9311, 0x9312,0x9313,0x9314,0x9315,0x9316,0x9317,0x9318,0x9319, 0x931a,0x931b,0x931c,0x931d,0x931e,0x931f,0x9320,0x9321, @@ -2556,7 +2557,7 @@ const unsigned short cp936_ucs_table[] = { 0x5f56,0x5f58,0x5c3b,0x54ab,0x5c50,0x5c59,0x5b71,0x5c63, 0x5c66,0x7fbc,0x5f2a,0x5f29,0x5f2d,0x8274,0x5f3c,0x9b3b, 0x5c6e,0x5981,0x5983,0x598d,0x59a9,0x59aa,0x59a3,0x0000, -/* 0xe600 */ +/* 0xE640 */ 0x936c,0x936d,0x936e,0x936f,0x9370,0x9371,0x9372,0x9373, 0x9374,0x9375,0x9376,0x9377,0x9378,0x9379,0x937a,0x937b, 0x937c,0x937d,0x937e,0x937f,0x9380,0x9381,0x9382,0x9383, @@ -2581,7 +2582,7 @@ const unsigned short cp936_ucs_table[] = { 0x9a85,0x9a88,0x9a8a,0x9a90,0x9a92,0x9a93,0x9a96,0x9a98, 0x9a9b,0x9a9c,0x9a9d,0x9a9f,0x9aa0,0x9aa2,0x9aa3,0x9aa5, 0x9aa7,0x7e9f,0x7ea1,0x7ea3,0x7ea5,0x7ea8,0x7ea9,0x0000, -/* 0xe700 */ +/* 0xE740 */ 0x93ce,0x93cf,0x93d0,0x93d1,0x93d2,0x93d3,0x93d4,0x93d5, 0x93d7,0x93d8,0x93d9,0x93da,0x93db,0x93dc,0x93dd,0x93de, 0x93df,0x93e0,0x93e1,0x93e2,0x93e3,0x93e4,0x93e5,0x93e6, @@ -2606,7 +2607,7 @@ const unsigned short cp936_ucs_table[] = { 0x73b7,0x73b3,0x73c0,0x73c9,0x73c8,0x73e5,0x73d9,0x987c, 0x740a,0x73e9,0x73e7,0x73de,0x73ba,0x73f2,0x740f,0x742a, 0x745b,0x7426,0x7425,0x7428,0x7430,0x742e,0x742c,0x0000, -/* 0xe800 */ +/* 0xE840 */ 0x942f,0x9430,0x9431,0x9432,0x9433,0x9434,0x9435,0x9436, 0x9437,0x9438,0x9439,0x943a,0x943b,0x943c,0x943d,0x943f, 0x9440,0x9441,0x9442,0x9443,0x9444,0x9445,0x9446,0x9447, @@ -2631,7 +2632,7 @@ const unsigned short cp936_ucs_table[] = { 0x6883,0x681d,0x6855,0x6866,0x6841,0x6867,0x6840,0x683e, 0x684a,0x6849,0x6829,0x68b5,0x688f,0x6874,0x6877,0x6893, 0x686b,0x68c2,0x696e,0x68fc,0x691f,0x6920,0x68f9,0x0000, -/* 0xe900 */ +/* 0xE940 */ 0x9527,0x9533,0x953d,0x9543,0x9548,0x954b,0x9555,0x955a, 0x9560,0x956e,0x9574,0x9575,0x9577,0x9578,0x9579,0x957a, 0x957b,0x957c,0x957d,0x957e,0x9580,0x9581,0x9582,0x9583, @@ -2656,7 +2657,7 @@ const unsigned short cp936_ucs_table[] = { 0x6b8d,0x6b9a,0x6b9b,0x6ba1,0x6baa,0x8f6b,0x8f6d,0x8f71, 0x8f72,0x8f73,0x8f75,0x8f76,0x8f78,0x8f77,0x8f79,0x8f7a, 0x8f7c,0x8f7e,0x8f81,0x8f82,0x8f84,0x8f87,0x8f8b,0x0000, -/* 0xea00 */ +/* 0xEA40 */ 0x95cc,0x95cd,0x95ce,0x95cf,0x95d0,0x95d1,0x95d2,0x95d3, 0x95d4,0x95d5,0x95d6,0x95d7,0x95d8,0x95d9,0x95da,0x95db, 0x95dc,0x95dd,0x95de,0x95df,0x95e0,0x95e1,0x95e2,0x95e3, @@ -2681,7 +2682,7 @@ const unsigned short cp936_ucs_table[] = { 0x89c7,0x89ca,0x89cb,0x89cc,0x89ce,0x89cf,0x89d0,0x89d1, 0x726e,0x729f,0x725d,0x7266,0x726f,0x727e,0x727f,0x7284, 0x728b,0x728d,0x728f,0x7292,0x6308,0x6332,0x63b0,0x0000, -/* 0xeb00 */ +/* 0xEB40 */ 0x968c,0x968e,0x9691,0x9692,0x9693,0x9695,0x9696,0x969a, 0x969b,0x969d,0x969e,0x969f,0x96a0,0x96a1,0x96a2,0x96a3, 0x96a4,0x96a5,0x96a6,0x96a8,0x96a9,0x96aa,0x96ab,0x96ac, @@ -2706,7 +2707,7 @@ const unsigned short cp936_ucs_table[] = { 0x8153,0x8174,0x8159,0x815a,0x8171,0x8160,0x8169,0x817c, 0x817d,0x816d,0x8167,0x584d,0x5ab5,0x8188,0x8182,0x8191, 0x6ed5,0x81a3,0x81aa,0x81cc,0x6726,0x81ca,0x81bb,0x0000, -/* 0xec00 */ +/* 0xEC40 */ 0x9721,0x9722,0x9723,0x9724,0x9725,0x9726,0x9727,0x9728, 0x9729,0x972b,0x972c,0x972e,0x972f,0x9731,0x9733,0x9734, 0x9735,0x9736,0x9737,0x973a,0x973b,0x973c,0x973d,0x973f, @@ -2731,7 +2732,7 @@ const unsigned short cp936_ucs_table[] = { 0x6248,0x6249,0x793b,0x7940,0x7946,0x7949,0x795b,0x795c, 0x7953,0x795a,0x7962,0x7957,0x7960,0x796f,0x7967,0x797a, 0x7985,0x798a,0x799a,0x79a7,0x79b3,0x5fd1,0x5fd0,0x0000, -/* 0xed00 */ +/* 0xED40 */ 0x979e,0x979f,0x97a1,0x97a2,0x97a4,0x97a5,0x97a6,0x97a7, 0x97a8,0x97a9,0x97aa,0x97ac,0x97ae,0x97b0,0x97b1,0x97b3, 0x97b5,0x97b6,0x97b7,0x97b8,0x97b9,0x97ba,0x97bb,0x97bc, @@ -2756,7 +2757,7 @@ const unsigned short cp936_ucs_table[] = { 0x9f9b,0x9ef9,0x9efb,0x9efc,0x76f1,0x7704,0x770d,0x76f9, 0x7707,0x7708,0x771a,0x7722,0x7719,0x772d,0x7726,0x7735, 0x7738,0x7750,0x7751,0x7747,0x7743,0x775a,0x7768,0x0000, -/* 0xee00 */ +/* 0xEE40 */ 0x980f,0x9810,0x9811,0x9812,0x9813,0x9814,0x9815,0x9816, 0x9817,0x9818,0x9819,0x981a,0x981b,0x981c,0x981d,0x981e, 0x981f,0x9820,0x9821,0x9822,0x9823,0x9824,0x9825,0x9826, @@ -2781,7 +2782,7 @@ const unsigned short cp936_ucs_table[] = { 0x94ca,0x94cb,0x94cc,0x94cd,0x94ce,0x94d0,0x94d1,0x94d2, 0x94d5,0x94d6,0x94d7,0x94d9,0x94d8,0x94db,0x94de,0x94df, 0x94e0,0x94e2,0x94e4,0x94e5,0x94e7,0x94e8,0x94ea,0x0000, -/* 0xef00 */ +/* 0xEF40 */ 0x986f,0x9870,0x9871,0x9872,0x9873,0x9874,0x988b,0x988e, 0x9892,0x9895,0x9899,0x98a3,0x98a8,0x98a9,0x98aa,0x98ab, 0x98ac,0x98ad,0x98ae,0x98af,0x98b0,0x98b1,0x98b2,0x98b3, @@ -2806,7 +2807,7 @@ const unsigned short cp936_ucs_table[] = { 0x9568,0x9569,0x956a,0x956b,0x956c,0x956f,0x9571,0x9572, 0x9573,0x953a,0x77e7,0x77ec,0x96c9,0x79d5,0x79ed,0x79e3, 0x79eb,0x7a06,0x5d47,0x7a03,0x7a02,0x7a1e,0x7a14,0x0000, -/* 0xf000 */ +/* 0xF040 */ 0x9908,0x9909,0x990a,0x990b,0x990c,0x990e,0x990f,0x9911, 0x9912,0x9913,0x9914,0x9915,0x9916,0x9917,0x9918,0x9919, 0x991a,0x991b,0x991c,0x991d,0x991e,0x991f,0x9920,0x9921, @@ -2831,7 +2832,7 @@ const unsigned short cp936_ucs_table[] = { 0x75c2,0x75d6,0x75cd,0x75e3,0x75e8,0x75e6,0x75e4,0x75eb, 0x75e7,0x7603,0x75f1,0x75fc,0x75ff,0x7610,0x7600,0x7605, 0x760c,0x7617,0x760a,0x7625,0x7618,0x7615,0x7619,0x0000, -/* 0xf100 */ +/* 0xF140 */ 0x998c,0x998e,0x999a,0x999b,0x999c,0x999d,0x999e,0x999f, 0x99a0,0x99a1,0x99a2,0x99a3,0x99a4,0x99a6,0x99a7,0x99a9, 0x99aa,0x99ab,0x99ac,0x99ad,0x99ae,0x99af,0x99b0,0x99b1, @@ -2856,7 +2857,7 @@ const unsigned short cp936_ucs_table[] = { 0x8014,0x8016,0x801c,0x8020,0x8022,0x8025,0x8026,0x8027, 0x8029,0x8028,0x8031,0x800b,0x8035,0x8043,0x8046,0x804d, 0x8052,0x8069,0x8071,0x8983,0x9878,0x9880,0x9883,0x0000, -/* 0xf200 */ +/* 0xF240 */ 0x99fa,0x99fb,0x99fc,0x99fd,0x99fe,0x99ff,0x9a00,0x9a01, 0x9a02,0x9a03,0x9a04,0x9a05,0x9a06,0x9a07,0x9a08,0x9a09, 0x9a0a,0x9a0b,0x9a0c,0x9a0d,0x9a0e,0x9a0f,0x9a10,0x9a11, @@ -2881,7 +2882,7 @@ const unsigned short cp936_ucs_table[] = { 0x8729,0x8737,0x873f,0x8782,0x8722,0x877d,0x877e,0x877b, 0x8760,0x8770,0x874c,0x876e,0x878b,0x8753,0x8763,0x877c, 0x8764,0x8759,0x8765,0x8793,0x87af,0x87a8,0x87d2,0x0000, -/* 0xf300 */ +/* 0xF340 */ 0x9a5a,0x9a5b,0x9a5c,0x9a5d,0x9a5e,0x9a5f,0x9a60,0x9a61, 0x9a62,0x9a63,0x9a64,0x9a65,0x9a66,0x9a67,0x9a68,0x9a69, 0x9a6a,0x9a6b,0x9a72,0x9a83,0x9a89,0x9a8d,0x9a8e,0x9a94, @@ -2906,7 +2907,7 @@ const unsigned short cp936_ucs_table[] = { 0x7bac,0x7b9d,0x7ba8,0x7b85,0x7baa,0x7b9c,0x7ba2,0x7bab, 0x7bb4,0x7bd1,0x7bc1,0x7bcc,0x7bdd,0x7bda,0x7be5,0x7be6, 0x7bea,0x7c0c,0x7bfe,0x7bfc,0x7c0f,0x7c16,0x7c0b,0x0000, -/* 0xf400 */ +/* 0xF440 */ 0x9b07,0x9b09,0x9b0a,0x9b0b,0x9b0c,0x9b0d,0x9b0e,0x9b10, 0x9b11,0x9b12,0x9b14,0x9b15,0x9b16,0x9b17,0x9b18,0x9b19, 0x9b1a,0x9b1b,0x9b1c,0x9b1d,0x9b1e,0x9b20,0x9b21,0x9b22, @@ -2931,7 +2932,7 @@ const unsigned short cp936_ucs_table[] = { 0x7ff3,0x7cf8,0x7d77,0x7da6,0x7dae,0x7e47,0x7e9b,0x9eb8, 0x9eb4,0x8d73,0x8d84,0x8d94,0x8d91,0x8db1,0x8d67,0x8d6d, 0x8c47,0x8c49,0x914a,0x9150,0x914e,0x914f,0x9164,0x0000, -/* 0xf500 */ +/* 0xF540 */ 0x9b7c,0x9b7d,0x9b7e,0x9b7f,0x9b80,0x9b81,0x9b82,0x9b83, 0x9b84,0x9b85,0x9b86,0x9b87,0x9b88,0x9b89,0x9b8a,0x9b8b, 0x9b8c,0x9b8d,0x9b8e,0x9b8f,0x9b90,0x9b91,0x9b92,0x9b93, @@ -2956,7 +2957,7 @@ const unsigned short cp936_ucs_table[] = { 0x8e4a,0x8e70,0x8e76,0x8e7c,0x8e6f,0x8e74,0x8e85,0x8e8f, 0x8e94,0x8e90,0x8e9c,0x8e9e,0x8c78,0x8c82,0x8c8a,0x8c85, 0x8c98,0x8c94,0x659b,0x89d6,0x89de,0x89da,0x89dc,0x0000, -/* 0xf600 */ +/* 0xF640 */ 0x9bdc,0x9bdd,0x9bde,0x9bdf,0x9be0,0x9be1,0x9be2,0x9be3, 0x9be4,0x9be5,0x9be6,0x9be7,0x9be8,0x9be9,0x9bea,0x9beb, 0x9bec,0x9bed,0x9bee,0x9bef,0x9bf0,0x9bf1,0x9bf2,0x9bf3, @@ -2981,7 +2982,7 @@ const unsigned short cp936_ucs_table[] = { 0x9ca8,0x9ca9,0x9cab,0x9cad,0x9cae,0x9cb0,0x9cb1,0x9cb2, 0x9cb3,0x9cb4,0x9cb5,0x9cb6,0x9cb7,0x9cba,0x9cbb,0x9cbc, 0x9cbd,0x9cc4,0x9cc5,0x9cc6,0x9cc7,0x9cca,0x9ccb,0x0000, -/* 0xf700 */ +/* 0xF740 */ 0x9c3c,0x9c3d,0x9c3e,0x9c3f,0x9c40,0x9c41,0x9c42,0x9c43, 0x9c44,0x9c45,0x9c46,0x9c47,0x9c48,0x9c49,0x9c4a,0x9c4b, 0x9c4c,0x9c4d,0x9c4e,0x9c4f,0x9c50,0x9c51,0x9c52,0x9c53, @@ -3006,7 +3007,7 @@ const unsigned short cp936_ucs_table[] = { 0x9e92,0x93d6,0x9e9d,0x9e9f,0x9edb,0x9edc,0x9edd,0x9ee0, 0x9edf,0x9ee2,0x9ee9,0x9ee7,0x9ee5,0x9eea,0x9eef,0x9f22, 0x9f2c,0x9f2f,0x9f39,0x9f37,0x9f3d,0x9f3e,0x9f44,0x0000, -/* 0xf800 */ +/* 0xF840 */ 0x9ce3,0x9ce4,0x9ce5,0x9ce6,0x9ce7,0x9ce8,0x9ce9,0x9cea, 0x9ceb,0x9cec,0x9ced,0x9cee,0x9cef,0x9cf0,0x9cf1,0x9cf2, 0x9cf3,0x9cf4,0x9cf5,0x9cf6,0x9cf7,0x9cf8,0x9cf9,0x9cfa, @@ -3031,7 +3032,7 @@ const unsigned short cp936_ucs_table[] = { 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xf900 */ +/* 0xF940 */ 0x9d43,0x9d44,0x9d45,0x9d46,0x9d47,0x9d48,0x9d49,0x9d4a, 0x9d4b,0x9d4c,0x9d4d,0x9d4e,0x9d4f,0x9d50,0x9d51,0x9d52, 0x9d53,0x9d54,0x9d55,0x9d56,0x9d57,0x9d58,0x9d59,0x9d5a, @@ -3056,7 +3057,7 @@ const unsigned short cp936_ucs_table[] = { 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xfa00 */ +/* 0xFA40 */ 0x9da3,0x9da4,0x9da5,0x9da6,0x9da7,0x9da8,0x9da9,0x9daa, 0x9dab,0x9dac,0x9dad,0x9dae,0x9daf,0x9db0,0x9db1,0x9db2, 0x9db3,0x9db4,0x9db5,0x9db6,0x9db7,0x9db8,0x9db9,0x9dba, @@ -3081,7 +3082,7 @@ const unsigned short cp936_ucs_table[] = { 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xfb00 */ +/* 0xFB40 */ 0x9e03,0x9e04,0x9e05,0x9e06,0x9e07,0x9e08,0x9e09,0x9e0a, 0x9e0b,0x9e0c,0x9e0d,0x9e0e,0x9e0f,0x9e10,0x9e11,0x9e12, 0x9e13,0x9e14,0x9e15,0x9e16,0x9e17,0x9e18,0x9e19,0x9e1a, @@ -3106,7 +3107,7 @@ const unsigned short cp936_ucs_table[] = { 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xfc00 */ +/* 0xFC40 */ 0x9eab,0x9eac,0x9ead,0x9eae,0x9eaf,0x9eb0,0x9eb1,0x9eb2, 0x9eb3,0x9eb5,0x9eb6,0x9eb7,0x9eb9,0x9eba,0x9ebc,0x9ebf, 0x9ec0,0x9ec1,0x9ec2,0x9ec3,0x9ec5,0x9ec6,0x9ec7,0x9ec8, @@ -3131,7 +3132,7 @@ const unsigned short cp936_ucs_table[] = { 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xfd00 */ +/* 0xFD40 */ 0x9f32,0x9f33,0x9f34,0x9f35,0x9f36,0x9f38,0x9f3a,0x9f3c, 0x9f3f,0x9f40,0x9f41,0x9f42,0x9f43,0x9f45,0x9f46,0x9f47, 0x9f48,0x9f49,0x9f4a,0x9f4b,0x9f4c,0x9f4d,0x9f4e,0x9f4f, @@ -3156,7 +3157,7 @@ const unsigned short cp936_ucs_table[] = { 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, -/* 0xfe00 */ +/* 0xFE40 */ 0xfa0c,0xfa0d,0xfa0e,0xfa0f,0xfa11,0xfa13,0xfa14,0xfa18, 0xfa1f,0xfa20,0xfa21,0xfa23,0xfa24,0xfa27,0xfa28,0xfa29, 0x2e81,0x0000,0x0000,0x0000,0x2e84,0x3473,0x3447,0x2e88, @@ -3173,6 +3174,216 @@ const unsigned short cp936_ucs_table[] = { const int cp936_ucs_table_size = (sizeof(cp936_ucs_table)/sizeof(unsigned short)); +const unsigned short cp936_pua_tbl1[] = { +/* 0xA2AB */ +0xE766,0xE767,0xE768,0xE769,0xE76A, +0xE76B,0x2488,0x2489,0x248a,0x248b,0x248c,0x248d,0x248e, +0x248f,0x2490,0x2491,0x2492,0x2493,0x2494,0x2495,0x2496, +0x2497,0x2498,0x2499,0x249a,0x249b,0x2474,0x2475,0x2476, +0x2477,0x2478,0x2479,0x247a,0x247b,0x247c,0x247d,0x247e, +0x247f,0x2480,0x2481,0x2482,0x2483,0x2484,0x2485,0x2486, +0x2487,0x2460,0x2461,0x2462,0x2463,0x2464,0x2465,0x2466, +0x2467,0x2468,0x2469,0xE76C,0xE76D,0x3220,0x3221,0x3222, +0x3223,0x3224,0x3225,0x3226,0x3227,0x3228,0x3229,0xE76E, +0xE76F,0x2160,0x2161,0x2162,0x2163,0x2164,0x2165,0x2166, +0x2167,0x2168,0x2169,0x216a,0x216b,0xE770,0xE771,0x0000, +/* 0xA340 */ +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0xff01,0xff02,0xff03,0xffe5,0xff05,0xff06,0xff07, +0xff08,0xff09,0xff0a,0xff0b,0xff0c,0xff0d,0xff0e,0xff0f, +0xff10,0xff11,0xff12,0xff13,0xff14,0xff15,0xff16,0xff17, +0xff18,0xff19,0xff1a,0xff1b,0xff1c,0xff1d,0xff1e,0xff1f, +0xff20,0xff21,0xff22,0xff23,0xff24,0xff25,0xff26,0xff27, +0xff28,0xff29,0xff2a,0xff2b,0xff2c,0xff2d,0xff2e,0xff2f, +0xff30,0xff31,0xff32,0xff33,0xff34,0xff35,0xff36,0xff37, +0xff38,0xff39,0xff3a,0xff3b,0xff3c,0xff3d,0xff3e,0xff3f, +0xff40,0xff41,0xff42,0xff43,0xff44,0xff45,0xff46,0xff47, +0xff48,0xff49,0xff4a,0xff4b,0xff4c,0xff4d,0xff4e,0xff4f, +0xff50,0xff51,0xff52,0xff53,0xff54,0xff55,0xff56,0xff57, +0xff58,0xff59,0xff5a,0xff5b,0xff5c,0xff5d,0xffe3,0x0000, +/* 0xA440 */ +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x3041,0x3042,0x3043,0x3044,0x3045,0x3046,0x3047, +0x3048,0x3049,0x304a,0x304b,0x304c,0x304d,0x304e,0x304f, +0x3050,0x3051,0x3052,0x3053,0x3054,0x3055,0x3056,0x3057, +0x3058,0x3059,0x305a,0x305b,0x305c,0x305d,0x305e,0x305f, +0x3060,0x3061,0x3062,0x3063,0x3064,0x3065,0x3066,0x3067, +0x3068,0x3069,0x306a,0x306b,0x306c,0x306d,0x306e,0x306f, +0x3070,0x3071,0x3072,0x3073,0x3074,0x3075,0x3076,0x3077, +0x3078,0x3079,0x307a,0x307b,0x307c,0x307d,0x307e,0x307f, +0x3080,0x3081,0x3082,0x3083,0x3084,0x3085,0x3086,0x3087, +0x3088,0x3089,0x308a,0x308b,0x308c,0x308d,0x308e,0x308f, +0x3090,0x3091,0x3092,0x3093,0xE772,0xE773,0xE774,0xE775, +0xE776,0xE777,0xE778,0xE779,0xE77A,0xE77B,0xE77C,0x0000, +/* 0xA540 */ +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x30a1,0x30a2,0x30a3,0x30a4,0x30a5,0x30a6,0x30a7, +0x30a8,0x30a9,0x30aa,0x30ab,0x30ac,0x30ad,0x30ae,0x30af, +0x30b0,0x30b1,0x30b2,0x30b3,0x30b4,0x30b5,0x30b6,0x30b7, +0x30b8,0x30b9,0x30ba,0x30bb,0x30bc,0x30bd,0x30be,0x30bf, +0x30c0,0x30c1,0x30c2,0x30c3,0x30c4,0x30c5,0x30c6,0x30c7, +0x30c8,0x30c9,0x30ca,0x30cb,0x30cc,0x30cd,0x30ce,0x30cf, +0x30d0,0x30d1,0x30d2,0x30d3,0x30d4,0x30d5,0x30d6,0x30d7, +0x30d8,0x30d9,0x30da,0x30db,0x30dc,0x30dd,0x30de,0x30df, +0x30e0,0x30e1,0x30e2,0x30e3,0x30e4,0x30e5,0x30e6,0x30e7, +0x30e8,0x30e9,0x30ea,0x30eb,0x30ec,0x30ed,0x30ee,0x30ef, +0x30f0,0x30f1,0x30f2,0x30f3,0x30f4,0x30f5,0x30f6,0xE77D, +0xE77E,0xE77F,0xE780,0xE781,0xE782,0xE783,0xE784,0x0000, +/* 0xA640 */ +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0391,0x0392,0x0393,0x0394,0x0395,0x0396,0x0397, +0x0398,0x0399,0x039a,0x039b,0x039c,0x039d,0x039e,0x039f, +0x03a0,0x03a1,0x03a3,0x03a4,0x03a5,0x03a6,0x03a7,0x03a8, +0x03a9,0xE785,0xE786,0xE787,0xE788,0xE789,0xE78A,0xE78B, +0xE78C,0x03b1,0x03b2,0x03b3,0x03b4,0x03b5,0x03b6,0x03b7, +0x03b8,0x03b9,0x03ba,0x03bb,0x03bc,0x03bd,0x03be,0x03bf, +0x03c0,0x03c1,0x03c3,0x03c4,0x03c5,0x03c6,0x03c7,0x03c8, +0x03c9,0xE78D,0xE78E,0xE78F,0xE790,0xE791,0xE792,0xE793, +0xfe35,0xfe36,0xfe39,0xfe3a,0xfe3f,0xfe40,0xfe3d,0xfe3e, +0xfe41,0xfe42,0xfe43,0xfe44,0xE794,0xE795,0xfe3b,0xfe3c, +0xfe37,0xfe38,0xfe31,0xE796,0xfe33,0xfe34,0xE797,0xE798, +0xE799,0xE79A,0xE79B,0xE79C,0xE79D,0xE79E,0xE79F,0x0000, +/* 0xA740 */ +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, +0x0000,0x0410,0x0411,0x0412,0x0413,0x0414,0x0415,0x0401, +0x0416,0x0417,0x0418,0x0419,0x041a,0x041b,0x041c,0x041d, +0x041e,0x041f,0x0420,0x0421,0x0422,0x0423,0x0424,0x0425, +0x0426,0x0427,0x0428,0x0429,0x042a,0x042b,0x042c,0x042d, +0x042e,0x042f,0xE7A0,0xE7A1,0xE7A2,0xE7A3,0xE7A4,0xE7A5, +0xE7A6,0xE7A7,0xE7A8,0xE7A9,0xE7AA,0xE7AB,0xE7AC,0xE7AD, +0xE7AE,0x0430,0x0431,0x0432,0x0433,0x0434,0x0435,0x0451, +0x0436,0x0437,0x0438,0x0439,0x043a,0x043b,0x043c,0x043d, +0x043e,0x043f,0x0440,0x0441,0x0442,0x0443,0x0444,0x0445, +0x0446,0x0447,0x0448,0x0449,0x044a,0x044b,0x044c,0x044d, +0x044e,0x044f,0xE7AF,0xE7B0,0xE7B1,0xE7B2,0xE7B3,0xE7B4, +0xE7B5,0xE7B6,0xE7B7,0xE7B8,0xE7B9,0xE7BA,0xE7BB,0x0000, +/* 0xA840 */ +0x02ca,0x02cb,0x02d9,0x2013,0x2015,0x2025,0x2035,0x2105, +0x2109,0x2196,0x2197,0x2198,0x2199,0x2215,0x221f,0x2223, +0x2252,0x2266,0x2267,0x22bf,0x2550,0x2551,0x2552,0x2553, +0x2554,0x2555,0x2556,0x2557,0x2558,0x2559,0x255a,0x255b, +0x255c,0x255d,0x255e,0x255f,0x2560,0x2561,0x2562,0x2563, +0x2564,0x2565,0x2566,0x2567,0x2568,0x2569,0x256a,0x256b, +0x256c,0x256d,0x256e,0x256f,0x2570,0x2571,0x2572,0x2573, +0x2581,0x2582,0x2583,0x2584,0x2585,0x2586,0x2587,0x0000, +0x2588,0x2589,0x258a,0x258b,0x258c,0x258d,0x258e,0x258f, +0x2593,0x2594,0x2595,0x25bc,0x25bd,0x25e2,0x25e3,0x25e4, +0x25e5,0x2609,0x2295,0x3012,0x301d,0x301e,0xE7BC,0xE7BD, +0xE7BE,0xE7BF,0xE7C0,0xE7C1,0xE7C2,0xE7C3,0xE7C4,0xE7C5, +0xE7C6,0x0101,0x00e1,0x01ce,0x00e0,0x0113,0x00e9,0x011b, +0x00e8,0x012b,0x00ed,0x01d0,0x00ec,0x014d,0x00f3,0x01d2, +0x00f2,0x016b,0x00fa,0x01d4,0x00f9,0x01d6,0x01d8,0x01da, +0x01dc,0x00fc,0x00ea,0x0251,0xE7C7,0x0144,0x0148,0xE7C8, +0x0261,0xE7C9,0xE7CA,0xE7CB,0xE7CC,0x3105,0x3106,0x3107, +0x3108,0x3109,0x310a,0x310b,0x310c,0x310d,0x310e,0x310f, +0x3110,0x3111,0x3112,0x3113,0x3114,0x3115,0x3116,0x3117, +0x3118,0x3119,0x311a,0x311b,0x311c,0x311d,0x311e,0x311f, +0x3120,0x3121,0x3122,0x3123,0x3124,0x3125,0x3126,0x3127, +0x3128,0x3129,0xE7CD,0xE7CE,0xE7CF,0xE7D0,0xE7D1,0xE7D2, +0xE7D3,0xE7D4,0xE7D5,0xE7D6,0xE7D7,0xE7D8,0xE7D9,0xE7DA, +0xE7DB,0xE7DC,0xE7DD,0xE7DE,0xE7DF,0xE7E0,0xE7E1,0x0000, +/* 0xA940 */ +0x3021,0x3022,0x3023,0x3024,0x3025,0x3026,0x3027,0x3028, +0x3029,0x32a3,0x338e,0x338f,0x339c,0x339d,0x339e,0x33a1, +0x33c4,0x33ce,0x33d1,0x33d2,0x33d5,0xfe30,0xffe2,0xffe4, +0xE7E2,0x2121,0x3231,0xE7E3,0x2010,0xE7E4,0xE7E5,0xE7E6, +0x30fc,0x309b,0x309c,0x30fd,0x30fe,0x3006,0x309d,0x309e, +0xfe49,0xfe4a,0xfe4b,0xfe4c,0xfe4d,0xfe4e,0xfe4f,0xfe50, +0xfe51,0xfe52,0xfe54,0xfe55,0xfe56,0xfe57,0xfe59,0xfe5a, +0xfe5b,0xfe5c,0xfe5d,0xfe5e,0xfe5f,0xfe60,0xfe61,0x0000, +0xfe62,0xfe63,0xfe64,0xfe65,0xfe66,0xfe68,0xfe69,0xfe6a, +0xfe6b,0xE7E7,0xE7E8,0xE7E9,0xE7EA,0xE7EB,0xE7EC,0xE7ED, +0xE7EE,0xE7EF,0xE7F0,0xE7F1,0xE7F2,0xE7F3,0x3007,0xE7F4, +0xE7F5,0xE7F6,0xE7F7,0xE7F8,0xE7F9,0xE7FA,0xE7FB,0xE7FC, +0xE7FD,0xE7FE,0xE7FF,0xE800,0x2500,0x2501,0x2502,0x2503, +0x2504,0x2505,0x2506,0x2507,0x2508,0x2509,0x250a,0x250b, +0x250c,0x250d,0x250e,0x250f,0x2510,0x2511,0x2512,0x2513, +0x2514,0x2515,0x2516,0x2517,0x2518,0x2519,0x251a,0x251b, +0x251c,0x251d,0x251e,0x251f,0x2520,0x2521,0x2522,0x2523, +0x2524,0x2525,0x2526,0x2527,0x2528,0x2529,0x252a,0x252b, +0x252c,0x252d,0x252e,0x252f,0x2530,0x2531,0x2532,0x2533, +0x2534,0x2535,0x2536,0x2537,0x2538,0x2539,0x253a,0x253b, +0x253c,0x253d,0x253e,0x253f,0x2540,0x2541,0x2542,0x2543, +0x2544,0x2545,0x2546,0x2547,0x2548,0x2549,0x254a,0x254b, +0xE801,0xE802,0xE803,0xE804,0xE805,0xE806,0xE807,0xE808, +0xE809,0xE80A,0xE80B,0xE80C,0xE80D,0xE80E,0xE80F,0x0000, +}; + +const unsigned short cp936_pua_tbl2[] = { +/* 0xD7FA */ +0xE810,0xE811,0xE812,0xE813,0xE814 +}; + +const unsigned short cp936_pua_tbl3[] = { +/* 0xFE50 */ +0xE815,0xE816,0xE817,0xE818,0xE819,0xE81A,0xE81B,0xE81C, +0xE81D,0xE81E,0xE81F,0xE820,0xE821,0xE822,0xE823,0xE824, +0xE825,0xE826,0xE827,0xE828,0xE829,0xE82A,0xE82B,0xE82C, +0xE82D,0xE82E,0xE82F,0xE830,0xE831,0xE832,0xE833,0xE834, +0xE835,0xE836,0xE837,0xE838,0xE839,0xE83A,0xE83B,0xE83C, +0xE83D,0xE83E,0xE83F,0xE840,0xE841,0xE842,0xE843,0x0000, +0xE844,0xE845,0xE846,0xE847,0xE848,0xE849,0xE84A,0xE84B, +0xE84C,0xE84D,0xE84E,0xE84F,0xE850,0xE851,0xE852,0xE853, +0xE854,0xE855,0xE856,0xE857,0xE858,0xE859,0xE85A,0xE85B, +0xE85C,0xE85D,0xE85E,0xE85F,0xE860,0xE861,0xE862,0xE863, +/* 0xFEA0 */ +0xE864 +}; /* UCS -> CP936 */ const unsigned short ucs_a1_cp936_table[] = { @@ -6426,6 +6637,10 @@ static const int mbfl_cp936_pua_tbl_max = sizeof(mbfl_cp936_pua_tbl)/(sizeof(uns #else extern const unsigned short cp936_ucs_table[]; +extern const unsigned short cp936_pua_tbl1[]; +extern const unsigned short cp936_pua_tbl2[]; +extern const unsigned short cp936_pua_tbl3[]; + extern const unsigned short ucs_a1_cp936_table[]; extern const unsigned short ucs_a2_cp936_table[]; extern const unsigned short ucs_a3_cp936_table[];