diff --git a/lib/luautf8/unidata.h b/lib/luautf8/unidata.h index 428ef2cdc..b615dff4b 100644 --- a/lib/luautf8/unidata.h +++ b/lib/luautf8/unidata.h @@ -71,8 +71,9 @@ static struct range_table alpha_table[] = { { 0x81A, 0x82C, 1 }, { 0x840, 0x858, 1 }, { 0x860, 0x86A, 1 }, - { 0x8A0, 0x8B4, 1 }, - { 0x8B6, 0x8C7, 1 }, + { 0x870, 0x887, 1 }, + { 0x889, 0x88E, 1 }, + { 0x8A0, 0x8C9, 1 }, { 0x8D4, 0x8DF, 1 }, { 0x8E3, 0x8E9, 1 }, { 0x8F0, 0x93B, 1 }, @@ -150,8 +151,7 @@ static struct range_table alpha_table[] = { { 0xBC6, 0xBC8, 1 }, { 0xBCA, 0xBCC, 1 }, { 0xBD0, 0xBD7, 7 }, - { 0xC00, 0xC03, 1 }, - { 0xC05, 0xC0C, 1 }, + { 0xC00, 0xC0C, 1 }, { 0xC0E, 0xC10, 1 }, { 0xC12, 0xC28, 1 }, { 0xC2A, 0xC39, 1 }, @@ -160,7 +160,8 @@ static struct range_table alpha_table[] = { { 0xC4A, 0xC4C, 1 }, { 0xC55, 0xC56, 1 }, { 0xC58, 0xC5A, 1 }, - { 0xC60, 0xC63, 1 }, + { 0xC5D, 0xC60, 3 }, + { 0xC61, 0xC63, 1 }, { 0xC80, 0xC83, 1 }, { 0xC85, 0xC8C, 1 }, { 0xC8E, 0xC90, 1 }, @@ -171,9 +172,9 @@ static struct range_table alpha_table[] = { { 0xCC6, 0xCC8, 1 }, { 0xCCA, 0xCCC, 1 }, { 0xCD5, 0xCD6, 1 }, - { 0xCDE, 0xCE0, 2 }, - { 0xCE1, 0xCE3, 1 }, - { 0xCF1, 0xCF2, 1 }, + { 0xCDD, 0xCDE, 1 }, + { 0xCE0, 0xCE3, 1 }, + { 0xCF1, 0xCF3, 1 }, { 0xD00, 0xD0C, 1 }, { 0xD0E, 0xD10, 1 }, { 0xD12, 0xD3A, 1 }, @@ -209,7 +210,7 @@ static struct range_table alpha_table[] = { { 0xF00, 0xF40, 64 }, { 0xF41, 0xF47, 1 }, { 0xF49, 0xF6C, 1 }, - { 0xF71, 0xF81, 1 }, + { 0xF71, 0xF83, 1 }, { 0xF88, 0xF97, 1 }, { 0xF99, 0xFBC, 1 }, { 0x1000, 0x1036, 1 }, @@ -244,9 +245,8 @@ static struct range_table alpha_table[] = { { 0x1681, 0x169A, 1 }, { 0x16A0, 0x16EA, 1 }, { 0x16EE, 0x16F8, 1 }, - { 0x1700, 0x170C, 1 }, - { 0x170E, 0x1713, 1 }, - { 0x1720, 0x1733, 1 }, + { 0x1700, 0x1713, 1 }, + { 0x171F, 0x1733, 1 }, { 0x1740, 0x1753, 1 }, { 0x1760, 0x176C, 1 }, { 0x176E, 0x1770, 1 }, @@ -268,10 +268,11 @@ static struct range_table alpha_table[] = { { 0x1A20, 0x1A5E, 1 }, { 0x1A61, 0x1A74, 1 }, { 0x1AA7, 0x1ABF, 24 }, - { 0x1AC0, 0x1B00, 64 }, - { 0x1B01, 0x1B33, 1 }, + { 0x1AC0, 0x1ACC, 12 }, + { 0x1ACD, 0x1ACE, 1 }, + { 0x1B00, 0x1B33, 1 }, { 0x1B35, 0x1B43, 1 }, - { 0x1B45, 0x1B4B, 1 }, + { 0x1B45, 0x1B4C, 1 }, { 0x1B80, 0x1BA9, 1 }, { 0x1BAC, 0x1BAF, 1 }, { 0x1BBA, 0x1BE5, 1 }, @@ -319,9 +320,7 @@ static struct range_table alpha_table[] = { { 0x214E, 0x2160, 18 }, { 0x2161, 0x2188, 1 }, { 0x24B6, 0x24E9, 1 }, - { 0x2C00, 0x2C2E, 1 }, - { 0x2C30, 0x2C5E, 1 }, - { 0x2C60, 0x2CE4, 1 }, + { 0x2C00, 0x2CE4, 1 }, { 0x2CEB, 0x2CEE, 1 }, { 0x2CF2, 0x2CF3, 1 }, { 0x2D00, 0x2D25, 1 }, @@ -352,8 +351,7 @@ static struct range_table alpha_table[] = { { 0x31A0, 0x31BF, 1 }, { 0x31F0, 0x31FF, 1 }, { 0x3400, 0x4DBF, 1 }, - { 0x4E00, 0x9FFC, 1 }, - { 0xA000, 0xA48C, 1 }, + { 0x4E00, 0xA48C, 1 }, { 0xA4D0, 0xA4FD, 1 }, { 0xA500, 0xA60C, 1 }, { 0xA610, 0xA61F, 1 }, @@ -363,9 +361,11 @@ static struct range_table alpha_table[] = { { 0xA67F, 0xA6EF, 1 }, { 0xA717, 0xA71F, 1 }, { 0xA722, 0xA788, 1 }, - { 0xA78B, 0xA7BF, 1 }, - { 0xA7C2, 0xA7CA, 1 }, - { 0xA7F5, 0xA805, 1 }, + { 0xA78B, 0xA7CA, 1 }, + { 0xA7D0, 0xA7D1, 1 }, + { 0xA7D3, 0xA7D5, 2 }, + { 0xA7D6, 0xA7D9, 1 }, + { 0xA7F2, 0xA805, 1 }, { 0xA807, 0xA827, 1 }, { 0xA840, 0xA873, 1 }, { 0xA880, 0xA8C3, 1 }, @@ -446,9 +446,20 @@ static struct range_table alpha_table[] = { { 0x104D8, 0x104FB, 1 }, { 0x10500, 0x10527, 1 }, { 0x10530, 0x10563, 1 }, + { 0x10570, 0x1057A, 1 }, + { 0x1057C, 0x1058A, 1 }, + { 0x1058C, 0x10592, 1 }, + { 0x10594, 0x10595, 1 }, + { 0x10597, 0x105A1, 1 }, + { 0x105A3, 0x105B1, 1 }, + { 0x105B3, 0x105B9, 1 }, + { 0x105BB, 0x105BC, 1 }, { 0x10600, 0x10736, 1 }, { 0x10740, 0x10755, 1 }, { 0x10760, 0x10767, 1 }, + { 0x10780, 0x10785, 1 }, + { 0x10787, 0x107B0, 1 }, + { 0x107B2, 0x107BA, 1 }, { 0x10800, 0x10805, 1 }, { 0x10808, 0x1080A, 2 }, { 0x1080B, 0x10835, 1 }, @@ -486,11 +497,14 @@ static struct range_table alpha_table[] = { { 0x10F00, 0x10F1C, 1 }, { 0x10F27, 0x10F30, 9 }, { 0x10F31, 0x10F45, 1 }, + { 0x10F70, 0x10F81, 1 }, { 0x10FB0, 0x10FC4, 1 }, { 0x10FE0, 0x10FF6, 1 }, { 0x11000, 0x11045, 1 }, - { 0x11082, 0x110B8, 1 }, - { 0x110D0, 0x110E8, 1 }, + { 0x11071, 0x11075, 1 }, + { 0x11080, 0x110B8, 1 }, + { 0x110C2, 0x110D0, 14 }, + { 0x110D1, 0x110E8, 1 }, { 0x11100, 0x11132, 1 }, { 0x11144, 0x11147, 1 }, { 0x11150, 0x11172, 1 }, @@ -502,6 +516,7 @@ static struct range_table alpha_table[] = { { 0x11200, 0x11211, 1 }, { 0x11213, 0x11234, 1 }, { 0x11237, 0x1123E, 7 }, + { 0x1123F, 0x11241, 1 }, { 0x11280, 0x11286, 1 }, { 0x11288, 0x1128A, 2 }, { 0x1128B, 0x1128D, 1 }, @@ -536,6 +551,7 @@ static struct range_table alpha_table[] = { { 0x116B8, 0x11700, 72 }, { 0x11701, 0x1171A, 1 }, { 0x1171D, 0x1172A, 1 }, + { 0x11740, 0x11746, 1 }, { 0x11800, 0x11838, 1 }, { 0x118A0, 0x118DF, 1 }, { 0x118FF, 0x11906, 1 }, @@ -554,8 +570,8 @@ static struct range_table alpha_table[] = { { 0x11A01, 0x11A32, 1 }, { 0x11A35, 0x11A3E, 1 }, { 0x11A50, 0x11A97, 1 }, - { 0x11A9D, 0x11AC0, 35 }, - { 0x11AC1, 0x11AF8, 1 }, + { 0x11A9D, 0x11AB0, 19 }, + { 0x11AB1, 0x11AF8, 1 }, { 0x11C00, 0x11C08, 1 }, { 0x11C0A, 0x11C36, 1 }, { 0x11C38, 0x11C3E, 1 }, @@ -578,14 +594,20 @@ static struct range_table alpha_table[] = { { 0x11D93, 0x11D96, 1 }, { 0x11D98, 0x11EE0, 328 }, { 0x11EE1, 0x11EF6, 1 }, + { 0x11F00, 0x11F10, 1 }, + { 0x11F12, 0x11F3A, 1 }, + { 0x11F3E, 0x11F40, 1 }, { 0x11FB0, 0x12000, 80 }, { 0x12001, 0x12399, 1 }, { 0x12400, 0x1246E, 1 }, { 0x12480, 0x12543, 1 }, - { 0x13000, 0x1342E, 1 }, + { 0x12F90, 0x12FF0, 1 }, + { 0x13000, 0x1342F, 1 }, + { 0x13441, 0x13446, 1 }, { 0x14400, 0x14646, 1 }, { 0x16800, 0x16A38, 1 }, { 0x16A40, 0x16A5E, 1 }, + { 0x16A70, 0x16ABE, 1 }, { 0x16AD0, 0x16AED, 1 }, { 0x16B00, 0x16B2F, 1 }, { 0x16B40, 0x16B43, 1 }, @@ -601,9 +623,14 @@ static struct range_table alpha_table[] = { { 0x17001, 0x187F7, 1 }, { 0x18800, 0x18CD5, 1 }, { 0x18D00, 0x18D08, 1 }, - { 0x1B000, 0x1B11E, 1 }, - { 0x1B150, 0x1B152, 1 }, - { 0x1B164, 0x1B167, 1 }, + { 0x1AFF0, 0x1AFF3, 1 }, + { 0x1AFF5, 0x1AFFB, 1 }, + { 0x1AFFD, 0x1AFFE, 1 }, + { 0x1B000, 0x1B122, 1 }, + { 0x1B132, 0x1B150, 30 }, + { 0x1B151, 0x1B152, 1 }, + { 0x1B155, 0x1B164, 15 }, + { 0x1B165, 0x1B167, 1 }, { 0x1B170, 0x1B2FB, 1 }, { 0x1BC00, 0x1BC6A, 1 }, { 0x1BC70, 0x1BC7C, 1 }, @@ -640,15 +667,25 @@ static struct range_table alpha_table[] = { { 0x1D78A, 0x1D7A8, 1 }, { 0x1D7AA, 0x1D7C2, 1 }, { 0x1D7C4, 0x1D7CB, 1 }, + { 0x1DF00, 0x1DF1E, 1 }, + { 0x1DF25, 0x1DF2A, 1 }, { 0x1E000, 0x1E006, 1 }, { 0x1E008, 0x1E018, 1 }, { 0x1E01B, 0x1E021, 1 }, { 0x1E023, 0x1E024, 1 }, { 0x1E026, 0x1E02A, 1 }, - { 0x1E100, 0x1E12C, 1 }, + { 0x1E030, 0x1E06D, 1 }, + { 0x1E08F, 0x1E100, 113 }, + { 0x1E101, 0x1E12C, 1 }, { 0x1E137, 0x1E13D, 1 }, - { 0x1E14E, 0x1E2C0, 370 }, - { 0x1E2C1, 0x1E2EB, 1 }, + { 0x1E14E, 0x1E290, 322 }, + { 0x1E291, 0x1E2AD, 1 }, + { 0x1E2C0, 0x1E2EB, 1 }, + { 0x1E4D0, 0x1E4EB, 1 }, + { 0x1E7E0, 0x1E7E6, 1 }, + { 0x1E7E8, 0x1E7EB, 1 }, + { 0x1E7ED, 0x1E7EE, 1 }, + { 0x1E7F0, 0x1E7FE, 1 }, { 0x1E800, 0x1E8C4, 1 }, { 0x1E900, 0x1E943, 1 }, { 0x1E947, 0x1E94B, 4 }, @@ -679,13 +716,14 @@ static struct range_table alpha_table[] = { { 0x1F130, 0x1F149, 1 }, { 0x1F150, 0x1F169, 1 }, { 0x1F170, 0x1F189, 1 }, - { 0x20000, 0x2A6DD, 1 }, - { 0x2A700, 0x2B734, 1 }, + { 0x20000, 0x2A6DF, 1 }, + { 0x2A700, 0x2B739, 1 }, { 0x2B740, 0x2B81D, 1 }, { 0x2B820, 0x2CEA1, 1 }, { 0x2CEB0, 0x2EBE0, 1 }, { 0x2F800, 0x2FA1D, 1 }, { 0x30000, 0x3134A, 1 }, + { 0x31350, 0x323AF, 1 }, }; static struct range_table lower_table[] = { @@ -744,7 +782,7 @@ static struct range_table lower_table[] = { { 0x4CF, 0x52F, 2 }, { 0x560, 0x588, 1 }, { 0x10D0, 0x10FA, 1 }, - { 0x10FD, 0x10FF, 1 }, + { 0x10FC, 0x10FF, 1 }, { 0x13F8, 0x13FD, 1 }, { 0x1C80, 0x1C88, 1 }, { 0x1D00, 0x1DBF, 1 }, @@ -783,7 +821,7 @@ static struct range_table lower_table[] = { { 0x2171, 0x217F, 1 }, { 0x2184, 0x24D0, 844 }, { 0x24D1, 0x24E9, 1 }, - { 0x2C30, 0x2C5E, 1 }, + { 0x2C30, 0x2C5F, 1 }, { 0x2C61, 0x2C65, 4 }, { 0x2C66, 0x2C6C, 2 }, { 0x2C71, 0x2C73, 2 }, @@ -808,18 +846,28 @@ static struct range_table lower_table[] = { { 0xA794, 0xA795, 1 }, { 0xA797, 0xA7A9, 2 }, { 0xA7AF, 0xA7B5, 6 }, - { 0xA7B7, 0xA7BF, 2 }, - { 0xA7C3, 0xA7C8, 5 }, - { 0xA7CA, 0xA7F6, 44 }, - { 0xA7F8, 0xA7FA, 1 }, + { 0xA7B7, 0xA7C3, 2 }, + { 0xA7C8, 0xA7CA, 2 }, + { 0xA7D1, 0xA7D9, 2 }, + { 0xA7F2, 0xA7F4, 1 }, + { 0xA7F6, 0xA7F8, 2 }, + { 0xA7F9, 0xA7FA, 1 }, { 0xAB30, 0xAB5A, 1 }, - { 0xAB5C, 0xAB68, 1 }, + { 0xAB5C, 0xAB69, 1 }, { 0xAB70, 0xABBF, 1 }, { 0xFB00, 0xFB06, 1 }, { 0xFB13, 0xFB17, 1 }, { 0xFF41, 0xFF5A, 1 }, { 0x10428, 0x1044F, 1 }, { 0x104D8, 0x104FB, 1 }, + { 0x10597, 0x105A1, 1 }, + { 0x105A3, 0x105B1, 1 }, + { 0x105B3, 0x105B9, 1 }, + { 0x105BB, 0x105BC, 1 }, + { 0x10780, 0x10783, 3 }, + { 0x10784, 0x10785, 1 }, + { 0x10787, 0x107B0, 1 }, + { 0x107B2, 0x107BA, 1 }, { 0x10CC0, 0x10CF2, 1 }, { 0x118C0, 0x118DF, 1 }, { 0x16E60, 0x16E7F, 1 }, @@ -850,8 +898,12 @@ static struct range_table lower_table[] = { { 0x1D78A, 0x1D78F, 1 }, { 0x1D7AA, 0x1D7C2, 1 }, { 0x1D7C4, 0x1D7C9, 1 }, - { 0x1D7CB, 0x1E922, 4439 }, - { 0x1E923, 0x1E943, 1 }, + { 0x1D7CB, 0x1DF00, 1845 }, + { 0x1DF01, 0x1DF09, 1 }, + { 0x1DF0B, 0x1DF1E, 1 }, + { 0x1DF25, 0x1DF2A, 1 }, + { 0x1E030, 0x1E06D, 1 }, + { 0x1E922, 0x1E943, 1 }, }; static struct range_table upper_table[] = { @@ -940,7 +992,7 @@ static struct range_table upper_table[] = { { 0x2161, 0x216F, 1 }, { 0x2183, 0x24B6, 819 }, { 0x24B7, 0x24CF, 1 }, - { 0x2C00, 0x2C2E, 1 }, + { 0x2C00, 0x2C2F, 1 }, { 0x2C60, 0x2C62, 2 }, { 0x2C63, 0x2C64, 1 }, { 0x2C67, 0x2C6D, 2 }, @@ -961,13 +1013,18 @@ static struct range_table upper_table[] = { { 0xA796, 0xA7AA, 2 }, { 0xA7AB, 0xA7AE, 1 }, { 0xA7B0, 0xA7B4, 1 }, - { 0xA7B6, 0xA7BE, 2 }, - { 0xA7C2, 0xA7C4, 2 }, + { 0xA7B6, 0xA7C4, 2 }, { 0xA7C5, 0xA7C7, 1 }, - { 0xA7C9, 0xA7F5, 44 }, - { 0xFF21, 0xFF3A, 1 }, + { 0xA7C9, 0xA7D0, 7 }, + { 0xA7D6, 0xA7D8, 2 }, + { 0xA7F5, 0xFF21, 22316 }, + { 0xFF22, 0xFF3A, 1 }, { 0x10400, 0x10427, 1 }, { 0x104B0, 0x104D3, 1 }, + { 0x10570, 0x1057A, 1 }, + { 0x1057C, 0x1058A, 1 }, + { 0x1058C, 0x10592, 1 }, + { 0x10594, 0x10595, 1 }, { 0x10C80, 0x10CB2, 1 }, { 0x118A0, 0x118BF, 1 }, { 0x16E40, 0x16E5F, 1 }, @@ -1031,7 +1088,7 @@ static struct range_table unprintable_table[] = { { 0x61C, 0x115F, 2883 }, { 0x1160, 0x17B4, 1620 }, { 0x17B5, 0x180B, 86 }, - { 0x180C, 0x180E, 1 }, + { 0x180C, 0x180F, 1 }, { 0x200B, 0x200F, 1 }, { 0x202A, 0x202E, 1 }, { 0x2060, 0x206F, 1 }, @@ -1063,8 +1120,8 @@ static struct range_table graph_table[] = { { 0x5D0, 0x5EA, 1 }, { 0x5EF, 0x5F4, 1 }, { 0x606, 0x60F, 1 }, - { 0x61B, 0x61E, 3 }, - { 0x61F, 0x64A, 1 }, + { 0x61B, 0x61D, 2 }, + { 0x61E, 0x64A, 1 }, { 0x660, 0x66F, 1 }, { 0x671, 0x6D5, 1 }, { 0x6DE, 0x6E5, 7 }, @@ -1083,8 +1140,8 @@ static struct range_table graph_table[] = { { 0x840, 0x858, 1 }, { 0x85E, 0x860, 2 }, { 0x861, 0x86A, 1 }, - { 0x8A0, 0x8B4, 1 }, - { 0x8B6, 0x8C7, 1 }, + { 0x870, 0x88E, 1 }, + { 0x8A0, 0x8C9, 1 }, { 0x903, 0x939, 1 }, { 0x93B, 0x93D, 2 }, { 0x93E, 0x940, 1 }, @@ -1169,8 +1226,9 @@ static struct range_table graph_table[] = { { 0xC3D, 0xC41, 4 }, { 0xC42, 0xC44, 1 }, { 0xC58, 0xC5A, 1 }, - { 0xC60, 0xC61, 1 }, - { 0xC66, 0xC6F, 1 }, + { 0xC5D, 0xC60, 3 }, + { 0xC61, 0xC66, 5 }, + { 0xC67, 0xC6F, 1 }, { 0xC77, 0xC80, 1 }, { 0xC82, 0xC8C, 1 }, { 0xC8E, 0xC90, 1 }, @@ -1182,10 +1240,10 @@ static struct range_table graph_table[] = { { 0xCC3, 0xCC4, 1 }, { 0xCC7, 0xCC8, 1 }, { 0xCCA, 0xCCB, 1 }, - { 0xCDE, 0xCE0, 2 }, - { 0xCE1, 0xCE6, 5 }, - { 0xCE7, 0xCEF, 1 }, - { 0xCF1, 0xCF2, 1 }, + { 0xCDD, 0xCDE, 1 }, + { 0xCE0, 0xCE1, 1 }, + { 0xCE6, 0xCEF, 1 }, + { 0xCF1, 0xCF3, 1 }, { 0xD02, 0xD0C, 1 }, { 0xD0E, 0xD10, 1 }, { 0xD12, 0xD3A, 1 }, @@ -1267,10 +1325,10 @@ static struct range_table graph_table[] = { { 0x13F8, 0x13FD, 1 }, { 0x1400, 0x169C, 1 }, { 0x16A0, 0x16F8, 1 }, - { 0x1700, 0x170C, 1 }, - { 0x170E, 0x1711, 1 }, + { 0x1700, 0x1711, 1 }, + { 0x1715, 0x171F, 10 }, { 0x1720, 0x1731, 1 }, - { 0x1735, 0x1736, 1 }, + { 0x1734, 0x1736, 1 }, { 0x1740, 0x1751, 1 }, { 0x1760, 0x176C, 1 }, { 0x176E, 0x1770, 1 }, @@ -1311,9 +1369,9 @@ static struct range_table graph_table[] = { { 0x1B04, 0x1B33, 1 }, { 0x1B3B, 0x1B3D, 2 }, { 0x1B3E, 0x1B41, 1 }, - { 0x1B43, 0x1B4B, 1 }, + { 0x1B43, 0x1B4C, 1 }, { 0x1B50, 0x1B6A, 1 }, - { 0x1B74, 0x1B7C, 1 }, + { 0x1B74, 0x1B7E, 1 }, { 0x1B82, 0x1BA1, 1 }, { 0x1BA6, 0x1BA7, 1 }, { 0x1BAA, 0x1BAE, 4 }, @@ -1354,15 +1412,13 @@ static struct range_table graph_table[] = { { 0x2070, 0x2071, 1 }, { 0x2074, 0x208E, 1 }, { 0x2090, 0x209C, 1 }, - { 0x20A0, 0x20BF, 1 }, + { 0x20A0, 0x20C0, 1 }, { 0x2100, 0x218B, 1 }, { 0x2190, 0x2426, 1 }, { 0x2440, 0x244A, 1 }, { 0x2460, 0x2B73, 1 }, { 0x2B76, 0x2B95, 1 }, - { 0x2B97, 0x2C2E, 1 }, - { 0x2C30, 0x2C5E, 1 }, - { 0x2C60, 0x2CEE, 1 }, + { 0x2B97, 0x2CEE, 1 }, { 0x2CF2, 0x2CF3, 1 }, { 0x2CF9, 0x2D25, 1 }, { 0x2D27, 0x2D2D, 6 }, @@ -1377,7 +1433,7 @@ static struct range_table graph_table[] = { { 0x2DC8, 0x2DCE, 1 }, { 0x2DD0, 0x2DD6, 1 }, { 0x2DD8, 0x2DDE, 1 }, - { 0x2E00, 0x2E52, 1 }, + { 0x2E00, 0x2E5D, 1 }, { 0x2E80, 0x2E99, 1 }, { 0x2E9B, 0x2EF3, 1 }, { 0x2F00, 0x2FD5, 1 }, @@ -1390,8 +1446,7 @@ static struct range_table graph_table[] = { { 0x3131, 0x318E, 1 }, { 0x3190, 0x31E3, 1 }, { 0x31F0, 0x321E, 1 }, - { 0x3220, 0x9FFC, 1 }, - { 0xA000, 0xA48C, 1 }, + { 0x3220, 0xA48C, 1 }, { 0xA490, 0xA4C6, 1 }, { 0xA4D0, 0xA62B, 1 }, { 0xA640, 0xA66E, 1 }, @@ -1399,9 +1454,11 @@ static struct range_table graph_table[] = { { 0xA67F, 0xA69D, 1 }, { 0xA6A0, 0xA6EF, 1 }, { 0xA6F2, 0xA6F7, 1 }, - { 0xA700, 0xA7BF, 1 }, - { 0xA7C2, 0xA7CA, 1 }, - { 0xA7F5, 0xA801, 1 }, + { 0xA700, 0xA7CA, 1 }, + { 0xA7D0, 0xA7D1, 1 }, + { 0xA7D3, 0xA7D5, 2 }, + { 0xA7D6, 0xA7D9, 1 }, + { 0xA7F2, 0xA801, 1 }, { 0xA803, 0xA805, 1 }, { 0xA807, 0xA80A, 1 }, { 0xA80C, 0xA824, 1 }, @@ -1460,11 +1517,11 @@ static struct range_table graph_table[] = { { 0xFB3E, 0xFB40, 2 }, { 0xFB41, 0xFB43, 2 }, { 0xFB44, 0xFB46, 2 }, - { 0xFB47, 0xFBC1, 1 }, - { 0xFBD3, 0xFD3F, 1 }, - { 0xFD50, 0xFD8F, 1 }, + { 0xFB47, 0xFBC2, 1 }, + { 0xFBD3, 0xFD8F, 1 }, { 0xFD92, 0xFDC7, 1 }, - { 0xFDF0, 0xFDFD, 1 }, + { 0xFDCF, 0xFDF0, 33 }, + { 0xFDF1, 0xFDFF, 1 }, { 0xFE10, 0xFE19, 1 }, { 0xFE30, 0xFE52, 1 }, { 0xFE54, 0xFE66, 1 }, @@ -1508,10 +1565,20 @@ static struct range_table graph_table[] = { { 0x104D8, 0x104FB, 1 }, { 0x10500, 0x10527, 1 }, { 0x10530, 0x10563, 1 }, - { 0x1056F, 0x10600, 145 }, - { 0x10601, 0x10736, 1 }, + { 0x1056F, 0x1057A, 1 }, + { 0x1057C, 0x1058A, 1 }, + { 0x1058C, 0x10592, 1 }, + { 0x10594, 0x10595, 1 }, + { 0x10597, 0x105A1, 1 }, + { 0x105A3, 0x105B1, 1 }, + { 0x105B3, 0x105B9, 1 }, + { 0x105BB, 0x105BC, 1 }, + { 0x10600, 0x10736, 1 }, { 0x10740, 0x10755, 1 }, { 0x10760, 0x10767, 1 }, + { 0x10780, 0x10785, 1 }, + { 0x10787, 0x107B0, 1 }, + { 0x107B2, 0x107BA, 1 }, { 0x10800, 0x10805, 1 }, { 0x10808, 0x1080A, 2 }, { 0x1080B, 0x10835, 1 }, @@ -1554,13 +1621,17 @@ static struct range_table graph_table[] = { { 0x10F01, 0x10F27, 1 }, { 0x10F30, 0x10F45, 1 }, { 0x10F51, 0x10F59, 1 }, + { 0x10F70, 0x10F81, 1 }, + { 0x10F86, 0x10F89, 1 }, { 0x10FB0, 0x10FCB, 1 }, { 0x10FE0, 0x10FF6, 1 }, { 0x11000, 0x11002, 2 }, { 0x11003, 0x11037, 1 }, { 0x11047, 0x1104D, 1 }, { 0x11052, 0x1106F, 1 }, - { 0x11082, 0x110B2, 1 }, + { 0x11071, 0x11072, 1 }, + { 0x11075, 0x11082, 13 }, + { 0x11083, 0x110B2, 1 }, { 0x110B7, 0x110B8, 1 }, { 0x110BB, 0x110BC, 1 }, { 0x110BE, 0x110C1, 1 }, @@ -1581,6 +1652,7 @@ static struct range_table graph_table[] = { { 0x11232, 0x11233, 1 }, { 0x11235, 0x11238, 3 }, { 0x11239, 0x1123D, 1 }, + { 0x1123F, 0x11240, 1 }, { 0x11280, 0x11286, 1 }, { 0x11288, 0x1128A, 2 }, { 0x1128B, 0x1128D, 1 }, @@ -1629,12 +1701,12 @@ static struct range_table graph_table[] = { { 0x11680, 0x116AA, 1 }, { 0x116AC, 0x116AE, 2 }, { 0x116AF, 0x116B6, 7 }, - { 0x116B8, 0x116C0, 8 }, - { 0x116C1, 0x116C9, 1 }, + { 0x116B8, 0x116B9, 1 }, + { 0x116C0, 0x116C9, 1 }, { 0x11700, 0x1171A, 1 }, { 0x11720, 0x11721, 1 }, { 0x11726, 0x11730, 10 }, - { 0x11731, 0x1173F, 1 }, + { 0x11731, 0x11746, 1 }, { 0x11800, 0x1182E, 1 }, { 0x11838, 0x1183B, 3 }, { 0x118A0, 0x118F2, 1 }, @@ -1662,7 +1734,8 @@ static struct range_table graph_table[] = { { 0x11A5D, 0x11A89, 1 }, { 0x11A97, 0x11A9A, 3 }, { 0x11A9B, 0x11AA2, 1 }, - { 0x11AC0, 0x11AF8, 1 }, + { 0x11AB0, 0x11AF8, 1 }, + { 0x11B00, 0x11B09, 1 }, { 0x11C00, 0x11C08, 1 }, { 0x11C0A, 0x11C2F, 1 }, { 0x11C3E, 0x11C40, 2 }, @@ -1684,18 +1757,26 @@ static struct range_table graph_table[] = { { 0x11DA0, 0x11DA9, 1 }, { 0x11EE0, 0x11EF2, 1 }, { 0x11EF5, 0x11EF8, 1 }, + { 0x11F02, 0x11F10, 1 }, + { 0x11F12, 0x11F35, 1 }, + { 0x11F3E, 0x11F3F, 1 }, + { 0x11F41, 0x11F43, 2 }, + { 0x11F44, 0x11F59, 1 }, { 0x11FB0, 0x11FC0, 16 }, { 0x11FC1, 0x11FF1, 1 }, { 0x11FFF, 0x12399, 1 }, { 0x12400, 0x1246E, 1 }, { 0x12470, 0x12474, 1 }, { 0x12480, 0x12543, 1 }, - { 0x13000, 0x1342E, 1 }, + { 0x12F90, 0x12FF2, 1 }, + { 0x13000, 0x1342F, 1 }, + { 0x13441, 0x13446, 1 }, { 0x14400, 0x14646, 1 }, { 0x16800, 0x16A38, 1 }, { 0x16A40, 0x16A5E, 1 }, { 0x16A60, 0x16A69, 1 }, - { 0x16A6E, 0x16A6F, 1 }, + { 0x16A6E, 0x16ABE, 1 }, + { 0x16AC0, 0x16AC9, 1 }, { 0x16AD0, 0x16AED, 1 }, { 0x16AF5, 0x16B00, 11 }, { 0x16B01, 0x16B2F, 1 }, @@ -1713,15 +1794,21 @@ static struct range_table graph_table[] = { { 0x17000, 0x187F7, 1 }, { 0x18800, 0x18CD5, 1 }, { 0x18D00, 0x18D08, 1 }, - { 0x1B000, 0x1B11E, 1 }, - { 0x1B150, 0x1B152, 1 }, - { 0x1B164, 0x1B167, 1 }, + { 0x1AFF0, 0x1AFF3, 1 }, + { 0x1AFF5, 0x1AFFB, 1 }, + { 0x1AFFD, 0x1AFFE, 1 }, + { 0x1B000, 0x1B122, 1 }, + { 0x1B132, 0x1B150, 30 }, + { 0x1B151, 0x1B152, 1 }, + { 0x1B155, 0x1B164, 15 }, + { 0x1B165, 0x1B167, 1 }, { 0x1B170, 0x1B2FB, 1 }, { 0x1BC00, 0x1BC6A, 1 }, { 0x1BC70, 0x1BC7C, 1 }, { 0x1BC80, 0x1BC88, 1 }, { 0x1BC90, 0x1BC99, 1 }, { 0x1BC9C, 0x1BC9F, 3 }, + { 0x1CF50, 0x1CFC3, 1 }, { 0x1D000, 0x1D0F5, 1 }, { 0x1D100, 0x1D126, 1 }, { 0x1D129, 0x1D164, 1 }, @@ -1729,10 +1816,11 @@ static struct range_table graph_table[] = { { 0x1D16B, 0x1D16D, 1 }, { 0x1D183, 0x1D184, 1 }, { 0x1D18C, 0x1D1A9, 1 }, - { 0x1D1AE, 0x1D1E8, 1 }, + { 0x1D1AE, 0x1D1EA, 1 }, { 0x1D200, 0x1D241, 1 }, - { 0x1D245, 0x1D2E0, 155 }, - { 0x1D2E1, 0x1D2F3, 1 }, + { 0x1D245, 0x1D2C0, 123 }, + { 0x1D2C1, 0x1D2D3, 1 }, + { 0x1D2E0, 0x1D2F3, 1 }, { 0x1D300, 0x1D356, 1 }, { 0x1D360, 0x1D378, 1 }, { 0x1D400, 0x1D454, 1 }, @@ -1760,14 +1848,24 @@ static struct range_table graph_table[] = { { 0x1DA6D, 0x1DA74, 1 }, { 0x1DA76, 0x1DA83, 1 }, { 0x1DA85, 0x1DA8B, 1 }, + { 0x1DF00, 0x1DF1E, 1 }, + { 0x1DF25, 0x1DF2A, 1 }, + { 0x1E030, 0x1E06D, 1 }, { 0x1E100, 0x1E12C, 1 }, { 0x1E137, 0x1E13D, 1 }, { 0x1E140, 0x1E149, 1 }, { 0x1E14E, 0x1E14F, 1 }, + { 0x1E290, 0x1E2AD, 1 }, { 0x1E2C0, 0x1E2EB, 1 }, { 0x1E2F0, 0x1E2F9, 1 }, - { 0x1E2FF, 0x1E800, 1281 }, - { 0x1E801, 0x1E8C4, 1 }, + { 0x1E2FF, 0x1E4D0, 465 }, + { 0x1E4D1, 0x1E4EB, 1 }, + { 0x1E4F0, 0x1E4F9, 1 }, + { 0x1E7E0, 0x1E7E6, 1 }, + { 0x1E7E8, 0x1E7EB, 1 }, + { 0x1E7ED, 0x1E7EE, 1 }, + { 0x1E7F0, 0x1E7FE, 1 }, + { 0x1E800, 0x1E8C4, 1 }, { 0x1E8C7, 0x1E8CF, 1 }, { 0x1E900, 0x1E943, 1 }, { 0x1E94B, 0x1E950, 5 }, @@ -1813,38 +1911,38 @@ static struct range_table graph_table[] = { { 0x1F250, 0x1F251, 1 }, { 0x1F260, 0x1F265, 1 }, { 0x1F300, 0x1F6D7, 1 }, - { 0x1F6E0, 0x1F6EC, 1 }, + { 0x1F6DC, 0x1F6EC, 1 }, { 0x1F6F0, 0x1F6FC, 1 }, - { 0x1F700, 0x1F773, 1 }, - { 0x1F780, 0x1F7D8, 1 }, + { 0x1F700, 0x1F776, 1 }, + { 0x1F77B, 0x1F7D9, 1 }, { 0x1F7E0, 0x1F7EB, 1 }, - { 0x1F800, 0x1F80B, 1 }, + { 0x1F7F0, 0x1F800, 16 }, + { 0x1F801, 0x1F80B, 1 }, { 0x1F810, 0x1F847, 1 }, { 0x1F850, 0x1F859, 1 }, { 0x1F860, 0x1F887, 1 }, { 0x1F890, 0x1F8AD, 1 }, { 0x1F8B0, 0x1F8B1, 1 }, - { 0x1F900, 0x1F978, 1 }, - { 0x1F97A, 0x1F9CB, 1 }, - { 0x1F9CD, 0x1FA53, 1 }, + { 0x1F900, 0x1FA53, 1 }, { 0x1FA60, 0x1FA6D, 1 }, - { 0x1FA70, 0x1FA74, 1 }, - { 0x1FA78, 0x1FA7A, 1 }, - { 0x1FA80, 0x1FA86, 1 }, - { 0x1FA90, 0x1FAA8, 1 }, - { 0x1FAB0, 0x1FAB6, 1 }, - { 0x1FAC0, 0x1FAC2, 1 }, - { 0x1FAD0, 0x1FAD6, 1 }, + { 0x1FA70, 0x1FA7C, 1 }, + { 0x1FA80, 0x1FA88, 1 }, + { 0x1FA90, 0x1FABD, 1 }, + { 0x1FABF, 0x1FAC5, 1 }, + { 0x1FACE, 0x1FADB, 1 }, + { 0x1FAE0, 0x1FAE8, 1 }, + { 0x1FAF0, 0x1FAF8, 1 }, { 0x1FB00, 0x1FB92, 1 }, { 0x1FB94, 0x1FBCA, 1 }, { 0x1FBF0, 0x1FBF9, 1 }, - { 0x20000, 0x2A6DD, 1 }, - { 0x2A700, 0x2B734, 1 }, + { 0x20000, 0x2A6DF, 1 }, + { 0x2A700, 0x2B739, 1 }, { 0x2B740, 0x2B81D, 1 }, { 0x2B820, 0x2CEA1, 1 }, { 0x2CEB0, 0x2EBE0, 1 }, { 0x2F800, 0x2FA1D, 1 }, { 0x30000, 0x3134A, 1 }, + { 0x31350, 0x323AF, 1 }, }; static struct range_table compose_table[] = { @@ -1871,7 +1969,8 @@ static struct range_table compose_table[] = { { 0x825, 0x827, 1 }, { 0x829, 0x82D, 1 }, { 0x859, 0x85B, 1 }, - { 0x8D3, 0x8E1, 1 }, + { 0x898, 0x89F, 1 }, + { 0x8CA, 0x8E1, 1 }, { 0x8E3, 0x902, 1 }, { 0x93A, 0x93C, 2 }, { 0x941, 0x948, 1 }, @@ -1906,8 +2005,8 @@ static struct range_table compose_table[] = { { 0xB82, 0xBBE, 60 }, { 0xBC0, 0xBCD, 13 }, { 0xBD7, 0xC00, 41 }, - { 0xC04, 0xC3E, 58 }, - { 0xC3F, 0xC40, 1 }, + { 0xC04, 0xC3C, 56 }, + { 0xC3E, 0xC40, 1 }, { 0xC46, 0xC48, 1 }, { 0xC4A, 0xC4D, 1 }, { 0xC55, 0xC56, 1 }, @@ -1932,7 +2031,7 @@ static struct range_table compose_table[] = { { 0xE47, 0xE4E, 1 }, { 0xEB1, 0xEB4, 3 }, { 0xEB5, 0xEBC, 1 }, - { 0xEC8, 0xECD, 1 }, + { 0xEC8, 0xECE, 1 }, { 0xF18, 0xF19, 1 }, { 0xF35, 0xF39, 2 }, { 0xF71, 0xF7E, 1 }, @@ -1953,7 +2052,7 @@ static struct range_table compose_table[] = { { 0x109D, 0x135D, 704 }, { 0x135E, 0x135F, 1 }, { 0x1712, 0x1714, 1 }, - { 0x1732, 0x1734, 1 }, + { 0x1732, 0x1733, 1 }, { 0x1752, 0x1753, 1 }, { 0x1772, 0x1773, 1 }, { 0x17B4, 0x17B5, 1 }, @@ -1962,9 +2061,9 @@ static struct range_table compose_table[] = { { 0x17CA, 0x17D3, 1 }, { 0x17DD, 0x180B, 46 }, { 0x180C, 0x180D, 1 }, - { 0x1885, 0x1886, 1 }, - { 0x18A9, 0x1920, 119 }, - { 0x1921, 0x1922, 1 }, + { 0x180F, 0x1885, 118 }, + { 0x1886, 0x18A9, 35 }, + { 0x1920, 0x1922, 1 }, { 0x1927, 0x1928, 1 }, { 0x1932, 0x1939, 7 }, { 0x193A, 0x193B, 1 }, @@ -1975,7 +2074,7 @@ static struct range_table compose_table[] = { { 0x1A65, 0x1A6C, 1 }, { 0x1A73, 0x1A7C, 1 }, { 0x1A7F, 0x1AB0, 49 }, - { 0x1AB1, 0x1AC0, 1 }, + { 0x1AB1, 0x1ACE, 1 }, { 0x1B00, 0x1B03, 1 }, { 0x1B34, 0x1B3A, 1 }, { 0x1B3C, 0x1B42, 6 }, @@ -1994,8 +2093,7 @@ static struct range_table compose_table[] = { { 0x1CE2, 0x1CE8, 1 }, { 0x1CED, 0x1CF4, 7 }, { 0x1CF8, 0x1CF9, 1 }, - { 0x1DC0, 0x1DF9, 1 }, - { 0x1DFB, 0x1DFF, 1 }, + { 0x1DC0, 0x1DFF, 1 }, { 0x200C, 0x20D0, 196 }, { 0x20D1, 0x20F0, 1 }, { 0x2CEF, 0x2CF1, 1 }, @@ -2045,13 +2143,18 @@ static struct range_table compose_table[] = { { 0x10AE6, 0x10D24, 574 }, { 0x10D25, 0x10D27, 1 }, { 0x10EAB, 0x10EAC, 1 }, + { 0x10EFD, 0x10EFF, 1 }, { 0x10F46, 0x10F50, 1 }, + { 0x10F82, 0x10F85, 1 }, { 0x11001, 0x11038, 55 }, { 0x11039, 0x11046, 1 }, - { 0x1107F, 0x11081, 1 }, + { 0x11070, 0x11073, 3 }, + { 0x11074, 0x1107F, 11 }, + { 0x11080, 0x11081, 1 }, { 0x110B3, 0x110B6, 1 }, { 0x110B9, 0x110BA, 1 }, - { 0x11100, 0x11102, 1 }, + { 0x110C2, 0x11100, 62 }, + { 0x11101, 0x11102, 1 }, { 0x11127, 0x1112B, 1 }, { 0x1112D, 0x11134, 1 }, { 0x11173, 0x11180, 13 }, @@ -2062,8 +2165,8 @@ static struct range_table compose_table[] = { { 0x11230, 0x11231, 1 }, { 0x11234, 0x11236, 2 }, { 0x11237, 0x1123E, 7 }, - { 0x112DF, 0x112E3, 4 }, - { 0x112E4, 0x112EA, 1 }, + { 0x11241, 0x112DF, 158 }, + { 0x112E3, 0x112EA, 1 }, { 0x11300, 0x11301, 1 }, { 0x1133B, 0x1133C, 1 }, { 0x1133E, 0x11340, 2 }, @@ -2122,14 +2225,22 @@ static struct range_table compose_table[] = { { 0x11D47, 0x11D90, 73 }, { 0x11D91, 0x11D95, 4 }, { 0x11D97, 0x11EF3, 348 }, - { 0x11EF4, 0x16AF0, 19452 }, - { 0x16AF1, 0x16AF4, 1 }, + { 0x11EF4, 0x11F00, 12 }, + { 0x11F01, 0x11F36, 53 }, + { 0x11F37, 0x11F3A, 1 }, + { 0x11F40, 0x11F42, 2 }, + { 0x13440, 0x13447, 7 }, + { 0x13448, 0x13455, 1 }, + { 0x16AF0, 0x16AF4, 1 }, { 0x16B30, 0x16B36, 1 }, { 0x16F4F, 0x16F8F, 64 }, { 0x16F90, 0x16F92, 1 }, { 0x16FE4, 0x1BC9D, 19641 }, - { 0x1BC9E, 0x1D165, 5319 }, - { 0x1D167, 0x1D169, 1 }, + { 0x1BC9E, 0x1CF00, 4706 }, + { 0x1CF01, 0x1CF2D, 1 }, + { 0x1CF30, 0x1CF46, 1 }, + { 0x1D165, 0x1D167, 2 }, + { 0x1D168, 0x1D169, 1 }, { 0x1D16E, 0x1D172, 1 }, { 0x1D17B, 0x1D182, 1 }, { 0x1D185, 0x1D18B, 1 }, @@ -2145,8 +2256,11 @@ static struct range_table compose_table[] = { { 0x1E01B, 0x1E021, 1 }, { 0x1E023, 0x1E024, 1 }, { 0x1E026, 0x1E02A, 1 }, - { 0x1E130, 0x1E136, 1 }, - { 0x1E2EC, 0x1E2EF, 1 }, + { 0x1E08F, 0x1E130, 161 }, + { 0x1E131, 0x1E136, 1 }, + { 0x1E2AE, 0x1E2EC, 62 }, + { 0x1E2ED, 0x1E2EF, 1 }, + { 0x1E4EC, 0x1E4EF, 1 }, { 0x1E8D0, 0x1E8D6, 1 }, { 0x1E944, 0x1E94A, 1 }, { 0xE0020, 0xE007F, 1 }, @@ -2159,7 +2273,8 @@ static struct range_table cntrl_table[] = { { 0xAD, 0x600, 1363 }, { 0x601, 0x605, 1 }, { 0x61C, 0x6DD, 193 }, - { 0x70F, 0x8E2, 467 }, + { 0x70F, 0x890, 385 }, + { 0x891, 0x8E2, 81 }, { 0x180E, 0x200B, 2045 }, { 0x200C, 0x200F, 1 }, { 0x202A, 0x202E, 1 }, @@ -2170,7 +2285,7 @@ static struct range_table cntrl_table[] = { { 0xFEFF, 0xFFF9, 250 }, { 0xFFFA, 0xFFFB, 1 }, { 0x110BD, 0x110CD, 16 }, - { 0x13430, 0x13438, 1 }, + { 0x13430, 0x1343F, 1 }, { 0x1BCA0, 0x1BCA3, 1 }, { 0x1D173, 0x1D17A, 1 }, { 0xE0001, 0xE0020, 31 }, @@ -2236,11 +2351,14 @@ static struct range_table digit_table[] = { { 0x11C50, 0x11C59, 1 }, { 0x11D50, 0x11D59, 1 }, { 0x11DA0, 0x11DA9, 1 }, + { 0x11F50, 0x11F59, 1 }, { 0x16A60, 0x16A69, 1 }, + { 0x16AC0, 0x16AC9, 1 }, { 0x16B50, 0x16B59, 1 }, { 0x1D7CE, 0x1D7FF, 1 }, { 0x1E140, 0x1E149, 1 }, { 0x1E2F0, 0x1E2F9, 1 }, + { 0x1E4F0, 0x1E4F9, 1 }, { 0x1E950, 0x1E959, 1 }, { 0x1FBF0, 0x1FBF9, 1 }, }; @@ -2357,17 +2475,21 @@ static struct range_table alnum_extend_table[] = { { 0x11C50, 0x11C6C, 1 }, { 0x11D50, 0x11D59, 1 }, { 0x11DA0, 0x11DA9, 1 }, + { 0x11F50, 0x11F59, 1 }, { 0x11FC0, 0x11FD4, 1 }, { 0x12400, 0x1246E, 1 }, { 0x16A60, 0x16A69, 1 }, + { 0x16AC0, 0x16AC9, 1 }, { 0x16B50, 0x16B59, 1 }, { 0x16B5B, 0x16B61, 1 }, { 0x16E80, 0x16E96, 1 }, + { 0x1D2C0, 0x1D2D3, 1 }, { 0x1D2E0, 0x1D2F3, 1 }, { 0x1D360, 0x1D378, 1 }, { 0x1D7CE, 0x1D7FF, 1 }, { 0x1E140, 0x1E149, 1 }, { 0x1E2F0, 0x1E2F9, 1 }, + { 0x1E4F0, 0x1E4F9, 1 }, { 0x1E8C7, 0x1E8CF, 1 }, { 0x1E950, 0x1E959, 1 }, { 0x1EC71, 0x1ECAB, 1 }, @@ -2406,25 +2528,25 @@ static struct range_table punct_table[] = { { 0x5C0, 0x5C6, 3 }, { 0x5F3, 0x5F4, 1 }, { 0x606, 0x60D, 1 }, - { 0x61B, 0x61E, 3 }, - { 0x61F, 0x66A, 75 }, - { 0x66B, 0x66D, 1 }, + { 0x61B, 0x61D, 2 }, + { 0x61E, 0x61F, 1 }, + { 0x66A, 0x66D, 1 }, { 0x6D4, 0x700, 44 }, { 0x701, 0x70D, 1 }, { 0x7F7, 0x7F9, 1 }, { 0x7FE, 0x7FF, 1 }, { 0x830, 0x83E, 1 }, - { 0x85E, 0x964, 262 }, - { 0x965, 0x970, 11 }, - { 0x9F2, 0x9F3, 1 }, - { 0x9FB, 0x9FD, 2 }, - { 0xA76, 0xAF0, 122 }, - { 0xAF1, 0xBF9, 264 }, - { 0xC77, 0xC84, 13 }, - { 0xDF4, 0xE3F, 75 }, - { 0xE4F, 0xE5A, 11 }, - { 0xE5B, 0xF04, 169 }, - { 0xF05, 0xF12, 1 }, + { 0x85E, 0x888, 42 }, + { 0x964, 0x965, 1 }, + { 0x970, 0x9F2, 130 }, + { 0x9F3, 0x9FB, 8 }, + { 0x9FD, 0xA76, 121 }, + { 0xAF0, 0xAF1, 1 }, + { 0xBF9, 0xC77, 126 }, + { 0xC84, 0xDF4, 368 }, + { 0xE3F, 0xE4F, 16 }, + { 0xE5A, 0xE5B, 1 }, + { 0xF04, 0xF12, 1 }, { 0xF14, 0xF3A, 38 }, { 0xF3B, 0xF3D, 1 }, { 0xF85, 0xFD0, 75 }, @@ -2445,6 +2567,7 @@ static struct range_table punct_table[] = { { 0x1AA0, 0x1AA6, 1 }, { 0x1AA8, 0x1AAD, 1 }, { 0x1B5A, 0x1B60, 1 }, + { 0x1B7D, 0x1B7E, 1 }, { 0x1BFC, 0x1BFF, 1 }, { 0x1C3B, 0x1C3F, 1 }, { 0x1C7E, 0x1C7F, 1 }, @@ -2459,7 +2582,7 @@ static struct range_table punct_table[] = { { 0x2030, 0x205E, 1 }, { 0x207A, 0x207E, 1 }, { 0x208A, 0x208E, 1 }, - { 0x20A0, 0x20BF, 1 }, + { 0x20A0, 0x20C0, 1 }, { 0x2118, 0x2140, 40 }, { 0x2141, 0x2144, 1 }, { 0x214B, 0x2190, 69 }, @@ -2489,8 +2612,8 @@ static struct range_table punct_table[] = { { 0x2D70, 0x2E00, 144 }, { 0x2E01, 0x2E2E, 1 }, { 0x2E30, 0x2E4F, 1 }, - { 0x2E52, 0x3001, 431 }, - { 0x3002, 0x3003, 1 }, + { 0x2E52, 0x2E5D, 1 }, + { 0x3001, 0x3003, 1 }, { 0x3008, 0x3011, 1 }, { 0x3014, 0x301F, 1 }, { 0x3030, 0x303D, 13 }, @@ -2517,7 +2640,7 @@ static struct range_table punct_table[] = { { 0xAB5B, 0xAB6A, 15 }, { 0xAB6B, 0xABEB, 128 }, { 0xFB29, 0xFBB2, 137 }, - { 0xFBB3, 0xFBC1, 1 }, + { 0xFBB3, 0xFBC2, 1 }, { 0xFD3E, 0xFD3F, 1 }, { 0xFDFC, 0xFE10, 20 }, { 0xFE11, 0xFE19, 1 }, @@ -2542,6 +2665,7 @@ static struct range_table punct_table[] = { { 0x10B99, 0x10B9C, 1 }, { 0x10EAD, 0x10F55, 168 }, { 0x10F56, 0x10F59, 1 }, + { 0x10F86, 0x10F89, 1 }, { 0x11047, 0x1104D, 1 }, { 0x110BB, 0x110BC, 1 }, { 0x110BE, 0x110C1, 1 }, @@ -2558,19 +2682,23 @@ static struct range_table punct_table[] = { { 0x115C1, 0x115D7, 1 }, { 0x11641, 0x11643, 1 }, { 0x11660, 0x1166C, 1 }, - { 0x1173C, 0x1173E, 1 }, + { 0x116B9, 0x1173C, 131 }, + { 0x1173D, 0x1173E, 1 }, { 0x1183B, 0x11944, 265 }, { 0x11945, 0x11946, 1 }, { 0x119E2, 0x11A3F, 93 }, { 0x11A40, 0x11A46, 1 }, { 0x11A9A, 0x11A9C, 1 }, { 0x11A9E, 0x11AA2, 1 }, + { 0x11B00, 0x11B09, 1 }, { 0x11C41, 0x11C45, 1 }, { 0x11C70, 0x11C71, 1 }, { 0x11EF7, 0x11EF8, 1 }, + { 0x11F43, 0x11F4F, 1 }, { 0x11FDD, 0x11FE0, 1 }, { 0x11FFF, 0x12470, 1137 }, { 0x12471, 0x12474, 1 }, + { 0x12FF1, 0x12FF2, 1 }, { 0x16A6E, 0x16A6F, 1 }, { 0x16AF5, 0x16B37, 66 }, { 0x16B38, 0x16B3B, 1 }, @@ -2715,7 +2843,7 @@ static struct conv_table tolower_table[] = { { 0x2160, 0x216F, 1, 16 }, { 0x2183, 0x2183, 1, 1 }, { 0x24B6, 0x24CF, 1, 26 }, - { 0x2C00, 0x2C2E, 1, 48 }, + { 0x2C00, 0x2C2F, 1, 48 }, { 0x2C60, 0x2C60, 1, 1 }, { 0x2C62, 0x2C62, 1, -10743 }, { 0x2C63, 0x2C63, 1, -3814 }, @@ -2750,16 +2878,20 @@ static struct conv_table tolower_table[] = { { 0xA7B1, 0xA7B1, 1, -42282 }, { 0xA7B2, 0xA7B2, 1, -42261 }, { 0xA7B3, 0xA7B3, 1, 928 }, - { 0xA7B4, 0xA7BE, 2, 1 }, - { 0xA7C2, 0xA7C2, 1, 1 }, + { 0xA7B4, 0xA7C2, 2, 1 }, { 0xA7C4, 0xA7C4, 1, -48 }, { 0xA7C5, 0xA7C5, 1, -42307 }, { 0xA7C6, 0xA7C6, 1, -35384 }, { 0xA7C7, 0xA7C9, 2, 1 }, - { 0xA7F5, 0xA7F5, 1, 1 }, + { 0xA7D0, 0xA7D6, 6, 1 }, + { 0xA7D8, 0xA7F5, 29, 1 }, { 0xFF21, 0xFF3A, 1, 32 }, { 0x10400, 0x10427, 1, 40 }, { 0x104B0, 0x104D3, 1, 40 }, + { 0x10570, 0x1057A, 1, 39 }, + { 0x1057C, 0x1058A, 1, 39 }, + { 0x1058C, 0x10592, 1, 39 }, + { 0x10594, 0x10595, 1, 39 }, { 0x10C80, 0x10CB2, 1, 64 }, { 0x118A0, 0x118BF, 1, 32 }, { 0x16E40, 0x16E5F, 1, 32 }, @@ -2922,7 +3054,7 @@ static struct conv_table toupper_table[] = { { 0x2170, 0x217F, 1, -16 }, { 0x2184, 0x2184, 1, -1 }, { 0x24D0, 0x24E9, 1, -26 }, - { 0x2C30, 0x2C5E, 1, -48 }, + { 0x2C30, 0x2C5F, 1, -48 }, { 0x2C61, 0x2C61, 1, -1 }, { 0x2C65, 0x2C65, 1, -10795 }, { 0x2C66, 0x2C66, 1, -10792 }, @@ -2943,14 +3075,19 @@ static struct conv_table toupper_table[] = { { 0xA793, 0xA793, 1, -1 }, { 0xA794, 0xA794, 1, 48 }, { 0xA797, 0xA7A9, 2, -1 }, - { 0xA7B5, 0xA7BF, 2, -1 }, - { 0xA7C3, 0xA7C8, 5, -1 }, - { 0xA7CA, 0xA7F6, 44, -1 }, + { 0xA7B5, 0xA7C3, 2, -1 }, + { 0xA7C8, 0xA7CA, 2, -1 }, + { 0xA7D1, 0xA7D7, 6, -1 }, + { 0xA7D9, 0xA7F6, 29, -1 }, { 0xAB53, 0xAB53, 1, -928 }, { 0xAB70, 0xABBF, 1, -38864 }, { 0xFF41, 0xFF5A, 1, -32 }, { 0x10428, 0x1044F, 1, -40 }, { 0x104D8, 0x104FB, 1, -40 }, + { 0x10597, 0x105A1, 1, -39 }, + { 0x105A3, 0x105B1, 1, -39 }, + { 0x105B3, 0x105B9, 1, -39 }, + { 0x105BB, 0x105BC, 1, -39 }, { 0x10CC0, 0x10CF2, 1, -64 }, { 0x118C0, 0x118DF, 1, -32 }, { 0x16E60, 0x16E7F, 1, -32 }, @@ -3115,7 +3252,7 @@ static struct conv_table totitle_table[] = { { 0x2170, 0x217F, 1, -16 }, { 0x2184, 0x2184, 1, -1 }, { 0x24D0, 0x24E9, 1, -26 }, - { 0x2C30, 0x2C5E, 1, -48 }, + { 0x2C30, 0x2C5F, 1, -48 }, { 0x2C61, 0x2C61, 1, -1 }, { 0x2C65, 0x2C65, 1, -10795 }, { 0x2C66, 0x2C66, 1, -10792 }, @@ -3136,14 +3273,19 @@ static struct conv_table totitle_table[] = { { 0xA793, 0xA793, 1, -1 }, { 0xA794, 0xA794, 1, 48 }, { 0xA797, 0xA7A9, 2, -1 }, - { 0xA7B5, 0xA7BF, 2, -1 }, - { 0xA7C3, 0xA7C8, 5, -1 }, - { 0xA7CA, 0xA7F6, 44, -1 }, + { 0xA7B5, 0xA7C3, 2, -1 }, + { 0xA7C8, 0xA7CA, 2, -1 }, + { 0xA7D1, 0xA7D7, 6, -1 }, + { 0xA7D9, 0xA7F6, 29, -1 }, { 0xAB53, 0xAB53, 1, -928 }, { 0xAB70, 0xABBF, 1, -38864 }, { 0xFF41, 0xFF5A, 1, -32 }, { 0x10428, 0x1044F, 1, -40 }, { 0x104D8, 0x104FB, 1, -40 }, + { 0x10597, 0x105A1, 1, -39 }, + { 0x105A3, 0x105B1, 1, -39 }, + { 0x105B3, 0x105B9, 1, -39 }, + { 0x105BB, 0x105BC, 1, -39 }, { 0x10CC0, 0x10CF2, 1, -64 }, { 0x118C0, 0x118DF, 1, -32 }, { 0x16E60, 0x16E7F, 1, -32 }, @@ -3295,7 +3437,7 @@ static struct conv_table tofold_table[] = { { 0x2160, 0x216F, 1, 16 }, { 0x2183, 0x2183, 1, 1 }, { 0x24B6, 0x24CF, 1, 26 }, - { 0x2C00, 0x2C2E, 1, 48 }, + { 0x2C00, 0x2C2F, 1, 48 }, { 0x2C60, 0x2C60, 1, 1 }, { 0x2C62, 0x2C62, 1, -10743 }, { 0x2C63, 0x2C63, 1, -3814 }, @@ -3330,17 +3472,21 @@ static struct conv_table tofold_table[] = { { 0xA7B1, 0xA7B1, 1, -42282 }, { 0xA7B2, 0xA7B2, 1, -42261 }, { 0xA7B3, 0xA7B3, 1, 928 }, - { 0xA7B4, 0xA7BE, 2, 1 }, - { 0xA7C2, 0xA7C2, 1, 1 }, + { 0xA7B4, 0xA7C2, 2, 1 }, { 0xA7C4, 0xA7C4, 1, -48 }, { 0xA7C5, 0xA7C5, 1, -42307 }, { 0xA7C6, 0xA7C6, 1, -35384 }, { 0xA7C7, 0xA7C9, 2, 1 }, - { 0xA7F5, 0xA7F5, 1, 1 }, + { 0xA7D0, 0xA7D6, 6, 1 }, + { 0xA7D8, 0xA7F5, 29, 1 }, { 0xAB70, 0xABBF, 1, -38864 }, { 0xFF21, 0xFF3A, 1, 32 }, { 0x10400, 0x10427, 1, 40 }, { 0x104B0, 0x104D3, 1, 40 }, + { 0x10570, 0x1057A, 1, 39 }, + { 0x1057C, 0x1058A, 1, 39 }, + { 0x1058C, 0x10592, 1, 39 }, + { 0x10594, 0x10595, 1, 39 }, { 0x10C80, 0x10CB2, 1, 64 }, { 0x118A0, 0x118BF, 1, 32 }, { 0x16E40, 0x16E5F, 1, 32 }, @@ -3403,9 +3549,14 @@ static struct range_table doublewidth_table[] = { { 0x17000, 0x187F7, 1 }, { 0x18800, 0x18CD5, 1 }, { 0x18D00, 0x18D08, 1 }, - { 0x1B000, 0x1B11E, 1 }, - { 0x1B150, 0x1B152, 1 }, - { 0x1B164, 0x1B167, 1 }, + { 0x1AFF0, 0x1AFF3, 1 }, + { 0x1AFF5, 0x1AFFB, 1 }, + { 0x1AFFD, 0x1AFFE, 1 }, + { 0x1B000, 0x1B122, 1 }, + { 0x1B132, 0x1B150, 30 }, + { 0x1B151, 0x1B152, 1 }, + { 0x1B155, 0x1B164, 15 }, + { 0x1B165, 0x1B167, 1 }, { 0x1B170, 0x1B2FB, 1 }, { 0x1F004, 0x1F0CF, 203 }, { 0x1F18E, 0x1F191, 3 }, @@ -3436,21 +3587,21 @@ static struct range_table doublewidth_table[] = { { 0x1F6CC, 0x1F6D0, 4 }, { 0x1F6D1, 0x1F6D2, 1 }, { 0x1F6D5, 0x1F6D7, 1 }, + { 0x1F6DC, 0x1F6DF, 1 }, { 0x1F6EB, 0x1F6EC, 1 }, { 0x1F6F4, 0x1F6FC, 1 }, { 0x1F7E0, 0x1F7EB, 1 }, - { 0x1F90C, 0x1F93A, 1 }, + { 0x1F7F0, 0x1F90C, 284 }, + { 0x1F90D, 0x1F93A, 1 }, { 0x1F93C, 0x1F945, 1 }, - { 0x1F947, 0x1F978, 1 }, - { 0x1F97A, 0x1F9CB, 1 }, - { 0x1F9CD, 0x1F9FF, 1 }, - { 0x1FA70, 0x1FA74, 1 }, - { 0x1FA78, 0x1FA7A, 1 }, - { 0x1FA80, 0x1FA86, 1 }, - { 0x1FA90, 0x1FAA8, 1 }, - { 0x1FAB0, 0x1FAB6, 1 }, - { 0x1FAC0, 0x1FAC2, 1 }, - { 0x1FAD0, 0x1FAD6, 1 }, + { 0x1F947, 0x1F9FF, 1 }, + { 0x1FA70, 0x1FA7C, 1 }, + { 0x1FA80, 0x1FA88, 1 }, + { 0x1FA90, 0x1FABD, 1 }, + { 0x1FABF, 0x1FAC5, 1 }, + { 0x1FACE, 0x1FADB, 1 }, + { 0x1FAE0, 0x1FAE8, 1 }, + { 0x1FAF0, 0x1FAF8, 1 }, { 0x20000, 0x2FFFD, 1 }, { 0x30000, 0x3FFFD, 1 }, };