Remove the exception for tizen common in .spec file
[platform/upstream/libxkbcommon.git] / src / ks_tables.h
index 95e4ac0..67ebfb3 100644 (file)
@@ -750,7 +750,6 @@ static const char *keysym_names =
     "dead_abovedot\0"
     "dead_abovereversedcomma\0"
     "dead_abovering\0"
-    "dead_aboveverticalline\0"
     "dead_acute\0"
     "dead_belowbreve\0"
     "dead_belowcircumflex\0"
@@ -760,7 +759,6 @@ static const char *keysym_names =
     "dead_belowmacron\0"
     "dead_belowring\0"
     "dead_belowtilde\0"
-    "dead_belowverticalline\0"
     "dead_breve\0"
     "dead_capital_schwa\0"
     "dead_caron\0"
@@ -775,20 +773,21 @@ static const char *keysym_names =
     "dead_E\0"
     "dead_grave\0"
     "dead_greek\0"
+    "dead_hamza\0"
     "dead_hook\0"
     "dead_horn\0"
     "dead_i\0"
     "dead_I\0"
     "dead_invertedbreve\0"
     "dead_iota\0"
-    "dead_longsolidusoverlay\0"
-    "dead_lowline\0"
     "dead_macron\0"
     "dead_o\0"
     "dead_O\0"
     "dead_ogonek\0"
     "dead_perispomeni\0"
     "dead_psili\0"
+    "dead_schwa\0"
+    "dead_SCHWA\0"
     "dead_semivoiced_sound\0"
     "dead_small_schwa\0"
     "dead_stroke\0"
@@ -1096,6 +1095,8 @@ static const char *keysym_names =
     "Greek_ZETA\0"
     "Greek_zeta\0"
     "guilder\0"
+    "guillemetleft\0"
+    "guillemetright\0"
     "guillemotleft\0"
     "guillemotright\0"
     "H\0"
@@ -1666,6 +1667,7 @@ static const char *keysym_names =
     "opentribulletdown\0"
     "opentribulletup\0"
     "ordfeminine\0"
+    "ordmasculine\0"
     "osfActivate\0"
     "osfAddMode\0"
     "osfBackSpace\0"
@@ -2241,6 +2243,7 @@ static const char *keysym_names =
     "XF86AudioRepeat\0"
     "XF86AudioRewind\0"
     "XF86AudioStop\0"
+    "XF86AutopilotEngageToggle\0"
     "XF86Away\0"
     "XF86Back\0"
     "XF86BackForward\0"
@@ -2257,6 +2260,9 @@ static const char *keysym_names =
     "XF86Calculater\0"
     "XF86Calculator\0"
     "XF86Calendar\0"
+    "XF86CameraAccessDisable\0"
+    "XF86CameraAccessEnable\0"
+    "XF86CameraAccessToggle\0"
     "XF86CameraDown\0"
     "XF86CameraFocus\0"
     "XF86CameraLeft\0"
@@ -2269,6 +2275,7 @@ static const char *keysym_names =
     "XF86ChannelUp\0"
     "XF86Clear\0"
     "XF86ClearGrab\0"
+    "XF86ClearvuSonar\0"
     "XF86Close\0"
     "XF86Community\0"
     "XF86ContextMenu\0"
@@ -2279,19 +2286,23 @@ static const char *keysym_names =
     "XF86CycleAngle\0"
     "XF86Data\0"
     "XF86Database\0"
+    "XF86Dictate\0"
     "XF86Display\0"
     "XF86DisplayOff\0"
     "XF86DisplayToggle\0"
     "XF86Documents\0"
     "XF86DOS\0"
+    "XF86DualRangeRadar\0"
     "XF86DVD\0"
     "XF86Editor\0"
     "XF86Eject\0"
+    "XF86EmojiPicker\0"
     "XF86Excel\0"
     "XF86Explorer\0"
     "XF86FastReverse\0"
     "XF86Favorites\0"
     "XF86Finance\0"
+    "XF86FishingChart\0"
     "XF86Fn\0"
     "XF86Fn_Esc\0"
     "XF86FnRightShift\0"
@@ -2389,6 +2400,7 @@ static const char *keysym_names =
     "XF86Mail\0"
     "XF86MailForward\0"
     "XF86Market\0"
+    "XF86MarkWaypoint\0"
     "XF86MediaRepeat\0"
     "XF86MediaTopMenu\0"
     "XF86Meeting\0"
@@ -2403,9 +2415,12 @@ static const char *keysym_names =
     "XF86Music\0"
     "XF86MyComputer\0"
     "XF86MySites\0"
+    "XF86NavChart\0"
+    "XF86NavInfo\0"
     "XF86New\0"
     "XF86News\0"
     "XF86Next_VMode\0"
+    "XF86NextElement\0"
     "XF86NextFavorite\0"
     "XF86NotificationCenter\0"
     "XF86Numeric0\0"
@@ -2440,8 +2455,10 @@ static const char *keysym_names =
     "XF86PowerOff\0"
     "XF86Presentation\0"
     "XF86Prev_VMode\0"
+    "XF86PreviousElement\0"
     "XF86PrivacyScreenToggle\0"
     "XF86Q\0"
+    "XF86RadarOverlay\0"
     "XF86Red\0"
     "XF86Refresh\0"
     "XF86Reload\0"
@@ -2468,8 +2485,11 @@ static const char *keysym_names =
     "XF86SelectiveScreenshot\0"
     "XF86Send\0"
     "XF86Shop\0"
+    "XF86SidevuSonar\0"
+    "XF86SingleRangeRadar\0"
     "XF86Sleep\0"
     "XF86SlowReverse\0"
+    "XF86Sos\0"
     "XF86Spell\0"
     "XF86SpellCheck\0"
     "XF86SplitScreen\0"
@@ -2502,6 +2522,7 @@ static const char *keysym_names =
     "XF86TouchpadOff\0"
     "XF86TouchpadOn\0"
     "XF86TouchpadToggle\0"
+    "XF86TraditionalSonar\0"
     "XF86Travel\0"
     "XF86Ungrab\0"
     "XF86Unmute\0"
@@ -2567,300 +2588,303 @@ static const char *keysym_names =
 #endif
 
 static const uint16_t keysym_name_G[] = {
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1274, 3136, 0,
-    0, 0, 713, 2993, 3990, 2827, 0, 0, 0, 0, 0, 5, 0, 0, 0, 2265, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 606, 0, 0, 1778, 0, 1415, 0, 0, 0, 0, 1506,
-    0, 0, 0, 0, 0, 0, 0, 4395, 0, 0, 0, 0, 1271, 0, 0, 0, 1007, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 138, 0, 0, 0, 3407, 0, 0, 0, 0, 693, 0, 1554, 0,
-    0, 0, 0, 0, 0, 1354, 0, 0, 0, 0, 0, 0, 2516, 0, 0, 0, 0, 0, 1135, 0, 0,
-    522, 0, 0, 2241, 0, 4521, 536, 0, 0, 0, 2028, 0, 1848, 0, 0, 0, 0, 0,
-    94, 904, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 3458, 0, 0, 0, 0, 0, 0, 0, 58,
-    1747, 3044, 47, 1541, 0, 405, 765, 623, 0, 0, 0, 0, 0, 2309, 0, 0, 0,
-    0, 279, 4523, 1068, 0, 0, 1939, 0, 0, 2124, 0, 0, 0, 0, 0, 0, 2111,
-    2470, 0, 0, 0, 212, 0, 948, 0, 4505, 0, 1703, 0, 0, 623, 1398, 0, 0, 0,
-    0, 581, 0, 0, 0, 1984, 0, 0, 0, 466, 0, 1711, 0, 0, 0, 0, 947, 3707, 0,
-    0, 0, 0, 0, 0, 2227, 1360, 0, 0, 1030, 0, 3184, 0, 0, 0, 1672, 171,
-    1466, 2710, 0, 0, 0, 4267, 0, 0, 0, 0, 0, 0, 0, 0, 1337, 0, 0, 3261,
-    2460, 0, 4080, 0, 68, 1238, 0, 0, 0, 0, 827, 0, 1030, 490, 0, 0, 0, 0,
-    0, 0, 841, 0, 0, 1549, 0, 534, 0, 0, 3054, 0, 0, 1516, 0, 0, 0, 4536,
-    0, 4191, 0, 0, 0, 2718, 729, 0, 4284, 1692, 0, 0, 0, 0, 0, 1523, 0, 0,
-    0, 236, 303, 4502, 3826, 0, 415, 0, 0, 0, 1212, 0, 4319, 0, 0, 0, 1674,
-    1388, 0, 0, 0, 349, 0, 0, 0, 0, 1694, 0, 0, 0, 0, 195, 0, 2394, 1080,
-    0, 4417, 1576, 0, 0, 0, 0, 0, 0, 3053, 0, 0, 2672, 0, 0, 0, 0, 3696, 0,
-    0, 797, 0, 1347, 0, 1310, 0, 0, 3245, 3847, 4557, 0, 0, 0, 0, 0, 0, 0,
-    1364, 0, 0, 1040, 0, 1846, 0, 0, 0, 0, 0, 0, 0, 0, 4359, 0, 2423, 0,
-    2131, 3376, 1546, 100, 0, 0, 144, 3882, 1223, 4112, 0, 0, 0, 1412, 0,
-    0, 0, 3654, 0, 1829, 1867, 2909, 0, 0, 0, 0, 3999, 0, 0, 0, 0, 0, 0,
-    2337, 0, 0, 4146, 2438, 2760, 2123, 0, 4297, 1330, 4058, 0, 3738, 0, 0,
-    0, 0, 0, 0, 0, 1801, 2018, 0, 1839, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4254,
-    4517, 3576, 0, 0, 0, 468, 0, 0, 0, 551, 0, 0, 0, 1793, 4503, 0, 1917,
-    0, 0, 698, 526, 3910, 0, 1591, 1653, 0, 0, 4080, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 2186, 0, 0, 882, 609, 0, 199, 826, 0, 0, 0, 1318, 0, 0, 711,
-    1363, 116, 4177, 2263, 3662, 0, 1336, 3223, 2345, 0, 0, 0, 4534, 0, 0,
-    0, 3575, 0, 0, 1634, 798, 0, 4568, 0, 0, 0, 3310, 1001, 0, 4557, 0, 0,
-    2243, 0, 1377, 0, 0, 0, 0, 3277, 2965, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    1206, 0, 2524, 1099, 3439, 4511, 0, 4100, 0, 0, 0, 0, 0, 0, 766, 2397,
-    0, 1688, 0, 0, 1178, 0, 0, 625, 2834, 0, 3809, 0, 0, 252, 4008, 275,
-    2524, 92, 0, 0, 0, 0, 118, 2307, 2100, 4504, 584, 2, 284, 0, 0, 0, 0,
-    0, 1655, 1898, 0, 2934, 0, 143, 0, 3018, 0, 0, 130, 0, 1873, 1047, 0,
-    0, 0, 391, 0, 0, 0, 2176, 62, 0, 3442, 2708, 115, 920, 459, 0, 138,
-    4523, 2500, 0, 0, 0, 3600, 0, 511, 0, 375, 3713, 0, 0, 0, 2779, 624,
-    2236, 0, 0, 691, 0, 0, 0, 0, 258, 1136, 221, 2140, 1007, 0, 202, 0, 0,
-    0, 0, 125, 0, 27, 1009, 4271, 1739, 3059, 0, 313, 0, 0, 899, 476, 0, 0,
-    1408, 3778, 3718, 3003, 1111, 3592, 523, 0, 0, 560, 0, 1826, 0, 0, 0,
-    0, 4391, 0, 108, 0, 0, 1000, 1585, 2184, 3598, 2591, 0, 0, 0, 2440, 0,
-    0, 61, 0, 1183, 0, 3010, 770, 0, 48, 1995, 1049, 0, 3545, 1637, 1497,
-    439, 1028, 765, 0, 2189, 0, 0, 0, 0, 3564, 2136, 0, 1164, 618, 0, 0,
-    3697, 1048, 0, 0, 0, 0, 0, 2079, 3237, 926, 0, 0, 0, 0, 4094, 0, 1088,
-    0, 0, 0, 0, 1759, 0, 0, 0, 0, 556, 1148, 4075, 37, 2306, 0, 1471, 0,
-    3960, 2892, 3941, 1380, 0, 0, 2220, 0, 109, 0, 2195, 1862, 2434, 606,
-    0, 1470, 3689, 3828, 551, 0, 455, 0, 3387, 0, 1234, 0, 2991, 0, 0, 0,
-    0, 3550, 2421, 0, 0, 0, 0, 0, 0, 3909, 0, 0, 0, 2990, 0, 0, 0, 360,
-    865, 0, 4353, 0, 0, 327, 1840, 0, 3632, 1611, 0, 2150, 2033, 0, 0, 576,
-    0, 3467, 3689, 3824, 1718, 498, 1013, 0, 1517, 4370, 0, 0, 425, 1241,
-    1250, 0, 2605, 588, 0, 3811, 1003, 2662, 0, 0, 2122, 0, 1347, 0, 836,
-    2520, 3652, 0, 4344, 4513, 0, 0, 4233, 0, 834, 0, 0, 0, 0, 0, 1473, 0,
-    1040, 0, 0, 0, 3042, 0, 0, 3810, 2114, 0, 1001, 4360, 0, 2967, 2163, 0,
-    0, 0, 0, 31, 0, 3237, 0, 0, 3264, 0, 1494, 3098, 0, 2333, 0, 3318,
-    3187, 1168, 0, 1836, 227, 4509, 347, 0, 4216, 0, 410, 624, 384, 2523,
-    2408, 1203, 3917, 0, 4039, 2009, 0, 2375, 2523, 0, 0, 0, 962, 0, 0,
-    4354, 0, 3950, 2159, 2068, 1846, 706, 0, 0, 0, 4183, 213, 0, 1492,
-    2533, 0, 0, 0, 0, 0, 0, 0, 2830, 0, 951, 0, 1724, 1734, 741, 4100, 0,
-    0, 0, 513, 0, 0, 4218, 0, 0, 2678, 1214, 1750, 640, 0, 0, 0, 0, 0, 0,
-    1023, 0, 239, 0, 2145, 2066, 1791, 0, 147, 2084, 2897, 3270, 0, 2568,
-    615, 0, 0, 1549, 4182, 0, 0, 0, 0, 0, 873, 807, 1999, 4378, 0, 1032, 0,
-    0, 1251, 671, 0, 4368, 3166, 0, 0, 0, 1618, 0, 4142, 3890, 2587, 0,
-    994, 0, 0, 0, 0, 1623, 1204, 572, 1299, 0, 3406, 0, 141, 3557, 0, 3266,
-    0, 2936, 0, 1280, 0, 4298, 0, 0, 0, 0, 1450, 10, 4442, 658, 0, 0, 0,
-    47, 344, 0, 0, 0, 0, 0, 3103, 0, 0, 0, 0, 0, 1288, 0, 1312, 0, 1729,
-    1822, 0, 0, 0, 0, 0, 0, 3495, 477, 0, 0, 1456, 362, 0, 2390, 4571,
-    1068, 0, 0, 3958, 1862, 1275, 0, 0, 2197, 3707, 3851, 1821, 0, 4398,
-    565, 0, 1592, 3356, 0, 0, 1449, 1752, 0, 0, 0, 0, 3297, 0, 0, 0, 288,
-    1484, 0, 0, 0, 0, 0, 495, 3725, 0, 0, 0, 1154, 525, 385, 4490, 0, 0,
-    2089, 0, 0, 0, 4567, 3296, 523, 0, 3480, 468, 600, 0, 0, 0, 0, 0, 0, 0,
-    0, 2792, 670, 0, 89, 3833, 2297, 0, 0, 0, 0, 4496, 1546, 0, 1594, 0, 0,
-    0, 2303, 1950, 2808, 0, 899, 0, 3940, 2347, 0, 3065, 1798, 0, 1392,
-    3304, 0, 4143, 2499, 2037, 1793, 0, 0, 0, 3478, 1774, 0, 4214, 0, 1502,
-    1086, 0, 0, 2232, 2730, 2513, 0, 0, 1095, 0, 1480, 1316, 1620, 889, 0,
-    4459, 1326, 1440, 1246, 2509, 0, 0, 321, 1450, 2845, 0, 1040, 0, 0,
-    898, 1612, 1366, 0, 589, 0, 2084, 738, 2634, 0, 1332, 2533, 3867, 1956,
-    0, 627, 0, 2628, 1041, 1644, 1204, 0, 0, 0, 2135, 0, 0, 4446, 3467, 0,
-    401, 0, 0, 0, 1380, 0, 3298, 0, 1991, 3715, 4383, 0, 0, 0, 4413, 2256,
-    0, 0, 3913, 0, 0, 4201, 3080, 3458, 2459, 1006, 3915, 0, 3775, 0, 102,
-    3601, 664, 0, 51, 0, 0, 1147, 4198, 0, 543, 0, 4571, 4460, 0, 0, 0,
-    1674, 359, 4493, 0, 0, 0, 0, 1957, 0, 2706, 0, 0, 2630, 473, 3918,
-    2485, 0, 0, 1314, 0, 2086, 2977, 0, 1816, 584, 0, 1110, 1391, 0, 0,
-    2001, 1709, 2445, 0, 0, 864, 1848, 2392, 3824, 754, 0, 0, 0, 2308, 0,
-    0, 644, 3700, 0, 1303, 0, 0, 1255, 0, 0, 0, 3224, 0, 1727, 1528, 0,
-    2702, 3122, 3815, 4454, 1674, 0, 0, 1479, 2293, 0, 0, 0, 2575, 950,
-    1784, 0, 2415, 0, 3908, 3869, 1685, 0, 0, 4401, 1719, 3917, 0, 0, 0,
-    388, 3113, 2530, 0, 3860, 1424, 3688, 0, 3475, 2585, 4093, 2667, 0, 0,
-    0, 0, 4220, 780, 4026, 15, 0, 386, 0, 0, 4116, 545, 0, 0, 2190, 2144,
-    1199, 88, 4008, 80, 0, 0, 0, 1933, 796, 2108, 1181, 2460, 4306, 547,
-    2935, 4073, 0, 0, 0, 28, 2327, 1291, 3644, 2142, 1338, 0, 1276, 2309,
-    0, 3903, 4551, 0, 0, 0, 0, 0, 575, 0, 0, 0, 0, 0, 0, 806, 308, 0, 2404,
-    0, 0, 0, 896, 3457, 0, 0, 0, 0, 1748, 4170, 0, 3850, 0, 2045, 4282,
-    675, 0, 0, 0, 3089, 0, 0, 3880, 0, 43, 3705, 3474, 0, 2435, 0, 2999, 0,
-    0, 2438, 629, 1082, 0, 2046, 3271, 329, 0, 0, 0, 0, 0, 0, 2268, 1678,
-    0, 3364, 2471, 0, 555, 4333, 2528, 0, 3397, 1403, 0, 3000, 1431, 1449,
-    0, 1940, 0, 2748, 535, 0, 4322, 1815, 1925, 2252, 1160, 2063, 0, 0,
-    2325, 0, 0, 0, 1839, 0, 2430, 0, 3954, 1420, 0, 0, 2075, 3449, 2928,
-    179, 0, 2146, 0, 0, 0, 0, 624, 0, 1300, 459, 0, 457, 0, 1624, 2003, 0,
-    0, 2071, 1465, 1402, 0, 3982, 0, 2724, 3912, 1716, 4294, 0, 0, 2240,
-    1224, 1295, 420, 0, 0, 1701, 1593, 0, 0, 2822, 4325, 3845, 3580, 0, 0,
-    0, 3883, 0, 2255, 635, 0, 0, 0, 1728, 0, 3083, 0, 559, 468, 0, 0, 4185,
-    887, 0, 123, 2042, 207, 4026, 0, 799, 0, 67, 4225, 0, 0, 0, 0, 3483,
-    2066, 0, 1212, 1269, 2722, 4082, 0, 1261, 0, 0, 2644, 3721, 0, 334, 0,
-    0, 0, 0, 3273, 669, 0, 1348, 0, 0, 2819, 809, 0, 0, 2926, 4365, 0, 0,
-    0, 0, 3948, 0, 0, 3762, 4449, 3815, 0, 361, 4135, 1119, 0, 3828, 0,
-    221, 1019, 3455, 4136, 0, 0, 3347, 2545, 3099, 368, 3242, 0, 2445,
-    4224, 862, 0, 0, 2469, 67, 530, 1476, 0, 3278, 3894, 0, 2402, 0, 363,
-    0, 892, 3105, 0, 1498, 775, 0, 0, 1470, 1827, 0, 0, 0, 167, 3946, 0, 0,
-    0, 111, 919, 0, 0, 1621, 0, 0, 0, 0, 3196, 3335, 1094, 0, 3879, 667, 0,
-    2433, 4342, 0, 0, 948, 0, 0, 4546, 2936, 0, 2630, 0, 0, 0, 0, 0, 3247,
-    719, 4570, 1393, 1228, 0, 0, 0, 4431, 4227, 0, 0, 0, 0, 1676, 0, 1211,
-    4195, 0, 0, 0, 3958, 0, 225, 31, 0, 0, 0, 3305, 0, 0, 0, 2398, 0, 1246,
-    4277, 0, 0, 4497, 0, 0, 3499, 0, 0, 0, 0, 1394, 565, 4060, 0, 4103, 0,
-    3960, 2348, 415, 3687, 0, 4233, 0, 0, 1970, 0, 2851, 0, 253, 0, 0,
-    1241, 3798, 0, 0, 0, 887, 928, 0, 0, 0, 0, 0, 4044, 0, 0, 2384, 1566,
-    3534, 4265, 2239, 651, 0, 723, 0, 1843, 4252, 315, 0, 598, 1152, 0,
-    748, 671, 4132, 71, 1664, 2253, 0, 0, 3536, 0, 0, 1373, 0, 0, 1135, 0,
-    614, 2996, 4176, 4494, 0, 0, 0, 0, 1266, 1066, 2040, 3214, 285, 0, 939,
-    2776, 0, 4165, 2155, 1463, 0, 2425, 2233, 1919, 0, 4025, 2289, 1432,
-    4105, 0, 0, 4206, 2830, 792, 4328, 889, 4564, 0, 0, 0, 150, 0, 3472, 0,
-    0, 0, 1196, 32, 4344, 2043, 3440, 1131, 526, 0, 1874, 1175, 637, 0,
-    3467, 0, 0, 0, 1097, 804, 0, 0, 1498, 0, 1183, 534, 2557, 4437, 0, 0,
-    0, 4011, 1605, 2411, 1726, 2572, 1121, 1586, 0, 0, 1431, 0, 0, 0, 2343,
-    3469, 286, 0, 1299, 2353, 0, 0, 612, 2810, 2358, 0, 2256, 0, 556, 38,
-    2074, 3295, 220, 4360, 2152, 486, 639, 87, 0, 0, 3278, 0, 0, 4081, 0,
-    0, 2310, 3650, 530, 0, 2653, 1568, 0, 1521, 0, 2566, 1654, 3427, 3371,
-    1002, 0, 1704, 1124, 593, 3384, 542, 0, 0, 2815, 0, 1068, 0, 0, 196,
-    2485, 1523, 0, 485, 177, 1419, 37, 1541, 947, 0, 0, 0, 0, 0, 2206, 699,
-    17, 2046, 0, 2354, 484, 1330, 3149, 4023, 0, 0, 1076, 0, 937, 3380, 0,
-    3048, 0, 0, 4124, 184, 0, 650, 2351, 3996, 4094, 107, 0, 3708, 532,
-    4104, 1499, 0, 0, 0, 0, 247, 559, 0, 1948, 0, 1656, 0, 0, 3342, 1858,
-    546, 1797, 1889, 0, 0, 0, 1376, 0, 2225, 1617, 4255, 144, 4565, 1171,
-    0, 0, 324, 550, 0, 0, 0, 0, 0, 0, 0, 2931, 827, 2345, 0, 3283, 2988, 0,
-    1451, 840, 3747, 0, 3877, 0, 2398, 892, 0, 3558, 1949, 242, 506, 464,
-    1738, 0, 1878, 220, 3627, 686, 683, 0, 339, 938, 878, 3736, 0, 3494, 0,
-    1031, 3790, 0, 784, 2497, 3172, 0, 1234, 0, 1860, 0, 926, 487, 1355, 0,
-    0, 931, 0, 1729, 0, 0, 185, 1311, 1134, 1887, 1152, 554, 0, 362, 714,
-    1864, 2680, 2566, 0, 0, 1536, 153, 0, 1379, 2011, 2346, 548, 1009, 0,
-    1696, 4459, 0, 1564, 0, 893, 0, 0, 337, 1503, 3224, 0, 1406, 2399, 0,
-    0, 358, 0, 3095, 3576, 0, 0, 0, 0, 239, 0, 2705, 3344, 0, 0, 1135,
-    1895, 1687, 2134, 2286, 0, 410, 1905, 35, 0, 0, 0, 0, 0, 82, 0, 4472,
-    2399, 2200, 0, 4117, 1371, 1433, 0, 1084, 1605, 3732, 2091, 4484, 1714,
-    1725, 0, 2578, 3154, 2785, 0, 2488, 0, 0, 558, 4210, 3785, 0, 3603, 0,
-    891, 3063, 163, 4442, 891, 2881, 932, 0, 393, 0, 2705, 0, 2003, 0, 0,
-    0, 1027, 0, 2402, 1792, 2484, 1685, 0, 2959, 0, 1516, 1856, 0, 0, 0,
-    2970, 18, 1264, 0, 443, 2058, 4108, 3660, 1285, 0, 0, 665, 2883, 0,
-    4170, 647, 4193, 0, 0, 0, 0, 0, 0, 3271, 3986, 0, 123, 1092, 0, 1349,
-    0, 345, 2034, 333, 560, 0, 3620, 2414, 327, 2730, 1265, 1684, 895,
-    3481, 2358, 0, 0, 4053, 820, 0, 4105, 884, 878, 3854, 609, 0, 0, 1831,
-    0, 0, 3334, 0, 0, 0, 1643, 1874, 0, 213, 1736, 0, 1298, 0, 0, 2365, 0,
-    2161, 0, 0, 0, 2565, 4424, 3617, 541, 0, 0, 377, 0, 3596, 1299, 0,
-    2886, 3013, 0, 0, 608, 590, 2582, 567, 3241, 1699, 0, 0, 4086, 156,
-    1293, 1386, 0, 262, 1581, 4107, 1844, 2130, 1611, 773, 4571, 0, 0,
-    3029, 2515, 0, 952, 624, 1887, 6, 906, 0, 0, 1402, 645, 0, 1562, 4078,
-    1430, 0, 2882, 1354, 4455, 349, 0, 2969, 0, 715, 0, 2375, 0, 0, 0, 0,
-    56, 0, 852, 0, 0, 530, 3625, 0, 3152, 1233, 4547, 0, 3880, 6, 821, 0,
-    479, 905, 1721, 1417, 0, 197, 0, 0, 0, 1475, 0, 3634, 0, 0, 0, 0, 721,
-    860, 2195, 133, 830, 1907, 4355, 3547, 3521, 0, 0, 2970, 229, 4509,
-    934, 796, 0, 443, 185, 0, 0, 1198, 1010, 0, 3196, 1852, 4368, 3413,
-    3810, 38, 1274, 0, 266, 386, 441, 0, 955, 0, 249, 177, 75, 0, 0, 2126,
-    3969, 0, 705, 0, 365, 0, 0, 2028, 3081, 0, 4070, 0, 806, 4148, 353,
-    1662, 3552, 3470, 1090, 657, 0, 2419, 3816, 0, 0, 3206, 0, 1510, 1947,
-    0, 0, 898, 0, 2300, 0, 1215, 0, 2649, 2370, 1057, 0, 588, 343, 0, 676,
-    25, 0, 0, 0, 2136, 3086, 0, 743, 0, 3387, 0, 0, 0, 4183, 0, 0, 0, 0,
-    1222, 2162, 3066, 0, 0, 3720, 0, 0, 707, 4153, 454, 445, 2999, 0, 1379,
-    0, 2494, 0, 3340, 0, 208, 820, 1701, 4472, 434, 260, 0, 0, 1852, 0, 0,
-    0, 0, 220, 790, 0, 0, 1024, 0, 0, 811, 0, 0, 3951, 0, 4307, 3446, 0,
-    1220, 3944, 624, 3937, 2947, 1531, 4380, 3696, 2831, 2210, 1038, 623,
-    3497, 1187, 0, 696, 4497, 1176, 596, 0, 0, 1820, 0, 1175, 4501, 0, 0,
-    2061, 0, 3708, 1582, 2371, 3866, 0, 0, 79, 794, 3135, 0, 2246, 1223,
-    154, 0, 941, 1774, 157, 716, 0, 1346, 0, 4411, 3364, 1478, 2230, 1563,
-    2293, 1819, 788, 1700, 155, 108, 44, 0, 3613, 449, 0, 0, 3772, 170,
-    2889, 1145, 0, 2388, 0, 0, 0, 3739, 0, 1953, 0, 312, 1006, 4495, 0, 0,
-    1004, 1936, 2417, 4432, 842, 0, 2430, 0, 1594, 0, 0, 14, 0, 0, 2195, 0,
-    0, 4108, 3124, 3136, 0, 0, 0, 0, 3905, 357, 756, 3113, 3589, 0, 1606,
-    3438, 1013, 0, 1661, 128, 4228, 0, 1348, 1306, 0, 193, 636, 2160, 3215,
-    4150, 0, 3369, 2408, 0, 3674, 2995, 0, 594, 4276, 1379, 0, 2660, 0,
-    1255, 773, 689, 4449, 2292, 3161, 607, 0, 2120, 587, 0, 0, 265, 0, 0,
-    0, 1140, 3562, 0, 0, 2053, 1788, 0, 2530, 457, 1481, 3006, 283, 0, 0,
-    1989, 670, 0, 0, 2170, 1477, 4068, 2586, 2447, 0, 2631, 1309, 2087,
-    2322, 4121, 0, 1824, 0, 0, 2845, 0, 451, 0, 0, 1514, 3756, 0, 0, 0,
-    1278, 1967, 1860, 0, 3379, 798, 3191, 2335, 392, 1595, 522, 2029, 0, 0,
-    368, 0, 0, 2019, 411, 1136, 241, 0, 0, 0, 0, 0, 0, 0, 0, 288, 4280, 0,
-    508, 701, 0, 0, 4527, 0, 1193, 1951, 1577, 2744, 0, 3953, 0, 0, 0,
-    3924, 0, 4156, 0, 1095, 53, 1380, 3147, 0, 1969, 0, 0, 0, 66, 880,
-    4451, 2133, 4571, 3317, 0, 0, 4144, 0, 1908, 1370, 0, 4106, 0, 0, 0, 0,
-    3380, 0, 4474, 1457, 664, 432, 1304, 0, 1982, 806, 0, 2434, 0, 0, 0,
-    566, 0, 169, 3834, 0, 4472, 572, 2975, 2908, 0, 2112, 0, 2410, 1189, 0,
-    1522, 0, 83, 1762, 872, 0, 87, 3289, 1699, 0, 4002, 413, 4259, 1778, 0,
-    0, 0, 4423, 1639, 4189, 1941, 0, 0, 0, 110, 0, 3907, 2569, 0, 0, 1163,
-    0, 0, 0, 2207, 2297, 2128, 1514, 0, 1211, 0, 3831, 0, 0, 3719, 3892,
-    2261, 0, 1243, 0, 0, 330, 2990, 0, 757, 0, 0, 2918, 1822, 0, 0, 401,
-    1008, 782, 934, 2522, 0, 0, 1338, 1148, 0, 0, 3051, 0, 262, 1452, 103,
-    0, 755, 0, 0, 689, 1382, 300, 0, 0, 0, 0, 924, 256, 2291, 1621, 2337,
-    2592, 0, 2448, 183, 2584, 0, 1515, 4062, 404, 0, 1111, 4425, 0, 0,
-    2894, 0, 0, 3137, 0, 0, 0, 2039, 287, 0, 0, 4130, 4522, 1779, 0, 0, 0,
-    507, 4241, 0, 3439, 314, 1890, 0, 207, 0, 4371, 0, 165, 0, 831, 0,
-    1376, 3418, 1992, 618, 2899, 764, 0, 0, 673, 346, 0, 0, 1079, 989,
-    3310, 0, 0, 576, 4131, 1024, 0, 138, 977, 185, 1730, 450, 0, 0, 0,
-    4118, 425, 2249, 3295, 0, 1001, 0, 0, 0, 3945, 1156, 0, 1716, 0, 1706,
-    1638, 3503, 0, 0, 0, 846, 2395, 1228, 0, 2238, 880, 3836, 0, 0, 0,
-    3963, 0, 0, 974, 0, 3635, 1295, 0, 2760, 687, 3754, 24, 4494, 313,
-    2814, 0, 140, 410, 0, 899, 271, 2034, 0, 0, 663, 1174, 1200, 509, 395,
-    1780, 0, 2002, 2746, 2185, 0, 195, 0, 0, 0, 0, 0, 3255, 0, 0, 0, 0,
-    1051, 0, 1354, 0, 2197, 0, 34, 0, 0, 3821, 0, 0, 0, 0, 3585, 2865, 0,
-    144, 2152, 2237, 1479, 1760, 238, 0, 458, 200, 609, 1941, 540, 0, 620,
-    0, 489, 1875, 1178, 1149, 4376, 2933, 0, 1856, 2998, 3541, 276, 1942,
-    1996, 0, 3894, 1539, 90, 0, 0, 0, 752, 0, 0, 803, 0, 4332, 0, 0, 804,
-    1525, 701, 0, 763, 3174, 1902, 0, 626, 3469, 0, 0, 3151, 1585, 0, 0,
-    163, 0, 474, 2644, 0, 1259, 2043, 0, 1932, 513, 323, 0, 0, 2205, 3636,
-    4275, 3650, 1020, 73, 2189, 0, 2848, 724, 0, 0, 684, 0, 625, 1867, 867,
-    4435, 0, 1383, 0, 0, 30, 1265, 3329, 0, 958, 1380, 965, 0, 0, 0, 3010,
-    0, 3590, 0, 80, 638, 0, 2056, 0, 1062, 1923, 0, 1400, 970, 1163, 2802,
-    363, 4340, 3853, 2718, 6, 1772, 1594, 0, 2512, 692, 2305, 328, 72,
-    3371, 133, 2729, 503, 0, 0, 0, 0, 1816, 4319, 2285, 264, 3409, 458,
-    4058, 1994, 3412, 0, 2318, 1209, 0, 119, 76, 0, 0, 0, 2629, 1969, 530,
-    4327, 0, 2247, 0, 0, 0, 999, 4169, 0, 2040, 0, 518, 0, 934, 0, 1803, 0,
-    0, 1782, 0, 0, 3814, 40, 2562, 1756, 4511, 3597, 1058, 0, 1983, 4472,
-    723, 2866, 0, 1773, 3817, 172, 0, 0, 3119, 918, 646, 822, 0, 390, 0,
-    1756, 0, 2208, 0, 4271, 2810, 80, 1249, 0, 1512, 0, 0, 3530, 0, 1325,
-    578, 1238, 2979, 3714, 0, 0, 2587, 1849, 1200, 3996, 2045, 1279, 0, 0,
-    353, 0, 712, 18, 0, 0, 1598, 1673, 1227, 0, 0, 0, 1603, 4017, 0, 893,
-    4216, 2048, 2466, 0, 1121, 0, 571, 3242, 1929, 1203, 4285, 1669, 0,
-    4344, 4061, 0, 2220, 0, 4211, 4070, 599, 0, 0, 3466, 3175, 0, 0, 2168,
-    2410, 3863, 4, 2479, 217, 2673, 1783, 2294, 4085, 0, 109, 0, 3131, 0,
-    1744, 3679, 0, 3613, 0, 0, 757, 3400, 59, 3072, 0, 1091, 432, 0, 356,
-    2399, 2031, 81, 1614, 383, 1659, 0, 2694, 0, 2218, 1558, 0, 0, 0, 623,
-    3248, 102, 1057, 0, 1612, 0, 201, 0, 796, 19, 2513, 0, 0, 490, 2901,
-    396, 0, 0, 742, 2383, 3053, 85, 0, 4504, 743, 3757, 13, 328, 0, 2485,
-    1419, 0, 0, 2621, 1981, 0, 934, 0, 1081, 0, 0, 735, 0, 0, 0, 1622, 0,
-    0, 252, 0, 0, 2222, 0, 0, 655, 1912, 0, 0, 0, 4105, 0, 3236, 4412,
-    1627, 1388, 4211, 0, 0, 1526, 1784, 892, 2843, 4195, 0, 0, 0, 578, 710,
-    0, 2506, 0, 0, 0, 3075, 2753, 0, 0, 448, 3916, 1939, 0, 1751, 0, 0, 0,
-    2009, 0, 96, 4257, 1033, 678, 1685, 0, 0, 2960, 0, 0, 1941, 2215, 117,
-    1301, 0, 0, 3806, 0, 0, 3061, 0, 942, 667, 0, 0, 2380, 2154, 647, 0, 0,
-    1070, 4496, 0, 3270, 1712, 0, 4436, 0, 0, 1855, 299, 0, 3156, 408,
-    2773, 0, 0, 2803, 0, 1009, 0, 2447, 0, 3915, 1414, 4367, 2648, 0, 56,
-    0, 456, 4297, 1730, 0, 1746, 0, 1803, 261, 0, 2132, 1495, 0, 1853, 0,
-    0, 3651, 1429, 4264, 2360, 1785, 4130, 1488, 624, 4550, 4287, 713, 396,
-    3085, 3959, 2609, 1375, 301, 2165, 796, 0, 0, 0, 3761, 3815, 2984, 0,
-    0, 853, 0, 2174, 3323, 969, 231, 922, 0, 0, 707, 2036, 0, 951, 0, 2088,
-    2129, 3954, 4241, 1988, 1584, 744, 948, 1525, 956, 263, 149, 1370, 497,
-    3452, 0, 3159, 0, 0, 1582, 1131, 3481, 1546, 3777, 3252, 0, 3776, 699,
-    0, 0, 4090, 1220, 0, 1309, 0, 1640, 0, 1922, 2236, 2497, 0, 964, 0,
-    485, 873, 0, 2818, 0, 0, 0, 1564, 48, 1156, 1181, 178, 17, 0, 1098,
-    4254, 0, 0, 0, 733, 4412, 3857, 0, 1529, 0, 2604, 0, 752, 0, 3717, 0,
-    2247, 0, 718, 188, 3402, 833, 0, 3734, 0, 986, 4217, 0, 0, 0, 3450,
-    1213, 0, 1185, 2605, 0, 2457, 1195, 4487, 3493, 0, 1628, 0, 437, 3372,
-    0, 357, 2593, 3050, 1812, 3884, 0, 0, 2319, 4303, 0, 2524, 403, 0, 0,
-    2182, 656, 0, 655, 774, 3919, 0, 1954, 1478, 1088, 196, 226, 0, 4179,
-    0, 0, 2402, 3940, 1576, 1765, 556, 0, 0, 0, 0, 0, 849, 837, 0, 546,
-    2396, 0, 1675, 0, 0, 2044, 0, 1582, 324, 2070, 0, 0, 777, 600, 0, 1042,
-    2064, 28, 871, 0, 3814, 827, 0, 3803, 2057, 0, 3294, 2760, 652, 0,
-    2987, 268, 544, 463, 1945, 0, 174, 0, 0, 2027, 275, 4251, 0, 3996,
-    1030, 144, 2234, 1229, 580, 2394, 1156, 0, 0, 0, 3661, 1642, 0, 0, 35,
-    0, 809, 978, 0, 0, 703, 813, 2387, 0, 637, 0, 0, 1185, 1723, 0, 2329,
-    1040, 3978, 879, 0, 0, 0, 3842, 3161, 0, 4368, 0, 53, 0, 3356, 203,
-    159, 3120, 1848, 1339, 1155, 787, 661, 3396, 974, 750, 2778, 0, 0, 136,
-    0, 0, 4197, 157, 0, 0, 0, 0, 1818, 251, 2491, 3772, 0, 1345, 2096, 815,
-    0, 0, 3211, 2277, 0, 1756, 1705, 4200, 2165, 0, 2025, 1716, 2766, 1562,
-    0, 1469, 1726, 2383, 412, 233, 0, 2101, 263, 0, 1013, 1104, 0, 520,
-    2619, 266, 1325, 0, 1486, 4396, 1495, 2887, 0, 0, 0, 3461, 0, 0, 0, 0,
-    0, 0, 981, 3351, 148, 0, 0, 1804, 0, 0, 3039, 593, 0, 1545, 0, 2323, 0,
-    3429, 1689, 1974, 308, 0, 0, 0, 0, 708, 1611, 1685, 1546, 0, 0, 0, 983,
-    0, 1284, 0, 0, 2744, 0, 1697, 2061, 1561, 2, 0, 230, 0, 961, 0, 0,
-    2400, 1583, 3664, 0, 0, 662, 0, 4252, 0, 3851, 1924, 1611, 749, 0, 0,
-    2492, 0, 2461, 0, 526, 2526, 4, 4421, 1046, 0, 76, 4486, 0, 0, 0, 0,
-    402, 310, 1851, 0, 768, 946, 1123, 1619, 692, 2021, 496, 2156, 2953,
-    1973, 0, 0, 0, 2282, 0, 0, 3199, 1428, 0, 0, 2517, 0, 0, 524, 2534,
-    4323, 2550, 0, 1077, 523, 0, 968, 0, 2923, 0, 0, 4058, 0, 312, 1638,
-    3977, 4188, 3540, 2457, 0, 1266, 2023, 0, 1109, 0, 0, 374, 703, 212, 0,
-    0, 353, 0, 393, 0, 0, 0, 0, 3141, 0, 1018, 1834, 0, 1310, 847, 0, 1852,
-    0, 0, 0, 0, 0, 3457, 0, 0, 4235, 496, 3606, 2068, 0, 1364, 2368, 4044,
-    0, 4053, 4357, 2562, 0, 3966, 1574, 2563, 0, 1096, 586, 0, 1363, 348,
-    1799, 2334, 0, 1896, 0, 0, 0, 269, 147, 66, 1989, 420, 1770, 1320, 40,
-    145, 0, 0, 1989, 780, 2146, 0, 34, 0, 1641, 0, 0, 1441, 656, 0, 3687,
-    2618, 194, 1003, 4464, 1002, 3696, 1182, 1489, 0, 3082, 122, 1200,
-    1225, 0, 1020, 0, 212, 0, 1571, 0, 0, 0, 3655, 0, 0, 786, 201, 1123,
-    1410, 0, 1721, 3007, 14, 0, 2905, 805, 0, 0, 1391, 0, 0, 0, 1095, 3990,
-    3241, 2310, 0, 3083, 0, 3538, 4414, 3027, 0, 0, 0, 4344, 0, 0, 2576,
-    4572, 2427, 0, 0, 0, 2155, 0, 1085, 2425, 0, 0, 1918, 0, 1808, 564,
-    4401, 4255, 557, 401, 3667, 2574, 2067, 0, 1738, 3622, 2265, 0, 0,
-    2597, 0, 1932, 680, 331, 0, 0, 3656, 2620, 1607, 2507, 1598, 1814,
-    2052, 0, 1230, 24, 175, 0, 2040, 2437, 925, 1398, 4414, 0, 0, 245,
-    1453, 2389, 695, 991, 2947, 2074, 0, 949, 0, 0, 3646, 1700, 0, 3708,
-    3165, 2216, 3551, 0, 0, 832, 2156, 48, 0, 630, 0, 994, 0, 0, 2157,
-    4262, 384, 2055, 2999, 0, 0, 1666, 0, 0, 4361, 1326, 882, 0, 672, 730,
-    4454, 2013, 0, 1017, 3375, 3795, 0, 1600, 3459, 3600, 2107, 1926, 712,
-    12, 2950, 2014, 435, 844, 0, 2004, 0, 0, 636, 0, 0, 2756, 4568, 0, 502,
-    1023, 2854, 0, 1247, 1165, 1437, 0, 2574, 0, 2650, 0, 2041, 0, 1443, 0,
-    0, 0, 1627, 1057, 0, 269, 0, 1920, 2309, 2124, 0, 4058, 975, 3215,
-    4226, 1434, 0, 0, 3977, 0, 889, 1403, 0, 458, 0, 1756, 417, 847, 2454,
-    4237, 3904, 0, 188, 0, 769, 0, 1168, 0, 3939, 4182, 0, 0, 160, 0, 0, 0
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3070, 0, 1487, 0, 0, 0,
+    3342, 2475, 0, 0, 0, 0, 0, 0, 0, 0, 2451, 0, 0, 0, 4410, 0, 1745, 0, 0,
+    0, 0, 0, 0, 420, 595, 0, 0, 0, 0, 0, 0, 0, 1591, 80, 0, 0, 0, 0, 4466,
+    3548, 4530, 0, 3337, 0, 641, 0, 0, 0, 1526, 2544, 1141, 1417, 0, 2614,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 0, 0, 0, 0,
+    3648, 0, 4540, 0, 0, 0, 0, 1862, 0, 0, 0, 0, 562, 3489, 0, 1099, 0,
+    2991, 0, 0, 0, 618, 0, 0, 0, 0, 3483, 0, 982, 0, 0, 1033, 0, 2549, 0,
+    0, 443, 476, 0, 316, 2401, 3049, 0, 0, 692, 0, 1537, 3513, 0, 0, 0, 0,
+    0, 0, 0, 4040, 3443, 3826, 1813, 0, 906, 3544, 0, 0, 0, 0, 2141, 0,
+    4212, 0, 3093, 1806, 0, 0, 555, 0, 2923, 0, 414, 0, 0, 991, 4080, 1986,
+    0, 0, 0, 0, 1553, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 804, 0, 0, 0,
+    3345, 0, 0, 1045, 0, 2997, 0, 0, 0, 0, 1122, 0, 0, 0, 0, 3101, 0, 0,
+    632, 0, 0, 0, 1699, 861, 3750, 0, 0, 0, 0, 0, 2830, 0, 0, 2581, 2112,
+    0, 2365, 0, 1378, 3291, 0, 0, 270, 0, 3427, 0, 0, 2346, 0, 0, 3801, 0,
+    0, 0, 0, 0, 109, 806, 0, 0, 0, 0, 2965, 1928, 2215, 0, 3244, 0, 0, 0,
+    2570, 0, 2433, 3730, 0, 0, 0, 1982, 0, 0, 0, 0, 887, 0, 0, 0, 0, 650,
+    0, 0, 0, 4425, 0, 0, 0, 4416, 692, 0, 2215, 1228, 0, 867, 2856, 1026,
+    2316, 0, 539, 0, 0, 3519, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69, 0, 0, 1398, 0,
+    0, 755, 4452, 0, 0, 3786, 0, 0, 0, 0, 0, 2766, 0, 0, 0, 0, 0, 0, 0,
+    1195, 740, 2771, 1611, 0, 574, 2556, 0, 0, 291, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 449, 35, 0, 0, 0, 0, 0, 0, 2295, 3363, 1887, 3722, 2046,
+    3783, 2089, 0, 535, 0, 2052, 0, 0, 0, 1615, 0, 85, 0, 0, 0, 0, 0, 0, 0,
+    3283, 0, 0, 3688, 0, 0, 0, 2860, 3223, 0, 205, 0, 3277, 2646, 0, 4012,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1369, 0, 0, 0, 0, 0, 0, 3255, 0, 0, 0,
+    2788, 0, 0, 0, 0, 2338, 0, 0, 4091, 0, 0, 286, 0, 2759, 0, 1910, 1986,
+    4086, 536, 0, 0, 0, 3586, 0, 2351, 0, 0, 0, 1192, 2474, 2650, 0, 0, 0,
+    0, 0, 1567, 1103, 0, 290, 0, 0, 0, 1069, 896, 0, 906, 1463, 0, 0, 908,
+    0, 0, 3329, 1797, 1121, 379, 0, 0, 0, 0, 0, 4070, 348, 0, 0, 4255, 20,
+    0, 0, 0, 2499, 1636, 0, 0, 0, 0, 0, 3698, 0, 2172, 0, 2679, 0, 0, 303,
+    2030, 0, 675, 0, 0, 0, 921, 0, 0, 0, 0, 1854, 0, 0, 0, 0, 994, 0, 0, 0,
+    1270, 0, 0, 0, 0, 0, 0, 987, 0, 4593, 0, 0, 0, 4259, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 46, 1610, 1355, 1348, 1899, 0, 0, 0, 4016, 0, 0, 1298, 1401,
+    687, 2994, 4211, 0, 1629, 3648, 2058, 3783, 897, 0, 4421, 1824, 0, 0,
+    3033, 0, 3504, 0, 0, 0, 1256, 1179, 4269, 0, 0, 0, 0, 0, 4281, 0, 1656,
+    2450, 0, 2957, 0, 3700, 42, 0, 0, 1165, 0, 4454, 0, 3064, 2331, 0, 829,
+    0, 0, 0, 0, 0, 0, 0, 1644, 1788, 0, 2111, 0, 2923, 53, 2201, 0, 2138,
+    1418, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305, 0, 0, 0, 0, 4118,
+    0, 1418, 3044, 0, 2886, 1217, 0, 2170, 4504, 3314, 0, 0, 0, 677, 0,
+    2254, 1711, 0, 1492, 0, 0, 1427, 1977, 0, 0, 3459, 3442, 0, 0, 0, 3187,
+    4399, 0, 352, 0, 1723, 0, 2822, 0, 0, 2125, 0, 0, 0, 0, 0, 1628, 1005,
+    1270, 0, 0, 0, 0, 0, 4457, 845, 0, 0, 155, 1255, 0, 3635, 4179, 0, 0,
+    0, 0, 0, 0, 4516, 0, 0, 0, 0, 1617, 0, 2936, 0, 1671, 222, 1511, 588,
+    0, 1953, 0, 0, 558, 0, 1043, 1253, 0, 0, 0, 0, 1069, 113, 3420, 2916,
+    0, 4037, 1157, 0, 0, 1802, 76, 336, 587, 0, 0, 0, 0, 496, 2649, 1762,
+    0, 0, 0, 2021, 2250, 0, 0, 0, 0, 1376, 2078, 0, 4265, 0, 2858, 0, 2132,
+    0, 743, 705, 0, 3163, 0, 0, 887, 0, 3280, 0, 0, 0, 1591, 0, 0, 0, 2885,
+    0, 1492, 2302, 0, 0, 0, 0, 2025, 77, 0, 0, 0, 0, 0, 2709, 4311, 1482,
+    3688, 0, 1839, 0, 0, 0, 1910, 26, 0, 0, 2400, 2924, 2063, 0, 0, 0, 0,
+    0, 0, 1829, 524, 0, 0, 4190, 0, 0, 1162, 1715, 1324, 0, 1736, 1168,
+    308, 0, 0, 0, 0, 3441, 0, 0, 0, 2855, 0, 0, 562, 0, 0, 0, 0, 2596, 0,
+    239, 0, 0, 4104, 0, 204, 0, 1012, 0, 0, 0, 1700, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 711, 0, 2163, 0, 0, 0, 2767, 1921, 1783, 3630, 0, 1899, 0, 3401,
+    178, 2114, 0, 3598, 0, 3388, 0, 0, 3573, 0, 2465, 795, 707, 0, 3066,
+    463, 4410, 0, 0, 0, 0, 3405, 1760, 1002, 3137, 2233, 425, 1427, 0, 0,
+    2762, 0, 0, 467, 1759, 273, 1357, 997, 2651, 0, 0, 0, 0, 0, 0, 0, 938,
+    0, 0, 0, 0, 549, 0, 0, 0, 3419, 3806, 1204, 0, 94, 0, 0, 0, 0, 217,
+    150, 0, 0, 1873, 417, 0, 2307, 221, 0, 0, 0, 0, 3476, 0, 186, 0, 0, 0,
+    4532, 0, 0, 1915, 0, 3259, 0, 0, 1728, 0, 0, 3794, 3998, 1648, 3497, 0,
+    0, 0, 3578, 2749, 3358, 0, 51, 3857, 4121, 2754, 2397, 0, 336, 937,
+    2605, 0, 361, 0, 0, 0, 428, 2598, 0, 0, 4458, 4149, 0, 0, 4303, 3461,
+    3723, 0, 0, 0, 0, 0, 0, 419, 1652, 2921, 4065, 0, 1678, 1636, 1141,
+    1903, 608, 375, 0, 0, 0, 199, 3788, 3814, 0, 1502, 0, 0, 419, 2237,
+    2205, 2627, 1345, 0, 1186, 0, 0, 2545, 0, 2620, 0, 0, 0, 958, 0, 0, 0,
+    270, 0, 0, 0, 4570, 780, 0, 866, 0, 0, 2606, 0, 0, 89, 0, 2149, 0,
+    2829, 0, 0, 4285, 263, 503, 993, 964, 2542, 0, 403, 3729, 188, 0, 0, 0,
+    1425, 1785, 0, 0, 2528, 2755, 2528, 3503, 1756, 0, 0, 0, 0, 0, 88,
+    1316, 4420, 0, 0, 922, 1769, 0, 0, 1171, 0, 0, 2437, 0, 0, 0, 1849, 0,
+    0, 2232, 4435, 4160, 0, 644, 0, 0, 4527, 0, 0, 308, 1379, 0, 2036,
+    2169, 3896, 1014, 3864, 0, 628, 0, 1622, 0, 0, 2004, 1241, 4174, 86, 0,
+    4078, 0, 1610, 0, 0, 0, 2516, 1561, 2988, 874, 0, 1658, 4220, 0, 331,
+    0, 0, 0, 0, 0, 0, 0, 0, 566, 4576, 0, 0, 0, 0, 1589, 636, 0, 2538, 0,
+    1724, 2207, 0, 0, 0, 0, 0, 0, 1676, 0, 0, 2079, 1633, 3155, 0, 0, 1630,
+    168, 0, 0, 0, 0, 3646, 2124, 0, 1797, 1044, 3903, 283, 0, 0, 2384,
+    3669, 0, 2841, 1554, 219, 0, 0, 3951, 3689, 1475, 1184, 1203, 1000,
+    548, 501, 0, 0, 0, 1777, 0, 4335, 0, 0, 1553, 0, 912, 0, 1145, 22, 0,
+    1928, 1172, 705, 0, 0, 0, 0, 1256, 0, 2517, 956, 0, 0, 2018, 3152, 0,
+    1815, 0, 0, 0, 266, 0, 0, 2072, 0, 4537, 0, 1791, 0, 941, 1642, 1988,
+    2312, 0, 0, 4529, 0, 4599, 0, 3282, 1566, 0, 0, 0, 2745, 57, 0, 2363,
+    708, 3764, 1303, 2769, 3301, 0, 0, 0, 0, 3464, 525, 1496, 1298, 1065,
+    3018, 1012, 244, 1393, 4333, 0, 1563, 0, 0, 0, 3492, 0, 0, 3112, 1928,
+    0, 0, 0, 0, 0, 2454, 0, 1975, 57, 0, 0, 6, 0, 3957, 0, 0, 4444, 752, 0,
+    742, 0, 822, 0, 2714, 2205, 4076, 939, 0, 0, 0, 1024, 1100, 0, 0, 1027,
+    1093, 0, 0, 1208, 1849, 4427, 2316, 548, 1422, 1672, 0, 3350, 0, 1016,
+    0, 0, 0, 681, 255, 835, 1569, 1873, 1575, 0, 0, 0, 0, 0, 0, 0, 2720, 0,
+    1290, 0, 0, 0, 1944, 0, 0, 4406, 2699, 3220, 1161, 0, 2221, 1705, 0,
+    4455, 3294, 1532, 0, 1417, 4392, 0, 1266, 1417, 1979, 0, 0, 3227, 91,
+    1594, 0, 0, 3907, 0, 1329, 0, 2760, 0, 4285, 1684, 0, 1693, 2354, 2271,
+    0, 1932, 4178, 2364, 1431, 2034, 1894, 0, 4267, 0, 159, 0, 3532, 0,
+    4118, 1932, 81, 0, 1658, 2932, 0, 0, 1647, 0, 2422, 703, 0, 0, 2613,
+    2319, 2260, 4400, 921, 0, 2487, 963, 1670, 1190, 0, 0, 1460, 2527, 0,
+    0, 1723, 0, 4355, 901, 0, 0, 0, 0, 2293, 0, 3354, 2058, 0, 0, 1407, 0,
+    0, 514, 0, 103, 1154, 1966, 0, 0, 0, 2513, 0, 0, 3018, 3122, 1, 0, 0,
+    945, 1877, 4319, 0, 1958, 0, 389, 1735, 0, 0, 0, 272, 0, 0, 1006, 3031,
+    0, 2150, 4072, 0, 0, 0, 1853, 0, 0, 3839, 748, 2135, 0, 794, 2376, 681,
+    2143, 3978, 1997, 0, 0, 2630, 0, 1292, 2244, 858, 1525, 0, 250, 1984,
+    3567, 4480, 0, 0, 1201, 2013, 0, 0, 0, 86, 965, 850, 370, 1484, 940, 0,
+    0, 63, 3807, 613, 0, 3481, 631, 2752, 0, 73, 718, 0, 0, 2280, 0, 4473,
+    0, 0, 0, 1611, 0, 0, 0, 1164, 0, 0, 686, 0, 0, 2018, 0, 0, 0, 0, 4290,
+    257, 557, 1951, 0, 0, 0, 2205, 838, 3733, 4135, 0, 0, 0, 3976, 0, 3427,
+    1709, 4185, 0, 1801, 21, 3451, 0, 0, 142, 0, 1831, 709, 4450, 0, 0, 0,
+    0, 0, 1203, 3545, 0, 1392, 2072, 0, 0, 1567, 1681, 2386, 0, 811, 0, 0,
+    3745, 0, 1985, 0, 0, 0, 4460, 4029, 4064, 212, 638, 3101, 0, 0, 9, 0,
+    0, 0, 0, 0, 4160, 0, 224, 0, 3644, 985, 0, 328, 4381, 1151, 0, 4070,
+    4576, 3597, 2492, 3372, 809, 2518, 0, 1126, 696, 0, 0, 1078, 1062,
+    1947, 1361, 4465, 3936, 0, 4008, 1592, 0, 0, 0, 3779, 1119, 0, 0, 0,
+    2358, 0, 0, 1134, 0, 3337, 1025, 0, 0, 2472, 0, 0, 2853, 0, 0, 0, 4168,
+    1559, 0, 2566, 938, 0, 336, 3764, 126, 2074, 454, 6, 56, 0, 4057, 3538,
+    0, 3801, 0, 647, 102, 0, 0, 0, 4355, 0, 0, 789, 0, 4489, 0, 3615, 1527,
+    2306, 0, 298, 3807, 160, 0, 0, 0, 983, 2034, 887, 1116, 797, 0, 0, 0,
+    2497, 412, 668, 2746, 30, 1242, 2359, 0, 1340, 2152, 0, 2493, 3461,
+    4091, 0, 0, 2752, 129, 0, 601, 2416, 253, 1801, 0, 0, 5, 0, 0, 776, 0,
+    4418, 0, 943, 588, 1029, 0, 4608, 620, 0, 0, 514, 352, 660, 0, 0, 0,
+    4456, 4548, 46, 860, 0, 3936, 1095, 0, 2022, 122, 0, 0, 0, 0, 0, 4161,
+    0, 4046, 883, 3562, 4162, 342, 0, 0, 0, 814, 0, 2552, 0, 0, 0, 2360,
+    3305, 0, 210, 2087, 2822, 241, 0, 0, 1172, 0, 600, 0, 0, 1066, 3519,
+    4280, 0, 2684, 356, 287, 0, 3679, 0, 4398, 1142, 1237, 0, 4385, 2433,
+    2833, 3191, 138, 0, 3242, 2265, 0, 4479, 0, 0, 0, 0, 2498, 2865, 2000,
+    0, 1692, 2443, 3211, 3342, 3088, 1439, 3704, 1155, 3426, 683, 0, 124,
+    0, 0, 0, 1890, 2518, 0, 3328, 2478, 0, 2100, 1665, 2947, 4234, 2361,
+    4214, 2777, 358, 0, 4506, 0, 2655, 0, 0, 3533, 0, 0, 208, 4219, 0, 290,
+    0, 0, 1221, 738, 2751, 0, 0, 2283, 4206, 2067, 388, 2515, 763, 1871, 0,
+    160, 886, 0, 2998, 0, 827, 89, 521, 2132, 2005, 565, 0, 0, 2294, 0, 0,
+    0, 0, 4603, 1505, 1096, 1597, 0, 0, 392, 0, 0, 4188, 0, 2167, 0, 3648,
+    1531, 882, 0, 2031, 4345, 2099, 0, 0, 0, 1682, 2494, 4547, 2438, 0,
+    134, 0, 0, 2931, 3355, 1747, 0, 4541, 0, 180, 4178, 911, 3615, 1010,
+    4310, 0, 0, 448, 0, 0, 0, 1914, 1487, 0, 2002, 1648, 3126, 1042, 0,
+    3408, 3176, 0, 1406, 396, 1245, 795, 1545, 0, 147, 0, 4030, 1384, 4515,
+    1433, 522, 3532, 0, 1315, 1051, 0, 288, 1275, 0, 1279, 1549, 816, 461,
+    408, 0, 2184, 4253, 0, 2520, 0, 0, 4385, 2991, 2264, 0, 1873, 1409,
+    174, 2462, 2345, 4153, 3700, 203, 3282, 0, 1602, 1618, 3147, 0, 0, 0,
+    0, 0, 2031, 4508, 4087, 584, 1157, 0, 4203, 0, 1901, 0, 0, 0, 1327,
+    589, 1831, 0, 1839, 2232, 0, 57, 0, 266, 4476, 0, 0, 412, 34, 0, 1220,
+    1685, 2864, 3353, 0, 0, 1488, 1654, 0, 0, 0, 324, 2825, 0, 3378, 2557,
+    2230, 0, 655, 0, 966, 0, 139, 0, 3946, 0, 2181, 4039, 1834, 0, 646, 0,
+    0, 0, 0, 1729, 172, 3150, 0, 2035, 0, 0, 4388, 3694, 2944, 192, 462,
+    977, 0, 1731, 2732, 0, 3394, 0, 4470, 0, 0, 3426, 3512, 0, 1104, 0,
+    765, 0, 407, 0, 0, 3938, 4100, 1734, 308, 1641, 0, 2169, 903, 3353, 0,
+    0, 0, 0, 0, 416, 132, 0, 0, 4218, 4447, 1151, 1471, 0, 0, 0, 0, 1422,
+    288, 2063, 0, 4117, 1155, 0, 0, 0, 0, 3406, 1484, 0, 4356, 4184, 3509,
+    0, 3999, 3333, 0, 2275, 2037, 0, 1863, 3124, 0, 0, 3788, 0, 0, 0, 1607,
+    234, 0, 2056, 378, 0, 2716, 0, 2065, 2424, 0, 465, 1730, 0, 1173, 0,
+    1233, 488, 1878, 508, 0, 2909, 1578, 0, 0, 32, 0, 0, 181, 0, 1629,
+    3349, 4449, 1176, 0, 600, 2019, 1703, 2731, 0, 0, 0, 0, 0, 0, 0, 533,
+    0, 220, 1502, 1470, 0, 2380, 0, 4318, 0, 3357, 0, 2581, 2298, 0, 3020,
+    0, 2033, 720, 4570, 1262, 3809, 0, 3304, 2786, 3741, 379, 2913, 3794,
+    527, 676, 0, 1832, 0, 1107, 0, 3389, 2007, 1846, 3829, 1497, 2403,
+    2630, 738, 468, 1812, 2179, 4376, 4286, 0, 3872, 2695, 1801, 1971, 0,
+    606, 1795, 1898, 0, 0, 0, 0, 4487, 1194, 0, 0, 477, 1468, 2217, 400, 0,
+    0, 375, 0, 1813, 0, 628, 1400, 2587, 11, 1039, 0, 131, 0, 688, 0, 0,
+    857, 389, 0, 790, 2316, 2253, 0, 0, 0, 3418, 1804, 0, 0, 0, 0, 1218, 0,
+    4283, 0, 0, 0, 2267, 0, 1568, 2632, 2096, 0, 314, 2045, 1297, 335, 490,
+    1566, 3185, 807, 4381, 484, 294, 0, 0, 3802, 0, 428, 26, 0, 1322, 2114,
+    4438, 3866, 1294, 142, 0, 3932, 457, 1236, 3925, 4077, 0, 2608, 1272,
+    508, 0, 2819, 0, 0, 0, 0, 1204, 0, 0, 1175, 0, 3354, 4289, 2385, 2381,
+    193, 0, 50, 0, 1419, 2136, 58, 0, 0, 469, 307, 0, 1991, 3735, 0, 0,
+    144, 2328, 0, 678, 0, 4142, 1411, 56, 671, 4273, 0, 391, 3743, 3195, 0,
+    0, 2166, 495, 0, 3359, 0, 0, 0, 492, 4531, 0, 0, 4316, 666, 432, 3468,
+    1719, 2632, 0, 244, 261, 0, 0, 1018, 0, 444, 1366, 1562, 1245, 0, 0, 0,
+    93, 0, 557, 3470, 0, 864, 0, 0, 227, 3450, 4411, 4030, 45, 322, 0, 0,
+    559, 1939, 2475, 1248, 2639, 2187, 2092, 2202, 0, 4591, 4479, 4188,
+    4375, 4401, 0, 786, 1899, 0, 0, 92, 2955, 0, 4362, 0, 320, 1162, 697,
+    0, 563, 0, 0, 2263, 2064, 1599, 1460, 0, 3477, 2362, 0, 394, 3937,
+    1875, 0, 0, 0, 1306, 1646, 4375, 673, 0, 5, 0, 0, 732, 2921, 772, 1059,
+    443, 1887, 0, 0, 166, 0, 0, 3574, 4523, 0, 16, 1979, 235, 0, 0, 2223,
+    3559, 0, 0, 0, 1723, 0, 0, 0, 2648, 0, 0, 0, 0, 0, 2494, 537, 0, 1282,
+    0, 1002, 833, 2209, 2995, 1388, 0, 0, 1843, 561, 0, 0, 4127, 0, 0, 330,
+    1317, 745, 2423, 2351, 0, 528, 2316, 2101, 0, 4409, 0, 3242, 1385, 0,
+    0, 326, 4493, 4392, 99, 2193, 2755, 1601, 0, 4447, 0, 0, 2462, 0, 3925,
+    2281, 1277, 0, 0, 0, 1273, 226, 3388, 2203, 1269, 0, 1165, 2228, 0, 0,
+    1150, 3453, 1242, 162, 2103, 0, 1315, 0, 0, 1128, 4272, 0, 0, 1672, 0,
+    1373, 3253, 484, 1012, 109, 0, 4449, 0, 0, 653, 1999, 114, 0, 1503,
+    647, 742, 332, 0, 639, 3652, 0, 0, 0, 891, 0, 1663, 4146, 3307, 0, 0,
+    2352, 230, 680, 0, 528, 2578, 0, 0, 2835, 2228, 1979, 0, 346, 2141, 0,
+    3427, 852, 3386, 563, 0, 1246, 1989, 0, 0, 0, 0, 0, 3074, 820, 1872,
+    2118, 2364, 2971, 2781, 1912, 334, 0, 0, 0, 0, 0, 0, 0, 2775, 2195,
+    635, 0, 933, 4434, 0, 781, 0, 560, 0, 0, 2442, 0, 0, 0, 1823, 3294,
+    2185, 3134, 0, 698, 2477, 2332, 0, 0, 2613, 1726, 0, 1178, 0, 3795,
+    2343, 0, 0, 4328, 0, 0, 0, 52, 2852, 0, 4119, 1782, 0, 2915, 0, 0,
+    2382, 57, 1956, 0, 1927, 0, 4590, 249, 0, 2868, 618, 1664, 0, 1013,
+    1616, 0, 1408, 2226, 0, 3705, 0, 1996, 0, 0, 1540, 2180, 0, 0, 1668,
+    1225, 0, 1438, 796, 643, 0, 0, 1196, 0, 0, 0, 293, 0, 0, 4297, 0, 1742,
+    4427, 0, 0, 3361, 0, 0, 0, 3582, 2701, 2175, 3834, 0, 0, 1740, 3312, 0,
+    2289, 228, 800, 1852, 2387, 4417, 928, 3299, 0, 1889, 2739, 840, 365,
+    0, 1037, 0, 1993, 1676, 188, 0, 0, 0, 58, 0, 2592, 716, 0, 0, 0, 1957,
+    8, 1683, 4590, 0, 0, 0, 0, 1969, 0, 0, 4596, 0, 0, 1132, 2818, 4110, 0,
+    1250, 4470, 362, 2921, 1344, 0, 0, 1407, 0, 0, 0, 0, 0, 0, 3550, 1333,
+    486, 1062, 0, 0, 0, 115, 1596, 0, 1368, 1854, 0, 1283, 2334, 595, 0, 0,
+    746, 0, 2328, 3335, 4162, 0, 3077, 0, 2595, 0, 0, 666, 0, 3863, 354,
+    368, 0, 1543, 256, 1401, 622, 3243, 0, 0, 3141, 4065, 3009, 2441, 140,
+    0, 0, 0, 794, 0, 0, 0, 4256, 715, 0, 0, 4060, 0, 0, 0, 1788, 0, 1413,
+    1646, 4481, 611, 1275, 4310, 3995, 2535, 1188, 1805, 0, 0, 1345, 0,
+    3883, 543, 0, 853, 1074, 176, 0, 3982, 0, 2045, 0, 0, 1956, 1971, 0,
+    174, 0, 16, 78, 2530, 0, 3803, 0, 0, 885, 839, 689, 0, 0, 444, 375, 0,
+    0, 0, 2744, 1374, 246, 0, 1497, 1032, 2556, 3135, 0, 909, 0, 1042,
+    1618, 0, 261, 1579, 0, 329, 753, 1574, 1251, 0, 362, 0, 0, 778, 1332,
+    161, 2086, 0, 0, 2836, 3448, 1744, 19, 479, 256, 0, 907, 578, 3397,
+    1218, 3865, 0, 778, 2106, 344, 195, 519, 1343, 0, 3943, 0, 366, 2692,
+    0, 0, 1186, 0, 0, 4263, 4373, 0, 0, 2336, 0, 2867, 3355, 1455, 1189, 0,
+    0, 2634, 832, 809, 737, 3878, 0, 0, 0, 0, 191, 4475, 3356, 1111, 0, 0,
+    0, 0, 0, 663, 0, 2344, 0, 0, 0, 783, 1558, 3113, 2510, 0, 4558, 679, 0,
+    2693, 77, 1791, 2322, 1019, 0, 0, 0, 108, 1742, 0, 335, 1764, 278, 0,
+    345, 651, 0, 0, 4428, 0, 786, 1203, 0, 0, 1474, 0, 0, 0, 787, 0, 3384,
+    4370, 2217, 0, 0, 223, 1693, 0, 0, 706, 2337, 0, 0, 3250, 2340, 3669,
+    3079, 4135, 450, 0, 0, 4409, 0, 0, 0, 1055, 467, 3443, 2931, 0, 0,
+    1889, 734, 349, 0, 0, 3903, 1668, 3436, 1618, 337, 2792, 1113, 0, 0, 0,
+    0, 0, 4602, 0, 0, 111, 0, 720, 187, 239, 0, 0, 1632, 0, 0, 1723, 0, 53,
+    4369, 0, 0, 1193, 1860, 2008, 637, 2062, 0, 0, 0, 0, 1647, 0, 4550,
+    400, 4562, 1435, 3864, 0, 211, 982, 0, 0, 0, 339, 0, 1772, 1000, 0, 0,
+    0, 3201, 0, 0, 0, 3521, 0, 2160, 391, 1363, 0, 1071, 0, 861, 2152,
+    3227, 132, 4054, 0, 0, 2039, 0, 665, 2764, 0, 458, 1233, 3998, 0, 1369,
+    3980, 1311, 0, 2466, 0, 0, 3167, 3554, 0, 1806, 1381, 1796, 1232, 2896,
+    1652, 0, 3480, 347, 3005, 0, 0, 1401, 607, 1265, 0, 2239, 639, 3901,
+    1536, 285, 1623, 0, 0, 56, 0, 640, 3084, 0, 974, 1434, 0, 1803, 14, 0,
+    4160, 0, 2310, 401, 2047, 0, 0, 0, 1253, 0, 1683, 0, 0, 4271, 1138,
+    2296, 2645, 0, 0, 2036, 0, 543, 3551, 0, 2404, 0, 0, 4252, 1393, 3379,
+    2569, 182, 2725, 0, 0, 0, 1917, 0, 0, 3720, 4266, 1865, 668, 624, 0,
+    1566, 0, 0, 441, 0, 4210, 2559, 380, 1685, 0, 0, 0, 0, 0, 2544, 1610,
+    0, 3791, 1896, 0, 0, 0, 775, 0, 1546, 474, 3487, 873, 0, 0, 270, 2635,
+    2083, 0, 4475, 105, 0, 3768, 0, 4401, 4, 2076, 1308, 4400, 4263, 1187,
+    1197, 3581, 0, 0, 0, 0, 3365, 3759, 547, 0, 1116, 2075, 0, 4134, 0, 0,
+    0, 2023, 0, 1850, 0, 376, 4378, 0, 3672, 4360, 0, 1458, 998, 0, 3892,
+    0, 4119, 363, 1069, 4504, 2135, 0, 0, 14, 2710, 0, 0, 0, 0, 0, 0, 0, 0,
+    570, 1646, 1898, 1629, 2447, 3392, 2042, 3339, 3558, 0, 1211, 0, 4098,
+    823, 4458, 769, 2006, 713, 2075, 4203, 1022, 473, 0, 0, 0, 0, 2260, 0,
+    1828, 0, 0, 4149, 3045, 0, 0, 0, 737, 969, 1363, 0, 2023, 0, 0, 0, 506,
+    0, 769, 2490, 0, 3727, 2502, 398, 4458, 3099, 290, 0, 2189, 0, 0, 2989,
+    341, 0, 0, 1027, 0, 3735, 2769, 0, 0, 3295, 3085, 0, 1086, 3941, 0,
+    2705, 2498, 4322, 0, 443, 3826, 2522, 0, 3573, 0, 1307, 0, 3952, 4241,
+    1247, 3706, 2473, 0, 2348, 1670, 2459, 2550, 3385, 0, 0, 775, 146,
+    1686, 395, 0, 4205, 1124, 1094, 0, 1659, 2859, 0, 1665, 0, 1895, 3863,
+    0, 0, 0, 0, 297, 4582, 0, 0, 996, 383, 574, 0, 4303, 43, 0, 1856, 0,
+    2077, 0, 4514, 0, 0, 3951, 676, 0, 1034, 0, 0, 4593, 2531, 1004, 0,
+    3690, 2346, 2118, 0, 0, 1404, 1847, 1314, 1432, 0, 0, 1244, 4102, 2144,
+    0, 2519, 0, 0, 0, 0, 3586, 0, 2546, 1091, 0, 4409, 1209, 1499, 0, 1230,
+    0, 4567, 2002, 2771, 1842, 4401, 4233, 105, 1301, 0, 1384, 3982, 0,
+    150, 0, 1348, 4226, 227, 0, 2967, 1075, 2788, 0, 0, 1149, 2038, 0, 0,
+    0, 729, 0, 497, 1722, 3650, 3209, 0, 0, 3781, 3878, 3680, 427, 0, 0, 0,
+    2638, 0, 1333, 3982, 1207, 2012, 2123, 3940, 2236, 3154, 0, 349, 2511,
+    1178, 1494, 1810, 0, 633, 815, 2036, 1517, 2331, 1323, 558, 0, 379,
+    3292, 168, 33, 160, 4506, 2957, 0, 1528, 376, 4135, 384, 0, 606, 70,
+    280, 230, 0, 2287, 0, 0, 2325, 0, 0, 0, 4169, 1721, 0, 2748, 0, 3386,
+    1184, 2070, 206, 1662, 822, 0, 2269, 1869, 1017, 3519, 3108, 374, 0,
+    3165, 2065, 0, 3353, 0, 222, 1632, 994, 0, 1852, 2137, 3869, 0, 238, 0,
+    0, 302, 0, 0, 0, 1542, 343, 1115, 1235, 0, 0, 0, 1378, 0, 0, 3165, 0,
+    695, 0, 1598, 4012, 1057, 647, 0, 0, 1018, 4569, 3255, 16, 2450, 475,
+    0, 0, 0, 441, 4011, 2980, 3168, 3720, 1181, 0, 225, 0, 2338, 1397, 0,
+    0, 3219, 2458, 49, 1901, 0, 0, 0, 0, 2523, 4029, 0, 2461, 1060, 1109,
+    1741, 406, 1732, 1096, 0, 2520, 868, 0, 2627, 4381, 885, 762, 0, 3526,
+    1637, 3647, 3305, 763, 103, 0, 0, 0, 0, 0, 0, 142, 2924, 207, 1429,
+    3927, 0, 3233, 0, 0, 4093, 0, 636, 335, 0, 0, 1598, 0, 816, 2680, 3851,
+    0, 0, 999, 847, 1606, 3547, 126, 3967, 3377, 3885, 0, 0, 3848, 0, 2320,
+    4230, 2332, 0, 2339, 0, 0, 2878, 0, 230, 0, 3707, 0, 0, 2994, 4407, 28,
+    487, 1244, 477, 0, 442, 1548, 2412, 2368, 2265, 0, 469, 4399, 0, 4251,
+    626, 885, 421, 0, 1129, 0, 1654, 0, 3616, 2046, 1146, 3523, 0, 4130,
+    12, 2583, 0, 0, 1909, 3377, 241, 343, 771, 957, 0, 1031, 0, 0, 2541,
+    253, 1050, 3224, 566, 2010, 799, 0, 0, 0, 0, 604, 0, 647, 0, 0, 4524,
+    3830, 3561, 4349, 1805, 0, 2081, 0, 422, 1064, 3649, 0, 0, 2158, 955,
+    519, 4012, 0, 0, 102, 515, 1295, 2566, 0, 1186, 200, 1024, 1122, 1254,
+    2513, 0, 485, 431, 1833, 0, 2078, 15, 1949, 2097, 0, 0, 0, 0, 0, 4402,
+    0, 2272, 1210, 0, 0, 0, 4438, 1526, 2509, 2073, 816, 0, 916, 4308, 0,
+    3745, 590, 1528, 0, 0, 4601, 4144, 0, 3163, 4586, 0, 878, 1486, 1971,
+    447, 0, 1765, 1789, 2023, 1245, 2241, 0, 2948, 1999, 0, 1263, 0, 1391,
+    2292, 2644, 686, 2341, 2611, 2508, 1551, 0, 4482, 0, 4222, 523, 4355,
+    2099, 0, 1569, 1400, 692, 0, 4533, 0, 1109, 493, 3325, 3602, 0, 1595,
+    3850, 433, 1266, 798, 2992, 0, 3489, 0, 0, 0, 2045, 2174, 1861, 1284,
+    1570, 1959, 71, 0, 0, 2481, 1484, 1191, 117, 0, 0, 0, 459, 0, 3031,
+    986, 3121, 0, 1385, 1640, 1198, 610, 1100, 0, 2943, 2947, 0, 0, 0,
+    1487, 3675, 2471, 525, 2131, 0, 2273, 281, 0, 995, 1653, 856, 2151,
+    4340, 2292, 2485, 1696, 0, 0, 4507, 1863, 0, 827, 2903, 1049, 525,
+    1278, 1360, 980, 2547, 1003, 1827, 175, 1635, 1611, 1129, 0, 435, 3095,
+    892, 701, 0, 3633, 629, 0, 0, 0, 0, 1395, 0, 2148, 3281, 439, 0, 0,
+    2176, 0, 2077, 0, 230, 872, 1825, 0, 2206, 131, 301, 91, 1794, 2044,
+    3945, 4099, 4547, 1759, 4596, 605, 4242, 0, 0, 0, 0, 1739, 1394, 0, 0,
+    1773, 1807, 3755, 1506, 3059, 2210, 1813, 808, 4034, 543, 979, 2545, 0,
+    3461, 3518, 0, 3087, 0, 0, 1037, 529, 0, 1763, 0, 0, 1377, 2433, 4036,
+    125, 2705, 0, 352, 3929, 1154, 2468, 0, 0, 521, 1240, 0, 0, 1304, 0, 0,
+    0, 971, 0, 3620, 274, 4150, 3958, 967, 396, 0, 503, 2468, 3365, 2313,
+    1803, 0, 756, 4025, 1716, 0, 0, 0, 1900, 1017, 4532, 0, 455, 0, 4073,
+    0, 1986, 4291, 776, 0, 0, 391, 777, 245, 2963, 0, 3270, 1289, 2610,
+    1046, 1489, 0, 0, 0, 1791, 545, 1524, 746, 0, 856, 110, 3500, 367,
+    2119, 0, 0, 1476, 0, 2455, 225, 3464, 4260, 2138, 1249, 2700, 1426,
+    4544, 1411, 0, 0, 0, 742, 1164, 0, 846, 2045, 1751, 2350, 1083, 2957,
+    1752, 0, 2171, 4275, 1771, 0, 614, 662, 0, 1392, 3732, 472, 299, 0,
+    904, 2849, 0, 0, 697, 4435, 0, 0, 3948, 2003, 2162, 0, 4421, 1283,
+    4151, 2263, 13, 2213, 181, 60, 2142, 3274, 2032, 1505, 3495, 0, 0,
+    1518, 0, 1337, 3207, 0, 3629, 0, 0, 1863, 286, 2822, 900, 4175, 3477,
+    0, 131, 4409, 0, 0, 0, 265, 4536, 1399, 695, 0, 0, 2226, 294, 0, 2961,
+    4125, 1549, 1687, 1821, 29, 3797, 1752, 3941, 1169, 2171, 1858, 0, 0,
+    0, 0, 1150, 0, 0, 0, 2297, 0, 0, 352, 0, 896, 0, 1132, 985, 3313, 1806,
+    0, 2862, 0, 397, 4019, 4097, 777, 0, 0, 4540, 0, 3286, 2538, 2945,
+    2155, 1463, 4000, 0, 3062, 2156, 0, 0, 2986, 0, 0, 0, 0, 674, 0, 895,
+    435, 2088, 1738, 1492, 0, 3785, 0, 0, 2578, 263, 3777, 3857, 1473, 0,
+    0, 3348, 0, 501, 2377, 1585, 2405, 1681, 0, 821, 0, 1022, 3372, 901,
+    63, 1380, 0, 2153, 2631, 1309, 0, 179, 500, 3940, 0, 0, 637, 203, 770,
+    0, 1897, 2910, 2892, 174, 0, 0, 236, 0, 0, 3752, 0, 0, 2330, 0, 0, 465,
+    1126, 829, 0, 0, 0, 0, 0, 145, 4336, 386, 1848, 0, 0, 530, 1195, 0,
+    1124, 634, 3351
 };
 
 static size_t
@@ -2868,17 +2892,17 @@ keysym_name_hash_f(const char *key, const char *T)
 {
     size_t sum = 0;
     for (size_t i = 0; key[i] != '\0'; i++)
-        sum += T[i % 27] * key[i];
-    return sum % 4573;
+        sum += T[i % 32] * key[i];
+    return sum % 4613;
 }
 
 static size_t
 keysym_name_perfect_hash(const char *key)
 {
     return (
-        keysym_name_G[keysym_name_hash_f(key, "SkOf3HuNA56PIk6hejYLO1rtnca")] +
-        keysym_name_G[keysym_name_hash_f(key, "vRGsBGmF6OJG3WFF6jLu5nTcL4c")]
-    ) % 4573;
+        keysym_name_G[keysym_name_hash_f(key, "9Vee7ufycLGTZrwfm1LysA4Nmxu1thxU")] +
+        keysym_name_G[keysym_name_hash_f(key, "nljAj6I9jqQdDIOT7KCyZ3mT2nHoDcln")]
+    ) % 4613;
 }
 
 
@@ -3628,1837 +3652,1858 @@ static const struct name_keysym name_to_keysym[] = {
     { 0x0000fe56, 10537 }, /* dead_abovedot */
     { 0x0000fe65, 10551 }, /* dead_abovereversedcomma */
     { 0x0000fe58, 10575 }, /* dead_abovering */
-    { 0x0000fe91, 10590 }, /* dead_aboveverticalline */
-    { 0x0000fe51, 10613 }, /* dead_acute */
-    { 0x0000fe6b, 10624 }, /* dead_belowbreve */
-    { 0x0000fe69, 10640 }, /* dead_belowcircumflex */
-    { 0x0000fe6e, 10661 }, /* dead_belowcomma */
-    { 0x0000fe6c, 10677 }, /* dead_belowdiaeresis */
-    { 0x0000fe60, 10697 }, /* dead_belowdot */
-    { 0x0000fe68, 10711 }, /* dead_belowmacron */
-    { 0x0000fe67, 10728 }, /* dead_belowring */
-    { 0x0000fe6a, 10743 }, /* dead_belowtilde */
-    { 0x0000fe92, 10759 }, /* dead_belowverticalline */
-    { 0x0000fe55, 10782 }, /* dead_breve */
-    { 0x0000fe8b, 10793 }, /* dead_capital_schwa */
-    { 0x0000fe5a, 10812 }, /* dead_caron */
-    { 0x0000fe5b, 10823 }, /* dead_cedilla */
-    { 0x0000fe52, 10836 }, /* dead_circumflex */
-    { 0x0000fe6f, 10852 }, /* dead_currency */
-    { 0x0000fe65, 10866 }, /* dead_dasia */
-    { 0x0000fe57, 10877 }, /* dead_diaeresis */
-    { 0x0000fe59, 10892 }, /* dead_doubleacute */
-    { 0x0000fe66, 10909 }, /* dead_doublegrave */
-    { 0x0000fe82, 10926 }, /* dead_e */
-    { 0x0000fe83, 10933 }, /* dead_E */
-    { 0x0000fe50, 10940 }, /* dead_grave */
-    { 0x0000fe8c, 10951 }, /* dead_greek */
-    { 0x0000fe61, 10962 }, /* dead_hook */
-    { 0x0000fe62, 10972 }, /* dead_horn */
-    { 0x0000fe84, 10982 }, /* dead_i */
-    { 0x0000fe85, 10989 }, /* dead_I */
-    { 0x0000fe6d, 10996 }, /* dead_invertedbreve */
-    { 0x0000fe5d, 11015 }, /* dead_iota */
-    { 0x0000fe93, 11025 }, /* dead_longsolidusoverlay */
-    { 0x0000fe90, 11049 }, /* dead_lowline */
-    { 0x0000fe54, 11062 }, /* dead_macron */
-    { 0x0000fe86, 11074 }, /* dead_o */
-    { 0x0000fe87, 11081 }, /* dead_O */
-    { 0x0000fe5c, 11088 }, /* dead_ogonek */
-    { 0x0000fe53, 11100 }, /* dead_perispomeni */
-    { 0x0000fe64, 11117 }, /* dead_psili */
-    { 0x0000fe5f, 11128 }, /* dead_semivoiced_sound */
-    { 0x0000fe8a, 11150 }, /* dead_small_schwa */
-    { 0x0000fe63, 11167 }, /* dead_stroke */
-    { 0x0000fe53, 11179 }, /* dead_tilde */
-    { 0x0000fe88, 11190 }, /* dead_u */
-    { 0x0000fe89, 11197 }, /* dead_U */
-    { 0x0000fe5e, 11204 }, /* dead_voiced_sound */
-    { 0x00000abd, 11222 }, /* decimalpoint */
-    { 0x000000b0, 11235 }, /* degree */
-    { 0x0000ffff, 11242 }, /* Delete */
-    { 0x1000ff73, 11249 }, /* DeleteChar */
-    { 0x1000ff71, 11260 }, /* DeleteLine */
-    { 0x1000fe60, 11271 }, /* Dgrave_accent */
-    { 0x000000a8, 11285 }, /* diaeresis */
-    { 0x00000aed, 11295 }, /* diamond */
-    { 0x00000aa5, 11303 }, /* digitspace */
-    { 0x0100222c, 11314 }, /* dintegral */
-    { 0x000000f7, 11324 }, /* division */
-    { 0x00000024, 11333 }, /* dollar */
-    { 0x010020ab, 11340 }, /* DongSign */
-    { 0x00000aaf, 11349 }, /* doubbaselinedot */
-    { 0x000001bd, 11365 }, /* doubleacute */
-    { 0x00000af2, 11377 }, /* doubledagger */
-    { 0x00000afe, 11390 }, /* doublelowquotemark */
-    { 0x0000ff54, 11409 }, /* Down */
-    { 0x000008fe, 11414 }, /* downarrow */
-    { 0x00000ba8, 11424 }, /* downcaret */
-    { 0x00000bd6, 11434 }, /* downshoe */
-    { 0x00000bc4, 11443 }, /* downstile */
-    { 0x00000bc2, 11453 }, /* downtack */
-    { 0x1000ff00, 11462 }, /* DRemove */
-    { 0x1000feb0, 11470 }, /* Dring_accent */
-    { 0x000001d0, 11483 }, /* Dstroke */
-    { 0x000001f0, 11491 }, /* dstroke */
-    { 0x1000fe7e, 11499 }, /* Dtilde */
-    { 0x00000045, 11506 }, /* E */
-    { 0x00000065, 11508 }, /* e */
-    { 0x000003cc, 11510 }, /* Eabovedot */
-    { 0x000003ec, 11520 }, /* eabovedot */
-    { 0x000000c9, 11530 }, /* Eacute */
-    { 0x000000e9, 11537 }, /* eacute */
-    { 0x01001eb8, 11544 }, /* Ebelowdot */
-    { 0x01001eb9, 11554 }, /* ebelowdot */
-    { 0x000001cc, 11564 }, /* Ecaron */
-    { 0x000001ec, 11571 }, /* ecaron */
-    { 0x000000ca, 11578 }, /* Ecircumflex */
-    { 0x000000ea, 11590 }, /* ecircumflex */
-    { 0x01001ebe, 11602 }, /* Ecircumflexacute */
-    { 0x01001ebf, 11619 }, /* ecircumflexacute */
-    { 0x01001ec6, 11636 }, /* Ecircumflexbelowdot */
-    { 0x01001ec7, 11656 }, /* ecircumflexbelowdot */
-    { 0x01001ec0, 11676 }, /* Ecircumflexgrave */
-    { 0x01001ec1, 11693 }, /* ecircumflexgrave */
-    { 0x01001ec2, 11710 }, /* Ecircumflexhook */
-    { 0x01001ec3, 11726 }, /* ecircumflexhook */
-    { 0x01001ec4, 11742 }, /* Ecircumflextilde */
-    { 0x01001ec5, 11759 }, /* ecircumflextilde */
-    { 0x010020a0, 11776 }, /* EcuSign */
-    { 0x000000cb, 11784 }, /* Ediaeresis */
-    { 0x000000eb, 11795 }, /* ediaeresis */
-    { 0x000000c8, 11806 }, /* Egrave */
-    { 0x000000e8, 11813 }, /* egrave */
-    { 0x01001eba, 11820 }, /* Ehook */
-    { 0x01001ebb, 11826 }, /* ehook */
-    { 0x01002088, 11832 }, /* eightsubscript */
-    { 0x01002078, 11847 }, /* eightsuperior */
-    { 0x0000ff2f, 11861 }, /* Eisu_Shift */
-    { 0x0000ff30, 11872 }, /* Eisu_toggle */
-    { 0x01002208, 11884 }, /* elementof */
-    { 0x00000aae, 11894 }, /* ellipsis */
-    { 0x00000aa3, 11903 }, /* em3space */
-    { 0x00000aa4, 11912 }, /* em4space */
-    { 0x000003aa, 11921 }, /* Emacron */
-    { 0x000003ba, 11929 }, /* emacron */
-    { 0x00000aa9, 11937 }, /* emdash */
-    { 0x00000ade, 11944 }, /* emfilledcircle */
-    { 0x00000adf, 11959 }, /* emfilledrect */
-    { 0x00000ace, 11972 }, /* emopencircle */
-    { 0x00000acf, 11985 }, /* emopenrectangle */
-    { 0x01002205, 12001 }, /* emptyset */
-    { 0x00000aa1, 12010 }, /* emspace */
-    { 0x0000ff57, 12018 }, /* End */
-    { 0x00000aaa, 12022 }, /* endash */
-    { 0x00000ae6, 12029 }, /* enfilledcircbullet */
-    { 0x00000ae7, 12048 }, /* enfilledsqbullet */
-    { 0x000003bd, 12065 }, /* ENG */
-    { 0x000003bf, 12069 }, /* eng */
-    { 0x00000ae0, 12073 }, /* enopencircbullet */
-    { 0x00000ae1, 12090 }, /* enopensquarebullet */
-    { 0x00000aa2, 12109 }, /* enspace */
-    { 0x000001ca, 12117 }, /* Eogonek */
-    { 0x000001ea, 12125 }, /* eogonek */
-    { 0x0000003d, 12133 }, /* equal */
-    { 0x0000ff1b, 12139 }, /* Escape */
-    { 0x000000d0, 12146 }, /* ETH */
-    { 0x000000d0, 12150 }, /* Eth */
-    { 0x000000f0, 12154 }, /* eth */
-    { 0x01001ebc, 12158 }, /* Etilde */
-    { 0x01001ebd, 12165 }, /* etilde */
-    { 0x000020ac, 12172 }, /* EuroSign */
-    { 0x00000021, 12181 }, /* exclam */
-    { 0x000000a1, 12188 }, /* exclamdown */
-    { 0x0000ff62, 12199 }, /* Execute */
-    { 0x1000ff76, 12207 }, /* Ext16bit_L */
-    { 0x1000ff77, 12218 }, /* Ext16bit_R */
-    { 0x010001b7, 12229 }, /* EZH */
-    { 0x01000292, 12233 }, /* ezh */
-    { 0x00000046, 12237 }, /* F */
-    { 0x00000066, 12239 }, /* f */
-    { 0x0000ffbe, 12241 }, /* F1 */
-    { 0x0000ffc7, 12244 }, /* F10 */
-    { 0x0000ffc8, 12248 }, /* F11 */
-    { 0x0000ffc9, 12252 }, /* F12 */
-    { 0x0000ffca, 12256 }, /* F13 */
-    { 0x0000ffcb, 12260 }, /* F14 */
-    { 0x0000ffcc, 12264 }, /* F15 */
-    { 0x0000ffcd, 12268 }, /* F16 */
-    { 0x0000ffce, 12272 }, /* F17 */
-    { 0x0000ffcf, 12276 }, /* F18 */
-    { 0x0000ffd0, 12280 }, /* F19 */
-    { 0x0000ffbf, 12284 }, /* F2 */
-    { 0x0000ffd1, 12287 }, /* F20 */
-    { 0x0000ffd2, 12291 }, /* F21 */
-    { 0x0000ffd3, 12295 }, /* F22 */
-    { 0x0000ffd4, 12299 }, /* F23 */
-    { 0x0000ffd5, 12303 }, /* F24 */
-    { 0x0000ffd6, 12307 }, /* F25 */
-    { 0x0000ffd7, 12311 }, /* F26 */
-    { 0x0000ffd8, 12315 }, /* F27 */
-    { 0x0000ffd9, 12319 }, /* F28 */
-    { 0x0000ffda, 12323 }, /* F29 */
-    { 0x0000ffc0, 12327 }, /* F3 */
-    { 0x0000ffdb, 12330 }, /* F30 */
-    { 0x0000ffdc, 12334 }, /* F31 */
-    { 0x0000ffdd, 12338 }, /* F32 */
-    { 0x0000ffde, 12342 }, /* F33 */
-    { 0x0000ffdf, 12346 }, /* F34 */
-    { 0x0000ffe0, 12350 }, /* F35 */
-    { 0x0000ffc1, 12354 }, /* F4 */
-    { 0x0000ffc2, 12357 }, /* F5 */
-    { 0x0000ffc3, 12360 }, /* F6 */
-    { 0x0000ffc4, 12363 }, /* F7 */
-    { 0x0000ffc5, 12366 }, /* F8 */
-    { 0x0000ffc6, 12369 }, /* F9 */
-    { 0x01001e1e, 12372 }, /* Fabovedot */
-    { 0x01001e1f, 12382 }, /* fabovedot */
-    { 0x010006f0, 12392 }, /* Farsi_0 */
-    { 0x010006f1, 12400 }, /* Farsi_1 */
-    { 0x010006f2, 12408 }, /* Farsi_2 */
-    { 0x010006f3, 12416 }, /* Farsi_3 */
-    { 0x010006f4, 12424 }, /* Farsi_4 */
-    { 0x010006f5, 12432 }, /* Farsi_5 */
-    { 0x010006f6, 12440 }, /* Farsi_6 */
-    { 0x010006f7, 12448 }, /* Farsi_7 */
-    { 0x010006f8, 12456 }, /* Farsi_8 */
-    { 0x010006f9, 12464 }, /* Farsi_9 */
-    { 0x010006cc, 12472 }, /* Farsi_yeh */
-    { 0x00000af8, 12482 }, /* femalesymbol */
-    { 0x000009e3, 12495 }, /* ff */
-    { 0x010020a3, 12498 }, /* FFrancSign */
-    { 0x00000abb, 12509 }, /* figdash */
-    { 0x00000adc, 12517 }, /* filledlefttribullet */
-    { 0x00000adb, 12537 }, /* filledrectbullet */
-    { 0x00000add, 12554 }, /* filledrighttribullet */
-    { 0x00000ae9, 12575 }, /* filledtribulletdown */
-    { 0x00000ae8, 12595 }, /* filledtribulletup */
-    { 0x0000ff68, 12613 }, /* Find */
-    { 0x0000fed0, 12618 }, /* First_Virtual_Screen */
-    { 0x00000ac5, 12639 }, /* fiveeighths */
-    { 0x00000ab7, 12651 }, /* fivesixths */
-    { 0x01002085, 12662 }, /* fivesubscript */
-    { 0x01002075, 12676 }, /* fivesuperior */
-    { 0x00000ab5, 12689 }, /* fourfifths */
-    { 0x01002084, 12700 }, /* foursubscript */
-    { 0x01002074, 12714 }, /* foursuperior */
-    { 0x0100221c, 12727 }, /* fourthroot */
-    { 0x000008f6, 12738 }, /* function */
-    { 0x00000047, 12747 }, /* G */
-    { 0x00000067, 12749 }, /* g */
-    { 0x000002d5, 12751 }, /* Gabovedot */
-    { 0x000002f5, 12761 }, /* gabovedot */
-    { 0x000002ab, 12771 }, /* Gbreve */
-    { 0x000002bb, 12778 }, /* gbreve */
-    { 0x010001e6, 12785 }, /* Gcaron */
-    { 0x010001e7, 12792 }, /* gcaron */
-    { 0x000003ab, 12799 }, /* Gcedilla */
-    { 0x000003bb, 12808 }, /* gcedilla */
-    { 0x000002d8, 12817 }, /* Gcircumflex */
-    { 0x000002f8, 12829 }, /* gcircumflex */
-    { 0x010010d0, 12841 }, /* Georgian_an */
-    { 0x010010d1, 12853 }, /* Georgian_ban */
-    { 0x010010ea, 12866 }, /* Georgian_can */
-    { 0x010010ed, 12879 }, /* Georgian_char */
-    { 0x010010e9, 12893 }, /* Georgian_chin */
-    { 0x010010ec, 12907 }, /* Georgian_cil */
-    { 0x010010d3, 12920 }, /* Georgian_don */
-    { 0x010010d4, 12933 }, /* Georgian_en */
-    { 0x010010f6, 12945 }, /* Georgian_fi */
-    { 0x010010d2, 12957 }, /* Georgian_gan */
-    { 0x010010e6, 12970 }, /* Georgian_ghan */
-    { 0x010010f0, 12984 }, /* Georgian_hae */
-    { 0x010010f4, 12997 }, /* Georgian_har */
-    { 0x010010f1, 13010 }, /* Georgian_he */
-    { 0x010010f2, 13022 }, /* Georgian_hie */
-    { 0x010010f5, 13035 }, /* Georgian_hoe */
-    { 0x010010d8, 13048 }, /* Georgian_in */
-    { 0x010010ef, 13060 }, /* Georgian_jhan */
-    { 0x010010eb, 13074 }, /* Georgian_jil */
-    { 0x010010d9, 13087 }, /* Georgian_kan */
-    { 0x010010e5, 13100 }, /* Georgian_khar */
-    { 0x010010da, 13114 }, /* Georgian_las */
-    { 0x010010db, 13127 }, /* Georgian_man */
-    { 0x010010dc, 13140 }, /* Georgian_nar */
-    { 0x010010dd, 13153 }, /* Georgian_on */
-    { 0x010010de, 13165 }, /* Georgian_par */
-    { 0x010010e4, 13178 }, /* Georgian_phar */
-    { 0x010010e7, 13192 }, /* Georgian_qar */
-    { 0x010010e0, 13205 }, /* Georgian_rae */
-    { 0x010010e1, 13218 }, /* Georgian_san */
-    { 0x010010e8, 13231 }, /* Georgian_shin */
-    { 0x010010d7, 13245 }, /* Georgian_tan */
-    { 0x010010e2, 13258 }, /* Georgian_tar */
-    { 0x010010e3, 13271 }, /* Georgian_un */
-    { 0x010010d5, 13283 }, /* Georgian_vin */
-    { 0x010010f3, 13296 }, /* Georgian_we */
-    { 0x010010ee, 13308 }, /* Georgian_xan */
-    { 0x010010d6, 13321 }, /* Georgian_zen */
-    { 0x010010df, 13334 }, /* Georgian_zhar */
-    { 0x00000060, 13348 }, /* grave */
-    { 0x0000003e, 13354 }, /* greater */
-    { 0x000008be, 13362 }, /* greaterthanequal */
-    { 0x000007ae, 13379 }, /* Greek_accentdieresis */
-    { 0x000007c1, 13400 }, /* Greek_ALPHA */
-    { 0x000007e1, 13412 }, /* Greek_alpha */
-    { 0x000007a1, 13424 }, /* Greek_ALPHAaccent */
-    { 0x000007b1, 13442 }, /* Greek_alphaaccent */
-    { 0x000007c2, 13460 }, /* Greek_BETA */
-    { 0x000007e2, 13471 }, /* Greek_beta */
-    { 0x000007d7, 13482 }, /* Greek_CHI */
-    { 0x000007f7, 13492 }, /* Greek_chi */
-    { 0x000007c4, 13502 }, /* Greek_DELTA */
-    { 0x000007e4, 13514 }, /* Greek_delta */
-    { 0x000007c5, 13526 }, /* Greek_EPSILON */
-    { 0x000007e5, 13540 }, /* Greek_epsilon */
-    { 0x000007a2, 13554 }, /* Greek_EPSILONaccent */
-    { 0x000007b2, 13574 }, /* Greek_epsilonaccent */
-    { 0x000007c7, 13594 }, /* Greek_ETA */
-    { 0x000007e7, 13604 }, /* Greek_eta */
-    { 0x000007a3, 13614 }, /* Greek_ETAaccent */
-    { 0x000007b3, 13630 }, /* Greek_etaaccent */
-    { 0x000007f3, 13646 }, /* Greek_finalsmallsigma */
-    { 0x000007c3, 13668 }, /* Greek_GAMMA */
-    { 0x000007e3, 13680 }, /* Greek_gamma */
-    { 0x000007af, 13692 }, /* Greek_horizbar */
-    { 0x000007c9, 13707 }, /* Greek_IOTA */
-    { 0x000007e9, 13718 }, /* Greek_iota */
-    { 0x000007a4, 13729 }, /* Greek_IOTAaccent */
-    { 0x000007b4, 13746 }, /* Greek_iotaaccent */
-    { 0x000007b6, 13763 }, /* Greek_iotaaccentdieresis */
-    { 0x000007a5, 13788 }, /* Greek_IOTAdiaeresis */
-    { 0x000007a5, 13808 }, /* Greek_IOTAdieresis */
-    { 0x000007b5, 13827 }, /* Greek_iotadieresis */
-    { 0x000007ca, 13846 }, /* Greek_KAPPA */
-    { 0x000007ea, 13858 }, /* Greek_kappa */
-    { 0x000007cb, 13870 }, /* Greek_LAMBDA */
-    { 0x000007eb, 13883 }, /* Greek_lambda */
-    { 0x000007cb, 13896 }, /* Greek_LAMDA */
-    { 0x000007eb, 13908 }, /* Greek_lamda */
-    { 0x000007cc, 13920 }, /* Greek_MU */
-    { 0x000007ec, 13929 }, /* Greek_mu */
-    { 0x000007cd, 13938 }, /* Greek_NU */
-    { 0x000007ed, 13947 }, /* Greek_nu */
-    { 0x000007d9, 13956 }, /* Greek_OMEGA */
-    { 0x000007f9, 13968 }, /* Greek_omega */
-    { 0x000007ab, 13980 }, /* Greek_OMEGAaccent */
-    { 0x000007bb, 13998 }, /* Greek_omegaaccent */
-    { 0x000007cf, 14016 }, /* Greek_OMICRON */
-    { 0x000007ef, 14030 }, /* Greek_omicron */
-    { 0x000007a7, 14044 }, /* Greek_OMICRONaccent */
-    { 0x000007b7, 14064 }, /* Greek_omicronaccent */
-    { 0x000007d6, 14084 }, /* Greek_PHI */
-    { 0x000007f6, 14094 }, /* Greek_phi */
-    { 0x000007d0, 14104 }, /* Greek_PI */
-    { 0x000007f0, 14113 }, /* Greek_pi */
-    { 0x000007d8, 14122 }, /* Greek_PSI */
-    { 0x000007f8, 14132 }, /* Greek_psi */
-    { 0x000007d1, 14142 }, /* Greek_RHO */
-    { 0x000007f1, 14152 }, /* Greek_rho */
-    { 0x000007d2, 14162 }, /* Greek_SIGMA */
-    { 0x000007f2, 14174 }, /* Greek_sigma */
-    { 0x0000ff7e, 14186 }, /* Greek_switch */
-    { 0x000007d4, 14199 }, /* Greek_TAU */
-    { 0x000007f4, 14209 }, /* Greek_tau */
-    { 0x000007c8, 14219 }, /* Greek_THETA */
-    { 0x000007e8, 14231 }, /* Greek_theta */
-    { 0x000007d5, 14243 }, /* Greek_UPSILON */
-    { 0x000007f5, 14257 }, /* Greek_upsilon */
-    { 0x000007a8, 14271 }, /* Greek_UPSILONaccent */
-    { 0x000007b8, 14291 }, /* Greek_upsilonaccent */
-    { 0x000007ba, 14311 }, /* Greek_upsilonaccentdieresis */
-    { 0x000007a9, 14339 }, /* Greek_UPSILONdieresis */
-    { 0x000007b9, 14361 }, /* Greek_upsilondieresis */
-    { 0x000007ce, 14383 }, /* Greek_XI */
-    { 0x000007ee, 14392 }, /* Greek_xi */
-    { 0x000007c6, 14401 }, /* Greek_ZETA */
-    { 0x000007e6, 14412 }, /* Greek_zeta */
-    { 0x100000be, 14423 }, /* guilder */
-    { 0x000000ab, 14431 }, /* guillemotleft */
-    { 0x000000bb, 14445 }, /* guillemotright */
-    { 0x00000048, 14460 }, /* H */
-    { 0x00000068, 14462 }, /* h */
-    { 0x00000aa8, 14464 }, /* hairspace */
-    { 0x0000ff31, 14474 }, /* Hangul */
-    { 0x00000ebf, 14481 }, /* Hangul_A */
-    { 0x00000ec0, 14490 }, /* Hangul_AE */
-    { 0x00000ef6, 14500 }, /* Hangul_AraeA */
-    { 0x00000ef7, 14513 }, /* Hangul_AraeAE */
-    { 0x0000ff39, 14527 }, /* Hangul_Banja */
-    { 0x00000eba, 14540 }, /* Hangul_Cieuc */
-    { 0x0000ff37, 14553 }, /* Hangul_Codeinput */
-    { 0x00000ea7, 14570 }, /* Hangul_Dikeud */
-    { 0x00000ec4, 14584 }, /* Hangul_E */
-    { 0x0000ff33, 14593 }, /* Hangul_End */
-    { 0x00000ec3, 14604 }, /* Hangul_EO */
-    { 0x00000ed1, 14614 }, /* Hangul_EU */
-    { 0x0000ff34, 14624 }, /* Hangul_Hanja */
-    { 0x00000ebe, 14637 }, /* Hangul_Hieuh */
-    { 0x00000ed3, 14650 }, /* Hangul_I */
-    { 0x00000eb7, 14659 }, /* Hangul_Ieung */
-    { 0x00000eea, 14672 }, /* Hangul_J_Cieuc */
-    { 0x00000eda, 14687 }, /* Hangul_J_Dikeud */
-    { 0x00000eee, 14703 }, /* Hangul_J_Hieuh */
-    { 0x00000ee8, 14718 }, /* Hangul_J_Ieung */
-    { 0x00000ee9, 14733 }, /* Hangul_J_Jieuj */
-    { 0x00000eeb, 14748 }, /* Hangul_J_Khieuq */
-    { 0x00000ed4, 14764 }, /* Hangul_J_Kiyeog */
-    { 0x00000ed6, 14780 }, /* Hangul_J_KiyeogSios */
-    { 0x00000ef9, 14800 }, /* Hangul_J_KkogjiDalrinIeung */
-    { 0x00000ee3, 14827 }, /* Hangul_J_Mieum */
-    { 0x00000ed7, 14842 }, /* Hangul_J_Nieun */
-    { 0x00000ed9, 14857 }, /* Hangul_J_NieunHieuh */
-    { 0x00000ed8, 14877 }, /* Hangul_J_NieunJieuj */
-    { 0x00000ef8, 14897 }, /* Hangul_J_PanSios */
-    { 0x00000eed, 14914 }, /* Hangul_J_Phieuf */
-    { 0x00000ee4, 14930 }, /* Hangul_J_Pieub */
-    { 0x00000ee5, 14945 }, /* Hangul_J_PieubSios */
-    { 0x00000edb, 14964 }, /* Hangul_J_Rieul */
-    { 0x00000ee2, 14979 }, /* Hangul_J_RieulHieuh */
-    { 0x00000edc, 14999 }, /* Hangul_J_RieulKiyeog */
-    { 0x00000edd, 15020 }, /* Hangul_J_RieulMieum */
-    { 0x00000ee1, 15040 }, /* Hangul_J_RieulPhieuf */
-    { 0x00000ede, 15061 }, /* Hangul_J_RieulPieub */
-    { 0x00000edf, 15081 }, /* Hangul_J_RieulSios */
-    { 0x00000ee0, 15100 }, /* Hangul_J_RieulTieut */
-    { 0x00000ee6, 15120 }, /* Hangul_J_Sios */
-    { 0x00000ed5, 15134 }, /* Hangul_J_SsangKiyeog */
-    { 0x00000ee7, 15155 }, /* Hangul_J_SsangSios */
-    { 0x00000eec, 15174 }, /* Hangul_J_Tieut */
-    { 0x00000efa, 15189 }, /* Hangul_J_YeorinHieuh */
-    { 0x0000ff35, 15210 }, /* Hangul_Jamo */
-    { 0x0000ff38, 15222 }, /* Hangul_Jeonja */
-    { 0x00000eb8, 15236 }, /* Hangul_Jieuj */
-    { 0x00000ebb, 15249 }, /* Hangul_Khieuq */
-    { 0x00000ea1, 15263 }, /* Hangul_Kiyeog */
-    { 0x00000ea3, 15277 }, /* Hangul_KiyeogSios */
-    { 0x00000ef3, 15295 }, /* Hangul_KkogjiDalrinIeung */
-    { 0x00000eb1, 15320 }, /* Hangul_Mieum */
-    { 0x0000ff3d, 15333 }, /* Hangul_MultipleCandidate */
-    { 0x00000ea4, 15358 }, /* Hangul_Nieun */
-    { 0x00000ea6, 15371 }, /* Hangul_NieunHieuh */
-    { 0x00000ea5, 15389 }, /* Hangul_NieunJieuj */
-    { 0x00000ec7, 15407 }, /* Hangul_O */
-    { 0x00000eca, 15416 }, /* Hangul_OE */
-    { 0x00000ef2, 15426 }, /* Hangul_PanSios */
-    { 0x00000ebd, 15441 }, /* Hangul_Phieuf */
-    { 0x00000eb2, 15455 }, /* Hangul_Pieub */
-    { 0x00000eb4, 15468 }, /* Hangul_PieubSios */
-    { 0x0000ff3b, 15485 }, /* Hangul_PostHanja */
-    { 0x0000ff3a, 15502 }, /* Hangul_PreHanja */
-    { 0x0000ff3e, 15518 }, /* Hangul_PreviousCandidate */
-    { 0x00000ea9, 15543 }, /* Hangul_Rieul */
-    { 0x00000eb0, 15556 }, /* Hangul_RieulHieuh */
-    { 0x00000eaa, 15574 }, /* Hangul_RieulKiyeog */
-    { 0x00000eab, 15593 }, /* Hangul_RieulMieum */
-    { 0x00000eaf, 15611 }, /* Hangul_RieulPhieuf */
-    { 0x00000eac, 15630 }, /* Hangul_RieulPieub */
-    { 0x00000ead, 15648 }, /* Hangul_RieulSios */
-    { 0x00000eae, 15665 }, /* Hangul_RieulTieut */
-    { 0x00000eef, 15683 }, /* Hangul_RieulYeorinHieuh */
-    { 0x0000ff36, 15707 }, /* Hangul_Romaja */
-    { 0x0000ff3c, 15721 }, /* Hangul_SingleCandidate */
-    { 0x00000eb5, 15744 }, /* Hangul_Sios */
-    { 0x0000ff3f, 15756 }, /* Hangul_Special */
-    { 0x00000ea8, 15771 }, /* Hangul_SsangDikeud */
-    { 0x00000eb9, 15790 }, /* Hangul_SsangJieuj */
-    { 0x00000ea2, 15808 }, /* Hangul_SsangKiyeog */
-    { 0x00000eb3, 15827 }, /* Hangul_SsangPieub */
-    { 0x00000eb6, 15845 }, /* Hangul_SsangSios */
-    { 0x0000ff32, 15862 }, /* Hangul_Start */
-    { 0x00000ef0, 15875 }, /* Hangul_SunkyeongeumMieum */
-    { 0x00000ef4, 15900 }, /* Hangul_SunkyeongeumPhieuf */
-    { 0x00000ef1, 15926 }, /* Hangul_SunkyeongeumPieub */
-    { 0x0000ff7e, 15951 }, /* Hangul_switch */
-    { 0x00000ebc, 15965 }, /* Hangul_Tieut */
-    { 0x00000ecc, 15978 }, /* Hangul_U */
-    { 0x00000ec8, 15987 }, /* Hangul_WA */
-    { 0x00000ec9, 15997 }, /* Hangul_WAE */
-    { 0x00000ece, 16008 }, /* Hangul_WE */
-    { 0x00000ecd, 16018 }, /* Hangul_WEO */
-    { 0x00000ecf, 16029 }, /* Hangul_WI */
-    { 0x00000ec1, 16039 }, /* Hangul_YA */
-    { 0x00000ec2, 16049 }, /* Hangul_YAE */
-    { 0x00000ec6, 16060 }, /* Hangul_YE */
-    { 0x00000ec5, 16070 }, /* Hangul_YEO */
-    { 0x00000ef5, 16081 }, /* Hangul_YeorinHieuh */
-    { 0x00000ed2, 16100 }, /* Hangul_YI */
-    { 0x00000ecb, 16110 }, /* Hangul_YO */
-    { 0x00000ed0, 16120 }, /* Hangul_YU */
-    { 0x0000ff29, 16130 }, /* Hankaku */
-    { 0x000002a6, 16138 }, /* Hcircumflex */
-    { 0x000002b6, 16150 }, /* hcircumflex */
-    { 0x00000aee, 16162 }, /* heart */
-    { 0x00000ce0, 16168 }, /* hebrew_aleph */
-    { 0x00000cf2, 16181 }, /* hebrew_ayin */
-    { 0x00000ce1, 16193 }, /* hebrew_bet */
-    { 0x00000ce1, 16204 }, /* hebrew_beth */
-    { 0x00000ce7, 16216 }, /* hebrew_chet */
-    { 0x00000ce3, 16228 }, /* hebrew_dalet */
-    { 0x00000ce3, 16241 }, /* hebrew_daleth */
-    { 0x00000cdf, 16255 }, /* hebrew_doublelowline */
-    { 0x00000cea, 16276 }, /* hebrew_finalkaph */
-    { 0x00000ced, 16293 }, /* hebrew_finalmem */
-    { 0x00000cef, 16309 }, /* hebrew_finalnun */
-    { 0x00000cf3, 16325 }, /* hebrew_finalpe */
-    { 0x00000cf5, 16340 }, /* hebrew_finalzade */
-    { 0x00000cf5, 16357 }, /* hebrew_finalzadi */
-    { 0x00000ce2, 16374 }, /* hebrew_gimel */
-    { 0x00000ce2, 16387 }, /* hebrew_gimmel */
-    { 0x00000ce4, 16401 }, /* hebrew_he */
-    { 0x00000ce7, 16411 }, /* hebrew_het */
-    { 0x00000ceb, 16422 }, /* hebrew_kaph */
-    { 0x00000cf7, 16434 }, /* hebrew_kuf */
-    { 0x00000cec, 16445 }, /* hebrew_lamed */
-    { 0x00000cee, 16458 }, /* hebrew_mem */
-    { 0x00000cf0, 16469 }, /* hebrew_nun */
-    { 0x00000cf4, 16480 }, /* hebrew_pe */
-    { 0x00000cf7, 16490 }, /* hebrew_qoph */
-    { 0x00000cf8, 16502 }, /* hebrew_resh */
-    { 0x00000cf1, 16514 }, /* hebrew_samech */
-    { 0x00000cf1, 16528 }, /* hebrew_samekh */
-    { 0x00000cf9, 16542 }, /* hebrew_shin */
-    { 0x0000ff7e, 16554 }, /* Hebrew_switch */
-    { 0x00000cfa, 16568 }, /* hebrew_taf */
-    { 0x00000cfa, 16579 }, /* hebrew_taw */
-    { 0x00000ce8, 16590 }, /* hebrew_tet */
-    { 0x00000ce8, 16601 }, /* hebrew_teth */
-    { 0x00000ce5, 16613 }, /* hebrew_waw */
-    { 0x00000ce9, 16624 }, /* hebrew_yod */
-    { 0x00000cf6, 16635 }, /* hebrew_zade */
-    { 0x00000cf6, 16647 }, /* hebrew_zadi */
-    { 0x00000ce6, 16659 }, /* hebrew_zain */
-    { 0x00000ce6, 16671 }, /* hebrew_zayin */
-    { 0x0000ff6a, 16684 }, /* Help */
-    { 0x0000ff23, 16689 }, /* Henkan */
-    { 0x0000ff23, 16696 }, /* Henkan_Mode */
-    { 0x00000ada, 16708 }, /* hexagram */
-    { 0x0000ff25, 16717 }, /* Hiragana */
-    { 0x0000ff27, 16726 }, /* Hiragana_Katakana */
-    { 0x0000ff50, 16744 }, /* Home */
-    { 0x000008a3, 16749 }, /* horizconnector */
-    { 0x000009ef, 16764 }, /* horizlinescan1 */
-    { 0x000009f0, 16779 }, /* horizlinescan3 */
-    { 0x000009f1, 16794 }, /* horizlinescan5 */
-    { 0x000009f2, 16809 }, /* horizlinescan7 */
-    { 0x000009f3, 16824 }, /* horizlinescan9 */
-    { 0x1000ff74, 16839 }, /* hpBackTab */
-    { 0x100000fc, 16849 }, /* hpblock */
-    { 0x1000ff6f, 16857 }, /* hpClearLine */
-    { 0x1000ff73, 16869 }, /* hpDeleteChar */
-    { 0x1000ff71, 16882 }, /* hpDeleteLine */
-    { 0x100000be, 16895 }, /* hpguilder */
-    { 0x1000ff72, 16905 }, /* hpInsertChar */
-    { 0x1000ff70, 16918 }, /* hpInsertLine */
-    { 0x100000ee, 16931 }, /* hpIO */
-    { 0x1000ff75, 16936 }, /* hpKP_BackTab */
-    { 0x100000af, 16949 }, /* hplira */
-    { 0x100000f6, 16956 }, /* hplongminus */
-    { 0x1000ff48, 16968 }, /* hpModelock1 */
-    { 0x1000ff49, 16980 }, /* hpModelock2 */
-    { 0x100000a8, 16992 }, /* hpmute_acute */
-    { 0x100000aa, 17005 }, /* hpmute_asciicircum */
-    { 0x100000ac, 17024 }, /* hpmute_asciitilde */
-    { 0x100000ab, 17042 }, /* hpmute_diaeresis */
-    { 0x100000a9, 17059 }, /* hpmute_grave */
-    { 0x1000ff6c, 17072 }, /* hpReset */
-    { 0x1000ff6d, 17080 }, /* hpSystem */
-    { 0x1000ff6e, 17089 }, /* hpUser */
-    { 0x100000ee, 17096 }, /* hpYdiaeresis */
-    { 0x000002a1, 17109 }, /* Hstroke */
-    { 0x000002b1, 17117 }, /* hstroke */
-    { 0x000009e2, 17125 }, /* ht */
-    { 0x0000ffed, 17128 }, /* Hyper_L */
-    { 0x0000ffee, 17136 }, /* Hyper_R */
-    { 0x000000ad, 17144 }, /* hyphen */
-    { 0x00000049, 17151 }, /* I */
-    { 0x00000069, 17153 }, /* i */
-    { 0x000002a9, 17155 }, /* Iabovedot */
-    { 0x000000cd, 17165 }, /* Iacute */
-    { 0x000000ed, 17172 }, /* iacute */
-    { 0x01001eca, 17179 }, /* Ibelowdot */
-    { 0x01001ecb, 17189 }, /* ibelowdot */
-    { 0x0100012c, 17199 }, /* Ibreve */
-    { 0x0100012d, 17206 }, /* ibreve */
-    { 0x000000ce, 17213 }, /* Icircumflex */
-    { 0x000000ee, 17225 }, /* icircumflex */
-    { 0x000008cf, 17237 }, /* identical */
-    { 0x000000cf, 17247 }, /* Idiaeresis */
-    { 0x000000ef, 17258 }, /* idiaeresis */
-    { 0x000002b9, 17269 }, /* idotless */
-    { 0x000008cd, 17278 }, /* ifonlyif */
-    { 0x000000cc, 17287 }, /* Igrave */
-    { 0x000000ec, 17294 }, /* igrave */
-    { 0x01001ec8, 17301 }, /* Ihook */
-    { 0x01001ec9, 17307 }, /* ihook */
-    { 0x000003cf, 17313 }, /* Imacron */
-    { 0x000003ef, 17321 }, /* imacron */
-    { 0x000008ce, 17329 }, /* implies */
-    { 0x000008da, 17337 }, /* includedin */
-    { 0x000008db, 17348 }, /* includes */
-    { 0x000008c2, 17357 }, /* infinity */
-    { 0x0000ff63, 17366 }, /* Insert */
-    { 0x1000ff72, 17373 }, /* InsertChar */
-    { 0x1000ff70, 17384 }, /* InsertLine */
-    { 0x000008bf, 17395 }, /* integral */
-    { 0x000008dc, 17404 }, /* intersection */
-    { 0x100000ee, 17417 }, /* IO */
-    { 0x000003c7, 17420 }, /* Iogonek */
-    { 0x000003e7, 17428 }, /* iogonek */
-    { 0x0000fe33, 17436 }, /* ISO_Center_Object */
-    { 0x0000fe30, 17454 }, /* ISO_Continuous_Underline */
-    { 0x0000fe31, 17479 }, /* ISO_Discontinuous_Underline */
-    { 0x0000fe32, 17507 }, /* ISO_Emphasize */
-    { 0x0000fe34, 17521 }, /* ISO_Enter */
-    { 0x0000fe2f, 17531 }, /* ISO_Fast_Cursor_Down */
-    { 0x0000fe2c, 17552 }, /* ISO_Fast_Cursor_Left */
-    { 0x0000fe2d, 17573 }, /* ISO_Fast_Cursor_Right */
-    { 0x0000fe2e, 17595 }, /* ISO_Fast_Cursor_Up */
-    { 0x0000fe0c, 17614 }, /* ISO_First_Group */
-    { 0x0000fe0d, 17630 }, /* ISO_First_Group_Lock */
-    { 0x0000fe06, 17651 }, /* ISO_Group_Latch */
-    { 0x0000fe07, 17667 }, /* ISO_Group_Lock */
-    { 0x0000ff7e, 17682 }, /* ISO_Group_Shift */
-    { 0x0000fe0e, 17698 }, /* ISO_Last_Group */
-    { 0x0000fe0f, 17713 }, /* ISO_Last_Group_Lock */
-    { 0x0000fe20, 17733 }, /* ISO_Left_Tab */
-    { 0x0000fe02, 17746 }, /* ISO_Level2_Latch */
-    { 0x0000fe04, 17763 }, /* ISO_Level3_Latch */
-    { 0x0000fe05, 17780 }, /* ISO_Level3_Lock */
-    { 0x0000fe03, 17796 }, /* ISO_Level3_Shift */
-    { 0x0000fe12, 17813 }, /* ISO_Level5_Latch */
-    { 0x0000fe13, 17830 }, /* ISO_Level5_Lock */
-    { 0x0000fe11, 17846 }, /* ISO_Level5_Shift */
-    { 0x0000fe01, 17863 }, /* ISO_Lock */
-    { 0x0000fe22, 17872 }, /* ISO_Move_Line_Down */
-    { 0x0000fe21, 17891 }, /* ISO_Move_Line_Up */
-    { 0x0000fe08, 17908 }, /* ISO_Next_Group */
-    { 0x0000fe09, 17923 }, /* ISO_Next_Group_Lock */
-    { 0x0000fe24, 17943 }, /* ISO_Partial_Line_Down */
-    { 0x0000fe23, 17965 }, /* ISO_Partial_Line_Up */
-    { 0x0000fe25, 17985 }, /* ISO_Partial_Space_Left */
-    { 0x0000fe26, 18008 }, /* ISO_Partial_Space_Right */
-    { 0x0000fe0a, 18032 }, /* ISO_Prev_Group */
-    { 0x0000fe0b, 18047 }, /* ISO_Prev_Group_Lock */
-    { 0x0000fe2b, 18067 }, /* ISO_Release_Both_Margins */
-    { 0x0000fe29, 18092 }, /* ISO_Release_Margin_Left */
-    { 0x0000fe2a, 18116 }, /* ISO_Release_Margin_Right */
-    { 0x0000fe27, 18141 }, /* ISO_Set_Margin_Left */
-    { 0x0000fe28, 18161 }, /* ISO_Set_Margin_Right */
-    { 0x000003a5, 18182 }, /* Itilde */
-    { 0x000003b5, 18189 }, /* itilde */
-    { 0x0000004a, 18196 }, /* J */
-    { 0x0000006a, 18198 }, /* j */
-    { 0x000002ac, 18200 }, /* Jcircumflex */
-    { 0x000002bc, 18212 }, /* jcircumflex */
-    { 0x00000bca, 18224 }, /* jot */
-    { 0x0000004b, 18228 }, /* K */
-    { 0x0000006b, 18230 }, /* k */
-    { 0x000004a7, 18232 }, /* kana_a */
-    { 0x000004b1, 18239 }, /* kana_A */
-    { 0x000004c1, 18246 }, /* kana_CHI */
-    { 0x000004a3, 18255 }, /* kana_closingbracket */
-    { 0x000004a4, 18275 }, /* kana_comma */
-    { 0x000004a5, 18286 }, /* kana_conjunctive */
-    { 0x000004aa, 18303 }, /* kana_e */
-    { 0x000004b4, 18310 }, /* kana_E */
-    { 0x000004cc, 18317 }, /* kana_FU */
-    { 0x000004a1, 18325 }, /* kana_fullstop */
-    { 0x000004ca, 18339 }, /* kana_HA */
-    { 0x000004cd, 18347 }, /* kana_HE */
-    { 0x000004cb, 18355 }, /* kana_HI */
-    { 0x000004ce, 18363 }, /* kana_HO */
-    { 0x000004cc, 18371 }, /* kana_HU */
-    { 0x000004a8, 18379 }, /* kana_i */
-    { 0x000004b2, 18386 }, /* kana_I */
-    { 0x000004b6, 18393 }, /* kana_KA */
-    { 0x000004b9, 18401 }, /* kana_KE */
-    { 0x000004b7, 18409 }, /* kana_KI */
-    { 0x000004ba, 18417 }, /* kana_KO */
-    { 0x000004b8, 18425 }, /* kana_KU */
-    { 0x0000ff2d, 18433 }, /* Kana_Lock */
-    { 0x000004cf, 18443 }, /* kana_MA */
-    { 0x000004d2, 18451 }, /* kana_ME */
-    { 0x000004d0, 18459 }, /* kana_MI */
-    { 0x000004a5, 18467 }, /* kana_middledot */
-    { 0x000004d3, 18482 }, /* kana_MO */
-    { 0x000004d1, 18490 }, /* kana_MU */
-    { 0x000004dd, 18498 }, /* kana_N */
-    { 0x000004c5, 18505 }, /* kana_NA */
-    { 0x000004c8, 18513 }, /* kana_NE */
-    { 0x000004c6, 18521 }, /* kana_NI */
-    { 0x000004c9, 18529 }, /* kana_NO */
-    { 0x000004c7, 18537 }, /* kana_NU */
-    { 0x000004ab, 18545 }, /* kana_o */
-    { 0x000004b5, 18552 }, /* kana_O */
-    { 0x000004a2, 18559 }, /* kana_openingbracket */
-    { 0x000004d7, 18579 }, /* kana_RA */
-    { 0x000004da, 18587 }, /* kana_RE */
-    { 0x000004d8, 18595 }, /* kana_RI */
-    { 0x000004db, 18603 }, /* kana_RO */
-    { 0x000004d9, 18611 }, /* kana_RU */
-    { 0x000004bb, 18619 }, /* kana_SA */
-    { 0x000004be, 18627 }, /* kana_SE */
-    { 0x000004bc, 18635 }, /* kana_SHI */
-    { 0x0000ff2e, 18644 }, /* Kana_Shift */
-    { 0x000004bf, 18655 }, /* kana_SO */
-    { 0x000004bd, 18663 }, /* kana_SU */
-    { 0x0000ff7e, 18671 }, /* kana_switch */
-    { 0x000004c0, 18683 }, /* kana_TA */
-    { 0x000004c3, 18691 }, /* kana_TE */
-    { 0x000004c1, 18699 }, /* kana_TI */
-    { 0x000004c4, 18707 }, /* kana_TO */
-    { 0x000004af, 18715 }, /* kana_tsu */
-    { 0x000004c2, 18724 }, /* kana_TSU */
-    { 0x000004af, 18733 }, /* kana_tu */
-    { 0x000004c2, 18741 }, /* kana_TU */
-    { 0x000004a9, 18749 }, /* kana_u */
-    { 0x000004b3, 18756 }, /* kana_U */
-    { 0x000004dc, 18763 }, /* kana_WA */
-    { 0x000004a6, 18771 }, /* kana_WO */
-    { 0x000004ac, 18779 }, /* kana_ya */
-    { 0x000004d4, 18787 }, /* kana_YA */
-    { 0x000004ae, 18795 }, /* kana_yo */
-    { 0x000004d6, 18803 }, /* kana_YO */
-    { 0x000004ad, 18811 }, /* kana_yu */
-    { 0x000004d5, 18819 }, /* kana_YU */
-    { 0x0000ff21, 18827 }, /* Kanji */
-    { 0x0000ff37, 18833 }, /* Kanji_Bangou */
-    { 0x000003a2, 18846 }, /* kappa */
-    { 0x0000ff26, 18852 }, /* Katakana */
-    { 0x000003d3, 18861 }, /* Kcedilla */
-    { 0x000003f3, 18870 }, /* kcedilla */
-    { 0x00000eff, 18879 }, /* Korean_Won */
-    { 0x0000ffb0, 18890 }, /* KP_0 */
-    { 0x0000ffb1, 18895 }, /* KP_1 */
-    { 0x0000ffb2, 18900 }, /* KP_2 */
-    { 0x0000ffb3, 18905 }, /* KP_3 */
-    { 0x0000ffb4, 18910 }, /* KP_4 */
-    { 0x0000ffb5, 18915 }, /* KP_5 */
-    { 0x0000ffb6, 18920 }, /* KP_6 */
-    { 0x0000ffb7, 18925 }, /* KP_7 */
-    { 0x0000ffb8, 18930 }, /* KP_8 */
-    { 0x0000ffb9, 18935 }, /* KP_9 */
-    { 0x0000ffab, 18940 }, /* KP_Add */
-    { 0x1000ff75, 18947 }, /* KP_BackTab */
-    { 0x0000ff9d, 18958 }, /* KP_Begin */
-    { 0x0000ffae, 18967 }, /* KP_Decimal */
-    { 0x0000ff9f, 18978 }, /* KP_Delete */
-    { 0x0000ffaf, 18988 }, /* KP_Divide */
-    { 0x0000ff99, 18998 }, /* KP_Down */
-    { 0x0000ff9c, 19006 }, /* KP_End */
-    { 0x0000ff8d, 19013 }, /* KP_Enter */
-    { 0x0000ffbd, 19022 }, /* KP_Equal */
-    { 0x0000ff91, 19031 }, /* KP_F1 */
-    { 0x0000ff92, 19037 }, /* KP_F2 */
-    { 0x0000ff93, 19043 }, /* KP_F3 */
-    { 0x0000ff94, 19049 }, /* KP_F4 */
-    { 0x0000ff95, 19055 }, /* KP_Home */
-    { 0x0000ff9e, 19063 }, /* KP_Insert */
-    { 0x0000ff96, 19073 }, /* KP_Left */
-    { 0x0000ffaa, 19081 }, /* KP_Multiply */
-    { 0x0000ff9b, 19093 }, /* KP_Next */
-    { 0x0000ff9b, 19101 }, /* KP_Page_Down */
-    { 0x0000ff9a, 19114 }, /* KP_Page_Up */
-    { 0x0000ff9a, 19125 }, /* KP_Prior */
-    { 0x0000ff98, 19134 }, /* KP_Right */
-    { 0x0000ffac, 19143 }, /* KP_Separator */
-    { 0x0000ff80, 19156 }, /* KP_Space */
-    { 0x0000ffad, 19165 }, /* KP_Subtract */
-    { 0x0000ff89, 19177 }, /* KP_Tab */
-    { 0x0000ff97, 19184 }, /* KP_Up */
-    { 0x000003a2, 19190 }, /* kra */
-    { 0x0000004c, 19194 }, /* L */
-    { 0x0000006c, 19196 }, /* l */
-    { 0x0000ffc8, 19198 }, /* L1 */
-    { 0x0000ffd1, 19201 }, /* L10 */
-    { 0x0000ffc9, 19205 }, /* L2 */
-    { 0x0000ffca, 19208 }, /* L3 */
-    { 0x0000ffcb, 19211 }, /* L4 */
-    { 0x0000ffcc, 19214 }, /* L5 */
-    { 0x0000ffcd, 19217 }, /* L6 */
-    { 0x0000ffce, 19220 }, /* L7 */
-    { 0x0000ffcf, 19223 }, /* L8 */
-    { 0x0000ffd0, 19226 }, /* L9 */
-    { 0x000001c5, 19229 }, /* Lacute */
-    { 0x000001e5, 19236 }, /* lacute */
-    { 0x0000fed4, 19243 }, /* Last_Virtual_Screen */
-    { 0x00000ad9, 19263 }, /* latincross */
-    { 0x01001e36, 19274 }, /* Lbelowdot */
-    { 0x01001e37, 19284 }, /* lbelowdot */
-    { 0x000001a5, 19294 }, /* Lcaron */
-    { 0x000001b5, 19301 }, /* lcaron */
-    { 0x000003a6, 19308 }, /* Lcedilla */
-    { 0x000003b6, 19317 }, /* lcedilla */
-    { 0x0000ff51, 19326 }, /* Left */
-    { 0x00000abc, 19331 }, /* leftanglebracket */
-    { 0x000008fb, 19348 }, /* leftarrow */
-    { 0x00000ba3, 19358 }, /* leftcaret */
-    { 0x00000ad2, 19368 }, /* leftdoublequotemark */
-    { 0x000008af, 19388 }, /* leftmiddlecurlybrace */
-    { 0x00000acc, 19409 }, /* leftopentriangle */
-    { 0x00000aea, 19426 }, /* leftpointer */
-    { 0x000008a1, 19438 }, /* leftradical */
-    { 0x00000bda, 19450 }, /* leftshoe */
-    { 0x00000ad0, 19459 }, /* leftsinglequotemark */
-    { 0x000009f4, 19479 }, /* leftt */
-    { 0x00000bdc, 19485 }, /* lefttack */
-    { 0x0000003c, 19494 }, /* less */
-    { 0x000008bc, 19499 }, /* lessthanequal */
-    { 0x000009e5, 19513 }, /* lf */
-    { 0x0000ff0a, 19516 }, /* Linefeed */
-    { 0x100000af, 19525 }, /* lira */
-    { 0x010020a4, 19530 }, /* LiraSign */
-    { 0x000008de, 19539 }, /* logicaland */
-    { 0x000008df, 19550 }, /* logicalor */
-    { 0x100000f6, 19560 }, /* longminus */
-    { 0x000009ed, 19570 }, /* lowleftcorner */
-    { 0x000009ea, 19584 }, /* lowrightcorner */
-    { 0x000001a3, 19599 }, /* Lstroke */
-    { 0x000001b3, 19607 }, /* lstroke */
-    { 0x0000004d, 19615 }, /* M */
-    { 0x0000006d, 19617 }, /* m */
-    { 0x01001e40, 19619 }, /* Mabovedot */
-    { 0x01001e41, 19629 }, /* mabovedot */
-    { 0x000006a5, 19639 }, /* Macedonia_dse */
-    { 0x000006b5, 19653 }, /* Macedonia_DSE */
-    { 0x000006a2, 19667 }, /* Macedonia_gje */
-    { 0x000006b2, 19681 }, /* Macedonia_GJE */
-    { 0x000006ac, 19695 }, /* Macedonia_kje */
-    { 0x000006bc, 19709 }, /* Macedonia_KJE */
-    { 0x000000af, 19723 }, /* macron */
-    { 0x0000ff3e, 19730 }, /* Mae_Koho */
-    { 0x00000af7, 19739 }, /* malesymbol */
-    { 0x00000af0, 19750 }, /* maltesecross */
-    { 0x00000abf, 19763 }, /* marker */
-    { 0x000000ba, 19770 }, /* masculine */
-    { 0x0000ff2c, 19780 }, /* Massyo */
-    { 0x0000ff67, 19787 }, /* Menu */
-    { 0x0000ffe7, 19792 }, /* Meta_L */
-    { 0x0000ffe8, 19799 }, /* Meta_R */
-    { 0x010020a5, 19806 }, /* MillSign */
-    { 0x0000002d, 19815 }, /* minus */
-    { 0x00000ad6, 19821 }, /* minutes */
-    { 0x0000ff7e, 19829 }, /* Mode_switch */
-    { 0x0000fe77, 19841 }, /* MouseKeys_Accel_Enable */
-    { 0x0000fe76, 19864 }, /* MouseKeys_Enable */
-    { 0x000000b5, 19881 }, /* mu */
-    { 0x0000ff22, 19884 }, /* Muhenkan */
-    { 0x0000ff20, 19893 }, /* Multi_key */
-    { 0x0000ff3d, 19903 }, /* MultipleCandidate */
-    { 0x000000d7, 19921 }, /* multiply */
-    { 0x00000af6, 19930 }, /* musicalflat */
-    { 0x00000af5, 19942 }, /* musicalsharp */
-    { 0x100000a8, 19955 }, /* mute_acute */
-    { 0x100000aa, 19966 }, /* mute_asciicircum */
-    { 0x100000ac, 19983 }, /* mute_asciitilde */
-    { 0x100000ab, 19999 }, /* mute_diaeresis */
-    { 0x100000a9, 20014 }, /* mute_grave */
-    { 0x0000004e, 20025 }, /* N */
-    { 0x0000006e, 20027 }, /* n */
-    { 0x000008c5, 20029 }, /* nabla */
-    { 0x000001d1, 20035 }, /* Nacute */
-    { 0x000001f1, 20042 }, /* nacute */
-    { 0x010020a6, 20049 }, /* NairaSign */
-    { 0x000001d2, 20059 }, /* Ncaron */
-    { 0x000001f2, 20066 }, /* ncaron */
-    { 0x000003d1, 20073 }, /* Ncedilla */
-    { 0x000003f1, 20082 }, /* ncedilla */
-    { 0x010020aa, 20091 }, /* NewSheqelSign */
-    { 0x0000ff56, 20105 }, /* Next */
-    { 0x0000fed2, 20110 }, /* Next_Virtual_Screen */
-    { 0x01002089, 20130 }, /* ninesubscript */
-    { 0x01002079, 20144 }, /* ninesuperior */
-    { 0x000009e8, 20157 }, /* nl */
-    { 0x000000a0, 20160 }, /* nobreakspace */
-    { 0x00000000, 20173 }, /* NoSymbol */
-    { 0x01002247, 20182 }, /* notapproxeq */
-    { 0x01002209, 20194 }, /* notelementof */
-    { 0x000008bd, 20207 }, /* notequal */
-    { 0x01002262, 20216 }, /* notidentical */
-    { 0x000000ac, 20229 }, /* notsign */
-    { 0x000000d1, 20237 }, /* Ntilde */
-    { 0x000000f1, 20244 }, /* ntilde */
-    { 0x0000ff7f, 20251 }, /* Num_Lock */
-    { 0x00000023, 20260 }, /* numbersign */
-    { 0x000006b0, 20271 }, /* numerosign */
-    { 0x0000004f, 20282 }, /* O */
-    { 0x0000006f, 20284 }, /* o */
-    { 0x000000d3, 20286 }, /* Oacute */
-    { 0x000000f3, 20293 }, /* oacute */
-    { 0x0100019f, 20300 }, /* Obarred */
-    { 0x01000275, 20308 }, /* obarred */
-    { 0x01001ecc, 20316 }, /* Obelowdot */
-    { 0x01001ecd, 20326 }, /* obelowdot */
-    { 0x010001d1, 20336 }, /* Ocaron */
-    { 0x010001d2, 20343 }, /* ocaron */
-    { 0x000000d4, 20350 }, /* Ocircumflex */
-    { 0x000000f4, 20362 }, /* ocircumflex */
-    { 0x01001ed0, 20374 }, /* Ocircumflexacute */
-    { 0x01001ed1, 20391 }, /* ocircumflexacute */
-    { 0x01001ed8, 20408 }, /* Ocircumflexbelowdot */
-    { 0x01001ed9, 20428 }, /* ocircumflexbelowdot */
-    { 0x01001ed2, 20448 }, /* Ocircumflexgrave */
-    { 0x01001ed3, 20465 }, /* ocircumflexgrave */
-    { 0x01001ed4, 20482 }, /* Ocircumflexhook */
-    { 0x01001ed5, 20498 }, /* ocircumflexhook */
-    { 0x01001ed6, 20514 }, /* Ocircumflextilde */
-    { 0x01001ed7, 20531 }, /* ocircumflextilde */
-    { 0x000000d6, 20548 }, /* Odiaeresis */
-    { 0x000000f6, 20559 }, /* odiaeresis */
-    { 0x000001d5, 20570 }, /* Odoubleacute */
-    { 0x000001f5, 20583 }, /* odoubleacute */
-    { 0x000013bc, 20596 }, /* OE */
-    { 0x000013bd, 20599 }, /* oe */
-    { 0x000001b2, 20602 }, /* ogonek */
-    { 0x000000d2, 20609 }, /* Ograve */
-    { 0x000000f2, 20616 }, /* ograve */
-    { 0x01001ece, 20623 }, /* Ohook */
-    { 0x01001ecf, 20629 }, /* ohook */
-    { 0x010001a0, 20635 }, /* Ohorn */
-    { 0x010001a1, 20641 }, /* ohorn */
-    { 0x01001eda, 20647 }, /* Ohornacute */
-    { 0x01001edb, 20658 }, /* ohornacute */
-    { 0x01001ee2, 20669 }, /* Ohornbelowdot */
-    { 0x01001ee3, 20683 }, /* ohornbelowdot */
-    { 0x01001edc, 20697 }, /* Ohorngrave */
-    { 0x01001edd, 20708 }, /* ohorngrave */
-    { 0x01001ede, 20719 }, /* Ohornhook */
-    { 0x01001edf, 20729 }, /* ohornhook */
-    { 0x01001ee0, 20739 }, /* Ohorntilde */
-    { 0x01001ee1, 20750 }, /* ohorntilde */
-    { 0x000003d2, 20761 }, /* Omacron */
-    { 0x000003f2, 20769 }, /* omacron */
-    { 0x00000ac3, 20777 }, /* oneeighth */
-    { 0x00000ab2, 20787 }, /* onefifth */
-    { 0x000000bd, 20796 }, /* onehalf */
-    { 0x000000bc, 20804 }, /* onequarter */
-    { 0x00000ab6, 20815 }, /* onesixth */
-    { 0x01002081, 20824 }, /* onesubscript */
-    { 0x000000b9, 20837 }, /* onesuperior */
-    { 0x00000ab0, 20849 }, /* onethird */
-    { 0x000000d8, 20858 }, /* Ooblique */
-    { 0x000000f8, 20867 }, /* ooblique */
-    { 0x00000ae2, 20876 }, /* openrectbullet */
-    { 0x00000ae5, 20891 }, /* openstar */
-    { 0x00000ae4, 20900 }, /* opentribulletdown */
-    { 0x00000ae3, 20918 }, /* opentribulletup */
-    { 0x000000aa, 20934 }, /* ordfeminine */
-    { 0x1004ff44, 20946 }, /* osfActivate */
-    { 0x1004ff31, 20958 }, /* osfAddMode */
-    { 0x1004ff08, 20969 }, /* osfBackSpace */
-    { 0x1004ff07, 20982 }, /* osfBackTab */
-    { 0x1004ff5a, 20993 }, /* osfBeginData */
-    { 0x1004ff58, 21006 }, /* osfBeginLine */
-    { 0x1004ff69, 21019 }, /* osfCancel */
-    { 0x1004ff0b, 21029 }, /* osfClear */
-    { 0x1004ff02, 21038 }, /* osfCopy */
-    { 0x1004ff03, 21046 }, /* osfCut */
-    { 0x1004ffff, 21053 }, /* osfDelete */
-    { 0x1004ff72, 21063 }, /* osfDeselectAll */
-    { 0x1004ff54, 21078 }, /* osfDown */
-    { 0x1004ff59, 21086 }, /* osfEndData */
-    { 0x1004ff57, 21097 }, /* osfEndLine */
-    { 0x1004ff1b, 21108 }, /* osfEscape */
-    { 0x1004ff74, 21118 }, /* osfExtend */
-    { 0x1004ff6a, 21128 }, /* osfHelp */
-    { 0x1004ff63, 21136 }, /* osfInsert */
-    { 0x1004ff51, 21146 }, /* osfLeft */
-    { 0x1004ff67, 21154 }, /* osfMenu */
-    { 0x1004ff45, 21162 }, /* osfMenuBar */
-    { 0x1004ff5e, 21173 }, /* osfNextField */
-    { 0x1004ff5c, 21186 }, /* osfNextMenu */
-    { 0x1004ff42, 21198 }, /* osfPageDown */
-    { 0x1004ff40, 21210 }, /* osfPageLeft */
-    { 0x1004ff43, 21222 }, /* osfPageRight */
-    { 0x1004ff41, 21235 }, /* osfPageUp */
-    { 0x1004ff04, 21245 }, /* osfPaste */
-    { 0x1004ff5d, 21254 }, /* osfPrevField */
-    { 0x1004ff5b, 21267 }, /* osfPrevMenu */
-    { 0x1004ff32, 21279 }, /* osfPrimaryPaste */
-    { 0x1004ff33, 21295 }, /* osfQuickPaste */
-    { 0x1004ff73, 21309 }, /* osfReselect */
-    { 0x1004ff78, 21321 }, /* osfRestore */
-    { 0x1004ff53, 21332 }, /* osfRight */
-    { 0x1004ff60, 21341 }, /* osfSelect */
-    { 0x1004ff71, 21351 }, /* osfSelectAll */
-    { 0x1004ff65, 21364 }, /* osfUndo */
-    { 0x1004ff52, 21372 }, /* osfUp */
-    { 0x000000d8, 21378 }, /* Oslash */
-    { 0x000000f8, 21385 }, /* oslash */
-    { 0x000000d5, 21392 }, /* Otilde */
-    { 0x000000f5, 21399 }, /* otilde */
-    { 0x00000bc0, 21406 }, /* overbar */
-    { 0x0000fe78, 21414 }, /* Overlay1_Enable */
-    { 0x0000fe79, 21430 }, /* Overlay2_Enable */
-    { 0x0000047e, 21446 }, /* overline */
-    { 0x00000050, 21455 }, /* P */
-    { 0x00000070, 21457 }, /* p */
-    { 0x01001e56, 21459 }, /* Pabovedot */
-    { 0x01001e57, 21469 }, /* pabovedot */
-    { 0x0000ff56, 21479 }, /* Page_Down */
-    { 0x0000ff55, 21489 }, /* Page_Up */
-    { 0x000000b6, 21497 }, /* paragraph */
-    { 0x00000028, 21507 }, /* parenleft */
-    { 0x00000029, 21517 }, /* parenright */
-    { 0x01002202, 21528 }, /* partdifferential */
-    { 0x000008ef, 21545 }, /* partialderivative */
-    { 0x0000ff13, 21563 }, /* Pause */
-    { 0x00000025, 21569 }, /* percent */
-    { 0x0000002e, 21577 }, /* period */
-    { 0x000000b7, 21584 }, /* periodcentered */
-    { 0x00000ad5, 21599 }, /* permille */
-    { 0x010020a7, 21608 }, /* PesetaSign */
-    { 0x00000afb, 21619 }, /* phonographcopyright */
-    { 0x0000002b, 21639 }, /* plus */
-    { 0x000000b1, 21644 }, /* plusminus */
-    { 0x0000fefa, 21654 }, /* Pointer_Accelerate */
-    { 0x0000fee9, 21673 }, /* Pointer_Button1 */
-    { 0x0000feea, 21689 }, /* Pointer_Button2 */
-    { 0x0000feeb, 21705 }, /* Pointer_Button3 */
-    { 0x0000feec, 21721 }, /* Pointer_Button4 */
-    { 0x0000feed, 21737 }, /* Pointer_Button5 */
-    { 0x0000fee8, 21753 }, /* Pointer_Button_Dflt */
-    { 0x0000feef, 21773 }, /* Pointer_DblClick1 */
-    { 0x0000fef0, 21791 }, /* Pointer_DblClick2 */
-    { 0x0000fef1, 21809 }, /* Pointer_DblClick3 */
-    { 0x0000fef2, 21827 }, /* Pointer_DblClick4 */
-    { 0x0000fef3, 21845 }, /* Pointer_DblClick5 */
-    { 0x0000feee, 21863 }, /* Pointer_DblClick_Dflt */
-    { 0x0000fefb, 21885 }, /* Pointer_DfltBtnNext */
-    { 0x0000fefc, 21905 }, /* Pointer_DfltBtnPrev */
-    { 0x0000fee3, 21925 }, /* Pointer_Down */
-    { 0x0000fee6, 21938 }, /* Pointer_DownLeft */
-    { 0x0000fee7, 21955 }, /* Pointer_DownRight */
-    { 0x0000fef5, 21973 }, /* Pointer_Drag1 */
-    { 0x0000fef6, 21987 }, /* Pointer_Drag2 */
-    { 0x0000fef7, 22001 }, /* Pointer_Drag3 */
-    { 0x0000fef8, 22015 }, /* Pointer_Drag4 */
-    { 0x0000fefd, 22029 }, /* Pointer_Drag5 */
-    { 0x0000fef4, 22043 }, /* Pointer_Drag_Dflt */
-    { 0x0000fef9, 22061 }, /* Pointer_EnableKeys */
-    { 0x0000fee0, 22080 }, /* Pointer_Left */
-    { 0x0000fee1, 22093 }, /* Pointer_Right */
-    { 0x0000fee2, 22107 }, /* Pointer_Up */
-    { 0x0000fee4, 22118 }, /* Pointer_UpLeft */
-    { 0x0000fee5, 22133 }, /* Pointer_UpRight */
-    { 0x00000ad4, 22149 }, /* prescription */
-    { 0x0000fed1, 22162 }, /* Prev_Virtual_Screen */
-    { 0x0000ff3e, 22182 }, /* PreviousCandidate */
-    { 0x0000ff61, 22200 }, /* Print */
-    { 0x0000ff55, 22206 }, /* Prior */
-    { 0x000004b0, 22212 }, /* prolongedsound */
-    { 0x00000aa6, 22227 }, /* punctspace */
-    { 0x00000051, 22238 }, /* Q */
-    { 0x00000071, 22240 }, /* q */
-    { 0x00000bcc, 22242 }, /* quad */
-    { 0x0000003f, 22247 }, /* question */
-    { 0x000000bf, 22256 }, /* questiondown */
-    { 0x00000022, 22269 }, /* quotedbl */
-    { 0x00000060, 22278 }, /* quoteleft */
-    { 0x00000027, 22288 }, /* quoteright */
-    { 0x00000052, 22299 }, /* R */
-    { 0x00000072, 22301 }, /* r */
-    { 0x0000ffd2, 22303 }, /* R1 */
-    { 0x0000ffdb, 22306 }, /* R10 */
-    { 0x0000ffdc, 22310 }, /* R11 */
-    { 0x0000ffdd, 22314 }, /* R12 */
-    { 0x0000ffde, 22318 }, /* R13 */
-    { 0x0000ffdf, 22322 }, /* R14 */
-    { 0x0000ffe0, 22326 }, /* R15 */
-    { 0x0000ffd3, 22330 }, /* R2 */
-    { 0x0000ffd4, 22333 }, /* R3 */
-    { 0x0000ffd5, 22336 }, /* R4 */
-    { 0x0000ffd6, 22339 }, /* R5 */
-    { 0x0000ffd7, 22342 }, /* R6 */
-    { 0x0000ffd8, 22345 }, /* R7 */
-    { 0x0000ffd9, 22348 }, /* R8 */
-    { 0x0000ffda, 22351 }, /* R9 */
-    { 0x000001c0, 22354 }, /* Racute */
-    { 0x000001e0, 22361 }, /* racute */
-    { 0x000008d6, 22368 }, /* radical */
-    { 0x000001d8, 22376 }, /* Rcaron */
-    { 0x000001f8, 22383 }, /* rcaron */
-    { 0x000003a3, 22390 }, /* Rcedilla */
-    { 0x000003b3, 22399 }, /* rcedilla */
-    { 0x0000ff66, 22408 }, /* Redo */
-    { 0x000000ae, 22413 }, /* registered */
-    { 0x0000fe72, 22424 }, /* RepeatKeys_Enable */
-    { 0x1000ff6c, 22442 }, /* Reset */
-    { 0x0000ff0d, 22448 }, /* Return */
-    { 0x0000ff53, 22455 }, /* Right */
-    { 0x00000abe, 22461 }, /* rightanglebracket */
-    { 0x000008fd, 22479 }, /* rightarrow */
-    { 0x00000ba6, 22490 }, /* rightcaret */
-    { 0x00000ad3, 22501 }, /* rightdoublequotemark */
-    { 0x000008b0, 22522 }, /* rightmiddlecurlybrace */
-    { 0x000008b7, 22544 }, /* rightmiddlesummation */
-    { 0x00000acd, 22565 }, /* rightopentriangle */
-    { 0x00000aeb, 22583 }, /* rightpointer */
-    { 0x00000bd8, 22596 }, /* rightshoe */
-    { 0x00000ad1, 22606 }, /* rightsinglequotemark */
-    { 0x000009f5, 22627 }, /* rightt */
-    { 0x00000bfc, 22634 }, /* righttack */
-    { 0x0000ff24, 22644 }, /* Romaji */
-    { 0x010020a8, 22651 }, /* RupeeSign */
-    { 0x00000053, 22661 }, /* S */
-    { 0x00000073, 22663 }, /* s */
-    { 0x01001e60, 22665 }, /* Sabovedot */
-    { 0x01001e61, 22675 }, /* sabovedot */
-    { 0x000001a6, 22685 }, /* Sacute */
-    { 0x000001b6, 22692 }, /* sacute */
-    { 0x000001a9, 22699 }, /* Scaron */
-    { 0x000001b9, 22706 }, /* scaron */
-    { 0x000001aa, 22713 }, /* Scedilla */
-    { 0x000001ba, 22722 }, /* scedilla */
-    { 0x0100018f, 22731 }, /* SCHWA */
-    { 0x01000259, 22737 }, /* schwa */
-    { 0x000002de, 22743 }, /* Scircumflex */
-    { 0x000002fe, 22755 }, /* scircumflex */
-    { 0x0000ff7e, 22767 }, /* script_switch */
-    { 0x0000ff14, 22781 }, /* Scroll_Lock */
-    { 0x00000ad7, 22793 }, /* seconds */
-    { 0x000000a7, 22801 }, /* section */
-    { 0x0000ff60, 22809 }, /* Select */
-    { 0x0000003b, 22816 }, /* semicolon */
-    { 0x000004df, 22826 }, /* semivoicedsound */
-    { 0x000006a1, 22842 }, /* Serbian_dje */
-    { 0x000006b1, 22854 }, /* Serbian_DJE */
-    { 0x000006af, 22866 }, /* Serbian_dze */
-    { 0x000006bf, 22878 }, /* Serbian_DZE */
-    { 0x000006a8, 22890 }, /* Serbian_je */
-    { 0x000006b8, 22901 }, /* Serbian_JE */
-    { 0x000006a9, 22912 }, /* Serbian_lje */
-    { 0x000006b9, 22924 }, /* Serbian_LJE */
-    { 0x000006aa, 22936 }, /* Serbian_nje */
-    { 0x000006ba, 22948 }, /* Serbian_NJE */
-    { 0x000006ab, 22960 }, /* Serbian_tshe */
-    { 0x000006bb, 22973 }, /* Serbian_TSHE */
-    { 0x00000ac6, 22986 }, /* seveneighths */
-    { 0x01002087, 22999 }, /* sevensubscript */
-    { 0x01002077, 23014 }, /* sevensuperior */
-    { 0x0000ffe1, 23028 }, /* Shift_L */
-    { 0x0000ffe6, 23036 }, /* Shift_Lock */
-    { 0x0000ffe2, 23047 }, /* Shift_R */
-    { 0x00000aca, 23055 }, /* signaturemark */
-    { 0x00000aac, 23069 }, /* signifblank */
-    { 0x000008c9, 23081 }, /* similarequal */
-    { 0x0000ff3c, 23094 }, /* SingleCandidate */
-    { 0x00000afd, 23110 }, /* singlelowquotemark */
-    { 0x01000d85, 23129 }, /* Sinh_a */
-    { 0x01000d86, 23136 }, /* Sinh_aa */
-    { 0x01000dcf, 23144 }, /* Sinh_aa2 */
-    { 0x01000d87, 23153 }, /* Sinh_ae */
-    { 0x01000dd0, 23161 }, /* Sinh_ae2 */
-    { 0x01000d88, 23170 }, /* Sinh_aee */
-    { 0x01000dd1, 23179 }, /* Sinh_aee2 */
-    { 0x01000d93, 23189 }, /* Sinh_ai */
-    { 0x01000ddb, 23197 }, /* Sinh_ai2 */
-    { 0x01000dca, 23206 }, /* Sinh_al */
-    { 0x01000d96, 23214 }, /* Sinh_au */
-    { 0x01000dde, 23222 }, /* Sinh_au2 */
-    { 0x01000db6, 23231 }, /* Sinh_ba */
-    { 0x01000db7, 23239 }, /* Sinh_bha */
-    { 0x01000da0, 23248 }, /* Sinh_ca */
-    { 0x01000da1, 23256 }, /* Sinh_cha */
-    { 0x01000da9, 23265 }, /* Sinh_dda */
-    { 0x01000daa, 23274 }, /* Sinh_ddha */
-    { 0x01000daf, 23284 }, /* Sinh_dha */
-    { 0x01000db0, 23293 }, /* Sinh_dhha */
-    { 0x01000d91, 23303 }, /* Sinh_e */
-    { 0x01000dd9, 23310 }, /* Sinh_e2 */
-    { 0x01000d92, 23318 }, /* Sinh_ee */
-    { 0x01000dda, 23326 }, /* Sinh_ee2 */
-    { 0x01000dc6, 23335 }, /* Sinh_fa */
-    { 0x01000d9c, 23343 }, /* Sinh_ga */
-    { 0x01000d9d, 23351 }, /* Sinh_gha */
-    { 0x01000d83, 23360 }, /* Sinh_h2 */
-    { 0x01000dc4, 23368 }, /* Sinh_ha */
-    { 0x01000d89, 23376 }, /* Sinh_i */
-    { 0x01000dd2, 23383 }, /* Sinh_i2 */
-    { 0x01000d8a, 23391 }, /* Sinh_ii */
-    { 0x01000dd3, 23399 }, /* Sinh_ii2 */
-    { 0x01000da2, 23408 }, /* Sinh_ja */
-    { 0x01000da3, 23416 }, /* Sinh_jha */
-    { 0x01000da5, 23425 }, /* Sinh_jnya */
-    { 0x01000d9a, 23435 }, /* Sinh_ka */
-    { 0x01000d9b, 23443 }, /* Sinh_kha */
-    { 0x01000df4, 23452 }, /* Sinh_kunddaliya */
-    { 0x01000dbd, 23468 }, /* Sinh_la */
-    { 0x01000dc5, 23476 }, /* Sinh_lla */
-    { 0x01000d8f, 23485 }, /* Sinh_lu */
-    { 0x01000ddf, 23493 }, /* Sinh_lu2 */
-    { 0x01000d90, 23502 }, /* Sinh_luu */
-    { 0x01000df3, 23511 }, /* Sinh_luu2 */
-    { 0x01000db8, 23521 }, /* Sinh_ma */
-    { 0x01000db9, 23529 }, /* Sinh_mba */
-    { 0x01000db1, 23538 }, /* Sinh_na */
-    { 0x01000dac, 23546 }, /* Sinh_ndda */
-    { 0x01000db3, 23556 }, /* Sinh_ndha */
-    { 0x01000d82, 23566 }, /* Sinh_ng */
-    { 0x01000d9e, 23574 }, /* Sinh_ng2 */
-    { 0x01000d9f, 23583 }, /* Sinh_nga */
-    { 0x01000da6, 23592 }, /* Sinh_nja */
-    { 0x01000dab, 23601 }, /* Sinh_nna */
-    { 0x01000da4, 23610 }, /* Sinh_nya */
-    { 0x01000d94, 23619 }, /* Sinh_o */
-    { 0x01000ddc, 23626 }, /* Sinh_o2 */
-    { 0x01000d95, 23634 }, /* Sinh_oo */
-    { 0x01000ddd, 23642 }, /* Sinh_oo2 */
-    { 0x01000db4, 23651 }, /* Sinh_pa */
-    { 0x01000db5, 23659 }, /* Sinh_pha */
-    { 0x01000dbb, 23668 }, /* Sinh_ra */
-    { 0x01000d8d, 23676 }, /* Sinh_ri */
-    { 0x01000d8e, 23684 }, /* Sinh_rii */
-    { 0x01000dd8, 23693 }, /* Sinh_ru2 */
-    { 0x01000df2, 23702 }, /* Sinh_ruu2 */
-    { 0x01000dc3, 23712 }, /* Sinh_sa */
-    { 0x01000dc1, 23720 }, /* Sinh_sha */
-    { 0x01000dc2, 23729 }, /* Sinh_ssha */
-    { 0x01000dad, 23739 }, /* Sinh_tha */
-    { 0x01000dae, 23748 }, /* Sinh_thha */
-    { 0x01000da7, 23758 }, /* Sinh_tta */
-    { 0x01000da8, 23767 }, /* Sinh_ttha */
-    { 0x01000d8b, 23777 }, /* Sinh_u */
-    { 0x01000dd4, 23784 }, /* Sinh_u2 */
-    { 0x01000d8c, 23792 }, /* Sinh_uu */
-    { 0x01000dd6, 23800 }, /* Sinh_uu2 */
-    { 0x01000dc0, 23809 }, /* Sinh_va */
-    { 0x01000dba, 23817 }, /* Sinh_ya */
-    { 0x01002086, 23825 }, /* sixsubscript */
-    { 0x01002076, 23838 }, /* sixsuperior */
-    { 0x0000002f, 23850 }, /* slash */
-    { 0x0000fe73, 23856 }, /* SlowKeys_Enable */
-    { 0x000009e0, 23872 }, /* soliddiamond */
-    { 0x00000020, 23885 }, /* space */
-    { 0x0100221a, 23891 }, /* squareroot */
-    { 0x000000df, 23902 }, /* ssharp */
-    { 0x000000a3, 23909 }, /* sterling */
-    { 0x0000fe75, 23918 }, /* StickyKeys_Enable */
-    { 0x01002263, 23936 }, /* stricteq */
-    { 0x0000ff66, 23945 }, /* SunAgain */
-    { 0x0000ff7e, 23954 }, /* SunAltGraph */
-    { 0x1005ff77, 23966 }, /* SunAudioLowerVolume */
-    { 0x1005ff78, 23986 }, /* SunAudioMute */
-    { 0x1005ff79, 23999 }, /* SunAudioRaiseVolume */
-    { 0x0000ff20, 24019 }, /* SunCompose */
-    { 0x1005ff72, 24030 }, /* SunCopy */
-    { 0x1005ff75, 24038 }, /* SunCut */
-    { 0x1005ff10, 24045 }, /* SunF36 */
-    { 0x1005ff11, 24052 }, /* SunF37 */
-    { 0x1005ff03, 24059 }, /* SunFA_Acute */
-    { 0x1005ff05, 24071 }, /* SunFA_Cedilla */
-    { 0x1005ff01, 24085 }, /* SunFA_Circum */
-    { 0x1005ff04, 24098 }, /* SunFA_Diaeresis */
-    { 0x1005ff00, 24114 }, /* SunFA_Grave */
-    { 0x1005ff02, 24126 }, /* SunFA_Tilde */
-    { 0x0000ff68, 24138 }, /* SunFind */
-    { 0x1005ff71, 24146 }, /* SunFront */
-    { 0x1005ff73, 24155 }, /* SunOpen */
-    { 0x0000ff56, 24163 }, /* SunPageDown */
-    { 0x0000ff55, 24175 }, /* SunPageUp */
-    { 0x1005ff74, 24185 }, /* SunPaste */
-    { 0x1005ff76, 24194 }, /* SunPowerSwitch */
-    { 0x1005ff7d, 24209 }, /* SunPowerSwitchShift */
-    { 0x0000ff61, 24229 }, /* SunPrint_Screen */
-    { 0x1005ff70, 24245 }, /* SunProps */
-    { 0x0000ff69, 24254 }, /* SunStop */
-    { 0x1005ff60, 24262 }, /* SunSys_Req */
-    { 0x0000ff65, 24273 }, /* SunUndo */
-    { 0x1005ff7a, 24281 }, /* SunVideoDegauss */
-    { 0x1005ff7b, 24297 }, /* SunVideoLowerBrightness */
-    { 0x1005ff7c, 24321 }, /* SunVideoRaiseBrightness */
-    { 0x0000ffeb, 24345 }, /* Super_L */
-    { 0x0000ffec, 24353 }, /* Super_R */
-    { 0x0000ff15, 24361 }, /* Sys_Req */
-    { 0x1000ff6d, 24369 }, /* System */
-    { 0x00000054, 24376 }, /* T */
-    { 0x00000074, 24378 }, /* t */
-    { 0x0000ff09, 24380 }, /* Tab */
-    { 0x01001e6a, 24384 }, /* Tabovedot */
-    { 0x01001e6b, 24394 }, /* tabovedot */
-    { 0x000001ab, 24404 }, /* Tcaron */
-    { 0x000001bb, 24411 }, /* tcaron */
-    { 0x000001de, 24418 }, /* Tcedilla */
-    { 0x000001fe, 24427 }, /* tcedilla */
-    { 0x00000af9, 24436 }, /* telephone */
-    { 0x00000afa, 24446 }, /* telephonerecorder */
-    { 0x0000fed5, 24464 }, /* Terminate_Server */
-    { 0x00000ddf, 24481 }, /* Thai_baht */
-    { 0x00000dba, 24491 }, /* Thai_bobaimai */
-    { 0x00000da8, 24505 }, /* Thai_chochan */
-    { 0x00000daa, 24518 }, /* Thai_chochang */
-    { 0x00000da9, 24532 }, /* Thai_choching */
-    { 0x00000dac, 24546 }, /* Thai_chochoe */
-    { 0x00000dae, 24559 }, /* Thai_dochada */
-    { 0x00000db4, 24572 }, /* Thai_dodek */
-    { 0x00000dbd, 24583 }, /* Thai_fofa */
-    { 0x00000dbf, 24593 }, /* Thai_fofan */
-    { 0x00000dcb, 24604 }, /* Thai_hohip */
-    { 0x00000dce, 24615 }, /* Thai_honokhuk */
-    { 0x00000da2, 24629 }, /* Thai_khokhai */
-    { 0x00000da5, 24642 }, /* Thai_khokhon */
-    { 0x00000da3, 24655 }, /* Thai_khokhuat */
-    { 0x00000da4, 24669 }, /* Thai_khokhwai */
-    { 0x00000da6, 24683 }, /* Thai_khorakhang */
-    { 0x00000da1, 24699 }, /* Thai_kokai */
-    { 0x00000de5, 24710 }, /* Thai_lakkhangyao */
-    { 0x00000df7, 24727 }, /* Thai_lekchet */
-    { 0x00000df5, 24740 }, /* Thai_lekha */
-    { 0x00000df6, 24751 }, /* Thai_lekhok */
-    { 0x00000df9, 24763 }, /* Thai_lekkao */
-    { 0x00000df1, 24775 }, /* Thai_leknung */
-    { 0x00000df8, 24788 }, /* Thai_lekpaet */
-    { 0x00000df3, 24801 }, /* Thai_leksam */
-    { 0x00000df4, 24813 }, /* Thai_leksi */
-    { 0x00000df2, 24824 }, /* Thai_leksong */
-    { 0x00000df0, 24837 }, /* Thai_leksun */
-    { 0x00000dcc, 24849 }, /* Thai_lochula */
-    { 0x00000dc5, 24862 }, /* Thai_loling */
-    { 0x00000dc6, 24874 }, /* Thai_lu */
-    { 0x00000deb, 24882 }, /* Thai_maichattawa */
-    { 0x00000de8, 24899 }, /* Thai_maiek */
-    { 0x00000dd1, 24910 }, /* Thai_maihanakat */
-    { 0x00000dde, 24926 }, /* Thai_maihanakat_maitho */
-    { 0x00000de7, 24949 }, /* Thai_maitaikhu */
-    { 0x00000de9, 24964 }, /* Thai_maitho */
-    { 0x00000dea, 24976 }, /* Thai_maitri */
-    { 0x00000de6, 24988 }, /* Thai_maiyamok */
-    { 0x00000dc1, 25002 }, /* Thai_moma */
-    { 0x00000da7, 25012 }, /* Thai_ngongu */
-    { 0x00000ded, 25024 }, /* Thai_nikhahit */
-    { 0x00000db3, 25038 }, /* Thai_nonen */
-    { 0x00000db9, 25049 }, /* Thai_nonu */
-    { 0x00000dcd, 25059 }, /* Thai_oang */
-    { 0x00000dcf, 25069 }, /* Thai_paiyannoi */
-    { 0x00000dda, 25084 }, /* Thai_phinthu */
-    { 0x00000dbe, 25097 }, /* Thai_phophan */
-    { 0x00000dbc, 25110 }, /* Thai_phophung */
-    { 0x00000dc0, 25124 }, /* Thai_phosamphao */
-    { 0x00000dbb, 25140 }, /* Thai_popla */
-    { 0x00000dc3, 25151 }, /* Thai_rorua */
-    { 0x00000dc4, 25162 }, /* Thai_ru */
-    { 0x00000dd0, 25170 }, /* Thai_saraa */
-    { 0x00000dd2, 25181 }, /* Thai_saraaa */
-    { 0x00000de1, 25193 }, /* Thai_saraae */
-    { 0x00000de4, 25205 }, /* Thai_saraaimaimalai */
-    { 0x00000de3, 25225 }, /* Thai_saraaimaimuan */
-    { 0x00000dd3, 25244 }, /* Thai_saraam */
-    { 0x00000de0, 25256 }, /* Thai_sarae */
-    { 0x00000dd4, 25267 }, /* Thai_sarai */
-    { 0x00000dd5, 25278 }, /* Thai_saraii */
-    { 0x00000de2, 25290 }, /* Thai_sarao */
-    { 0x00000dd8, 25301 }, /* Thai_sarau */
-    { 0x00000dd6, 25312 }, /* Thai_saraue */
-    { 0x00000dd7, 25324 }, /* Thai_sarauee */
-    { 0x00000dd9, 25337 }, /* Thai_sarauu */
-    { 0x00000dc9, 25349 }, /* Thai_sorusi */
-    { 0x00000dc8, 25361 }, /* Thai_sosala */
-    { 0x00000dab, 25373 }, /* Thai_soso */
-    { 0x00000dca, 25383 }, /* Thai_sosua */
-    { 0x00000dec, 25394 }, /* Thai_thanthakhat */
-    { 0x00000db1, 25411 }, /* Thai_thonangmontho */
-    { 0x00000db2, 25430 }, /* Thai_thophuthao */
-    { 0x00000db7, 25446 }, /* Thai_thothahan */
-    { 0x00000db0, 25461 }, /* Thai_thothan */
-    { 0x00000db8, 25474 }, /* Thai_thothong */
-    { 0x00000db6, 25488 }, /* Thai_thothung */
-    { 0x00000daf, 25502 }, /* Thai_topatak */
-    { 0x00000db5, 25515 }, /* Thai_totao */
-    { 0x00000dc7, 25526 }, /* Thai_wowaen */
-    { 0x00000dc2, 25538 }, /* Thai_yoyak */
-    { 0x00000dad, 25549 }, /* Thai_yoying */
-    { 0x000008c0, 25561 }, /* therefore */
-    { 0x00000aa7, 25571 }, /* thinspace */
-    { 0x000000de, 25581 }, /* THORN */
-    { 0x000000de, 25587 }, /* Thorn */
-    { 0x000000fe, 25593 }, /* thorn */
-    { 0x00000ac4, 25599 }, /* threeeighths */
-    { 0x00000ab4, 25612 }, /* threefifths */
-    { 0x000000be, 25624 }, /* threequarters */
-    { 0x01002083, 25638 }, /* threesubscript */
-    { 0x000000b3, 25653 }, /* threesuperior */
-    { 0x0100222d, 25667 }, /* tintegral */
-    { 0x000008a4, 25677 }, /* topintegral */
-    { 0x000008ab, 25689 }, /* topleftparens */
-    { 0x000008a2, 25703 }, /* topleftradical */
-    { 0x000008a7, 25718 }, /* topleftsqbracket */
-    { 0x000008b1, 25735 }, /* topleftsummation */
-    { 0x000008ad, 25752 }, /* toprightparens */
-    { 0x000008a9, 25767 }, /* toprightsqbracket */
-    { 0x000008b5, 25785 }, /* toprightsummation */
-    { 0x000009f7, 25803 }, /* topt */
-    { 0x000008b3, 25808 }, /* topvertsummationconnector */
-    { 0x0000ff2b, 25834 }, /* Touroku */
-    { 0x00000ac9, 25842 }, /* trademark */
-    { 0x00000acb, 25852 }, /* trademarkincircle */
-    { 0x000003ac, 25870 }, /* Tslash */
-    { 0x000003bc, 25877 }, /* tslash */
-    { 0x00000ab3, 25884 }, /* twofifths */
-    { 0x01002082, 25894 }, /* twosubscript */
-    { 0x000000b2, 25907 }, /* twosuperior */
-    { 0x00000ab1, 25919 }, /* twothirds */
-    { 0x00000055, 25929 }, /* U */
-    { 0x00000075, 25931 }, /* u */
-    { 0x000000da, 25933 }, /* Uacute */
-    { 0x000000fa, 25940 }, /* uacute */
-    { 0x01001ee4, 25947 }, /* Ubelowdot */
-    { 0x01001ee5, 25957 }, /* ubelowdot */
-    { 0x000002dd, 25967 }, /* Ubreve */
-    { 0x000002fd, 25974 }, /* ubreve */
-    { 0x000000db, 25981 }, /* Ucircumflex */
-    { 0x000000fb, 25993 }, /* ucircumflex */
-    { 0x000000dc, 26005 }, /* Udiaeresis */
-    { 0x000000fc, 26016 }, /* udiaeresis */
-    { 0x000001db, 26027 }, /* Udoubleacute */
-    { 0x000001fb, 26040 }, /* udoubleacute */
-    { 0x000000d9, 26053 }, /* Ugrave */
-    { 0x000000f9, 26060 }, /* ugrave */
-    { 0x01001ee6, 26067 }, /* Uhook */
-    { 0x01001ee7, 26073 }, /* uhook */
-    { 0x010001af, 26079 }, /* Uhorn */
-    { 0x010001b0, 26085 }, /* uhorn */
-    { 0x01001ee8, 26091 }, /* Uhornacute */
-    { 0x01001ee9, 26102 }, /* uhornacute */
-    { 0x01001ef0, 26113 }, /* Uhornbelowdot */
-    { 0x01001ef1, 26127 }, /* uhornbelowdot */
-    { 0x01001eea, 26141 }, /* Uhorngrave */
-    { 0x01001eeb, 26152 }, /* uhorngrave */
-    { 0x01001eec, 26163 }, /* Uhornhook */
-    { 0x01001eed, 26173 }, /* uhornhook */
-    { 0x01001eee, 26183 }, /* Uhorntilde */
-    { 0x01001eef, 26194 }, /* uhorntilde */
-    { 0x000006ad, 26205 }, /* Ukrainian_ghe_with_upturn */
-    { 0x000006bd, 26231 }, /* Ukrainian_GHE_WITH_UPTURN */
-    { 0x000006a6, 26257 }, /* Ukrainian_i */
-    { 0x000006b6, 26269 }, /* Ukrainian_I */
-    { 0x000006a4, 26281 }, /* Ukrainian_ie */
-    { 0x000006b4, 26294 }, /* Ukrainian_IE */
-    { 0x000006a7, 26307 }, /* Ukrainian_yi */
-    { 0x000006b7, 26320 }, /* Ukrainian_YI */
-    { 0x000006a6, 26333 }, /* Ukranian_i */
-    { 0x000006b6, 26344 }, /* Ukranian_I */
-    { 0x000006a4, 26355 }, /* Ukranian_je */
-    { 0x000006b4, 26367 }, /* Ukranian_JE */
-    { 0x000006a7, 26379 }, /* Ukranian_yi */
-    { 0x000006b7, 26391 }, /* Ukranian_YI */
-    { 0x000003de, 26403 }, /* Umacron */
-    { 0x000003fe, 26411 }, /* umacron */
-    { 0x00000bc6, 26419 }, /* underbar */
-    { 0x0000005f, 26428 }, /* underscore */
-    { 0x0000ff65, 26439 }, /* Undo */
-    { 0x000008dd, 26444 }, /* union */
-    { 0x000003d9, 26450 }, /* Uogonek */
-    { 0x000003f9, 26458 }, /* uogonek */
-    { 0x0000ff52, 26466 }, /* Up */
-    { 0x000008fc, 26469 }, /* uparrow */
-    { 0x00000ba9, 26477 }, /* upcaret */
-    { 0x000009ec, 26485 }, /* upleftcorner */
-    { 0x000009eb, 26498 }, /* uprightcorner */
-    { 0x00000bc3, 26512 }, /* upshoe */
-    { 0x00000bd3, 26519 }, /* upstile */
-    { 0x00000bce, 26527 }, /* uptack */
-    { 0x000001d9, 26534 }, /* Uring */
-    { 0x000001f9, 26540 }, /* uring */
-    { 0x1000ff6e, 26546 }, /* User */
-    { 0x000003dd, 26551 }, /* Utilde */
-    { 0x000003fd, 26558 }, /* utilde */
-    { 0x00000056, 26565 }, /* V */
-    { 0x00000076, 26567 }, /* v */
-    { 0x000008c1, 26569 }, /* variation */
-    { 0x000009f8, 26579 }, /* vertbar */
-    { 0x000008a6, 26587 }, /* vertconnector */
-    { 0x000004de, 26601 }, /* voicedsound */
-    { 0x00ffffff, 26613 }, /* VoidSymbol */
-    { 0x000009e9, 26624 }, /* vt */
-    { 0x00000057, 26627 }, /* W */
-    { 0x00000077, 26629 }, /* w */
-    { 0x01001e82, 26631 }, /* Wacute */
-    { 0x01001e83, 26638 }, /* wacute */
-    { 0x01000174, 26645 }, /* Wcircumflex */
-    { 0x01000175, 26657 }, /* wcircumflex */
-    { 0x01001e84, 26669 }, /* Wdiaeresis */
-    { 0x01001e85, 26680 }, /* wdiaeresis */
-    { 0x01001e80, 26691 }, /* Wgrave */
-    { 0x01001e81, 26698 }, /* wgrave */
-    { 0x010020a9, 26705 }, /* WonSign */
-    { 0x00000058, 26713 }, /* X */
-    { 0x00000078, 26715 }, /* x */
-    { 0x01001e8a, 26717 }, /* Xabovedot */
-    { 0x01001e8b, 26727 }, /* xabovedot */
-    { 0x100811b9, 26737 }, /* XF8610ChannelsDown */
-    { 0x100811b8, 26756 }, /* XF8610ChannelsUp */
-    { 0x1008126f, 26773 }, /* XF863DMode */
-    { 0x1008ff39, 26784 }, /* XF86AddFavorite */
-    { 0x100811ad, 26800 }, /* XF86Addressbook */
-    { 0x10081230, 26816 }, /* XF86ALSToggle */
-    { 0x1008ff50, 26830 }, /* XF86ApplicationLeft */
-    { 0x1008ff51, 26850 }, /* XF86ApplicationRight */
-    { 0x10081244, 26871 }, /* XF86AppSelect */
-    { 0x10081177, 26885 }, /* XF86AspectRatio */
-    { 0x10081247, 26901 }, /* XF86Assistant */
-    { 0x1008121c, 26915 }, /* XF86AttendantOff */
-    { 0x1008121b, 26932 }, /* XF86AttendantOn */
-    { 0x1008121d, 26948 }, /* XF86AttendantToggle */
-    { 0x10081188, 26968 }, /* XF86Audio */
-    { 0x1008ff9b, 26978 }, /* XF86AudioCycleTrack */
-    { 0x1008126e, 26998 }, /* XF86AudioDesc */
-    { 0x1008ff97, 27012 }, /* XF86AudioForward */
-    { 0x1008ff11, 27029 }, /* XF86AudioLowerVolume */
-    { 0x1008ff32, 27050 }, /* XF86AudioMedia */
-    { 0x1008ffb2, 27065 }, /* XF86AudioMicMute */
-    { 0x1008ff12, 27082 }, /* XF86AudioMute */
-    { 0x1008ff17, 27096 }, /* XF86AudioNext */
-    { 0x1008ff31, 27110 }, /* XF86AudioPause */
-    { 0x1008ff14, 27125 }, /* XF86AudioPlay */
-    { 0x1008ffb6, 27139 }, /* XF86AudioPreset */
-    { 0x1008ff16, 27155 }, /* XF86AudioPrev */
-    { 0x1008ff13, 27169 }, /* XF86AudioRaiseVolume */
-    { 0x1008ff99, 27190 }, /* XF86AudioRandomPlay */
-    { 0x1008ff1c, 27210 }, /* XF86AudioRecord */
-    { 0x1008ff98, 27226 }, /* XF86AudioRepeat */
-    { 0x1008ff3e, 27242 }, /* XF86AudioRewind */
-    { 0x1008ff15, 27258 }, /* XF86AudioStop */
-    { 0x1008ff8d, 27272 }, /* XF86Away */
-    { 0x1008ff26, 27281 }, /* XF86Back */
-    { 0x1008ff3f, 27290 }, /* XF86BackForward */
-    { 0x1008ff93, 27306 }, /* XF86Battery */
-    { 0x1008ffa6, 27318 }, /* XF86Blue */
-    { 0x1008ff94, 27327 }, /* XF86Bluetooth */
-    { 0x1008ff52, 27341 }, /* XF86Book */
-    { 0x1008119b, 27350 }, /* XF86Break */
-    { 0x1008ff3b, 27360 }, /* XF86BrightnessAdjust */
-    { 0x100810f4, 27381 }, /* XF86BrightnessAuto */
-    { 0x10081251, 27400 }, /* XF86BrightnessMax */
-    { 0x10081250, 27418 }, /* XF86BrightnessMin */
-    { 0x10081240, 27436 }, /* XF86Buttonconfig */
-    { 0x1008ff54, 27453 }, /* XF86Calculater */
-    { 0x1008ff1d, 27468 }, /* XF86Calculator */
-    { 0x1008ff20, 27483 }, /* XF86Calendar */
-    { 0x10081218, 27496 }, /* XF86CameraDown */
-    { 0x10081210, 27511 }, /* XF86CameraFocus */
-    { 0x10081219, 27527 }, /* XF86CameraLeft */
-    { 0x1008121a, 27542 }, /* XF86CameraRight */
-    { 0x10081217, 27558 }, /* XF86CameraUp */
-    { 0x10081215, 27571 }, /* XF86CameraZoomIn */
-    { 0x10081216, 27588 }, /* XF86CameraZoomOut */
-    { 0x1008ff53, 27606 }, /* XF86CD */
-    { 0x10081193, 27613 }, /* XF86ChannelDown */
-    { 0x10081192, 27629 }, /* XF86ChannelUp */
-    { 0x1008ff55, 27643 }, /* XF86Clear */
-    { 0x1008fe21, 27653 }, /* XF86ClearGrab */
-    { 0x1008ff56, 27667 }, /* XF86Close */
-    { 0x1008ff3d, 27677 }, /* XF86Community */
-    { 0x100811b6, 27691 }, /* XF86ContextMenu */
-    { 0x1008ff22, 27707 }, /* XF86ContrastAdjust */
-    { 0x10081243, 27726 }, /* XF86ControlPanel */
-    { 0x1008ff57, 27743 }, /* XF86Copy */
-    { 0x1008ff58, 27752 }, /* XF86Cut */
-    { 0x1008ff9c, 27760 }, /* XF86CycleAngle */
-    { 0x10081277, 27775 }, /* XF86Data */
-    { 0x100811aa, 27784 }, /* XF86Database */
-    { 0x1008ff59, 27797 }, /* XF86Display */
-    { 0x100810f5, 27809 }, /* XF86DisplayOff */
-    { 0x100811af, 27824 }, /* XF86DisplayToggle */
-    { 0x1008ff5b, 27842 }, /* XF86Documents */
-    { 0x1008ff5a, 27856 }, /* XF86DOS */
-    { 0x10081185, 27864 }, /* XF86DVD */
-    { 0x100811a6, 27872 }, /* XF86Editor */
-    { 0x1008ff2c, 27883 }, /* XF86Eject */
-    { 0x1008ff5c, 27893 }, /* XF86Excel */
-    { 0x1008ff5d, 27903 }, /* XF86Explorer */
-    { 0x10081275, 27916 }, /* XF86FastReverse */
-    { 0x1008ff30, 27932 }, /* XF86Favorites */
-    { 0x1008ff3c, 27946 }, /* XF86Finance */
-    { 0x100811d0, 27958 }, /* XF86Fn */
-    { 0x100811d1, 27965 }, /* XF86Fn_Esc */
-    { 0x100811e5, 27976 }, /* XF86FnRightShift */
-    { 0x1008ff27, 27993 }, /* XF86Forward */
-    { 0x1008ff9d, 28005 }, /* XF86FrameBack */
-    { 0x1008ff9e, 28019 }, /* XF86FrameForward */
-    { 0x1008ffb8, 28036 }, /* XF86FullScreen */
-    { 0x1008ff5e, 28051 }, /* XF86Game */
-    { 0x1008ff5f, 28060 }, /* XF86Go */
-    { 0x100811a8, 28067 }, /* XF86GraphicsEditor */
-    { 0x1008ffa4, 28086 }, /* XF86Green */
-    { 0x100811be, 28096 }, /* XF86HangupPhone */
-    { 0x1008ffa8, 28112 }, /* XF86Hibernate */
-    { 0x1008ff37, 28126 }, /* XF86History */
-    { 0x1008ff18, 28138 }, /* XF86HomePage */
-    { 0x1008ff3a, 28151 }, /* XF86HotLinks */
-    { 0x100811ba, 28164 }, /* XF86Images */
-    { 0x10081166, 28175 }, /* XF86Info */
-    { 0x1008ff60, 28184 }, /* XF86iTouch */
-    { 0x10081242, 28195 }, /* XF86Journal */
-    { 0x1008ff06, 28207 }, /* XF86KbdBrightnessDown */
-    { 0x1008ff05, 28229 }, /* XF86KbdBrightnessUp */
-    { 0x10081264, 28249 }, /* XF86KbdInputAssistAccept */
-    { 0x10081265, 28274 }, /* XF86KbdInputAssistCancel */
-    { 0x10081261, 28299 }, /* XF86KbdInputAssistNext */
-    { 0x10081263, 28322 }, /* XF86KbdInputAssistNextgroup */
-    { 0x10081260, 28350 }, /* XF86KbdInputAssistPrev */
-    { 0x10081262, 28373 }, /* XF86KbdInputAssistPrevgroup */
-    { 0x100812b8, 28401 }, /* XF86KbdLcdMenu1 */
-    { 0x100812b9, 28417 }, /* XF86KbdLcdMenu2 */
-    { 0x100812ba, 28433 }, /* XF86KbdLcdMenu3 */
-    { 0x100812bb, 28449 }, /* XF86KbdLcdMenu4 */
-    { 0x100812bc, 28465 }, /* XF86KbdLcdMenu5 */
-    { 0x1008ff04, 28481 }, /* XF86KbdLightOnOff */
-    { 0x1008ffb3, 28499 }, /* XF86Keyboard */
-    { 0x1008ff40, 28512 }, /* XF86Launch0 */
-    { 0x1008ff41, 28524 }, /* XF86Launch1 */
-    { 0x1008ff42, 28536 }, /* XF86Launch2 */
-    { 0x1008ff43, 28548 }, /* XF86Launch3 */
-    { 0x1008ff44, 28560 }, /* XF86Launch4 */
-    { 0x1008ff45, 28572 }, /* XF86Launch5 */
-    { 0x1008ff46, 28584 }, /* XF86Launch6 */
-    { 0x1008ff47, 28596 }, /* XF86Launch7 */
-    { 0x1008ff48, 28608 }, /* XF86Launch8 */
-    { 0x1008ff49, 28620 }, /* XF86Launch9 */
-    { 0x1008ff4a, 28632 }, /* XF86LaunchA */
-    { 0x1008ff4b, 28644 }, /* XF86LaunchB */
-    { 0x1008ff4c, 28656 }, /* XF86LaunchC */
-    { 0x1008ff4d, 28668 }, /* XF86LaunchD */
-    { 0x1008ff4e, 28680 }, /* XF86LaunchE */
-    { 0x1008ff4f, 28692 }, /* XF86LaunchF */
-    { 0x10081269, 28704 }, /* XF86LeftDown */
-    { 0x10081268, 28717 }, /* XF86LeftUp */
-    { 0x1008ff35, 28728 }, /* XF86LightBulb */
-    { 0x1008121e, 28742 }, /* XF86LightsToggle */
-    { 0x1008fe25, 28759 }, /* XF86LogGrabInfo */
-    { 0x1008ff61, 28775 }, /* XF86LogOff */
-    { 0x1008fe24, 28786 }, /* XF86LogWindowTree */
-    { 0x10081290, 28804 }, /* XF86Macro1 */
-    { 0x10081299, 28815 }, /* XF86Macro10 */
-    { 0x1008129a, 28827 }, /* XF86Macro11 */
-    { 0x1008129b, 28839 }, /* XF86Macro12 */
-    { 0x1008129c, 28851 }, /* XF86Macro13 */
-    { 0x1008129d, 28863 }, /* XF86Macro14 */
-    { 0x1008129e, 28875 }, /* XF86Macro15 */
-    { 0x1008129f, 28887 }, /* XF86Macro16 */
-    { 0x100812a0, 28899 }, /* XF86Macro17 */
-    { 0x100812a1, 28911 }, /* XF86Macro18 */
-    { 0x100812a2, 28923 }, /* XF86Macro19 */
-    { 0x10081291, 28935 }, /* XF86Macro2 */
-    { 0x100812a3, 28946 }, /* XF86Macro20 */
-    { 0x100812a4, 28958 }, /* XF86Macro21 */
-    { 0x100812a5, 28970 }, /* XF86Macro22 */
-    { 0x100812a6, 28982 }, /* XF86Macro23 */
-    { 0x100812a7, 28994 }, /* XF86Macro24 */
-    { 0x100812a8, 29006 }, /* XF86Macro25 */
-    { 0x100812a9, 29018 }, /* XF86Macro26 */
-    { 0x100812aa, 29030 }, /* XF86Macro27 */
-    { 0x100812ab, 29042 }, /* XF86Macro28 */
-    { 0x100812ac, 29054 }, /* XF86Macro29 */
-    { 0x10081292, 29066 }, /* XF86Macro3 */
-    { 0x100812ad, 29077 }, /* XF86Macro30 */
-    { 0x10081293, 29089 }, /* XF86Macro4 */
-    { 0x10081294, 29100 }, /* XF86Macro5 */
-    { 0x10081295, 29111 }, /* XF86Macro6 */
-    { 0x10081296, 29122 }, /* XF86Macro7 */
-    { 0x10081297, 29133 }, /* XF86Macro8 */
-    { 0x10081298, 29144 }, /* XF86Macro9 */
-    { 0x100812b3, 29155 }, /* XF86MacroPreset1 */
-    { 0x100812b4, 29172 }, /* XF86MacroPreset2 */
-    { 0x100812b5, 29189 }, /* XF86MacroPreset3 */
-    { 0x100812b2, 29206 }, /* XF86MacroPresetCycle */
-    { 0x100812b0, 29227 }, /* XF86MacroRecordStart */
-    { 0x100812b1, 29248 }, /* XF86MacroRecordStop */
-    { 0x1008ff19, 29268 }, /* XF86Mail */
-    { 0x1008ff90, 29277 }, /* XF86MailForward */
-    { 0x1008ff62, 29293 }, /* XF86Market */
-    { 0x100811b7, 29304 }, /* XF86MediaRepeat */
-    { 0x1008126b, 29320 }, /* XF86MediaTopMenu */
-    { 0x1008ff63, 29337 }, /* XF86Meeting */
-    { 0x1008ff1e, 29349 }, /* XF86Memo */
-    { 0x1008ff65, 29358 }, /* XF86MenuKB */
-    { 0x1008ff66, 29369 }, /* XF86MenuPB */
-    { 0x1008ff8e, 29380 }, /* XF86Messenger */
-    { 0x1008ff01, 29394 }, /* XF86ModeLock */
-    { 0x1008ff07, 29407 }, /* XF86MonBrightnessCycle */
-    { 0x1008ff03, 29430 }, /* XF86MonBrightnessDown */
-    { 0x1008ff02, 29452 }, /* XF86MonBrightnessUp */
-    { 0x1008ff92, 29472 }, /* XF86Music */
-    { 0x1008ff33, 29482 }, /* XF86MyComputer */
-    { 0x1008ff67, 29497 }, /* XF86MySites */
-    { 0x1008ff68, 29509 }, /* XF86New */
-    { 0x1008ff69, 29517 }, /* XF86News */
-    { 0x1008fe22, 29526 }, /* XF86Next_VMode */
-    { 0x10081270, 29541 }, /* XF86NextFavorite */
-    { 0x100811bc, 29558 }, /* XF86NotificationCenter */
-    { 0x10081200, 29581 }, /* XF86Numeric0 */
-    { 0x10081201, 29594 }, /* XF86Numeric1 */
-    { 0x1008126c, 29607 }, /* XF86Numeric11 */
-    { 0x1008126d, 29621 }, /* XF86Numeric12 */
-    { 0x10081202, 29635 }, /* XF86Numeric2 */
-    { 0x10081203, 29648 }, /* XF86Numeric3 */
-    { 0x10081204, 29661 }, /* XF86Numeric4 */
-    { 0x10081205, 29674 }, /* XF86Numeric5 */
-    { 0x10081206, 29687 }, /* XF86Numeric6 */
-    { 0x10081207, 29700 }, /* XF86Numeric7 */
-    { 0x10081208, 29713 }, /* XF86Numeric8 */
-    { 0x10081209, 29726 }, /* XF86Numeric9 */
-    { 0x1008120c, 29739 }, /* XF86NumericA */
-    { 0x1008120d, 29752 }, /* XF86NumericB */
-    { 0x1008120e, 29765 }, /* XF86NumericC */
-    { 0x1008120f, 29778 }, /* XF86NumericD */
-    { 0x1008120b, 29791 }, /* XF86NumericPound */
-    { 0x1008120a, 29808 }, /* XF86NumericStar */
-    { 0x1008ff6a, 29824 }, /* XF86OfficeHome */
-    { 0x10081278, 29839 }, /* XF86OnScreenKeyboard */
-    { 0x1008ff6b, 29860 }, /* XF86Open */
-    { 0x1008ff38, 29869 }, /* XF86OpenURL */
-    { 0x1008ff6c, 29881 }, /* XF86Option */
-    { 0x1008ff6d, 29892 }, /* XF86Paste */
-    { 0x10081272, 29902 }, /* XF86PauseRecord */
-    { 0x1008ff6e, 29918 }, /* XF86Phone */
-    { 0x100811bd, 29928 }, /* XF86PickupPhone */
-    { 0x1008ff91, 29944 }, /* XF86Pictures */
-    { 0x1008ff21, 29957 }, /* XF86PowerDown */
-    { 0x1008ff2a, 29971 }, /* XF86PowerOff */
-    { 0x100811a9, 29984 }, /* XF86Presentation */
-    { 0x1008fe23, 30001 }, /* XF86Prev_VMode */
-    { 0x10081279, 30016 }, /* XF86PrivacyScreenToggle */
-    { 0x1008ff70, 30040 }, /* XF86Q */
-    { 0x1008ffa3, 30046 }, /* XF86Red */
-    { 0x1008ff29, 30054 }, /* XF86Refresh */
-    { 0x1008ff73, 30066 }, /* XF86Reload */
-    { 0x1008ff72, 30077 }, /* XF86Reply */
-    { 0x1008ffb5, 30087 }, /* XF86RFKill */
-    { 0x10081267, 30098 }, /* XF86RightDown */
-    { 0x10081266, 30112 }, /* XF86RightUp */
-    { 0x1008ff24, 30124 }, /* XF86RockerDown */
-    { 0x1008ff25, 30139 }, /* XF86RockerEnter */
-    { 0x1008ff23, 30155 }, /* XF86RockerUp */
-    { 0x1008126a, 30168 }, /* XF86RootMenu */
-    { 0x1008ff74, 30181 }, /* XF86RotateWindows */
-    { 0x1008ff76, 30199 }, /* XF86RotationKB */
-    { 0x1008ffb7, 30214 }, /* XF86RotationLockToggle */
-    { 0x1008ff75, 30237 }, /* XF86RotationPB */
-    { 0x1008ff77, 30252 }, /* XF86Save */
-    { 0x1008ff2d, 30261 }, /* XF86ScreenSaver */
-    { 0x10081245, 30277 }, /* XF86Screensaver */
-    { 0x1008ff7a, 30293 }, /* XF86ScrollClick */
-    { 0x1008ff79, 30309 }, /* XF86ScrollDown */
-    { 0x1008ff78, 30324 }, /* XF86ScrollUp */
-    { 0x1008ff1b, 30337 }, /* XF86Search */
-    { 0x1008ffa0, 30348 }, /* XF86Select */
-    { 0x1008127a, 30359 }, /* XF86SelectiveScreenshot */
-    { 0x1008ff7b, 30383 }, /* XF86Send */
-    { 0x1008ff36, 30392 }, /* XF86Shop */
-    { 0x1008ff2f, 30401 }, /* XF86Sleep */
-    { 0x10081276, 30411 }, /* XF86SlowReverse */
-    { 0x1008ff7c, 30427 }, /* XF86Spell */
-    { 0x100811b0, 30437 }, /* XF86SpellCheck */
-    { 0x1008ff7d, 30452 }, /* XF86SplitScreen */
-    { 0x1008ff10, 30468 }, /* XF86Standby */
-    { 0x1008ff1a, 30480 }, /* XF86Start */
-    { 0x1008ff28, 30490 }, /* XF86Stop */
-    { 0x10081271, 30499 }, /* XF86StopRecord */
-    { 0x1008ff9a, 30514 }, /* XF86Subtitle */
-    { 0x1008ff7e, 30527 }, /* XF86Support */
-    { 0x1008ffa7, 30539 }, /* XF86Suspend */
-    { 0x1008fe01, 30551 }, /* XF86Switch_VT_1 */
-    { 0x1008fe0a, 30567 }, /* XF86Switch_VT_10 */
-    { 0x1008fe0b, 30584 }, /* XF86Switch_VT_11 */
-    { 0x1008fe0c, 30601 }, /* XF86Switch_VT_12 */
-    { 0x1008fe02, 30618 }, /* XF86Switch_VT_2 */
-    { 0x1008fe03, 30634 }, /* XF86Switch_VT_3 */
-    { 0x1008fe04, 30650 }, /* XF86Switch_VT_4 */
-    { 0x1008fe05, 30666 }, /* XF86Switch_VT_5 */
-    { 0x1008fe06, 30682 }, /* XF86Switch_VT_6 */
-    { 0x1008fe07, 30698 }, /* XF86Switch_VT_7 */
-    { 0x1008fe08, 30714 }, /* XF86Switch_VT_8 */
-    { 0x1008fe09, 30730 }, /* XF86Switch_VT_9 */
-    { 0x10081241, 30746 }, /* XF86Taskmanager */
-    { 0x1008ff7f, 30762 }, /* XF86TaskPane */
-    { 0x1008ff80, 30775 }, /* XF86Terminal */
-    { 0x1008ff9f, 30788 }, /* XF86Time */
-    { 0x1008ff1f, 30797 }, /* XF86ToDoList */
-    { 0x1008ff81, 30810 }, /* XF86Tools */
-    { 0x1008ffa2, 30820 }, /* XF86TopMenu */
-    { 0x1008ffb1, 30832 }, /* XF86TouchpadOff */
-    { 0x1008ffb0, 30848 }, /* XF86TouchpadOn */
-    { 0x1008ffa9, 30863 }, /* XF86TouchpadToggle */
-    { 0x1008ff82, 30882 }, /* XF86Travel */
-    { 0x1008fe20, 30893 }, /* XF86Ungrab */
-    { 0x10081274, 30904 }, /* XF86Unmute */
-    { 0x1008ff85, 30915 }, /* XF86User1KB */
-    { 0x1008ff86, 30927 }, /* XF86User2KB */
-    { 0x1008ff84, 30939 }, /* XF86UserPB */
-    { 0x1008ff96, 30950 }, /* XF86UWB */
-    { 0x1008ff34, 30958 }, /* XF86VendorHome */
-    { 0x1008ff87, 30973 }, /* XF86Video */
-    { 0x100811a0, 30983 }, /* XF86VideoPhone */
-    { 0x1008ffa1, 30998 }, /* XF86View */
-    { 0x10081273, 31007 }, /* XF86VOD */
-    { 0x10081246, 31015 }, /* XF86VoiceCommand */
-    { 0x100811ac, 31032 }, /* XF86Voicemail */
-    { 0x1008ff2b, 31046 }, /* XF86WakeUp */
-    { 0x1008ff8f, 31057 }, /* XF86WebCam */
-    { 0x1008ff88, 31068 }, /* XF86WheelButton */
-    { 0x1008ff95, 31084 }, /* XF86WLAN */
-    { 0x1008ff89, 31093 }, /* XF86Word */
-    { 0x10081211, 31102 }, /* XF86WPSButton */
-    { 0x1008ffb4, 31116 }, /* XF86WWAN */
-    { 0x1008ff2e, 31125 }, /* XF86WWW */
-    { 0x1008ff8a, 31133 }, /* XF86Xfer */
-    { 0x1008ffa5, 31142 }, /* XF86Yellow */
-    { 0x1008ff8b, 31153 }, /* XF86ZoomIn */
-    { 0x1008ff8c, 31164 }, /* XF86ZoomOut */
-    { 0x100811a4, 31176 }, /* XF86ZoomReset */
-    { 0x00000059, 31190 }, /* Y */
-    { 0x00000079, 31192 }, /* y */
-    { 0x000000dd, 31194 }, /* Yacute */
-    { 0x000000fd, 31201 }, /* yacute */
-    { 0x01001ef4, 31208 }, /* Ybelowdot */
-    { 0x01001ef5, 31218 }, /* ybelowdot */
-    { 0x01000176, 31228 }, /* Ycircumflex */
-    { 0x01000177, 31240 }, /* ycircumflex */
-    { 0x000000ff, 31252 }, /* ydiaeresis */
-    { 0x000013be, 31263 }, /* Ydiaeresis */
-    { 0x000000a5, 31274 }, /* yen */
-    { 0x01001ef2, 31278 }, /* Ygrave */
-    { 0x01001ef3, 31285 }, /* ygrave */
-    { 0x01001ef6, 31292 }, /* Yhook */
-    { 0x01001ef7, 31298 }, /* yhook */
-    { 0x01001ef8, 31304 }, /* Ytilde */
-    { 0x01001ef9, 31311 }, /* ytilde */
-    { 0x0000005a, 31318 }, /* Z */
-    { 0x0000007a, 31320 }, /* z */
-    { 0x000001af, 31322 }, /* Zabovedot */
-    { 0x000001bf, 31332 }, /* zabovedot */
-    { 0x000001ac, 31342 }, /* Zacute */
-    { 0x000001bc, 31349 }, /* zacute */
-    { 0x000001ae, 31356 }, /* Zcaron */
-    { 0x000001be, 31363 }, /* zcaron */
-    { 0x0000ff3d, 31370 }, /* Zen_Koho */
-    { 0x0000ff28, 31379 }, /* Zenkaku */
-    { 0x0000ff2a, 31387 }, /* Zenkaku_Hankaku */
-    { 0x01002080, 31403 }, /* zerosubscript */
-    { 0x01002070, 31417 }, /* zerosuperior */
-    { 0x010001b5, 31430 }, /* Zstroke */
-    { 0x010001b6, 31438 }, /* zstroke */
+    { 0x0000fe51, 10590 }, /* dead_acute */
+    { 0x0000fe6b, 10601 }, /* dead_belowbreve */
+    { 0x0000fe69, 10617 }, /* dead_belowcircumflex */
+    { 0x0000fe6e, 10638 }, /* dead_belowcomma */
+    { 0x0000fe6c, 10654 }, /* dead_belowdiaeresis */
+    { 0x0000fe60, 10674 }, /* dead_belowdot */
+    { 0x0000fe68, 10688 }, /* dead_belowmacron */
+    { 0x0000fe67, 10705 }, /* dead_belowring */
+    { 0x0000fe6a, 10720 }, /* dead_belowtilde */
+    { 0x0000fe55, 10736 }, /* dead_breve */
+    { 0x0000fe8b, 10747 }, /* dead_capital_schwa */
+    { 0x0000fe5a, 10766 }, /* dead_caron */
+    { 0x0000fe5b, 10777 }, /* dead_cedilla */
+    { 0x0000fe52, 10790 }, /* dead_circumflex */
+    { 0x0000fe6f, 10806 }, /* dead_currency */
+    { 0x0000fe65, 10820 }, /* dead_dasia */
+    { 0x0000fe57, 10831 }, /* dead_diaeresis */
+    { 0x0000fe59, 10846 }, /* dead_doubleacute */
+    { 0x0000fe66, 10863 }, /* dead_doublegrave */
+    { 0x0000fe82, 10880 }, /* dead_e */
+    { 0x0000fe83, 10887 }, /* dead_E */
+    { 0x0000fe50, 10894 }, /* dead_grave */
+    { 0x0000fe8c, 10905 }, /* dead_greek */
+    { 0x0000fe8d, 10916 }, /* dead_hamza */
+    { 0x0000fe61, 10927 }, /* dead_hook */
+    { 0x0000fe62, 10937 }, /* dead_horn */
+    { 0x0000fe84, 10947 }, /* dead_i */
+    { 0x0000fe85, 10954 }, /* dead_I */
+    { 0x0000fe6d, 10961 }, /* dead_invertedbreve */
+    { 0x0000fe5d, 10980 }, /* dead_iota */
+    { 0x0000fe54, 10990 }, /* dead_macron */
+    { 0x0000fe86, 11002 }, /* dead_o */
+    { 0x0000fe87, 11009 }, /* dead_O */
+    { 0x0000fe5c, 11016 }, /* dead_ogonek */
+    { 0x0000fe53, 11028 }, /* dead_perispomeni */
+    { 0x0000fe64, 11045 }, /* dead_psili */
+    { 0x0000fe8a, 11056 }, /* dead_schwa */
+    { 0x0000fe8b, 11067 }, /* dead_SCHWA */
+    { 0x0000fe5f, 11078 }, /* dead_semivoiced_sound */
+    { 0x0000fe8a, 11100 }, /* dead_small_schwa */
+    { 0x0000fe63, 11117 }, /* dead_stroke */
+    { 0x0000fe53, 11129 }, /* dead_tilde */
+    { 0x0000fe88, 11140 }, /* dead_u */
+    { 0x0000fe89, 11147 }, /* dead_U */
+    { 0x0000fe5e, 11154 }, /* dead_voiced_sound */
+    { 0x00000abd, 11172 }, /* decimalpoint */
+    { 0x000000b0, 11185 }, /* degree */
+    { 0x0000ffff, 11192 }, /* Delete */
+    { 0x1000ff73, 11199 }, /* DeleteChar */
+    { 0x1000ff71, 11210 }, /* DeleteLine */
+    { 0x1000fe60, 11221 }, /* Dgrave_accent */
+    { 0x000000a8, 11235 }, /* diaeresis */
+    { 0x00000aed, 11245 }, /* diamond */
+    { 0x00000aa5, 11253 }, /* digitspace */
+    { 0x0100222c, 11264 }, /* dintegral */
+    { 0x000000f7, 11274 }, /* division */
+    { 0x00000024, 11283 }, /* dollar */
+    { 0x010020ab, 11290 }, /* DongSign */
+    { 0x00000aaf, 11299 }, /* doubbaselinedot */
+    { 0x000001bd, 11315 }, /* doubleacute */
+    { 0x00000af2, 11327 }, /* doubledagger */
+    { 0x00000afe, 11340 }, /* doublelowquotemark */
+    { 0x0000ff54, 11359 }, /* Down */
+    { 0x000008fe, 11364 }, /* downarrow */
+    { 0x00000ba8, 11374 }, /* downcaret */
+    { 0x00000bd6, 11384 }, /* downshoe */
+    { 0x00000bc4, 11393 }, /* downstile */
+    { 0x00000bc2, 11403 }, /* downtack */
+    { 0x1000ff00, 11412 }, /* DRemove */
+    { 0x1000feb0, 11420 }, /* Dring_accent */
+    { 0x000001d0, 11433 }, /* Dstroke */
+    { 0x000001f0, 11441 }, /* dstroke */
+    { 0x1000fe7e, 11449 }, /* Dtilde */
+    { 0x00000045, 11456 }, /* E */
+    { 0x00000065, 11458 }, /* e */
+    { 0x000003cc, 11460 }, /* Eabovedot */
+    { 0x000003ec, 11470 }, /* eabovedot */
+    { 0x000000c9, 11480 }, /* Eacute */
+    { 0x000000e9, 11487 }, /* eacute */
+    { 0x01001eb8, 11494 }, /* Ebelowdot */
+    { 0x01001eb9, 11504 }, /* ebelowdot */
+    { 0x000001cc, 11514 }, /* Ecaron */
+    { 0x000001ec, 11521 }, /* ecaron */
+    { 0x000000ca, 11528 }, /* Ecircumflex */
+    { 0x000000ea, 11540 }, /* ecircumflex */
+    { 0x01001ebe, 11552 }, /* Ecircumflexacute */
+    { 0x01001ebf, 11569 }, /* ecircumflexacute */
+    { 0x01001ec6, 11586 }, /* Ecircumflexbelowdot */
+    { 0x01001ec7, 11606 }, /* ecircumflexbelowdot */
+    { 0x01001ec0, 11626 }, /* Ecircumflexgrave */
+    { 0x01001ec1, 11643 }, /* ecircumflexgrave */
+    { 0x01001ec2, 11660 }, /* Ecircumflexhook */
+    { 0x01001ec3, 11676 }, /* ecircumflexhook */
+    { 0x01001ec4, 11692 }, /* Ecircumflextilde */
+    { 0x01001ec5, 11709 }, /* ecircumflextilde */
+    { 0x010020a0, 11726 }, /* EcuSign */
+    { 0x000000cb, 11734 }, /* Ediaeresis */
+    { 0x000000eb, 11745 }, /* ediaeresis */
+    { 0x000000c8, 11756 }, /* Egrave */
+    { 0x000000e8, 11763 }, /* egrave */
+    { 0x01001eba, 11770 }, /* Ehook */
+    { 0x01001ebb, 11776 }, /* ehook */
+    { 0x01002088, 11782 }, /* eightsubscript */
+    { 0x01002078, 11797 }, /* eightsuperior */
+    { 0x0000ff2f, 11811 }, /* Eisu_Shift */
+    { 0x0000ff30, 11822 }, /* Eisu_toggle */
+    { 0x01002208, 11834 }, /* elementof */
+    { 0x00000aae, 11844 }, /* ellipsis */
+    { 0x00000aa3, 11853 }, /* em3space */
+    { 0x00000aa4, 11862 }, /* em4space */
+    { 0x000003aa, 11871 }, /* Emacron */
+    { 0x000003ba, 11879 }, /* emacron */
+    { 0x00000aa9, 11887 }, /* emdash */
+    { 0x00000ade, 11894 }, /* emfilledcircle */
+    { 0x00000adf, 11909 }, /* emfilledrect */
+    { 0x00000ace, 11922 }, /* emopencircle */
+    { 0x00000acf, 11935 }, /* emopenrectangle */
+    { 0x01002205, 11951 }, /* emptyset */
+    { 0x00000aa1, 11960 }, /* emspace */
+    { 0x0000ff57, 11968 }, /* End */
+    { 0x00000aaa, 11972 }, /* endash */
+    { 0x00000ae6, 11979 }, /* enfilledcircbullet */
+    { 0x00000ae7, 11998 }, /* enfilledsqbullet */
+    { 0x000003bd, 12015 }, /* ENG */
+    { 0x000003bf, 12019 }, /* eng */
+    { 0x00000ae0, 12023 }, /* enopencircbullet */
+    { 0x00000ae1, 12040 }, /* enopensquarebullet */
+    { 0x00000aa2, 12059 }, /* enspace */
+    { 0x000001ca, 12067 }, /* Eogonek */
+    { 0x000001ea, 12075 }, /* eogonek */
+    { 0x0000003d, 12083 }, /* equal */
+    { 0x0000ff1b, 12089 }, /* Escape */
+    { 0x000000d0, 12096 }, /* ETH */
+    { 0x000000d0, 12100 }, /* Eth */
+    { 0x000000f0, 12104 }, /* eth */
+    { 0x01001ebc, 12108 }, /* Etilde */
+    { 0x01001ebd, 12115 }, /* etilde */
+    { 0x000020ac, 12122 }, /* EuroSign */
+    { 0x00000021, 12131 }, /* exclam */
+    { 0x000000a1, 12138 }, /* exclamdown */
+    { 0x0000ff62, 12149 }, /* Execute */
+    { 0x1000ff76, 12157 }, /* Ext16bit_L */
+    { 0x1000ff77, 12168 }, /* Ext16bit_R */
+    { 0x010001b7, 12179 }, /* EZH */
+    { 0x01000292, 12183 }, /* ezh */
+    { 0x00000046, 12187 }, /* F */
+    { 0x00000066, 12189 }, /* f */
+    { 0x0000ffbe, 12191 }, /* F1 */
+    { 0x0000ffc7, 12194 }, /* F10 */
+    { 0x0000ffc8, 12198 }, /* F11 */
+    { 0x0000ffc9, 12202 }, /* F12 */
+    { 0x0000ffca, 12206 }, /* F13 */
+    { 0x0000ffcb, 12210 }, /* F14 */
+    { 0x0000ffcc, 12214 }, /* F15 */
+    { 0x0000ffcd, 12218 }, /* F16 */
+    { 0x0000ffce, 12222 }, /* F17 */
+    { 0x0000ffcf, 12226 }, /* F18 */
+    { 0x0000ffd0, 12230 }, /* F19 */
+    { 0x0000ffbf, 12234 }, /* F2 */
+    { 0x0000ffd1, 12237 }, /* F20 */
+    { 0x0000ffd2, 12241 }, /* F21 */
+    { 0x0000ffd3, 12245 }, /* F22 */
+    { 0x0000ffd4, 12249 }, /* F23 */
+    { 0x0000ffd5, 12253 }, /* F24 */
+    { 0x0000ffd6, 12257 }, /* F25 */
+    { 0x0000ffd7, 12261 }, /* F26 */
+    { 0x0000ffd8, 12265 }, /* F27 */
+    { 0x0000ffd9, 12269 }, /* F28 */
+    { 0x0000ffda, 12273 }, /* F29 */
+    { 0x0000ffc0, 12277 }, /* F3 */
+    { 0x0000ffdb, 12280 }, /* F30 */
+    { 0x0000ffdc, 12284 }, /* F31 */
+    { 0x0000ffdd, 12288 }, /* F32 */
+    { 0x0000ffde, 12292 }, /* F33 */
+    { 0x0000ffdf, 12296 }, /* F34 */
+    { 0x0000ffe0, 12300 }, /* F35 */
+    { 0x0000ffc1, 12304 }, /* F4 */
+    { 0x0000ffc2, 12307 }, /* F5 */
+    { 0x0000ffc3, 12310 }, /* F6 */
+    { 0x0000ffc4, 12313 }, /* F7 */
+    { 0x0000ffc5, 12316 }, /* F8 */
+    { 0x0000ffc6, 12319 }, /* F9 */
+    { 0x01001e1e, 12322 }, /* Fabovedot */
+    { 0x01001e1f, 12332 }, /* fabovedot */
+    { 0x010006f0, 12342 }, /* Farsi_0 */
+    { 0x010006f1, 12350 }, /* Farsi_1 */
+    { 0x010006f2, 12358 }, /* Farsi_2 */
+    { 0x010006f3, 12366 }, /* Farsi_3 */
+    { 0x010006f4, 12374 }, /* Farsi_4 */
+    { 0x010006f5, 12382 }, /* Farsi_5 */
+    { 0x010006f6, 12390 }, /* Farsi_6 */
+    { 0x010006f7, 12398 }, /* Farsi_7 */
+    { 0x010006f8, 12406 }, /* Farsi_8 */
+    { 0x010006f9, 12414 }, /* Farsi_9 */
+    { 0x010006cc, 12422 }, /* Farsi_yeh */
+    { 0x00000af8, 12432 }, /* femalesymbol */
+    { 0x000009e3, 12445 }, /* ff */
+    { 0x010020a3, 12448 }, /* FFrancSign */
+    { 0x00000abb, 12459 }, /* figdash */
+    { 0x00000adc, 12467 }, /* filledlefttribullet */
+    { 0x00000adb, 12487 }, /* filledrectbullet */
+    { 0x00000add, 12504 }, /* filledrighttribullet */
+    { 0x00000ae9, 12525 }, /* filledtribulletdown */
+    { 0x00000ae8, 12545 }, /* filledtribulletup */
+    { 0x0000ff68, 12563 }, /* Find */
+    { 0x0000fed0, 12568 }, /* First_Virtual_Screen */
+    { 0x00000ac5, 12589 }, /* fiveeighths */
+    { 0x00000ab7, 12601 }, /* fivesixths */
+    { 0x01002085, 12612 }, /* fivesubscript */
+    { 0x01002075, 12626 }, /* fivesuperior */
+    { 0x00000ab5, 12639 }, /* fourfifths */
+    { 0x01002084, 12650 }, /* foursubscript */
+    { 0x01002074, 12664 }, /* foursuperior */
+    { 0x0100221c, 12677 }, /* fourthroot */
+    { 0x000008f6, 12688 }, /* function */
+    { 0x00000047, 12697 }, /* G */
+    { 0x00000067, 12699 }, /* g */
+    { 0x000002d5, 12701 }, /* Gabovedot */
+    { 0x000002f5, 12711 }, /* gabovedot */
+    { 0x000002ab, 12721 }, /* Gbreve */
+    { 0x000002bb, 12728 }, /* gbreve */
+    { 0x010001e6, 12735 }, /* Gcaron */
+    { 0x010001e7, 12742 }, /* gcaron */
+    { 0x000003ab, 12749 }, /* Gcedilla */
+    { 0x000003bb, 12758 }, /* gcedilla */
+    { 0x000002d8, 12767 }, /* Gcircumflex */
+    { 0x000002f8, 12779 }, /* gcircumflex */
+    { 0x010010d0, 12791 }, /* Georgian_an */
+    { 0x010010d1, 12803 }, /* Georgian_ban */
+    { 0x010010ea, 12816 }, /* Georgian_can */
+    { 0x010010ed, 12829 }, /* Georgian_char */
+    { 0x010010e9, 12843 }, /* Georgian_chin */
+    { 0x010010ec, 12857 }, /* Georgian_cil */
+    { 0x010010d3, 12870 }, /* Georgian_don */
+    { 0x010010d4, 12883 }, /* Georgian_en */
+    { 0x010010f6, 12895 }, /* Georgian_fi */
+    { 0x010010d2, 12907 }, /* Georgian_gan */
+    { 0x010010e6, 12920 }, /* Georgian_ghan */
+    { 0x010010f0, 12934 }, /* Georgian_hae */
+    { 0x010010f4, 12947 }, /* Georgian_har */
+    { 0x010010f1, 12960 }, /* Georgian_he */
+    { 0x010010f2, 12972 }, /* Georgian_hie */
+    { 0x010010f5, 12985 }, /* Georgian_hoe */
+    { 0x010010d8, 12998 }, /* Georgian_in */
+    { 0x010010ef, 13010 }, /* Georgian_jhan */
+    { 0x010010eb, 13024 }, /* Georgian_jil */
+    { 0x010010d9, 13037 }, /* Georgian_kan */
+    { 0x010010e5, 13050 }, /* Georgian_khar */
+    { 0x010010da, 13064 }, /* Georgian_las */
+    { 0x010010db, 13077 }, /* Georgian_man */
+    { 0x010010dc, 13090 }, /* Georgian_nar */
+    { 0x010010dd, 13103 }, /* Georgian_on */
+    { 0x010010de, 13115 }, /* Georgian_par */
+    { 0x010010e4, 13128 }, /* Georgian_phar */
+    { 0x010010e7, 13142 }, /* Georgian_qar */
+    { 0x010010e0, 13155 }, /* Georgian_rae */
+    { 0x010010e1, 13168 }, /* Georgian_san */
+    { 0x010010e8, 13181 }, /* Georgian_shin */
+    { 0x010010d7, 13195 }, /* Georgian_tan */
+    { 0x010010e2, 13208 }, /* Georgian_tar */
+    { 0x010010e3, 13221 }, /* Georgian_un */
+    { 0x010010d5, 13233 }, /* Georgian_vin */
+    { 0x010010f3, 13246 }, /* Georgian_we */
+    { 0x010010ee, 13258 }, /* Georgian_xan */
+    { 0x010010d6, 13271 }, /* Georgian_zen */
+    { 0x010010df, 13284 }, /* Georgian_zhar */
+    { 0x00000060, 13298 }, /* grave */
+    { 0x0000003e, 13304 }, /* greater */
+    { 0x000008be, 13312 }, /* greaterthanequal */
+    { 0x000007ae, 13329 }, /* Greek_accentdieresis */
+    { 0x000007c1, 13350 }, /* Greek_ALPHA */
+    { 0x000007e1, 13362 }, /* Greek_alpha */
+    { 0x000007a1, 13374 }, /* Greek_ALPHAaccent */
+    { 0x000007b1, 13392 }, /* Greek_alphaaccent */
+    { 0x000007c2, 13410 }, /* Greek_BETA */
+    { 0x000007e2, 13421 }, /* Greek_beta */
+    { 0x000007d7, 13432 }, /* Greek_CHI */
+    { 0x000007f7, 13442 }, /* Greek_chi */
+    { 0x000007c4, 13452 }, /* Greek_DELTA */
+    { 0x000007e4, 13464 }, /* Greek_delta */
+    { 0x000007c5, 13476 }, /* Greek_EPSILON */
+    { 0x000007e5, 13490 }, /* Greek_epsilon */
+    { 0x000007a2, 13504 }, /* Greek_EPSILONaccent */
+    { 0x000007b2, 13524 }, /* Greek_epsilonaccent */
+    { 0x000007c7, 13544 }, /* Greek_ETA */
+    { 0x000007e7, 13554 }, /* Greek_eta */
+    { 0x000007a3, 13564 }, /* Greek_ETAaccent */
+    { 0x000007b3, 13580 }, /* Greek_etaaccent */
+    { 0x000007f3, 13596 }, /* Greek_finalsmallsigma */
+    { 0x000007c3, 13618 }, /* Greek_GAMMA */
+    { 0x000007e3, 13630 }, /* Greek_gamma */
+    { 0x000007af, 13642 }, /* Greek_horizbar */
+    { 0x000007c9, 13657 }, /* Greek_IOTA */
+    { 0x000007e9, 13668 }, /* Greek_iota */
+    { 0x000007a4, 13679 }, /* Greek_IOTAaccent */
+    { 0x000007b4, 13696 }, /* Greek_iotaaccent */
+    { 0x000007b6, 13713 }, /* Greek_iotaaccentdieresis */
+    { 0x000007a5, 13738 }, /* Greek_IOTAdiaeresis */
+    { 0x000007a5, 13758 }, /* Greek_IOTAdieresis */
+    { 0x000007b5, 13777 }, /* Greek_iotadieresis */
+    { 0x000007ca, 13796 }, /* Greek_KAPPA */
+    { 0x000007ea, 13808 }, /* Greek_kappa */
+    { 0x000007cb, 13820 }, /* Greek_LAMBDA */
+    { 0x000007eb, 13833 }, /* Greek_lambda */
+    { 0x000007cb, 13846 }, /* Greek_LAMDA */
+    { 0x000007eb, 13858 }, /* Greek_lamda */
+    { 0x000007cc, 13870 }, /* Greek_MU */
+    { 0x000007ec, 13879 }, /* Greek_mu */
+    { 0x000007cd, 13888 }, /* Greek_NU */
+    { 0x000007ed, 13897 }, /* Greek_nu */
+    { 0x000007d9, 13906 }, /* Greek_OMEGA */
+    { 0x000007f9, 13918 }, /* Greek_omega */
+    { 0x000007ab, 13930 }, /* Greek_OMEGAaccent */
+    { 0x000007bb, 13948 }, /* Greek_omegaaccent */
+    { 0x000007cf, 13966 }, /* Greek_OMICRON */
+    { 0x000007ef, 13980 }, /* Greek_omicron */
+    { 0x000007a7, 13994 }, /* Greek_OMICRONaccent */
+    { 0x000007b7, 14014 }, /* Greek_omicronaccent */
+    { 0x000007d6, 14034 }, /* Greek_PHI */
+    { 0x000007f6, 14044 }, /* Greek_phi */
+    { 0x000007d0, 14054 }, /* Greek_PI */
+    { 0x000007f0, 14063 }, /* Greek_pi */
+    { 0x000007d8, 14072 }, /* Greek_PSI */
+    { 0x000007f8, 14082 }, /* Greek_psi */
+    { 0x000007d1, 14092 }, /* Greek_RHO */
+    { 0x000007f1, 14102 }, /* Greek_rho */
+    { 0x000007d2, 14112 }, /* Greek_SIGMA */
+    { 0x000007f2, 14124 }, /* Greek_sigma */
+    { 0x0000ff7e, 14136 }, /* Greek_switch */
+    { 0x000007d4, 14149 }, /* Greek_TAU */
+    { 0x000007f4, 14159 }, /* Greek_tau */
+    { 0x000007c8, 14169 }, /* Greek_THETA */
+    { 0x000007e8, 14181 }, /* Greek_theta */
+    { 0x000007d5, 14193 }, /* Greek_UPSILON */
+    { 0x000007f5, 14207 }, /* Greek_upsilon */
+    { 0x000007a8, 14221 }, /* Greek_UPSILONaccent */
+    { 0x000007b8, 14241 }, /* Greek_upsilonaccent */
+    { 0x000007ba, 14261 }, /* Greek_upsilonaccentdieresis */
+    { 0x000007a9, 14289 }, /* Greek_UPSILONdieresis */
+    { 0x000007b9, 14311 }, /* Greek_upsilondieresis */
+    { 0x000007ce, 14333 }, /* Greek_XI */
+    { 0x000007ee, 14342 }, /* Greek_xi */
+    { 0x000007c6, 14351 }, /* Greek_ZETA */
+    { 0x000007e6, 14362 }, /* Greek_zeta */
+    { 0x100000be, 14373 }, /* guilder */
+    { 0x000000ab, 14381 }, /* guillemetleft */
+    { 0x000000bb, 14395 }, /* guillemetright */
+    { 0x000000ab, 14410 }, /* guillemotleft */
+    { 0x000000bb, 14424 }, /* guillemotright */
+    { 0x00000048, 14439 }, /* H */
+    { 0x00000068, 14441 }, /* h */
+    { 0x00000aa8, 14443 }, /* hairspace */
+    { 0x0000ff31, 14453 }, /* Hangul */
+    { 0x00000ebf, 14460 }, /* Hangul_A */
+    { 0x00000ec0, 14469 }, /* Hangul_AE */
+    { 0x00000ef6, 14479 }, /* Hangul_AraeA */
+    { 0x00000ef7, 14492 }, /* Hangul_AraeAE */
+    { 0x0000ff39, 14506 }, /* Hangul_Banja */
+    { 0x00000eba, 14519 }, /* Hangul_Cieuc */
+    { 0x0000ff37, 14532 }, /* Hangul_Codeinput */
+    { 0x00000ea7, 14549 }, /* Hangul_Dikeud */
+    { 0x00000ec4, 14563 }, /* Hangul_E */
+    { 0x0000ff33, 14572 }, /* Hangul_End */
+    { 0x00000ec3, 14583 }, /* Hangul_EO */
+    { 0x00000ed1, 14593 }, /* Hangul_EU */
+    { 0x0000ff34, 14603 }, /* Hangul_Hanja */
+    { 0x00000ebe, 14616 }, /* Hangul_Hieuh */
+    { 0x00000ed3, 14629 }, /* Hangul_I */
+    { 0x00000eb7, 14638 }, /* Hangul_Ieung */
+    { 0x00000eea, 14651 }, /* Hangul_J_Cieuc */
+    { 0x00000eda, 14666 }, /* Hangul_J_Dikeud */
+    { 0x00000eee, 14682 }, /* Hangul_J_Hieuh */
+    { 0x00000ee8, 14697 }, /* Hangul_J_Ieung */
+    { 0x00000ee9, 14712 }, /* Hangul_J_Jieuj */
+    { 0x00000eeb, 14727 }, /* Hangul_J_Khieuq */
+    { 0x00000ed4, 14743 }, /* Hangul_J_Kiyeog */
+    { 0x00000ed6, 14759 }, /* Hangul_J_KiyeogSios */
+    { 0x00000ef9, 14779 }, /* Hangul_J_KkogjiDalrinIeung */
+    { 0x00000ee3, 14806 }, /* Hangul_J_Mieum */
+    { 0x00000ed7, 14821 }, /* Hangul_J_Nieun */
+    { 0x00000ed9, 14836 }, /* Hangul_J_NieunHieuh */
+    { 0x00000ed8, 14856 }, /* Hangul_J_NieunJieuj */
+    { 0x00000ef8, 14876 }, /* Hangul_J_PanSios */
+    { 0x00000eed, 14893 }, /* Hangul_J_Phieuf */
+    { 0x00000ee4, 14909 }, /* Hangul_J_Pieub */
+    { 0x00000ee5, 14924 }, /* Hangul_J_PieubSios */
+    { 0x00000edb, 14943 }, /* Hangul_J_Rieul */
+    { 0x00000ee2, 14958 }, /* Hangul_J_RieulHieuh */
+    { 0x00000edc, 14978 }, /* Hangul_J_RieulKiyeog */
+    { 0x00000edd, 14999 }, /* Hangul_J_RieulMieum */
+    { 0x00000ee1, 15019 }, /* Hangul_J_RieulPhieuf */
+    { 0x00000ede, 15040 }, /* Hangul_J_RieulPieub */
+    { 0x00000edf, 15060 }, /* Hangul_J_RieulSios */
+    { 0x00000ee0, 15079 }, /* Hangul_J_RieulTieut */
+    { 0x00000ee6, 15099 }, /* Hangul_J_Sios */
+    { 0x00000ed5, 15113 }, /* Hangul_J_SsangKiyeog */
+    { 0x00000ee7, 15134 }, /* Hangul_J_SsangSios */
+    { 0x00000eec, 15153 }, /* Hangul_J_Tieut */
+    { 0x00000efa, 15168 }, /* Hangul_J_YeorinHieuh */
+    { 0x0000ff35, 15189 }, /* Hangul_Jamo */
+    { 0x0000ff38, 15201 }, /* Hangul_Jeonja */
+    { 0x00000eb8, 15215 }, /* Hangul_Jieuj */
+    { 0x00000ebb, 15228 }, /* Hangul_Khieuq */
+    { 0x00000ea1, 15242 }, /* Hangul_Kiyeog */
+    { 0x00000ea3, 15256 }, /* Hangul_KiyeogSios */
+    { 0x00000ef3, 15274 }, /* Hangul_KkogjiDalrinIeung */
+    { 0x00000eb1, 15299 }, /* Hangul_Mieum */
+    { 0x0000ff3d, 15312 }, /* Hangul_MultipleCandidate */
+    { 0x00000ea4, 15337 }, /* Hangul_Nieun */
+    { 0x00000ea6, 15350 }, /* Hangul_NieunHieuh */
+    { 0x00000ea5, 15368 }, /* Hangul_NieunJieuj */
+    { 0x00000ec7, 15386 }, /* Hangul_O */
+    { 0x00000eca, 15395 }, /* Hangul_OE */
+    { 0x00000ef2, 15405 }, /* Hangul_PanSios */
+    { 0x00000ebd, 15420 }, /* Hangul_Phieuf */
+    { 0x00000eb2, 15434 }, /* Hangul_Pieub */
+    { 0x00000eb4, 15447 }, /* Hangul_PieubSios */
+    { 0x0000ff3b, 15464 }, /* Hangul_PostHanja */
+    { 0x0000ff3a, 15481 }, /* Hangul_PreHanja */
+    { 0x0000ff3e, 15497 }, /* Hangul_PreviousCandidate */
+    { 0x00000ea9, 15522 }, /* Hangul_Rieul */
+    { 0x00000eb0, 15535 }, /* Hangul_RieulHieuh */
+    { 0x00000eaa, 15553 }, /* Hangul_RieulKiyeog */
+    { 0x00000eab, 15572 }, /* Hangul_RieulMieum */
+    { 0x00000eaf, 15590 }, /* Hangul_RieulPhieuf */
+    { 0x00000eac, 15609 }, /* Hangul_RieulPieub */
+    { 0x00000ead, 15627 }, /* Hangul_RieulSios */
+    { 0x00000eae, 15644 }, /* Hangul_RieulTieut */
+    { 0x00000eef, 15662 }, /* Hangul_RieulYeorinHieuh */
+    { 0x0000ff36, 15686 }, /* Hangul_Romaja */
+    { 0x0000ff3c, 15700 }, /* Hangul_SingleCandidate */
+    { 0x00000eb5, 15723 }, /* Hangul_Sios */
+    { 0x0000ff3f, 15735 }, /* Hangul_Special */
+    { 0x00000ea8, 15750 }, /* Hangul_SsangDikeud */
+    { 0x00000eb9, 15769 }, /* Hangul_SsangJieuj */
+    { 0x00000ea2, 15787 }, /* Hangul_SsangKiyeog */
+    { 0x00000eb3, 15806 }, /* Hangul_SsangPieub */
+    { 0x00000eb6, 15824 }, /* Hangul_SsangSios */
+    { 0x0000ff32, 15841 }, /* Hangul_Start */
+    { 0x00000ef0, 15854 }, /* Hangul_SunkyeongeumMieum */
+    { 0x00000ef4, 15879 }, /* Hangul_SunkyeongeumPhieuf */
+    { 0x00000ef1, 15905 }, /* Hangul_SunkyeongeumPieub */
+    { 0x0000ff7e, 15930 }, /* Hangul_switch */
+    { 0x00000ebc, 15944 }, /* Hangul_Tieut */
+    { 0x00000ecc, 15957 }, /* Hangul_U */
+    { 0x00000ec8, 15966 }, /* Hangul_WA */
+    { 0x00000ec9, 15976 }, /* Hangul_WAE */
+    { 0x00000ece, 15987 }, /* Hangul_WE */
+    { 0x00000ecd, 15997 }, /* Hangul_WEO */
+    { 0x00000ecf, 16008 }, /* Hangul_WI */
+    { 0x00000ec1, 16018 }, /* Hangul_YA */
+    { 0x00000ec2, 16028 }, /* Hangul_YAE */
+    { 0x00000ec6, 16039 }, /* Hangul_YE */
+    { 0x00000ec5, 16049 }, /* Hangul_YEO */
+    { 0x00000ef5, 16060 }, /* Hangul_YeorinHieuh */
+    { 0x00000ed2, 16079 }, /* Hangul_YI */
+    { 0x00000ecb, 16089 }, /* Hangul_YO */
+    { 0x00000ed0, 16099 }, /* Hangul_YU */
+    { 0x0000ff29, 16109 }, /* Hankaku */
+    { 0x000002a6, 16117 }, /* Hcircumflex */
+    { 0x000002b6, 16129 }, /* hcircumflex */
+    { 0x00000aee, 16141 }, /* heart */
+    { 0x00000ce0, 16147 }, /* hebrew_aleph */
+    { 0x00000cf2, 16160 }, /* hebrew_ayin */
+    { 0x00000ce1, 16172 }, /* hebrew_bet */
+    { 0x00000ce1, 16183 }, /* hebrew_beth */
+    { 0x00000ce7, 16195 }, /* hebrew_chet */
+    { 0x00000ce3, 16207 }, /* hebrew_dalet */
+    { 0x00000ce3, 16220 }, /* hebrew_daleth */
+    { 0x00000cdf, 16234 }, /* hebrew_doublelowline */
+    { 0x00000cea, 16255 }, /* hebrew_finalkaph */
+    { 0x00000ced, 16272 }, /* hebrew_finalmem */
+    { 0x00000cef, 16288 }, /* hebrew_finalnun */
+    { 0x00000cf3, 16304 }, /* hebrew_finalpe */
+    { 0x00000cf5, 16319 }, /* hebrew_finalzade */
+    { 0x00000cf5, 16336 }, /* hebrew_finalzadi */
+    { 0x00000ce2, 16353 }, /* hebrew_gimel */
+    { 0x00000ce2, 16366 }, /* hebrew_gimmel */
+    { 0x00000ce4, 16380 }, /* hebrew_he */
+    { 0x00000ce7, 16390 }, /* hebrew_het */
+    { 0x00000ceb, 16401 }, /* hebrew_kaph */
+    { 0x00000cf7, 16413 }, /* hebrew_kuf */
+    { 0x00000cec, 16424 }, /* hebrew_lamed */
+    { 0x00000cee, 16437 }, /* hebrew_mem */
+    { 0x00000cf0, 16448 }, /* hebrew_nun */
+    { 0x00000cf4, 16459 }, /* hebrew_pe */
+    { 0x00000cf7, 16469 }, /* hebrew_qoph */
+    { 0x00000cf8, 16481 }, /* hebrew_resh */
+    { 0x00000cf1, 16493 }, /* hebrew_samech */
+    { 0x00000cf1, 16507 }, /* hebrew_samekh */
+    { 0x00000cf9, 16521 }, /* hebrew_shin */
+    { 0x0000ff7e, 16533 }, /* Hebrew_switch */
+    { 0x00000cfa, 16547 }, /* hebrew_taf */
+    { 0x00000cfa, 16558 }, /* hebrew_taw */
+    { 0x00000ce8, 16569 }, /* hebrew_tet */
+    { 0x00000ce8, 16580 }, /* hebrew_teth */
+    { 0x00000ce5, 16592 }, /* hebrew_waw */
+    { 0x00000ce9, 16603 }, /* hebrew_yod */
+    { 0x00000cf6, 16614 }, /* hebrew_zade */
+    { 0x00000cf6, 16626 }, /* hebrew_zadi */
+    { 0x00000ce6, 16638 }, /* hebrew_zain */
+    { 0x00000ce6, 16650 }, /* hebrew_zayin */
+    { 0x0000ff6a, 16663 }, /* Help */
+    { 0x0000ff23, 16668 }, /* Henkan */
+    { 0x0000ff23, 16675 }, /* Henkan_Mode */
+    { 0x00000ada, 16687 }, /* hexagram */
+    { 0x0000ff25, 16696 }, /* Hiragana */
+    { 0x0000ff27, 16705 }, /* Hiragana_Katakana */
+    { 0x0000ff50, 16723 }, /* Home */
+    { 0x000008a3, 16728 }, /* horizconnector */
+    { 0x000009ef, 16743 }, /* horizlinescan1 */
+    { 0x000009f0, 16758 }, /* horizlinescan3 */
+    { 0x000009f1, 16773 }, /* horizlinescan5 */
+    { 0x000009f2, 16788 }, /* horizlinescan7 */
+    { 0x000009f3, 16803 }, /* horizlinescan9 */
+    { 0x1000ff74, 16818 }, /* hpBackTab */
+    { 0x100000fc, 16828 }, /* hpblock */
+    { 0x1000ff6f, 16836 }, /* hpClearLine */
+    { 0x1000ff73, 16848 }, /* hpDeleteChar */
+    { 0x1000ff71, 16861 }, /* hpDeleteLine */
+    { 0x100000be, 16874 }, /* hpguilder */
+    { 0x1000ff72, 16884 }, /* hpInsertChar */
+    { 0x1000ff70, 16897 }, /* hpInsertLine */
+    { 0x100000ee, 16910 }, /* hpIO */
+    { 0x1000ff75, 16915 }, /* hpKP_BackTab */
+    { 0x100000af, 16928 }, /* hplira */
+    { 0x100000f6, 16935 }, /* hplongminus */
+    { 0x1000ff48, 16947 }, /* hpModelock1 */
+    { 0x1000ff49, 16959 }, /* hpModelock2 */
+    { 0x100000a8, 16971 }, /* hpmute_acute */
+    { 0x100000aa, 16984 }, /* hpmute_asciicircum */
+    { 0x100000ac, 17003 }, /* hpmute_asciitilde */
+    { 0x100000ab, 17021 }, /* hpmute_diaeresis */
+    { 0x100000a9, 17038 }, /* hpmute_grave */
+    { 0x1000ff6c, 17051 }, /* hpReset */
+    { 0x1000ff6d, 17059 }, /* hpSystem */
+    { 0x1000ff6e, 17068 }, /* hpUser */
+    { 0x100000ee, 17075 }, /* hpYdiaeresis */
+    { 0x000002a1, 17088 }, /* Hstroke */
+    { 0x000002b1, 17096 }, /* hstroke */
+    { 0x000009e2, 17104 }, /* ht */
+    { 0x0000ffed, 17107 }, /* Hyper_L */
+    { 0x0000ffee, 17115 }, /* Hyper_R */
+    { 0x000000ad, 17123 }, /* hyphen */
+    { 0x00000049, 17130 }, /* I */
+    { 0x00000069, 17132 }, /* i */
+    { 0x000002a9, 17134 }, /* Iabovedot */
+    { 0x000000cd, 17144 }, /* Iacute */
+    { 0x000000ed, 17151 }, /* iacute */
+    { 0x01001eca, 17158 }, /* Ibelowdot */
+    { 0x01001ecb, 17168 }, /* ibelowdot */
+    { 0x0100012c, 17178 }, /* Ibreve */
+    { 0x0100012d, 17185 }, /* ibreve */
+    { 0x000000ce, 17192 }, /* Icircumflex */
+    { 0x000000ee, 17204 }, /* icircumflex */
+    { 0x000008cf, 17216 }, /* identical */
+    { 0x000000cf, 17226 }, /* Idiaeresis */
+    { 0x000000ef, 17237 }, /* idiaeresis */
+    { 0x000002b9, 17248 }, /* idotless */
+    { 0x000008cd, 17257 }, /* ifonlyif */
+    { 0x000000cc, 17266 }, /* Igrave */
+    { 0x000000ec, 17273 }, /* igrave */
+    { 0x01001ec8, 17280 }, /* Ihook */
+    { 0x01001ec9, 17286 }, /* ihook */
+    { 0x000003cf, 17292 }, /* Imacron */
+    { 0x000003ef, 17300 }, /* imacron */
+    { 0x000008ce, 17308 }, /* implies */
+    { 0x000008da, 17316 }, /* includedin */
+    { 0x000008db, 17327 }, /* includes */
+    { 0x000008c2, 17336 }, /* infinity */
+    { 0x0000ff63, 17345 }, /* Insert */
+    { 0x1000ff72, 17352 }, /* InsertChar */
+    { 0x1000ff70, 17363 }, /* InsertLine */
+    { 0x000008bf, 17374 }, /* integral */
+    { 0x000008dc, 17383 }, /* intersection */
+    { 0x100000ee, 17396 }, /* IO */
+    { 0x000003c7, 17399 }, /* Iogonek */
+    { 0x000003e7, 17407 }, /* iogonek */
+    { 0x0000fe33, 17415 }, /* ISO_Center_Object */
+    { 0x0000fe30, 17433 }, /* ISO_Continuous_Underline */
+    { 0x0000fe31, 17458 }, /* ISO_Discontinuous_Underline */
+    { 0x0000fe32, 17486 }, /* ISO_Emphasize */
+    { 0x0000fe34, 17500 }, /* ISO_Enter */
+    { 0x0000fe2f, 17510 }, /* ISO_Fast_Cursor_Down */
+    { 0x0000fe2c, 17531 }, /* ISO_Fast_Cursor_Left */
+    { 0x0000fe2d, 17552 }, /* ISO_Fast_Cursor_Right */
+    { 0x0000fe2e, 17574 }, /* ISO_Fast_Cursor_Up */
+    { 0x0000fe0c, 17593 }, /* ISO_First_Group */
+    { 0x0000fe0d, 17609 }, /* ISO_First_Group_Lock */
+    { 0x0000fe06, 17630 }, /* ISO_Group_Latch */
+    { 0x0000fe07, 17646 }, /* ISO_Group_Lock */
+    { 0x0000ff7e, 17661 }, /* ISO_Group_Shift */
+    { 0x0000fe0e, 17677 }, /* ISO_Last_Group */
+    { 0x0000fe0f, 17692 }, /* ISO_Last_Group_Lock */
+    { 0x0000fe20, 17712 }, /* ISO_Left_Tab */
+    { 0x0000fe02, 17725 }, /* ISO_Level2_Latch */
+    { 0x0000fe04, 17742 }, /* ISO_Level3_Latch */
+    { 0x0000fe05, 17759 }, /* ISO_Level3_Lock */
+    { 0x0000fe03, 17775 }, /* ISO_Level3_Shift */
+    { 0x0000fe12, 17792 }, /* ISO_Level5_Latch */
+    { 0x0000fe13, 17809 }, /* ISO_Level5_Lock */
+    { 0x0000fe11, 17825 }, /* ISO_Level5_Shift */
+    { 0x0000fe01, 17842 }, /* ISO_Lock */
+    { 0x0000fe22, 17851 }, /* ISO_Move_Line_Down */
+    { 0x0000fe21, 17870 }, /* ISO_Move_Line_Up */
+    { 0x0000fe08, 17887 }, /* ISO_Next_Group */
+    { 0x0000fe09, 17902 }, /* ISO_Next_Group_Lock */
+    { 0x0000fe24, 17922 }, /* ISO_Partial_Line_Down */
+    { 0x0000fe23, 17944 }, /* ISO_Partial_Line_Up */
+    { 0x0000fe25, 17964 }, /* ISO_Partial_Space_Left */
+    { 0x0000fe26, 17987 }, /* ISO_Partial_Space_Right */
+    { 0x0000fe0a, 18011 }, /* ISO_Prev_Group */
+    { 0x0000fe0b, 18026 }, /* ISO_Prev_Group_Lock */
+    { 0x0000fe2b, 18046 }, /* ISO_Release_Both_Margins */
+    { 0x0000fe29, 18071 }, /* ISO_Release_Margin_Left */
+    { 0x0000fe2a, 18095 }, /* ISO_Release_Margin_Right */
+    { 0x0000fe27, 18120 }, /* ISO_Set_Margin_Left */
+    { 0x0000fe28, 18140 }, /* ISO_Set_Margin_Right */
+    { 0x000003a5, 18161 }, /* Itilde */
+    { 0x000003b5, 18168 }, /* itilde */
+    { 0x0000004a, 18175 }, /* J */
+    { 0x0000006a, 18177 }, /* j */
+    { 0x000002ac, 18179 }, /* Jcircumflex */
+    { 0x000002bc, 18191 }, /* jcircumflex */
+    { 0x00000bca, 18203 }, /* jot */
+    { 0x0000004b, 18207 }, /* K */
+    { 0x0000006b, 18209 }, /* k */
+    { 0x000004a7, 18211 }, /* kana_a */
+    { 0x000004b1, 18218 }, /* kana_A */
+    { 0x000004c1, 18225 }, /* kana_CHI */
+    { 0x000004a3, 18234 }, /* kana_closingbracket */
+    { 0x000004a4, 18254 }, /* kana_comma */
+    { 0x000004a5, 18265 }, /* kana_conjunctive */
+    { 0x000004aa, 18282 }, /* kana_e */
+    { 0x000004b4, 18289 }, /* kana_E */
+    { 0x000004cc, 18296 }, /* kana_FU */
+    { 0x000004a1, 18304 }, /* kana_fullstop */
+    { 0x000004ca, 18318 }, /* kana_HA */
+    { 0x000004cd, 18326 }, /* kana_HE */
+    { 0x000004cb, 18334 }, /* kana_HI */
+    { 0x000004ce, 18342 }, /* kana_HO */
+    { 0x000004cc, 18350 }, /* kana_HU */
+    { 0x000004a8, 18358 }, /* kana_i */
+    { 0x000004b2, 18365 }, /* kana_I */
+    { 0x000004b6, 18372 }, /* kana_KA */
+    { 0x000004b9, 18380 }, /* kana_KE */
+    { 0x000004b7, 18388 }, /* kana_KI */
+    { 0x000004ba, 18396 }, /* kana_KO */
+    { 0x000004b8, 18404 }, /* kana_KU */
+    { 0x0000ff2d, 18412 }, /* Kana_Lock */
+    { 0x000004cf, 18422 }, /* kana_MA */
+    { 0x000004d2, 18430 }, /* kana_ME */
+    { 0x000004d0, 18438 }, /* kana_MI */
+    { 0x000004a5, 18446 }, /* kana_middledot */
+    { 0x000004d3, 18461 }, /* kana_MO */
+    { 0x000004d1, 18469 }, /* kana_MU */
+    { 0x000004dd, 18477 }, /* kana_N */
+    { 0x000004c5, 18484 }, /* kana_NA */
+    { 0x000004c8, 18492 }, /* kana_NE */
+    { 0x000004c6, 18500 }, /* kana_NI */
+    { 0x000004c9, 18508 }, /* kana_NO */
+    { 0x000004c7, 18516 }, /* kana_NU */
+    { 0x000004ab, 18524 }, /* kana_o */
+    { 0x000004b5, 18531 }, /* kana_O */
+    { 0x000004a2, 18538 }, /* kana_openingbracket */
+    { 0x000004d7, 18558 }, /* kana_RA */
+    { 0x000004da, 18566 }, /* kana_RE */
+    { 0x000004d8, 18574 }, /* kana_RI */
+    { 0x000004db, 18582 }, /* kana_RO */
+    { 0x000004d9, 18590 }, /* kana_RU */
+    { 0x000004bb, 18598 }, /* kana_SA */
+    { 0x000004be, 18606 }, /* kana_SE */
+    { 0x000004bc, 18614 }, /* kana_SHI */
+    { 0x0000ff2e, 18623 }, /* Kana_Shift */
+    { 0x000004bf, 18634 }, /* kana_SO */
+    { 0x000004bd, 18642 }, /* kana_SU */
+    { 0x0000ff7e, 18650 }, /* kana_switch */
+    { 0x000004c0, 18662 }, /* kana_TA */
+    { 0x000004c3, 18670 }, /* kana_TE */
+    { 0x000004c1, 18678 }, /* kana_TI */
+    { 0x000004c4, 18686 }, /* kana_TO */
+    { 0x000004af, 18694 }, /* kana_tsu */
+    { 0x000004c2, 18703 }, /* kana_TSU */
+    { 0x000004af, 18712 }, /* kana_tu */
+    { 0x000004c2, 18720 }, /* kana_TU */
+    { 0x000004a9, 18728 }, /* kana_u */
+    { 0x000004b3, 18735 }, /* kana_U */
+    { 0x000004dc, 18742 }, /* kana_WA */
+    { 0x000004a6, 18750 }, /* kana_WO */
+    { 0x000004ac, 18758 }, /* kana_ya */
+    { 0x000004d4, 18766 }, /* kana_YA */
+    { 0x000004ae, 18774 }, /* kana_yo */
+    { 0x000004d6, 18782 }, /* kana_YO */
+    { 0x000004ad, 18790 }, /* kana_yu */
+    { 0x000004d5, 18798 }, /* kana_YU */
+    { 0x0000ff21, 18806 }, /* Kanji */
+    { 0x0000ff37, 18812 }, /* Kanji_Bangou */
+    { 0x000003a2, 18825 }, /* kappa */
+    { 0x0000ff26, 18831 }, /* Katakana */
+    { 0x000003d3, 18840 }, /* Kcedilla */
+    { 0x000003f3, 18849 }, /* kcedilla */
+    { 0x00000eff, 18858 }, /* Korean_Won */
+    { 0x0000ffb0, 18869 }, /* KP_0 */
+    { 0x0000ffb1, 18874 }, /* KP_1 */
+    { 0x0000ffb2, 18879 }, /* KP_2 */
+    { 0x0000ffb3, 18884 }, /* KP_3 */
+    { 0x0000ffb4, 18889 }, /* KP_4 */
+    { 0x0000ffb5, 18894 }, /* KP_5 */
+    { 0x0000ffb6, 18899 }, /* KP_6 */
+    { 0x0000ffb7, 18904 }, /* KP_7 */
+    { 0x0000ffb8, 18909 }, /* KP_8 */
+    { 0x0000ffb9, 18914 }, /* KP_9 */
+    { 0x0000ffab, 18919 }, /* KP_Add */
+    { 0x1000ff75, 18926 }, /* KP_BackTab */
+    { 0x0000ff9d, 18937 }, /* KP_Begin */
+    { 0x0000ffae, 18946 }, /* KP_Decimal */
+    { 0x0000ff9f, 18957 }, /* KP_Delete */
+    { 0x0000ffaf, 18967 }, /* KP_Divide */
+    { 0x0000ff99, 18977 }, /* KP_Down */
+    { 0x0000ff9c, 18985 }, /* KP_End */
+    { 0x0000ff8d, 18992 }, /* KP_Enter */
+    { 0x0000ffbd, 19001 }, /* KP_Equal */
+    { 0x0000ff91, 19010 }, /* KP_F1 */
+    { 0x0000ff92, 19016 }, /* KP_F2 */
+    { 0x0000ff93, 19022 }, /* KP_F3 */
+    { 0x0000ff94, 19028 }, /* KP_F4 */
+    { 0x0000ff95, 19034 }, /* KP_Home */
+    { 0x0000ff9e, 19042 }, /* KP_Insert */
+    { 0x0000ff96, 19052 }, /* KP_Left */
+    { 0x0000ffaa, 19060 }, /* KP_Multiply */
+    { 0x0000ff9b, 19072 }, /* KP_Next */
+    { 0x0000ff9b, 19080 }, /* KP_Page_Down */
+    { 0x0000ff9a, 19093 }, /* KP_Page_Up */
+    { 0x0000ff9a, 19104 }, /* KP_Prior */
+    { 0x0000ff98, 19113 }, /* KP_Right */
+    { 0x0000ffac, 19122 }, /* KP_Separator */
+    { 0x0000ff80, 19135 }, /* KP_Space */
+    { 0x0000ffad, 19144 }, /* KP_Subtract */
+    { 0x0000ff89, 19156 }, /* KP_Tab */
+    { 0x0000ff97, 19163 }, /* KP_Up */
+    { 0x000003a2, 19169 }, /* kra */
+    { 0x0000004c, 19173 }, /* L */
+    { 0x0000006c, 19175 }, /* l */
+    { 0x0000ffc8, 19177 }, /* L1 */
+    { 0x0000ffd1, 19180 }, /* L10 */
+    { 0x0000ffc9, 19184 }, /* L2 */
+    { 0x0000ffca, 19187 }, /* L3 */
+    { 0x0000ffcb, 19190 }, /* L4 */
+    { 0x0000ffcc, 19193 }, /* L5 */
+    { 0x0000ffcd, 19196 }, /* L6 */
+    { 0x0000ffce, 19199 }, /* L7 */
+    { 0x0000ffcf, 19202 }, /* L8 */
+    { 0x0000ffd0, 19205 }, /* L9 */
+    { 0x000001c5, 19208 }, /* Lacute */
+    { 0x000001e5, 19215 }, /* lacute */
+    { 0x0000fed4, 19222 }, /* Last_Virtual_Screen */
+    { 0x00000ad9, 19242 }, /* latincross */
+    { 0x01001e36, 19253 }, /* Lbelowdot */
+    { 0x01001e37, 19263 }, /* lbelowdot */
+    { 0x000001a5, 19273 }, /* Lcaron */
+    { 0x000001b5, 19280 }, /* lcaron */
+    { 0x000003a6, 19287 }, /* Lcedilla */
+    { 0x000003b6, 19296 }, /* lcedilla */
+    { 0x0000ff51, 19305 }, /* Left */
+    { 0x00000abc, 19310 }, /* leftanglebracket */
+    { 0x000008fb, 19327 }, /* leftarrow */
+    { 0x00000ba3, 19337 }, /* leftcaret */
+    { 0x00000ad2, 19347 }, /* leftdoublequotemark */
+    { 0x000008af, 19367 }, /* leftmiddlecurlybrace */
+    { 0x00000acc, 19388 }, /* leftopentriangle */
+    { 0x00000aea, 19405 }, /* leftpointer */
+    { 0x000008a1, 19417 }, /* leftradical */
+    { 0x00000bda, 19429 }, /* leftshoe */
+    { 0x00000ad0, 19438 }, /* leftsinglequotemark */
+    { 0x000009f4, 19458 }, /* leftt */
+    { 0x00000bdc, 19464 }, /* lefttack */
+    { 0x0000003c, 19473 }, /* less */
+    { 0x000008bc, 19478 }, /* lessthanequal */
+    { 0x000009e5, 19492 }, /* lf */
+    { 0x0000ff0a, 19495 }, /* Linefeed */
+    { 0x100000af, 19504 }, /* lira */
+    { 0x010020a4, 19509 }, /* LiraSign */
+    { 0x000008de, 19518 }, /* logicaland */
+    { 0x000008df, 19529 }, /* logicalor */
+    { 0x100000f6, 19539 }, /* longminus */
+    { 0x000009ed, 19549 }, /* lowleftcorner */
+    { 0x000009ea, 19563 }, /* lowrightcorner */
+    { 0x000001a3, 19578 }, /* Lstroke */
+    { 0x000001b3, 19586 }, /* lstroke */
+    { 0x0000004d, 19594 }, /* M */
+    { 0x0000006d, 19596 }, /* m */
+    { 0x01001e40, 19598 }, /* Mabovedot */
+    { 0x01001e41, 19608 }, /* mabovedot */
+    { 0x000006a5, 19618 }, /* Macedonia_dse */
+    { 0x000006b5, 19632 }, /* Macedonia_DSE */
+    { 0x000006a2, 19646 }, /* Macedonia_gje */
+    { 0x000006b2, 19660 }, /* Macedonia_GJE */
+    { 0x000006ac, 19674 }, /* Macedonia_kje */
+    { 0x000006bc, 19688 }, /* Macedonia_KJE */
+    { 0x000000af, 19702 }, /* macron */
+    { 0x0000ff3e, 19709 }, /* Mae_Koho */
+    { 0x00000af7, 19718 }, /* malesymbol */
+    { 0x00000af0, 19729 }, /* maltesecross */
+    { 0x00000abf, 19742 }, /* marker */
+    { 0x000000ba, 19749 }, /* masculine */
+    { 0x0000ff2c, 19759 }, /* Massyo */
+    { 0x0000ff67, 19766 }, /* Menu */
+    { 0x0000ffe7, 19771 }, /* Meta_L */
+    { 0x0000ffe8, 19778 }, /* Meta_R */
+    { 0x010020a5, 19785 }, /* MillSign */
+    { 0x0000002d, 19794 }, /* minus */
+    { 0x00000ad6, 19800 }, /* minutes */
+    { 0x0000ff7e, 19808 }, /* Mode_switch */
+    { 0x0000fe77, 19820 }, /* MouseKeys_Accel_Enable */
+    { 0x0000fe76, 19843 }, /* MouseKeys_Enable */
+    { 0x000000b5, 19860 }, /* mu */
+    { 0x0000ff22, 19863 }, /* Muhenkan */
+    { 0x0000ff20, 19872 }, /* Multi_key */
+    { 0x0000ff3d, 19882 }, /* MultipleCandidate */
+    { 0x000000d7, 19900 }, /* multiply */
+    { 0x00000af6, 19909 }, /* musicalflat */
+    { 0x00000af5, 19921 }, /* musicalsharp */
+    { 0x100000a8, 19934 }, /* mute_acute */
+    { 0x100000aa, 19945 }, /* mute_asciicircum */
+    { 0x100000ac, 19962 }, /* mute_asciitilde */
+    { 0x100000ab, 19978 }, /* mute_diaeresis */
+    { 0x100000a9, 19993 }, /* mute_grave */
+    { 0x0000004e, 20004 }, /* N */
+    { 0x0000006e, 20006 }, /* n */
+    { 0x000008c5, 20008 }, /* nabla */
+    { 0x000001d1, 20014 }, /* Nacute */
+    { 0x000001f1, 20021 }, /* nacute */
+    { 0x010020a6, 20028 }, /* NairaSign */
+    { 0x000001d2, 20038 }, /* Ncaron */
+    { 0x000001f2, 20045 }, /* ncaron */
+    { 0x000003d1, 20052 }, /* Ncedilla */
+    { 0x000003f1, 20061 }, /* ncedilla */
+    { 0x010020aa, 20070 }, /* NewSheqelSign */
+    { 0x0000ff56, 20084 }, /* Next */
+    { 0x0000fed2, 20089 }, /* Next_Virtual_Screen */
+    { 0x01002089, 20109 }, /* ninesubscript */
+    { 0x01002079, 20123 }, /* ninesuperior */
+    { 0x000009e8, 20136 }, /* nl */
+    { 0x000000a0, 20139 }, /* nobreakspace */
+    { 0x00000000, 20152 }, /* NoSymbol */
+    { 0x01002247, 20161 }, /* notapproxeq */
+    { 0x01002209, 20173 }, /* notelementof */
+    { 0x000008bd, 20186 }, /* notequal */
+    { 0x01002262, 20195 }, /* notidentical */
+    { 0x000000ac, 20208 }, /* notsign */
+    { 0x000000d1, 20216 }, /* Ntilde */
+    { 0x000000f1, 20223 }, /* ntilde */
+    { 0x0000ff7f, 20230 }, /* Num_Lock */
+    { 0x00000023, 20239 }, /* numbersign */
+    { 0x000006b0, 20250 }, /* numerosign */
+    { 0x0000004f, 20261 }, /* O */
+    { 0x0000006f, 20263 }, /* o */
+    { 0x000000d3, 20265 }, /* Oacute */
+    { 0x000000f3, 20272 }, /* oacute */
+    { 0x0100019f, 20279 }, /* Obarred */
+    { 0x01000275, 20287 }, /* obarred */
+    { 0x01001ecc, 20295 }, /* Obelowdot */
+    { 0x01001ecd, 20305 }, /* obelowdot */
+    { 0x010001d1, 20315 }, /* Ocaron */
+    { 0x010001d2, 20322 }, /* ocaron */
+    { 0x000000d4, 20329 }, /* Ocircumflex */
+    { 0x000000f4, 20341 }, /* ocircumflex */
+    { 0x01001ed0, 20353 }, /* Ocircumflexacute */
+    { 0x01001ed1, 20370 }, /* ocircumflexacute */
+    { 0x01001ed8, 20387 }, /* Ocircumflexbelowdot */
+    { 0x01001ed9, 20407 }, /* ocircumflexbelowdot */
+    { 0x01001ed2, 20427 }, /* Ocircumflexgrave */
+    { 0x01001ed3, 20444 }, /* ocircumflexgrave */
+    { 0x01001ed4, 20461 }, /* Ocircumflexhook */
+    { 0x01001ed5, 20477 }, /* ocircumflexhook */
+    { 0x01001ed6, 20493 }, /* Ocircumflextilde */
+    { 0x01001ed7, 20510 }, /* ocircumflextilde */
+    { 0x000000d6, 20527 }, /* Odiaeresis */
+    { 0x000000f6, 20538 }, /* odiaeresis */
+    { 0x000001d5, 20549 }, /* Odoubleacute */
+    { 0x000001f5, 20562 }, /* odoubleacute */
+    { 0x000013bc, 20575 }, /* OE */
+    { 0x000013bd, 20578 }, /* oe */
+    { 0x000001b2, 20581 }, /* ogonek */
+    { 0x000000d2, 20588 }, /* Ograve */
+    { 0x000000f2, 20595 }, /* ograve */
+    { 0x01001ece, 20602 }, /* Ohook */
+    { 0x01001ecf, 20608 }, /* ohook */
+    { 0x010001a0, 20614 }, /* Ohorn */
+    { 0x010001a1, 20620 }, /* ohorn */
+    { 0x01001eda, 20626 }, /* Ohornacute */
+    { 0x01001edb, 20637 }, /* ohornacute */
+    { 0x01001ee2, 20648 }, /* Ohornbelowdot */
+    { 0x01001ee3, 20662 }, /* ohornbelowdot */
+    { 0x01001edc, 20676 }, /* Ohorngrave */
+    { 0x01001edd, 20687 }, /* ohorngrave */
+    { 0x01001ede, 20698 }, /* Ohornhook */
+    { 0x01001edf, 20708 }, /* ohornhook */
+    { 0x01001ee0, 20718 }, /* Ohorntilde */
+    { 0x01001ee1, 20729 }, /* ohorntilde */
+    { 0x000003d2, 20740 }, /* Omacron */
+    { 0x000003f2, 20748 }, /* omacron */
+    { 0x00000ac3, 20756 }, /* oneeighth */
+    { 0x00000ab2, 20766 }, /* onefifth */
+    { 0x000000bd, 20775 }, /* onehalf */
+    { 0x000000bc, 20783 }, /* onequarter */
+    { 0x00000ab6, 20794 }, /* onesixth */
+    { 0x01002081, 20803 }, /* onesubscript */
+    { 0x000000b9, 20816 }, /* onesuperior */
+    { 0x00000ab0, 20828 }, /* onethird */
+    { 0x000000d8, 20837 }, /* Ooblique */
+    { 0x000000f8, 20846 }, /* ooblique */
+    { 0x00000ae2, 20855 }, /* openrectbullet */
+    { 0x00000ae5, 20870 }, /* openstar */
+    { 0x00000ae4, 20879 }, /* opentribulletdown */
+    { 0x00000ae3, 20897 }, /* opentribulletup */
+    { 0x000000aa, 20913 }, /* ordfeminine */
+    { 0x000000ba, 20925 }, /* ordmasculine */
+    { 0x1004ff44, 20938 }, /* osfActivate */
+    { 0x1004ff31, 20950 }, /* osfAddMode */
+    { 0x1004ff08, 20961 }, /* osfBackSpace */
+    { 0x1004ff07, 20974 }, /* osfBackTab */
+    { 0x1004ff5a, 20985 }, /* osfBeginData */
+    { 0x1004ff58, 20998 }, /* osfBeginLine */
+    { 0x1004ff69, 21011 }, /* osfCancel */
+    { 0x1004ff0b, 21021 }, /* osfClear */
+    { 0x1004ff02, 21030 }, /* osfCopy */
+    { 0x1004ff03, 21038 }, /* osfCut */
+    { 0x1004ffff, 21045 }, /* osfDelete */
+    { 0x1004ff72, 21055 }, /* osfDeselectAll */
+    { 0x1004ff54, 21070 }, /* osfDown */
+    { 0x1004ff59, 21078 }, /* osfEndData */
+    { 0x1004ff57, 21089 }, /* osfEndLine */
+    { 0x1004ff1b, 21100 }, /* osfEscape */
+    { 0x1004ff74, 21110 }, /* osfExtend */
+    { 0x1004ff6a, 21120 }, /* osfHelp */
+    { 0x1004ff63, 21128 }, /* osfInsert */
+    { 0x1004ff51, 21138 }, /* osfLeft */
+    { 0x1004ff67, 21146 }, /* osfMenu */
+    { 0x1004ff45, 21154 }, /* osfMenuBar */
+    { 0x1004ff5e, 21165 }, /* osfNextField */
+    { 0x1004ff5c, 21178 }, /* osfNextMenu */
+    { 0x1004ff42, 21190 }, /* osfPageDown */
+    { 0x1004ff40, 21202 }, /* osfPageLeft */
+    { 0x1004ff43, 21214 }, /* osfPageRight */
+    { 0x1004ff41, 21227 }, /* osfPageUp */
+    { 0x1004ff04, 21237 }, /* osfPaste */
+    { 0x1004ff5d, 21246 }, /* osfPrevField */
+    { 0x1004ff5b, 21259 }, /* osfPrevMenu */
+    { 0x1004ff32, 21271 }, /* osfPrimaryPaste */
+    { 0x1004ff33, 21287 }, /* osfQuickPaste */
+    { 0x1004ff73, 21301 }, /* osfReselect */
+    { 0x1004ff78, 21313 }, /* osfRestore */
+    { 0x1004ff53, 21324 }, /* osfRight */
+    { 0x1004ff60, 21333 }, /* osfSelect */
+    { 0x1004ff71, 21343 }, /* osfSelectAll */
+    { 0x1004ff65, 21356 }, /* osfUndo */
+    { 0x1004ff52, 21364 }, /* osfUp */
+    { 0x000000d8, 21370 }, /* Oslash */
+    { 0x000000f8, 21377 }, /* oslash */
+    { 0x000000d5, 21384 }, /* Otilde */
+    { 0x000000f5, 21391 }, /* otilde */
+    { 0x00000bc0, 21398 }, /* overbar */
+    { 0x0000fe78, 21406 }, /* Overlay1_Enable */
+    { 0x0000fe79, 21422 }, /* Overlay2_Enable */
+    { 0x0000047e, 21438 }, /* overline */
+    { 0x00000050, 21447 }, /* P */
+    { 0x00000070, 21449 }, /* p */
+    { 0x01001e56, 21451 }, /* Pabovedot */
+    { 0x01001e57, 21461 }, /* pabovedot */
+    { 0x0000ff56, 21471 }, /* Page_Down */
+    { 0x0000ff55, 21481 }, /* Page_Up */
+    { 0x000000b6, 21489 }, /* paragraph */
+    { 0x00000028, 21499 }, /* parenleft */
+    { 0x00000029, 21509 }, /* parenright */
+    { 0x01002202, 21520 }, /* partdifferential */
+    { 0x000008ef, 21537 }, /* partialderivative */
+    { 0x0000ff13, 21555 }, /* Pause */
+    { 0x00000025, 21561 }, /* percent */
+    { 0x0000002e, 21569 }, /* period */
+    { 0x000000b7, 21576 }, /* periodcentered */
+    { 0x00000ad5, 21591 }, /* permille */
+    { 0x010020a7, 21600 }, /* PesetaSign */
+    { 0x00000afb, 21611 }, /* phonographcopyright */
+    { 0x0000002b, 21631 }, /* plus */
+    { 0x000000b1, 21636 }, /* plusminus */
+    { 0x0000fefa, 21646 }, /* Pointer_Accelerate */
+    { 0x0000fee9, 21665 }, /* Pointer_Button1 */
+    { 0x0000feea, 21681 }, /* Pointer_Button2 */
+    { 0x0000feeb, 21697 }, /* Pointer_Button3 */
+    { 0x0000feec, 21713 }, /* Pointer_Button4 */
+    { 0x0000feed, 21729 }, /* Pointer_Button5 */
+    { 0x0000fee8, 21745 }, /* Pointer_Button_Dflt */
+    { 0x0000feef, 21765 }, /* Pointer_DblClick1 */
+    { 0x0000fef0, 21783 }, /* Pointer_DblClick2 */
+    { 0x0000fef1, 21801 }, /* Pointer_DblClick3 */
+    { 0x0000fef2, 21819 }, /* Pointer_DblClick4 */
+    { 0x0000fef3, 21837 }, /* Pointer_DblClick5 */
+    { 0x0000feee, 21855 }, /* Pointer_DblClick_Dflt */
+    { 0x0000fefb, 21877 }, /* Pointer_DfltBtnNext */
+    { 0x0000fefc, 21897 }, /* Pointer_DfltBtnPrev */
+    { 0x0000fee3, 21917 }, /* Pointer_Down */
+    { 0x0000fee6, 21930 }, /* Pointer_DownLeft */
+    { 0x0000fee7, 21947 }, /* Pointer_DownRight */
+    { 0x0000fef5, 21965 }, /* Pointer_Drag1 */
+    { 0x0000fef6, 21979 }, /* Pointer_Drag2 */
+    { 0x0000fef7, 21993 }, /* Pointer_Drag3 */
+    { 0x0000fef8, 22007 }, /* Pointer_Drag4 */
+    { 0x0000fefd, 22021 }, /* Pointer_Drag5 */
+    { 0x0000fef4, 22035 }, /* Pointer_Drag_Dflt */
+    { 0x0000fef9, 22053 }, /* Pointer_EnableKeys */
+    { 0x0000fee0, 22072 }, /* Pointer_Left */
+    { 0x0000fee1, 22085 }, /* Pointer_Right */
+    { 0x0000fee2, 22099 }, /* Pointer_Up */
+    { 0x0000fee4, 22110 }, /* Pointer_UpLeft */
+    { 0x0000fee5, 22125 }, /* Pointer_UpRight */
+    { 0x00000ad4, 22141 }, /* prescription */
+    { 0x0000fed1, 22154 }, /* Prev_Virtual_Screen */
+    { 0x0000ff3e, 22174 }, /* PreviousCandidate */
+    { 0x0000ff61, 22192 }, /* Print */
+    { 0x0000ff55, 22198 }, /* Prior */
+    { 0x000004b0, 22204 }, /* prolongedsound */
+    { 0x00000aa6, 22219 }, /* punctspace */
+    { 0x00000051, 22230 }, /* Q */
+    { 0x00000071, 22232 }, /* q */
+    { 0x00000bcc, 22234 }, /* quad */
+    { 0x0000003f, 22239 }, /* question */
+    { 0x000000bf, 22248 }, /* questiondown */
+    { 0x00000022, 22261 }, /* quotedbl */
+    { 0x00000060, 22270 }, /* quoteleft */
+    { 0x00000027, 22280 }, /* quoteright */
+    { 0x00000052, 22291 }, /* R */
+    { 0x00000072, 22293 }, /* r */
+    { 0x0000ffd2, 22295 }, /* R1 */
+    { 0x0000ffdb, 22298 }, /* R10 */
+    { 0x0000ffdc, 22302 }, /* R11 */
+    { 0x0000ffdd, 22306 }, /* R12 */
+    { 0x0000ffde, 22310 }, /* R13 */
+    { 0x0000ffdf, 22314 }, /* R14 */
+    { 0x0000ffe0, 22318 }, /* R15 */
+    { 0x0000ffd3, 22322 }, /* R2 */
+    { 0x0000ffd4, 22325 }, /* R3 */
+    { 0x0000ffd5, 22328 }, /* R4 */
+    { 0x0000ffd6, 22331 }, /* R5 */
+    { 0x0000ffd7, 22334 }, /* R6 */
+    { 0x0000ffd8, 22337 }, /* R7 */
+    { 0x0000ffd9, 22340 }, /* R8 */
+    { 0x0000ffda, 22343 }, /* R9 */
+    { 0x000001c0, 22346 }, /* Racute */
+    { 0x000001e0, 22353 }, /* racute */
+    { 0x000008d6, 22360 }, /* radical */
+    { 0x000001d8, 22368 }, /* Rcaron */
+    { 0x000001f8, 22375 }, /* rcaron */
+    { 0x000003a3, 22382 }, /* Rcedilla */
+    { 0x000003b3, 22391 }, /* rcedilla */
+    { 0x0000ff66, 22400 }, /* Redo */
+    { 0x000000ae, 22405 }, /* registered */
+    { 0x0000fe72, 22416 }, /* RepeatKeys_Enable */
+    { 0x1000ff6c, 22434 }, /* Reset */
+    { 0x0000ff0d, 22440 }, /* Return */
+    { 0x0000ff53, 22447 }, /* Right */
+    { 0x00000abe, 22453 }, /* rightanglebracket */
+    { 0x000008fd, 22471 }, /* rightarrow */
+    { 0x00000ba6, 22482 }, /* rightcaret */
+    { 0x00000ad3, 22493 }, /* rightdoublequotemark */
+    { 0x000008b0, 22514 }, /* rightmiddlecurlybrace */
+    { 0x000008b7, 22536 }, /* rightmiddlesummation */
+    { 0x00000acd, 22557 }, /* rightopentriangle */
+    { 0x00000aeb, 22575 }, /* rightpointer */
+    { 0x00000bd8, 22588 }, /* rightshoe */
+    { 0x00000ad1, 22598 }, /* rightsinglequotemark */
+    { 0x000009f5, 22619 }, /* rightt */
+    { 0x00000bfc, 22626 }, /* righttack */
+    { 0x0000ff24, 22636 }, /* Romaji */
+    { 0x010020a8, 22643 }, /* RupeeSign */
+    { 0x00000053, 22653 }, /* S */
+    { 0x00000073, 22655 }, /* s */
+    { 0x01001e60, 22657 }, /* Sabovedot */
+    { 0x01001e61, 22667 }, /* sabovedot */
+    { 0x000001a6, 22677 }, /* Sacute */
+    { 0x000001b6, 22684 }, /* sacute */
+    { 0x000001a9, 22691 }, /* Scaron */
+    { 0x000001b9, 22698 }, /* scaron */
+    { 0x000001aa, 22705 }, /* Scedilla */
+    { 0x000001ba, 22714 }, /* scedilla */
+    { 0x0100018f, 22723 }, /* SCHWA */
+    { 0x01000259, 22729 }, /* schwa */
+    { 0x000002de, 22735 }, /* Scircumflex */
+    { 0x000002fe, 22747 }, /* scircumflex */
+    { 0x0000ff7e, 22759 }, /* script_switch */
+    { 0x0000ff14, 22773 }, /* Scroll_Lock */
+    { 0x00000ad7, 22785 }, /* seconds */
+    { 0x000000a7, 22793 }, /* section */
+    { 0x0000ff60, 22801 }, /* Select */
+    { 0x0000003b, 22808 }, /* semicolon */
+    { 0x000004df, 22818 }, /* semivoicedsound */
+    { 0x000006a1, 22834 }, /* Serbian_dje */
+    { 0x000006b1, 22846 }, /* Serbian_DJE */
+    { 0x000006af, 22858 }, /* Serbian_dze */
+    { 0x000006bf, 22870 }, /* Serbian_DZE */
+    { 0x000006a8, 22882 }, /* Serbian_je */
+    { 0x000006b8, 22893 }, /* Serbian_JE */
+    { 0x000006a9, 22904 }, /* Serbian_lje */
+    { 0x000006b9, 22916 }, /* Serbian_LJE */
+    { 0x000006aa, 22928 }, /* Serbian_nje */
+    { 0x000006ba, 22940 }, /* Serbian_NJE */
+    { 0x000006ab, 22952 }, /* Serbian_tshe */
+    { 0x000006bb, 22965 }, /* Serbian_TSHE */
+    { 0x00000ac6, 22978 }, /* seveneighths */
+    { 0x01002087, 22991 }, /* sevensubscript */
+    { 0x01002077, 23006 }, /* sevensuperior */
+    { 0x0000ffe1, 23020 }, /* Shift_L */
+    { 0x0000ffe6, 23028 }, /* Shift_Lock */
+    { 0x0000ffe2, 23039 }, /* Shift_R */
+    { 0x00000aca, 23047 }, /* signaturemark */
+    { 0x00000aac, 23061 }, /* signifblank */
+    { 0x000008c9, 23073 }, /* similarequal */
+    { 0x0000ff3c, 23086 }, /* SingleCandidate */
+    { 0x00000afd, 23102 }, /* singlelowquotemark */
+    { 0x01000d85, 23121 }, /* Sinh_a */
+    { 0x01000d86, 23128 }, /* Sinh_aa */
+    { 0x01000dcf, 23136 }, /* Sinh_aa2 */
+    { 0x01000d87, 23145 }, /* Sinh_ae */
+    { 0x01000dd0, 23153 }, /* Sinh_ae2 */
+    { 0x01000d88, 23162 }, /* Sinh_aee */
+    { 0x01000dd1, 23171 }, /* Sinh_aee2 */
+    { 0x01000d93, 23181 }, /* Sinh_ai */
+    { 0x01000ddb, 23189 }, /* Sinh_ai2 */
+    { 0x01000dca, 23198 }, /* Sinh_al */
+    { 0x01000d96, 23206 }, /* Sinh_au */
+    { 0x01000dde, 23214 }, /* Sinh_au2 */
+    { 0x01000db6, 23223 }, /* Sinh_ba */
+    { 0x01000db7, 23231 }, /* Sinh_bha */
+    { 0x01000da0, 23240 }, /* Sinh_ca */
+    { 0x01000da1, 23248 }, /* Sinh_cha */
+    { 0x01000da9, 23257 }, /* Sinh_dda */
+    { 0x01000daa, 23266 }, /* Sinh_ddha */
+    { 0x01000daf, 23276 }, /* Sinh_dha */
+    { 0x01000db0, 23285 }, /* Sinh_dhha */
+    { 0x01000d91, 23295 }, /* Sinh_e */
+    { 0x01000dd9, 23302 }, /* Sinh_e2 */
+    { 0x01000d92, 23310 }, /* Sinh_ee */
+    { 0x01000dda, 23318 }, /* Sinh_ee2 */
+    { 0x01000dc6, 23327 }, /* Sinh_fa */
+    { 0x01000d9c, 23335 }, /* Sinh_ga */
+    { 0x01000d9d, 23343 }, /* Sinh_gha */
+    { 0x01000d83, 23352 }, /* Sinh_h2 */
+    { 0x01000dc4, 23360 }, /* Sinh_ha */
+    { 0x01000d89, 23368 }, /* Sinh_i */
+    { 0x01000dd2, 23375 }, /* Sinh_i2 */
+    { 0x01000d8a, 23383 }, /* Sinh_ii */
+    { 0x01000dd3, 23391 }, /* Sinh_ii2 */
+    { 0x01000da2, 23400 }, /* Sinh_ja */
+    { 0x01000da3, 23408 }, /* Sinh_jha */
+    { 0x01000da5, 23417 }, /* Sinh_jnya */
+    { 0x01000d9a, 23427 }, /* Sinh_ka */
+    { 0x01000d9b, 23435 }, /* Sinh_kha */
+    { 0x01000df4, 23444 }, /* Sinh_kunddaliya */
+    { 0x01000dbd, 23460 }, /* Sinh_la */
+    { 0x01000dc5, 23468 }, /* Sinh_lla */
+    { 0x01000d8f, 23477 }, /* Sinh_lu */
+    { 0x01000ddf, 23485 }, /* Sinh_lu2 */
+    { 0x01000d90, 23494 }, /* Sinh_luu */
+    { 0x01000df3, 23503 }, /* Sinh_luu2 */
+    { 0x01000db8, 23513 }, /* Sinh_ma */
+    { 0x01000db9, 23521 }, /* Sinh_mba */
+    { 0x01000db1, 23530 }, /* Sinh_na */
+    { 0x01000dac, 23538 }, /* Sinh_ndda */
+    { 0x01000db3, 23548 }, /* Sinh_ndha */
+    { 0x01000d82, 23558 }, /* Sinh_ng */
+    { 0x01000d9e, 23566 }, /* Sinh_ng2 */
+    { 0x01000d9f, 23575 }, /* Sinh_nga */
+    { 0x01000da6, 23584 }, /* Sinh_nja */
+    { 0x01000dab, 23593 }, /* Sinh_nna */
+    { 0x01000da4, 23602 }, /* Sinh_nya */
+    { 0x01000d94, 23611 }, /* Sinh_o */
+    { 0x01000ddc, 23618 }, /* Sinh_o2 */
+    { 0x01000d95, 23626 }, /* Sinh_oo */
+    { 0x01000ddd, 23634 }, /* Sinh_oo2 */
+    { 0x01000db4, 23643 }, /* Sinh_pa */
+    { 0x01000db5, 23651 }, /* Sinh_pha */
+    { 0x01000dbb, 23660 }, /* Sinh_ra */
+    { 0x01000d8d, 23668 }, /* Sinh_ri */
+    { 0x01000d8e, 23676 }, /* Sinh_rii */
+    { 0x01000dd8, 23685 }, /* Sinh_ru2 */
+    { 0x01000df2, 23694 }, /* Sinh_ruu2 */
+    { 0x01000dc3, 23704 }, /* Sinh_sa */
+    { 0x01000dc1, 23712 }, /* Sinh_sha */
+    { 0x01000dc2, 23721 }, /* Sinh_ssha */
+    { 0x01000dad, 23731 }, /* Sinh_tha */
+    { 0x01000dae, 23740 }, /* Sinh_thha */
+    { 0x01000da7, 23750 }, /* Sinh_tta */
+    { 0x01000da8, 23759 }, /* Sinh_ttha */
+    { 0x01000d8b, 23769 }, /* Sinh_u */
+    { 0x01000dd4, 23776 }, /* Sinh_u2 */
+    { 0x01000d8c, 23784 }, /* Sinh_uu */
+    { 0x01000dd6, 23792 }, /* Sinh_uu2 */
+    { 0x01000dc0, 23801 }, /* Sinh_va */
+    { 0x01000dba, 23809 }, /* Sinh_ya */
+    { 0x01002086, 23817 }, /* sixsubscript */
+    { 0x01002076, 23830 }, /* sixsuperior */
+    { 0x0000002f, 23842 }, /* slash */
+    { 0x0000fe73, 23848 }, /* SlowKeys_Enable */
+    { 0x000009e0, 23864 }, /* soliddiamond */
+    { 0x00000020, 23877 }, /* space */
+    { 0x0100221a, 23883 }, /* squareroot */
+    { 0x000000df, 23894 }, /* ssharp */
+    { 0x000000a3, 23901 }, /* sterling */
+    { 0x0000fe75, 23910 }, /* StickyKeys_Enable */
+    { 0x01002263, 23928 }, /* stricteq */
+    { 0x0000ff66, 23937 }, /* SunAgain */
+    { 0x0000ff7e, 23946 }, /* SunAltGraph */
+    { 0x1005ff77, 23958 }, /* SunAudioLowerVolume */
+    { 0x1005ff78, 23978 }, /* SunAudioMute */
+    { 0x1005ff79, 23991 }, /* SunAudioRaiseVolume */
+    { 0x0000ff20, 24011 }, /* SunCompose */
+    { 0x1005ff72, 24022 }, /* SunCopy */
+    { 0x1005ff75, 24030 }, /* SunCut */
+    { 0x1005ff10, 24037 }, /* SunF36 */
+    { 0x1005ff11, 24044 }, /* SunF37 */
+    { 0x1005ff03, 24051 }, /* SunFA_Acute */
+    { 0x1005ff05, 24063 }, /* SunFA_Cedilla */
+    { 0x1005ff01, 24077 }, /* SunFA_Circum */
+    { 0x1005ff04, 24090 }, /* SunFA_Diaeresis */
+    { 0x1005ff00, 24106 }, /* SunFA_Grave */
+    { 0x1005ff02, 24118 }, /* SunFA_Tilde */
+    { 0x0000ff68, 24130 }, /* SunFind */
+    { 0x1005ff71, 24138 }, /* SunFront */
+    { 0x1005ff73, 24147 }, /* SunOpen */
+    { 0x0000ff56, 24155 }, /* SunPageDown */
+    { 0x0000ff55, 24167 }, /* SunPageUp */
+    { 0x1005ff74, 24177 }, /* SunPaste */
+    { 0x1005ff76, 24186 }, /* SunPowerSwitch */
+    { 0x1005ff7d, 24201 }, /* SunPowerSwitchShift */
+    { 0x0000ff61, 24221 }, /* SunPrint_Screen */
+    { 0x1005ff70, 24237 }, /* SunProps */
+    { 0x0000ff69, 24246 }, /* SunStop */
+    { 0x1005ff60, 24254 }, /* SunSys_Req */
+    { 0x0000ff65, 24265 }, /* SunUndo */
+    { 0x1005ff7a, 24273 }, /* SunVideoDegauss */
+    { 0x1005ff7b, 24289 }, /* SunVideoLowerBrightness */
+    { 0x1005ff7c, 24313 }, /* SunVideoRaiseBrightness */
+    { 0x0000ffeb, 24337 }, /* Super_L */
+    { 0x0000ffec, 24345 }, /* Super_R */
+    { 0x0000ff15, 24353 }, /* Sys_Req */
+    { 0x1000ff6d, 24361 }, /* System */
+    { 0x00000054, 24368 }, /* T */
+    { 0x00000074, 24370 }, /* t */
+    { 0x0000ff09, 24372 }, /* Tab */
+    { 0x01001e6a, 24376 }, /* Tabovedot */
+    { 0x01001e6b, 24386 }, /* tabovedot */
+    { 0x000001ab, 24396 }, /* Tcaron */
+    { 0x000001bb, 24403 }, /* tcaron */
+    { 0x000001de, 24410 }, /* Tcedilla */
+    { 0x000001fe, 24419 }, /* tcedilla */
+    { 0x00000af9, 24428 }, /* telephone */
+    { 0x00000afa, 24438 }, /* telephonerecorder */
+    { 0x0000fed5, 24456 }, /* Terminate_Server */
+    { 0x00000ddf, 24473 }, /* Thai_baht */
+    { 0x00000dba, 24483 }, /* Thai_bobaimai */
+    { 0x00000da8, 24497 }, /* Thai_chochan */
+    { 0x00000daa, 24510 }, /* Thai_chochang */
+    { 0x00000da9, 24524 }, /* Thai_choching */
+    { 0x00000dac, 24538 }, /* Thai_chochoe */
+    { 0x00000dae, 24551 }, /* Thai_dochada */
+    { 0x00000db4, 24564 }, /* Thai_dodek */
+    { 0x00000dbd, 24575 }, /* Thai_fofa */
+    { 0x00000dbf, 24585 }, /* Thai_fofan */
+    { 0x00000dcb, 24596 }, /* Thai_hohip */
+    { 0x00000dce, 24607 }, /* Thai_honokhuk */
+    { 0x00000da2, 24621 }, /* Thai_khokhai */
+    { 0x00000da5, 24634 }, /* Thai_khokhon */
+    { 0x00000da3, 24647 }, /* Thai_khokhuat */
+    { 0x00000da4, 24661 }, /* Thai_khokhwai */
+    { 0x00000da6, 24675 }, /* Thai_khorakhang */
+    { 0x00000da1, 24691 }, /* Thai_kokai */
+    { 0x00000de5, 24702 }, /* Thai_lakkhangyao */
+    { 0x00000df7, 24719 }, /* Thai_lekchet */
+    { 0x00000df5, 24732 }, /* Thai_lekha */
+    { 0x00000df6, 24743 }, /* Thai_lekhok */
+    { 0x00000df9, 24755 }, /* Thai_lekkao */
+    { 0x00000df1, 24767 }, /* Thai_leknung */
+    { 0x00000df8, 24780 }, /* Thai_lekpaet */
+    { 0x00000df3, 24793 }, /* Thai_leksam */
+    { 0x00000df4, 24805 }, /* Thai_leksi */
+    { 0x00000df2, 24816 }, /* Thai_leksong */
+    { 0x00000df0, 24829 }, /* Thai_leksun */
+    { 0x00000dcc, 24841 }, /* Thai_lochula */
+    { 0x00000dc5, 24854 }, /* Thai_loling */
+    { 0x00000dc6, 24866 }, /* Thai_lu */
+    { 0x00000deb, 24874 }, /* Thai_maichattawa */
+    { 0x00000de8, 24891 }, /* Thai_maiek */
+    { 0x00000dd1, 24902 }, /* Thai_maihanakat */
+    { 0x00000dde, 24918 }, /* Thai_maihanakat_maitho */
+    { 0x00000de7, 24941 }, /* Thai_maitaikhu */
+    { 0x00000de9, 24956 }, /* Thai_maitho */
+    { 0x00000dea, 24968 }, /* Thai_maitri */
+    { 0x00000de6, 24980 }, /* Thai_maiyamok */
+    { 0x00000dc1, 24994 }, /* Thai_moma */
+    { 0x00000da7, 25004 }, /* Thai_ngongu */
+    { 0x00000ded, 25016 }, /* Thai_nikhahit */
+    { 0x00000db3, 25030 }, /* Thai_nonen */
+    { 0x00000db9, 25041 }, /* Thai_nonu */
+    { 0x00000dcd, 25051 }, /* Thai_oang */
+    { 0x00000dcf, 25061 }, /* Thai_paiyannoi */
+    { 0x00000dda, 25076 }, /* Thai_phinthu */
+    { 0x00000dbe, 25089 }, /* Thai_phophan */
+    { 0x00000dbc, 25102 }, /* Thai_phophung */
+    { 0x00000dc0, 25116 }, /* Thai_phosamphao */
+    { 0x00000dbb, 25132 }, /* Thai_popla */
+    { 0x00000dc3, 25143 }, /* Thai_rorua */
+    { 0x00000dc4, 25154 }, /* Thai_ru */
+    { 0x00000dd0, 25162 }, /* Thai_saraa */
+    { 0x00000dd2, 25173 }, /* Thai_saraaa */
+    { 0x00000de1, 25185 }, /* Thai_saraae */
+    { 0x00000de4, 25197 }, /* Thai_saraaimaimalai */
+    { 0x00000de3, 25217 }, /* Thai_saraaimaimuan */
+    { 0x00000dd3, 25236 }, /* Thai_saraam */
+    { 0x00000de0, 25248 }, /* Thai_sarae */
+    { 0x00000dd4, 25259 }, /* Thai_sarai */
+    { 0x00000dd5, 25270 }, /* Thai_saraii */
+    { 0x00000de2, 25282 }, /* Thai_sarao */
+    { 0x00000dd8, 25293 }, /* Thai_sarau */
+    { 0x00000dd6, 25304 }, /* Thai_saraue */
+    { 0x00000dd7, 25316 }, /* Thai_sarauee */
+    { 0x00000dd9, 25329 }, /* Thai_sarauu */
+    { 0x00000dc9, 25341 }, /* Thai_sorusi */
+    { 0x00000dc8, 25353 }, /* Thai_sosala */
+    { 0x00000dab, 25365 }, /* Thai_soso */
+    { 0x00000dca, 25375 }, /* Thai_sosua */
+    { 0x00000dec, 25386 }, /* Thai_thanthakhat */
+    { 0x00000db1, 25403 }, /* Thai_thonangmontho */
+    { 0x00000db2, 25422 }, /* Thai_thophuthao */
+    { 0x00000db7, 25438 }, /* Thai_thothahan */
+    { 0x00000db0, 25453 }, /* Thai_thothan */
+    { 0x00000db8, 25466 }, /* Thai_thothong */
+    { 0x00000db6, 25480 }, /* Thai_thothung */
+    { 0x00000daf, 25494 }, /* Thai_topatak */
+    { 0x00000db5, 25507 }, /* Thai_totao */
+    { 0x00000dc7, 25518 }, /* Thai_wowaen */
+    { 0x00000dc2, 25530 }, /* Thai_yoyak */
+    { 0x00000dad, 25541 }, /* Thai_yoying */
+    { 0x000008c0, 25553 }, /* therefore */
+    { 0x00000aa7, 25563 }, /* thinspace */
+    { 0x000000de, 25573 }, /* THORN */
+    { 0x000000de, 25579 }, /* Thorn */
+    { 0x000000fe, 25585 }, /* thorn */
+    { 0x00000ac4, 25591 }, /* threeeighths */
+    { 0x00000ab4, 25604 }, /* threefifths */
+    { 0x000000be, 25616 }, /* threequarters */
+    { 0x01002083, 25630 }, /* threesubscript */
+    { 0x000000b3, 25645 }, /* threesuperior */
+    { 0x0100222d, 25659 }, /* tintegral */
+    { 0x000008a4, 25669 }, /* topintegral */
+    { 0x000008ab, 25681 }, /* topleftparens */
+    { 0x000008a2, 25695 }, /* topleftradical */
+    { 0x000008a7, 25710 }, /* topleftsqbracket */
+    { 0x000008b1, 25727 }, /* topleftsummation */
+    { 0x000008ad, 25744 }, /* toprightparens */
+    { 0x000008a9, 25759 }, /* toprightsqbracket */
+    { 0x000008b5, 25777 }, /* toprightsummation */
+    { 0x000009f7, 25795 }, /* topt */
+    { 0x000008b3, 25800 }, /* topvertsummationconnector */
+    { 0x0000ff2b, 25826 }, /* Touroku */
+    { 0x00000ac9, 25834 }, /* trademark */
+    { 0x00000acb, 25844 }, /* trademarkincircle */
+    { 0x000003ac, 25862 }, /* Tslash */
+    { 0x000003bc, 25869 }, /* tslash */
+    { 0x00000ab3, 25876 }, /* twofifths */
+    { 0x01002082, 25886 }, /* twosubscript */
+    { 0x000000b2, 25899 }, /* twosuperior */
+    { 0x00000ab1, 25911 }, /* twothirds */
+    { 0x00000055, 25921 }, /* U */
+    { 0x00000075, 25923 }, /* u */
+    { 0x000000da, 25925 }, /* Uacute */
+    { 0x000000fa, 25932 }, /* uacute */
+    { 0x01001ee4, 25939 }, /* Ubelowdot */
+    { 0x01001ee5, 25949 }, /* ubelowdot */
+    { 0x000002dd, 25959 }, /* Ubreve */
+    { 0x000002fd, 25966 }, /* ubreve */
+    { 0x000000db, 25973 }, /* Ucircumflex */
+    { 0x000000fb, 25985 }, /* ucircumflex */
+    { 0x000000dc, 25997 }, /* Udiaeresis */
+    { 0x000000fc, 26008 }, /* udiaeresis */
+    { 0x000001db, 26019 }, /* Udoubleacute */
+    { 0x000001fb, 26032 }, /* udoubleacute */
+    { 0x000000d9, 26045 }, /* Ugrave */
+    { 0x000000f9, 26052 }, /* ugrave */
+    { 0x01001ee6, 26059 }, /* Uhook */
+    { 0x01001ee7, 26065 }, /* uhook */
+    { 0x010001af, 26071 }, /* Uhorn */
+    { 0x010001b0, 26077 }, /* uhorn */
+    { 0x01001ee8, 26083 }, /* Uhornacute */
+    { 0x01001ee9, 26094 }, /* uhornacute */
+    { 0x01001ef0, 26105 }, /* Uhornbelowdot */
+    { 0x01001ef1, 26119 }, /* uhornbelowdot */
+    { 0x01001eea, 26133 }, /* Uhorngrave */
+    { 0x01001eeb, 26144 }, /* uhorngrave */
+    { 0x01001eec, 26155 }, /* Uhornhook */
+    { 0x01001eed, 26165 }, /* uhornhook */
+    { 0x01001eee, 26175 }, /* Uhorntilde */
+    { 0x01001eef, 26186 }, /* uhorntilde */
+    { 0x000006ad, 26197 }, /* Ukrainian_ghe_with_upturn */
+    { 0x000006bd, 26223 }, /* Ukrainian_GHE_WITH_UPTURN */
+    { 0x000006a6, 26249 }, /* Ukrainian_i */
+    { 0x000006b6, 26261 }, /* Ukrainian_I */
+    { 0x000006a4, 26273 }, /* Ukrainian_ie */
+    { 0x000006b4, 26286 }, /* Ukrainian_IE */
+    { 0x000006a7, 26299 }, /* Ukrainian_yi */
+    { 0x000006b7, 26312 }, /* Ukrainian_YI */
+    { 0x000006a6, 26325 }, /* Ukranian_i */
+    { 0x000006b6, 26336 }, /* Ukranian_I */
+    { 0x000006a4, 26347 }, /* Ukranian_je */
+    { 0x000006b4, 26359 }, /* Ukranian_JE */
+    { 0x000006a7, 26371 }, /* Ukranian_yi */
+    { 0x000006b7, 26383 }, /* Ukranian_YI */
+    { 0x000003de, 26395 }, /* Umacron */
+    { 0x000003fe, 26403 }, /* umacron */
+    { 0x00000bc6, 26411 }, /* underbar */
+    { 0x0000005f, 26420 }, /* underscore */
+    { 0x0000ff65, 26431 }, /* Undo */
+    { 0x000008dd, 26436 }, /* union */
+    { 0x000003d9, 26442 }, /* Uogonek */
+    { 0x000003f9, 26450 }, /* uogonek */
+    { 0x0000ff52, 26458 }, /* Up */
+    { 0x000008fc, 26461 }, /* uparrow */
+    { 0x00000ba9, 26469 }, /* upcaret */
+    { 0x000009ec, 26477 }, /* upleftcorner */
+    { 0x000009eb, 26490 }, /* uprightcorner */
+    { 0x00000bc3, 26504 }, /* upshoe */
+    { 0x00000bd3, 26511 }, /* upstile */
+    { 0x00000bce, 26519 }, /* uptack */
+    { 0x000001d9, 26526 }, /* Uring */
+    { 0x000001f9, 26532 }, /* uring */
+    { 0x1000ff6e, 26538 }, /* User */
+    { 0x000003dd, 26543 }, /* Utilde */
+    { 0x000003fd, 26550 }, /* utilde */
+    { 0x00000056, 26557 }, /* V */
+    { 0x00000076, 26559 }, /* v */
+    { 0x000008c1, 26561 }, /* variation */
+    { 0x000009f8, 26571 }, /* vertbar */
+    { 0x000008a6, 26579 }, /* vertconnector */
+    { 0x000004de, 26593 }, /* voicedsound */
+    { 0x00ffffff, 26605 }, /* VoidSymbol */
+    { 0x000009e9, 26616 }, /* vt */
+    { 0x00000057, 26619 }, /* W */
+    { 0x00000077, 26621 }, /* w */
+    { 0x01001e82, 26623 }, /* Wacute */
+    { 0x01001e83, 26630 }, /* wacute */
+    { 0x01000174, 26637 }, /* Wcircumflex */
+    { 0x01000175, 26649 }, /* wcircumflex */
+    { 0x01001e84, 26661 }, /* Wdiaeresis */
+    { 0x01001e85, 26672 }, /* wdiaeresis */
+    { 0x01001e80, 26683 }, /* Wgrave */
+    { 0x01001e81, 26690 }, /* wgrave */
+    { 0x010020a9, 26697 }, /* WonSign */
+    { 0x00000058, 26705 }, /* X */
+    { 0x00000078, 26707 }, /* x */
+    { 0x01001e8a, 26709 }, /* Xabovedot */
+    { 0x01001e8b, 26719 }, /* xabovedot */
+    { 0x100811b9, 26729 }, /* XF8610ChannelsDown */
+    { 0x100811b8, 26748 }, /* XF8610ChannelsUp */
+    { 0x1008126f, 26765 }, /* XF863DMode */
+    { 0x1008ff39, 26776 }, /* XF86AddFavorite */
+    { 0x100811ad, 26792 }, /* XF86Addressbook */
+    { 0x10081230, 26808 }, /* XF86ALSToggle */
+    { 0x1008ff50, 26822 }, /* XF86ApplicationLeft */
+    { 0x1008ff51, 26842 }, /* XF86ApplicationRight */
+    { 0x10081244, 26863 }, /* XF86AppSelect */
+    { 0x10081177, 26877 }, /* XF86AspectRatio */
+    { 0x10081247, 26893 }, /* XF86Assistant */
+    { 0x1008121c, 26907 }, /* XF86AttendantOff */
+    { 0x1008121b, 26924 }, /* XF86AttendantOn */
+    { 0x1008121d, 26940 }, /* XF86AttendantToggle */
+    { 0x10081188, 26960 }, /* XF86Audio */
+    { 0x1008ff9b, 26970 }, /* XF86AudioCycleTrack */
+    { 0x1008126e, 26990 }, /* XF86AudioDesc */
+    { 0x1008ff97, 27004 }, /* XF86AudioForward */
+    { 0x1008ff11, 27021 }, /* XF86AudioLowerVolume */
+    { 0x1008ff32, 27042 }, /* XF86AudioMedia */
+    { 0x1008ffb2, 27057 }, /* XF86AudioMicMute */
+    { 0x1008ff12, 27074 }, /* XF86AudioMute */
+    { 0x1008ff17, 27088 }, /* XF86AudioNext */
+    { 0x1008ff31, 27102 }, /* XF86AudioPause */
+    { 0x1008ff14, 27117 }, /* XF86AudioPlay */
+    { 0x1008ffb6, 27131 }, /* XF86AudioPreset */
+    { 0x1008ff16, 27147 }, /* XF86AudioPrev */
+    { 0x1008ff13, 27161 }, /* XF86AudioRaiseVolume */
+    { 0x1008ff99, 27182 }, /* XF86AudioRandomPlay */
+    { 0x1008ff1c, 27202 }, /* XF86AudioRecord */
+    { 0x1008ff98, 27218 }, /* XF86AudioRepeat */
+    { 0x1008ff3e, 27234 }, /* XF86AudioRewind */
+    { 0x1008ff15, 27250 }, /* XF86AudioStop */
+    { 0x1008127d, 27264 }, /* XF86AutopilotEngageToggle */
+    { 0x1008ff8d, 27290 }, /* XF86Away */
+    { 0x1008ff26, 27299 }, /* XF86Back */
+    { 0x1008ff3f, 27308 }, /* XF86BackForward */
+    { 0x1008ff93, 27324 }, /* XF86Battery */
+    { 0x1008ffa6, 27336 }, /* XF86Blue */
+    { 0x1008ff94, 27345 }, /* XF86Bluetooth */
+    { 0x1008ff52, 27359 }, /* XF86Book */
+    { 0x1008119b, 27368 }, /* XF86Break */
+    { 0x1008ff3b, 27378 }, /* XF86BrightnessAdjust */
+    { 0x100810f4, 27399 }, /* XF86BrightnessAuto */
+    { 0x10081251, 27418 }, /* XF86BrightnessMax */
+    { 0x10081250, 27436 }, /* XF86BrightnessMin */
+    { 0x10081240, 27454 }, /* XF86Buttonconfig */
+    { 0x1008ff54, 27471 }, /* XF86Calculater */
+    { 0x1008ff1d, 27486 }, /* XF86Calculator */
+    { 0x1008ff20, 27501 }, /* XF86Calendar */
+    { 0x1008124c, 27514 }, /* XF86CameraAccessDisable */
+    { 0x1008124b, 27538 }, /* XF86CameraAccessEnable */
+    { 0x1008124d, 27561 }, /* XF86CameraAccessToggle */
+    { 0x10081218, 27584 }, /* XF86CameraDown */
+    { 0x10081210, 27599 }, /* XF86CameraFocus */
+    { 0x10081219, 27615 }, /* XF86CameraLeft */
+    { 0x1008121a, 27630 }, /* XF86CameraRight */
+    { 0x10081217, 27646 }, /* XF86CameraUp */
+    { 0x10081215, 27659 }, /* XF86CameraZoomIn */
+    { 0x10081216, 27676 }, /* XF86CameraZoomOut */
+    { 0x1008ff53, 27694 }, /* XF86CD */
+    { 0x10081193, 27701 }, /* XF86ChannelDown */
+    { 0x10081192, 27717 }, /* XF86ChannelUp */
+    { 0x1008ff55, 27731 }, /* XF86Clear */
+    { 0x1008fe21, 27741 }, /* XF86ClearGrab */
+    { 0x10081286, 27755 }, /* XF86ClearvuSonar */
+    { 0x1008ff56, 27772 }, /* XF86Close */
+    { 0x1008ff3d, 27782 }, /* XF86Community */
+    { 0x100811b6, 27796 }, /* XF86ContextMenu */
+    { 0x1008ff22, 27812 }, /* XF86ContrastAdjust */
+    { 0x10081243, 27831 }, /* XF86ControlPanel */
+    { 0x1008ff57, 27848 }, /* XF86Copy */
+    { 0x1008ff58, 27857 }, /* XF86Cut */
+    { 0x1008ff9c, 27865 }, /* XF86CycleAngle */
+    { 0x10081277, 27880 }, /* XF86Data */
+    { 0x100811aa, 27889 }, /* XF86Database */
+    { 0x1008124a, 27902 }, /* XF86Dictate */
+    { 0x1008ff59, 27914 }, /* XF86Display */
+    { 0x100810f5, 27926 }, /* XF86DisplayOff */
+    { 0x100811af, 27941 }, /* XF86DisplayToggle */
+    { 0x1008ff5b, 27959 }, /* XF86Documents */
+    { 0x1008ff5a, 27973 }, /* XF86DOS */
+    { 0x10081283, 27981 }, /* XF86DualRangeRadar */
+    { 0x10081185, 28000 }, /* XF86DVD */
+    { 0x100811a6, 28008 }, /* XF86Editor */
+    { 0x1008ff2c, 28019 }, /* XF86Eject */
+    { 0x10081249, 28029 }, /* XF86EmojiPicker */
+    { 0x1008ff5c, 28045 }, /* XF86Excel */
+    { 0x1008ff5d, 28055 }, /* XF86Explorer */
+    { 0x10081275, 28068 }, /* XF86FastReverse */
+    { 0x1008ff30, 28084 }, /* XF86Favorites */
+    { 0x1008ff3c, 28098 }, /* XF86Finance */
+    { 0x10081281, 28110 }, /* XF86FishingChart */
+    { 0x100811d0, 28127 }, /* XF86Fn */
+    { 0x100811d1, 28134 }, /* XF86Fn_Esc */
+    { 0x100811e5, 28145 }, /* XF86FnRightShift */
+    { 0x1008ff27, 28162 }, /* XF86Forward */
+    { 0x1008ff9d, 28174 }, /* XF86FrameBack */
+    { 0x1008ff9e, 28188 }, /* XF86FrameForward */
+    { 0x1008ffb8, 28205 }, /* XF86FullScreen */
+    { 0x1008ff5e, 28220 }, /* XF86Game */
+    { 0x1008ff5f, 28229 }, /* XF86Go */
+    { 0x100811a8, 28236 }, /* XF86GraphicsEditor */
+    { 0x1008ffa4, 28255 }, /* XF86Green */
+    { 0x100811be, 28265 }, /* XF86HangupPhone */
+    { 0x1008ffa8, 28281 }, /* XF86Hibernate */
+    { 0x1008ff37, 28295 }, /* XF86History */
+    { 0x1008ff18, 28307 }, /* XF86HomePage */
+    { 0x1008ff3a, 28320 }, /* XF86HotLinks */
+    { 0x100811ba, 28333 }, /* XF86Images */
+    { 0x10081166, 28344 }, /* XF86Info */
+    { 0x1008ff60, 28353 }, /* XF86iTouch */
+    { 0x10081242, 28364 }, /* XF86Journal */
+    { 0x1008ff06, 28376 }, /* XF86KbdBrightnessDown */
+    { 0x1008ff05, 28398 }, /* XF86KbdBrightnessUp */
+    { 0x10081264, 28418 }, /* XF86KbdInputAssistAccept */
+    { 0x10081265, 28443 }, /* XF86KbdInputAssistCancel */
+    { 0x10081261, 28468 }, /* XF86KbdInputAssistNext */
+    { 0x10081263, 28491 }, /* XF86KbdInputAssistNextgroup */
+    { 0x10081260, 28519 }, /* XF86KbdInputAssistPrev */
+    { 0x10081262, 28542 }, /* XF86KbdInputAssistPrevgroup */
+    { 0x100812b8, 28570 }, /* XF86KbdLcdMenu1 */
+    { 0x100812b9, 28586 }, /* XF86KbdLcdMenu2 */
+    { 0x100812ba, 28602 }, /* XF86KbdLcdMenu3 */
+    { 0x100812bb, 28618 }, /* XF86KbdLcdMenu4 */
+    { 0x100812bc, 28634 }, /* XF86KbdLcdMenu5 */
+    { 0x1008ff04, 28650 }, /* XF86KbdLightOnOff */
+    { 0x1008ffb3, 28668 }, /* XF86Keyboard */
+    { 0x1008ff40, 28681 }, /* XF86Launch0 */
+    { 0x1008ff41, 28693 }, /* XF86Launch1 */
+    { 0x1008ff42, 28705 }, /* XF86Launch2 */
+    { 0x1008ff43, 28717 }, /* XF86Launch3 */
+    { 0x1008ff44, 28729 }, /* XF86Launch4 */
+    { 0x1008ff45, 28741 }, /* XF86Launch5 */
+    { 0x1008ff46, 28753 }, /* XF86Launch6 */
+    { 0x1008ff47, 28765 }, /* XF86Launch7 */
+    { 0x1008ff48, 28777 }, /* XF86Launch8 */
+    { 0x1008ff49, 28789 }, /* XF86Launch9 */
+    { 0x1008ff4a, 28801 }, /* XF86LaunchA */
+    { 0x1008ff4b, 28813 }, /* XF86LaunchB */
+    { 0x1008ff4c, 28825 }, /* XF86LaunchC */
+    { 0x1008ff4d, 28837 }, /* XF86LaunchD */
+    { 0x1008ff4e, 28849 }, /* XF86LaunchE */
+    { 0x1008ff4f, 28861 }, /* XF86LaunchF */
+    { 0x10081269, 28873 }, /* XF86LeftDown */
+    { 0x10081268, 28886 }, /* XF86LeftUp */
+    { 0x1008ff35, 28897 }, /* XF86LightBulb */
+    { 0x1008121e, 28911 }, /* XF86LightsToggle */
+    { 0x1008fe25, 28928 }, /* XF86LogGrabInfo */
+    { 0x1008ff61, 28944 }, /* XF86LogOff */
+    { 0x1008fe24, 28955 }, /* XF86LogWindowTree */
+    { 0x10081290, 28973 }, /* XF86Macro1 */
+    { 0x10081299, 28984 }, /* XF86Macro10 */
+    { 0x1008129a, 28996 }, /* XF86Macro11 */
+    { 0x1008129b, 29008 }, /* XF86Macro12 */
+    { 0x1008129c, 29020 }, /* XF86Macro13 */
+    { 0x1008129d, 29032 }, /* XF86Macro14 */
+    { 0x1008129e, 29044 }, /* XF86Macro15 */
+    { 0x1008129f, 29056 }, /* XF86Macro16 */
+    { 0x100812a0, 29068 }, /* XF86Macro17 */
+    { 0x100812a1, 29080 }, /* XF86Macro18 */
+    { 0x100812a2, 29092 }, /* XF86Macro19 */
+    { 0x10081291, 29104 }, /* XF86Macro2 */
+    { 0x100812a3, 29115 }, /* XF86Macro20 */
+    { 0x100812a4, 29127 }, /* XF86Macro21 */
+    { 0x100812a5, 29139 }, /* XF86Macro22 */
+    { 0x100812a6, 29151 }, /* XF86Macro23 */
+    { 0x100812a7, 29163 }, /* XF86Macro24 */
+    { 0x100812a8, 29175 }, /* XF86Macro25 */
+    { 0x100812a9, 29187 }, /* XF86Macro26 */
+    { 0x100812aa, 29199 }, /* XF86Macro27 */
+    { 0x100812ab, 29211 }, /* XF86Macro28 */
+    { 0x100812ac, 29223 }, /* XF86Macro29 */
+    { 0x10081292, 29235 }, /* XF86Macro3 */
+    { 0x100812ad, 29246 }, /* XF86Macro30 */
+    { 0x10081293, 29258 }, /* XF86Macro4 */
+    { 0x10081294, 29269 }, /* XF86Macro5 */
+    { 0x10081295, 29280 }, /* XF86Macro6 */
+    { 0x10081296, 29291 }, /* XF86Macro7 */
+    { 0x10081297, 29302 }, /* XF86Macro8 */
+    { 0x10081298, 29313 }, /* XF86Macro9 */
+    { 0x100812b3, 29324 }, /* XF86MacroPreset1 */
+    { 0x100812b4, 29341 }, /* XF86MacroPreset2 */
+    { 0x100812b5, 29358 }, /* XF86MacroPreset3 */
+    { 0x100812b2, 29375 }, /* XF86MacroPresetCycle */
+    { 0x100812b0, 29396 }, /* XF86MacroRecordStart */
+    { 0x100812b1, 29417 }, /* XF86MacroRecordStop */
+    { 0x1008ff19, 29437 }, /* XF86Mail */
+    { 0x1008ff90, 29446 }, /* XF86MailForward */
+    { 0x1008ff62, 29462 }, /* XF86Market */
+    { 0x1008127e, 29473 }, /* XF86MarkWaypoint */
+    { 0x100811b7, 29490 }, /* XF86MediaRepeat */
+    { 0x1008126b, 29506 }, /* XF86MediaTopMenu */
+    { 0x1008ff63, 29523 }, /* XF86Meeting */
+    { 0x1008ff1e, 29535 }, /* XF86Memo */
+    { 0x1008ff65, 29544 }, /* XF86MenuKB */
+    { 0x1008ff66, 29555 }, /* XF86MenuPB */
+    { 0x1008ff8e, 29566 }, /* XF86Messenger */
+    { 0x1008ff01, 29580 }, /* XF86ModeLock */
+    { 0x1008ff07, 29593 }, /* XF86MonBrightnessCycle */
+    { 0x1008ff03, 29616 }, /* XF86MonBrightnessDown */
+    { 0x1008ff02, 29638 }, /* XF86MonBrightnessUp */
+    { 0x1008ff92, 29658 }, /* XF86Music */
+    { 0x1008ff33, 29668 }, /* XF86MyComputer */
+    { 0x1008ff67, 29683 }, /* XF86MySites */
+    { 0x10081280, 29695 }, /* XF86NavChart */
+    { 0x10081288, 29708 }, /* XF86NavInfo */
+    { 0x1008ff68, 29720 }, /* XF86New */
+    { 0x1008ff69, 29728 }, /* XF86News */
+    { 0x1008fe22, 29737 }, /* XF86Next_VMode */
+    { 0x1008127b, 29752 }, /* XF86NextElement */
+    { 0x10081270, 29768 }, /* XF86NextFavorite */
+    { 0x100811bc, 29785 }, /* XF86NotificationCenter */
+    { 0x10081200, 29808 }, /* XF86Numeric0 */
+    { 0x10081201, 29821 }, /* XF86Numeric1 */
+    { 0x1008126c, 29834 }, /* XF86Numeric11 */
+    { 0x1008126d, 29848 }, /* XF86Numeric12 */
+    { 0x10081202, 29862 }, /* XF86Numeric2 */
+    { 0x10081203, 29875 }, /* XF86Numeric3 */
+    { 0x10081204, 29888 }, /* XF86Numeric4 */
+    { 0x10081205, 29901 }, /* XF86Numeric5 */
+    { 0x10081206, 29914 }, /* XF86Numeric6 */
+    { 0x10081207, 29927 }, /* XF86Numeric7 */
+    { 0x10081208, 29940 }, /* XF86Numeric8 */
+    { 0x10081209, 29953 }, /* XF86Numeric9 */
+    { 0x1008120c, 29966 }, /* XF86NumericA */
+    { 0x1008120d, 29979 }, /* XF86NumericB */
+    { 0x1008120e, 29992 }, /* XF86NumericC */
+    { 0x1008120f, 30005 }, /* XF86NumericD */
+    { 0x1008120b, 30018 }, /* XF86NumericPound */
+    { 0x1008120a, 30035 }, /* XF86NumericStar */
+    { 0x1008ff6a, 30051 }, /* XF86OfficeHome */
+    { 0x10081278, 30066 }, /* XF86OnScreenKeyboard */
+    { 0x1008ff6b, 30087 }, /* XF86Open */
+    { 0x1008ff38, 30096 }, /* XF86OpenURL */
+    { 0x1008ff6c, 30108 }, /* XF86Option */
+    { 0x1008ff6d, 30119 }, /* XF86Paste */
+    { 0x10081272, 30129 }, /* XF86PauseRecord */
+    { 0x1008ff6e, 30145 }, /* XF86Phone */
+    { 0x100811bd, 30155 }, /* XF86PickupPhone */
+    { 0x1008ff91, 30171 }, /* XF86Pictures */
+    { 0x1008ff21, 30184 }, /* XF86PowerDown */
+    { 0x1008ff2a, 30198 }, /* XF86PowerOff */
+    { 0x100811a9, 30211 }, /* XF86Presentation */
+    { 0x1008fe23, 30228 }, /* XF86Prev_VMode */
+    { 0x1008127c, 30243 }, /* XF86PreviousElement */
+    { 0x10081279, 30263 }, /* XF86PrivacyScreenToggle */
+    { 0x1008ff70, 30287 }, /* XF86Q */
+    { 0x10081284, 30293 }, /* XF86RadarOverlay */
+    { 0x1008ffa3, 30310 }, /* XF86Red */
+    { 0x1008ff29, 30318 }, /* XF86Refresh */
+    { 0x1008ff73, 30330 }, /* XF86Reload */
+    { 0x1008ff72, 30341 }, /* XF86Reply */
+    { 0x1008ffb5, 30351 }, /* XF86RFKill */
+    { 0x10081267, 30362 }, /* XF86RightDown */
+    { 0x10081266, 30376 }, /* XF86RightUp */
+    { 0x1008ff24, 30388 }, /* XF86RockerDown */
+    { 0x1008ff25, 30403 }, /* XF86RockerEnter */
+    { 0x1008ff23, 30419 }, /* XF86RockerUp */
+    { 0x1008126a, 30432 }, /* XF86RootMenu */
+    { 0x1008ff74, 30445 }, /* XF86RotateWindows */
+    { 0x1008ff76, 30463 }, /* XF86RotationKB */
+    { 0x1008ffb7, 30478 }, /* XF86RotationLockToggle */
+    { 0x1008ff75, 30501 }, /* XF86RotationPB */
+    { 0x1008ff77, 30516 }, /* XF86Save */
+    { 0x1008ff2d, 30525 }, /* XF86ScreenSaver */
+    { 0x10081245, 30541 }, /* XF86Screensaver */
+    { 0x1008ff7a, 30557 }, /* XF86ScrollClick */
+    { 0x1008ff79, 30573 }, /* XF86ScrollDown */
+    { 0x1008ff78, 30588 }, /* XF86ScrollUp */
+    { 0x1008ff1b, 30601 }, /* XF86Search */
+    { 0x1008ffa0, 30612 }, /* XF86Select */
+    { 0x1008127a, 30623 }, /* XF86SelectiveScreenshot */
+    { 0x1008ff7b, 30647 }, /* XF86Send */
+    { 0x1008ff36, 30656 }, /* XF86Shop */
+    { 0x10081287, 30665 }, /* XF86SidevuSonar */
+    { 0x10081282, 30681 }, /* XF86SingleRangeRadar */
+    { 0x1008ff2f, 30702 }, /* XF86Sleep */
+    { 0x10081276, 30712 }, /* XF86SlowReverse */
+    { 0x1008127f, 30728 }, /* XF86Sos */
+    { 0x1008ff7c, 30736 }, /* XF86Spell */
+    { 0x100811b0, 30746 }, /* XF86SpellCheck */
+    { 0x1008ff7d, 30761 }, /* XF86SplitScreen */
+    { 0x1008ff10, 30777 }, /* XF86Standby */
+    { 0x1008ff1a, 30789 }, /* XF86Start */
+    { 0x1008ff28, 30799 }, /* XF86Stop */
+    { 0x10081271, 30808 }, /* XF86StopRecord */
+    { 0x1008ff9a, 30823 }, /* XF86Subtitle */
+    { 0x1008ff7e, 30836 }, /* XF86Support */
+    { 0x1008ffa7, 30848 }, /* XF86Suspend */
+    { 0x1008fe01, 30860 }, /* XF86Switch_VT_1 */
+    { 0x1008fe0a, 30876 }, /* XF86Switch_VT_10 */
+    { 0x1008fe0b, 30893 }, /* XF86Switch_VT_11 */
+    { 0x1008fe0c, 30910 }, /* XF86Switch_VT_12 */
+    { 0x1008fe02, 30927 }, /* XF86Switch_VT_2 */
+    { 0x1008fe03, 30943 }, /* XF86Switch_VT_3 */
+    { 0x1008fe04, 30959 }, /* XF86Switch_VT_4 */
+    { 0x1008fe05, 30975 }, /* XF86Switch_VT_5 */
+    { 0x1008fe06, 30991 }, /* XF86Switch_VT_6 */
+    { 0x1008fe07, 31007 }, /* XF86Switch_VT_7 */
+    { 0x1008fe08, 31023 }, /* XF86Switch_VT_8 */
+    { 0x1008fe09, 31039 }, /* XF86Switch_VT_9 */
+    { 0x10081241, 31055 }, /* XF86Taskmanager */
+    { 0x1008ff7f, 31071 }, /* XF86TaskPane */
+    { 0x1008ff80, 31084 }, /* XF86Terminal */
+    { 0x1008ff9f, 31097 }, /* XF86Time */
+    { 0x1008ff1f, 31106 }, /* XF86ToDoList */
+    { 0x1008ff81, 31119 }, /* XF86Tools */
+    { 0x1008ffa2, 31129 }, /* XF86TopMenu */
+    { 0x1008ffb1, 31141 }, /* XF86TouchpadOff */
+    { 0x1008ffb0, 31157 }, /* XF86TouchpadOn */
+    { 0x1008ffa9, 31172 }, /* XF86TouchpadToggle */
+    { 0x10081285, 31191 }, /* XF86TraditionalSonar */
+    { 0x1008ff82, 31212 }, /* XF86Travel */
+    { 0x1008fe20, 31223 }, /* XF86Ungrab */
+    { 0x10081274, 31234 }, /* XF86Unmute */
+    { 0x1008ff85, 31245 }, /* XF86User1KB */
+    { 0x1008ff86, 31257 }, /* XF86User2KB */
+    { 0x1008ff84, 31269 }, /* XF86UserPB */
+    { 0x1008ff96, 31280 }, /* XF86UWB */
+    { 0x1008ff34, 31288 }, /* XF86VendorHome */
+    { 0x1008ff87, 31303 }, /* XF86Video */
+    { 0x100811a0, 31313 }, /* XF86VideoPhone */
+    { 0x1008ffa1, 31328 }, /* XF86View */
+    { 0x10081273, 31337 }, /* XF86VOD */
+    { 0x10081246, 31345 }, /* XF86VoiceCommand */
+    { 0x100811ac, 31362 }, /* XF86Voicemail */
+    { 0x1008ff2b, 31376 }, /* XF86WakeUp */
+    { 0x1008ff8f, 31387 }, /* XF86WebCam */
+    { 0x1008ff88, 31398 }, /* XF86WheelButton */
+    { 0x1008ff95, 31414 }, /* XF86WLAN */
+    { 0x1008ff89, 31423 }, /* XF86Word */
+    { 0x10081211, 31432 }, /* XF86WPSButton */
+    { 0x1008ffb4, 31446 }, /* XF86WWAN */
+    { 0x1008ff2e, 31455 }, /* XF86WWW */
+    { 0x1008ff8a, 31463 }, /* XF86Xfer */
+    { 0x1008ffa5, 31472 }, /* XF86Yellow */
+    { 0x1008ff8b, 31483 }, /* XF86ZoomIn */
+    { 0x1008ff8c, 31494 }, /* XF86ZoomOut */
+    { 0x100811a4, 31506 }, /* XF86ZoomReset */
+    { 0x00000059, 31520 }, /* Y */
+    { 0x00000079, 31522 }, /* y */
+    { 0x000000dd, 31524 }, /* Yacute */
+    { 0x000000fd, 31531 }, /* yacute */
+    { 0x01001ef4, 31538 }, /* Ybelowdot */
+    { 0x01001ef5, 31548 }, /* ybelowdot */
+    { 0x01000176, 31558 }, /* Ycircumflex */
+    { 0x01000177, 31570 }, /* ycircumflex */
+    { 0x000000ff, 31582 }, /* ydiaeresis */
+    { 0x000013be, 31593 }, /* Ydiaeresis */
+    { 0x000000a5, 31604 }, /* yen */
+    { 0x01001ef2, 31608 }, /* Ygrave */
+    { 0x01001ef3, 31615 }, /* ygrave */
+    { 0x01001ef6, 31622 }, /* Yhook */
+    { 0x01001ef7, 31628 }, /* yhook */
+    { 0x01001ef8, 31634 }, /* Ytilde */
+    { 0x01001ef9, 31641 }, /* ytilde */
+    { 0x0000005a, 31648 }, /* Z */
+    { 0x0000007a, 31650 }, /* z */
+    { 0x000001af, 31652 }, /* Zabovedot */
+    { 0x000001bf, 31662 }, /* zabovedot */
+    { 0x000001ac, 31672 }, /* Zacute */
+    { 0x000001bc, 31679 }, /* zacute */
+    { 0x000001ae, 31686 }, /* Zcaron */
+    { 0x000001be, 31693 }, /* zcaron */
+    { 0x0000ff3d, 31700 }, /* Zen_Koho */
+    { 0x0000ff28, 31709 }, /* Zenkaku */
+    { 0x0000ff2a, 31717 }, /* Zenkaku_Hankaku */
+    { 0x01002080, 31733 }, /* zerosubscript */
+    { 0x01002070, 31747 }, /* zerosuperior */
+    { 0x010001b5, 31760 }, /* Zstroke */
+    { 0x010001b6, 31768 }, /* zstroke */
 };
 
 static const struct name_keysym keysym_to_name[] = {
-    { 0x00000000, 20173 }, /* NoSymbol */
-    { 0x00000020, 23885 }, /* space */
-    { 0x00000021, 12181 }, /* exclam */
-    { 0x00000022, 22269 }, /* quotedbl */
-    { 0x00000023, 20260 }, /* numbersign */
-    { 0x00000024, 11333 }, /* dollar */
-    { 0x00000025, 21569 }, /* percent */
+    { 0x00000000, 20152 }, /* NoSymbol */
+    { 0x00000020, 23877 }, /* space */
+    { 0x00000021, 12131 }, /* exclam */
+    { 0x00000022, 22261 }, /* quotedbl */
+    { 0x00000023, 20239 }, /* numbersign */
+    { 0x00000024, 11283 }, /* dollar */
+    { 0x00000025, 21561 }, /* percent */
     { 0x00000026, 908 }, /* ampersand */
     { 0x00000027, 934 }, /* apostrophe */
-    { 0x00000028, 21507 }, /* parenleft */
-    { 0x00000029, 21517 }, /* parenright */
+    { 0x00000028, 21499 }, /* parenleft */
+    { 0x00000029, 21509 }, /* parenright */
     { 0x0000002a, 3283 }, /* asterisk */
-    { 0x0000002b, 21639 }, /* plus */
+    { 0x0000002b, 21631 }, /* plus */
     { 0x0000002c, 8762 }, /* comma */
-    { 0x0000002d, 19815 }, /* minus */
-    { 0x0000002e, 21577 }, /* period */
-    { 0x0000002f, 23850 }, /* slash */
+    { 0x0000002d, 19794 }, /* minus */
+    { 0x0000002e, 21569 }, /* period */
+    { 0x0000002f, 23842 }, /* slash */
     { 0x00000030, 0 }, /* 0 */
     { 0x00000031, 2 }, /* 1 */
     { 0x00000032, 4 }, /* 2 */
@@ -5470,106 +5515,106 @@ static const struct name_keysym keysym_to_name[] = {
     { 0x00000038, 394 }, /* 8 */
     { 0x00000039, 396 }, /* 9 */
     { 0x0000003a, 8664 }, /* colon */
-    { 0x0000003b, 22816 }, /* semicolon */
-    { 0x0000003c, 19494 }, /* less */
-    { 0x0000003d, 12133 }, /* equal */
-    { 0x0000003e, 13354 }, /* greater */
-    { 0x0000003f, 22247 }, /* question */
+    { 0x0000003b, 22808 }, /* semicolon */
+    { 0x0000003c, 19473 }, /* less */
+    { 0x0000003d, 12083 }, /* equal */
+    { 0x0000003e, 13304 }, /* greater */
+    { 0x0000003f, 22239 }, /* question */
     { 0x00000040, 3292 }, /* at */
     { 0x00000041, 398 }, /* A */
     { 0x00000042, 3328 }, /* B */
     { 0x00000043, 8439 }, /* C */
     { 0x00000044, 10402 }, /* D */
-    { 0x00000045, 11506 }, /* E */
-    { 0x00000046, 12237 }, /* F */
-    { 0x00000047, 12747 }, /* G */
-    { 0x00000048, 14460 }, /* H */
-    { 0x00000049, 17151 }, /* I */
-    { 0x0000004a, 18196 }, /* J */
-    { 0x0000004b, 18228 }, /* K */
-    { 0x0000004c, 19194 }, /* L */
-    { 0x0000004d, 19615 }, /* M */
-    { 0x0000004e, 20025 }, /* N */
-    { 0x0000004f, 20282 }, /* O */
-    { 0x00000050, 21455 }, /* P */
-    { 0x00000051, 22238 }, /* Q */
-    { 0x00000052, 22299 }, /* R */
-    { 0x00000053, 22661 }, /* S */
-    { 0x00000054, 24376 }, /* T */
-    { 0x00000055, 25929 }, /* U */
-    { 0x00000056, 26565 }, /* V */
-    { 0x00000057, 26627 }, /* W */
-    { 0x00000058, 26713 }, /* X */
-    { 0x00000059, 31190 }, /* Y */
-    { 0x0000005a, 31318 }, /* Z */
+    { 0x00000045, 11456 }, /* E */
+    { 0x00000046, 12187 }, /* F */
+    { 0x00000047, 12697 }, /* G */
+    { 0x00000048, 14439 }, /* H */
+    { 0x00000049, 17130 }, /* I */
+    { 0x0000004a, 18175 }, /* J */
+    { 0x0000004b, 18207 }, /* K */
+    { 0x0000004c, 19173 }, /* L */
+    { 0x0000004d, 19594 }, /* M */
+    { 0x0000004e, 20004 }, /* N */
+    { 0x0000004f, 20261 }, /* O */
+    { 0x00000050, 21447 }, /* P */
+    { 0x00000051, 22230 }, /* Q */
+    { 0x00000052, 22291 }, /* R */
+    { 0x00000053, 22653 }, /* S */
+    { 0x00000054, 24368 }, /* T */
+    { 0x00000055, 25921 }, /* U */
+    { 0x00000056, 26557 }, /* V */
+    { 0x00000057, 26619 }, /* W */
+    { 0x00000058, 26705 }, /* X */
+    { 0x00000059, 31520 }, /* Y */
+    { 0x0000005a, 31648 }, /* Z */
     { 0x0000005b, 3603 }, /* bracketleft */
     { 0x0000005c, 3352 }, /* backslash */
     { 0x0000005d, 3615 }, /* bracketright */
     { 0x0000005e, 3260 }, /* asciicircum */
-    { 0x0000005f, 26428 }, /* underscore */
-    { 0x00000060, 13348 }, /* grave */
+    { 0x0000005f, 26420 }, /* underscore */
+    { 0x00000060, 13298 }, /* grave */
     { 0x00000061, 400 }, /* a */
     { 0x00000062, 3330 }, /* b */
     { 0x00000063, 8441 }, /* c */
     { 0x00000064, 10404 }, /* d */
-    { 0x00000065, 11508 }, /* e */
-    { 0x00000066, 12239 }, /* f */
-    { 0x00000067, 12749 }, /* g */
-    { 0x00000068, 14462 }, /* h */
-    { 0x00000069, 17153 }, /* i */
-    { 0x0000006a, 18198 }, /* j */
-    { 0x0000006b, 18230 }, /* k */
-    { 0x0000006c, 19196 }, /* l */
-    { 0x0000006d, 19617 }, /* m */
-    { 0x0000006e, 20027 }, /* n */
-    { 0x0000006f, 20284 }, /* o */
-    { 0x00000070, 21457 }, /* p */
-    { 0x00000071, 22240 }, /* q */
-    { 0x00000072, 22301 }, /* r */
-    { 0x00000073, 22663 }, /* s */
-    { 0x00000074, 24378 }, /* t */
-    { 0x00000075, 25931 }, /* u */
-    { 0x00000076, 26567 }, /* v */
-    { 0x00000077, 26629 }, /* w */
-    { 0x00000078, 26715 }, /* x */
-    { 0x00000079, 31192 }, /* y */
-    { 0x0000007a, 31320 }, /* z */
+    { 0x00000065, 11458 }, /* e */
+    { 0x00000066, 12189 }, /* f */
+    { 0x00000067, 12699 }, /* g */
+    { 0x00000068, 14441 }, /* h */
+    { 0x00000069, 17132 }, /* i */
+    { 0x0000006a, 18177 }, /* j */
+    { 0x0000006b, 18209 }, /* k */
+    { 0x0000006c, 19175 }, /* l */
+    { 0x0000006d, 19596 }, /* m */
+    { 0x0000006e, 20006 }, /* n */
+    { 0x0000006f, 20263 }, /* o */
+    { 0x00000070, 21449 }, /* p */
+    { 0x00000071, 22232 }, /* q */
+    { 0x00000072, 22293 }, /* r */
+    { 0x00000073, 22655 }, /* s */
+    { 0x00000074, 24370 }, /* t */
+    { 0x00000075, 25923 }, /* u */
+    { 0x00000076, 26559 }, /* v */
+    { 0x00000077, 26621 }, /* w */
+    { 0x00000078, 26707 }, /* x */
+    { 0x00000079, 31522 }, /* y */
+    { 0x0000007a, 31650 }, /* z */
     { 0x0000007b, 3582 }, /* braceleft */
     { 0x0000007c, 3392 }, /* bar */
     { 0x0000007d, 3592 }, /* braceright */
     { 0x0000007e, 3272 }, /* asciitilde */
-    { 0x000000a0, 20160 }, /* nobreakspace */
-    { 0x000000a1, 12188 }, /* exclamdown */
+    { 0x000000a0, 20139 }, /* nobreakspace */
+    { 0x000000a1, 12138 }, /* exclamdown */
     { 0x000000a2, 8589 }, /* cent */
-    { 0x000000a3, 23909 }, /* sterling */
+    { 0x000000a3, 23901 }, /* sterling */
     { 0x000000a4, 8848 }, /* currency */
-    { 0x000000a5, 31274 }, /* yen */
+    { 0x000000a5, 31604 }, /* yen */
     { 0x000000a6, 8389 }, /* brokenbar */
-    { 0x000000a7, 22801 }, /* section */
-    { 0x000000a8, 11285 }, /* diaeresis */
+    { 0x000000a7, 22793 }, /* section */
+    { 0x000000a8, 11235 }, /* diaeresis */
     { 0x000000a9, 8799 }, /* copyright */
-    { 0x000000aa, 20934 }, /* ordfeminine */
-    { 0x000000ab, 14431 }, /* guillemotleft */
-    { 0x000000ac, 20229 }, /* notsign */
-    { 0x000000ad, 17144 }, /* hyphen */
-    { 0x000000ae, 22413 }, /* registered */
-    { 0x000000af, 19723 }, /* macron */
-    { 0x000000b0, 11235 }, /* degree */
-    { 0x000000b1, 21644 }, /* plusminus */
-    { 0x000000b2, 25907 }, /* twosuperior */
-    { 0x000000b3, 25653 }, /* threesuperior */
+    { 0x000000aa, 20913 }, /* ordfeminine */
+    { 0x000000ab, 14381 }, /* guillemetleft */
+    { 0x000000ac, 20208 }, /* notsign */
+    { 0x000000ad, 17123 }, /* hyphen */
+    { 0x000000ae, 22405 }, /* registered */
+    { 0x000000af, 19702 }, /* macron */
+    { 0x000000b0, 11185 }, /* degree */
+    { 0x000000b1, 21636 }, /* plusminus */
+    { 0x000000b2, 25899 }, /* twosuperior */
+    { 0x000000b3, 25645 }, /* threesuperior */
     { 0x000000b4, 820 }, /* acute */
-    { 0x000000b5, 19881 }, /* mu */
-    { 0x000000b6, 21497 }, /* paragraph */
-    { 0x000000b7, 21584 }, /* periodcentered */
+    { 0x000000b5, 19860 }, /* mu */
+    { 0x000000b6, 21489 }, /* paragraph */
+    { 0x000000b7, 21576 }, /* periodcentered */
     { 0x000000b8, 8581 }, /* cedilla */
-    { 0x000000b9, 20837 }, /* onesuperior */
-    { 0x000000ba, 19770 }, /* masculine */
-    { 0x000000bb, 14445 }, /* guillemotright */
-    { 0x000000bc, 20804 }, /* onequarter */
-    { 0x000000bd, 20796 }, /* onehalf */
-    { 0x000000be, 25624 }, /* threequarters */
-    { 0x000000bf, 22256 }, /* questiondown */
+    { 0x000000b9, 20816 }, /* onesuperior */
+    { 0x000000ba, 20925 }, /* ordmasculine */
+    { 0x000000bb, 14395 }, /* guillemetright */
+    { 0x000000bc, 20783 }, /* onequarter */
+    { 0x000000bd, 20775 }, /* onehalf */
+    { 0x000000be, 25616 }, /* threequarters */
+    { 0x000000bf, 22248 }, /* questiondown */
     { 0x000000c0, 854 }, /* Agrave */
     { 0x000000c1, 402 }, /* Aacute */
     { 0x000000c2, 622 }, /* Acircumflex */
@@ -5578,30 +5623,30 @@ static const struct name_keysym keysym_to_name[] = {
     { 0x000000c5, 2036 }, /* Aring */
     { 0x000000c6, 848 }, /* AE */
     { 0x000000c7, 8539 }, /* Ccedilla */
-    { 0x000000c8, 11806 }, /* Egrave */
-    { 0x000000c9, 11530 }, /* Eacute */
-    { 0x000000ca, 11578 }, /* Ecircumflex */
-    { 0x000000cb, 11784 }, /* Ediaeresis */
-    { 0x000000cc, 17287 }, /* Igrave */
-    { 0x000000cd, 17165 }, /* Iacute */
-    { 0x000000ce, 17213 }, /* Icircumflex */
-    { 0x000000cf, 17247 }, /* Idiaeresis */
-    { 0x000000d0, 12146 }, /* ETH */
-    { 0x000000d1, 20237 }, /* Ntilde */
-    { 0x000000d2, 20609 }, /* Ograve */
-    { 0x000000d3, 20286 }, /* Oacute */
-    { 0x000000d4, 20350 }, /* Ocircumflex */
-    { 0x000000d5, 21392 }, /* Otilde */
-    { 0x000000d6, 20548 }, /* Odiaeresis */
-    { 0x000000d7, 19921 }, /* multiply */
-    { 0x000000d8, 21378 }, /* Oslash */
-    { 0x000000d9, 26053 }, /* Ugrave */
-    { 0x000000da, 25933 }, /* Uacute */
-    { 0x000000db, 25981 }, /* Ucircumflex */
-    { 0x000000dc, 26005 }, /* Udiaeresis */
-    { 0x000000dd, 31194 }, /* Yacute */
-    { 0x000000de, 25581 }, /* THORN */
-    { 0x000000df, 23902 }, /* ssharp */
+    { 0x000000c8, 11756 }, /* Egrave */
+    { 0x000000c9, 11480 }, /* Eacute */
+    { 0x000000ca, 11528 }, /* Ecircumflex */
+    { 0x000000cb, 11734 }, /* Ediaeresis */
+    { 0x000000cc, 17266 }, /* Igrave */
+    { 0x000000cd, 17144 }, /* Iacute */
+    { 0x000000ce, 17192 }, /* Icircumflex */
+    { 0x000000cf, 17226 }, /* Idiaeresis */
+    { 0x000000d0, 12096 }, /* ETH */
+    { 0x000000d1, 20216 }, /* Ntilde */
+    { 0x000000d2, 20588 }, /* Ograve */
+    { 0x000000d3, 20265 }, /* Oacute */
+    { 0x000000d4, 20329 }, /* Ocircumflex */
+    { 0x000000d5, 21384 }, /* Otilde */
+    { 0x000000d6, 20527 }, /* Odiaeresis */
+    { 0x000000d7, 19900 }, /* multiply */
+    { 0x000000d8, 21370 }, /* Oslash */
+    { 0x000000d9, 26045 }, /* Ugrave */
+    { 0x000000da, 25925 }, /* Uacute */
+    { 0x000000db, 25973 }, /* Ucircumflex */
+    { 0x000000dc, 25997 }, /* Udiaeresis */
+    { 0x000000dd, 31524 }, /* Yacute */
+    { 0x000000de, 25573 }, /* THORN */
+    { 0x000000df, 23894 }, /* ssharp */
     { 0x000000e0, 861 }, /* agrave */
     { 0x000000e1, 409 }, /* aacute */
     { 0x000000e2, 634 }, /* acircumflex */
@@ -5610,208 +5655,208 @@ static const struct name_keysym keysym_to_name[] = {
     { 0x000000e5, 2042 }, /* aring */
     { 0x000000e6, 851 }, /* ae */
     { 0x000000e7, 8548 }, /* ccedilla */
-    { 0x000000e8, 11813 }, /* egrave */
-    { 0x000000e9, 11537 }, /* eacute */
-    { 0x000000ea, 11590 }, /* ecircumflex */
-    { 0x000000eb, 11795 }, /* ediaeresis */
-    { 0x000000ec, 17294 }, /* igrave */
-    { 0x000000ed, 17172 }, /* iacute */
-    { 0x000000ee, 17225 }, /* icircumflex */
-    { 0x000000ef, 17258 }, /* idiaeresis */
-    { 0x000000f0, 12154 }, /* eth */
-    { 0x000000f1, 20244 }, /* ntilde */
-    { 0x000000f2, 20616 }, /* ograve */
-    { 0x000000f3, 20293 }, /* oacute */
-    { 0x000000f4, 20362 }, /* ocircumflex */
-    { 0x000000f5, 21399 }, /* otilde */
-    { 0x000000f6, 20559 }, /* odiaeresis */
-    { 0x000000f7, 11324 }, /* division */
-    { 0x000000f8, 21385 }, /* oslash */
-    { 0x000000f9, 26060 }, /* ugrave */
-    { 0x000000fa, 25940 }, /* uacute */
-    { 0x000000fb, 25993 }, /* ucircumflex */
-    { 0x000000fc, 26016 }, /* udiaeresis */
-    { 0x000000fd, 31201 }, /* yacute */
-    { 0x000000fe, 25593 }, /* thorn */
-    { 0x000000ff, 31252 }, /* ydiaeresis */
+    { 0x000000e8, 11763 }, /* egrave */
+    { 0x000000e9, 11487 }, /* eacute */
+    { 0x000000ea, 11540 }, /* ecircumflex */
+    { 0x000000eb, 11745 }, /* ediaeresis */
+    { 0x000000ec, 17273 }, /* igrave */
+    { 0x000000ed, 17151 }, /* iacute */
+    { 0x000000ee, 17204 }, /* icircumflex */
+    { 0x000000ef, 17237 }, /* idiaeresis */
+    { 0x000000f0, 12104 }, /* eth */
+    { 0x000000f1, 20223 }, /* ntilde */
+    { 0x000000f2, 20595 }, /* ograve */
+    { 0x000000f3, 20272 }, /* oacute */
+    { 0x000000f4, 20341 }, /* ocircumflex */
+    { 0x000000f5, 21391 }, /* otilde */
+    { 0x000000f6, 20538 }, /* odiaeresis */
+    { 0x000000f7, 11274 }, /* division */
+    { 0x000000f8, 21377 }, /* oslash */
+    { 0x000000f9, 26052 }, /* ugrave */
+    { 0x000000fa, 25932 }, /* uacute */
+    { 0x000000fb, 25985 }, /* ucircumflex */
+    { 0x000000fc, 26008 }, /* udiaeresis */
+    { 0x000000fd, 31531 }, /* yacute */
+    { 0x000000fe, 25585 }, /* thorn */
+    { 0x000000ff, 31582 }, /* ydiaeresis */
     { 0x000001a1, 918 }, /* Aogonek */
     { 0x000001a2, 8383 }, /* breve */
-    { 0x000001a3, 19599 }, /* Lstroke */
-    { 0x000001a5, 19294 }, /* Lcaron */
-    { 0x000001a6, 22685 }, /* Sacute */
-    { 0x000001a9, 22699 }, /* Scaron */
-    { 0x000001aa, 22713 }, /* Scedilla */
-    { 0x000001ab, 24404 }, /* Tcaron */
-    { 0x000001ac, 31342 }, /* Zacute */
-    { 0x000001ae, 31356 }, /* Zcaron */
-    { 0x000001af, 31322 }, /* Zabovedot */
+    { 0x000001a3, 19578 }, /* Lstroke */
+    { 0x000001a5, 19273 }, /* Lcaron */
+    { 0x000001a6, 22677 }, /* Sacute */
+    { 0x000001a9, 22691 }, /* Scaron */
+    { 0x000001aa, 22705 }, /* Scedilla */
+    { 0x000001ab, 24396 }, /* Tcaron */
+    { 0x000001ac, 31672 }, /* Zacute */
+    { 0x000001ae, 31686 }, /* Zcaron */
+    { 0x000001af, 31652 }, /* Zabovedot */
     { 0x000001b1, 926 }, /* aogonek */
-    { 0x000001b2, 20602 }, /* ogonek */
-    { 0x000001b3, 19607 }, /* lstroke */
-    { 0x000001b5, 19301 }, /* lcaron */
-    { 0x000001b6, 22692 }, /* sacute */
+    { 0x000001b2, 20581 }, /* ogonek */
+    { 0x000001b3, 19586 }, /* lstroke */
+    { 0x000001b5, 19280 }, /* lcaron */
+    { 0x000001b6, 22684 }, /* sacute */
     { 0x000001b7, 8519 }, /* caron */
-    { 0x000001b9, 22706 }, /* scaron */
-    { 0x000001ba, 22722 }, /* scedilla */
-    { 0x000001bb, 24411 }, /* tcaron */
-    { 0x000001bc, 31349 }, /* zacute */
-    { 0x000001bd, 11365 }, /* doubleacute */
-    { 0x000001be, 31363 }, /* zcaron */
-    { 0x000001bf, 31332 }, /* zabovedot */
-    { 0x000001c0, 22354 }, /* Racute */
+    { 0x000001b9, 22698 }, /* scaron */
+    { 0x000001ba, 22714 }, /* scedilla */
+    { 0x000001bb, 24403 }, /* tcaron */
+    { 0x000001bc, 31679 }, /* zacute */
+    { 0x000001bd, 11315 }, /* doubleacute */
+    { 0x000001be, 31693 }, /* zcaron */
+    { 0x000001bf, 31662 }, /* zabovedot */
+    { 0x000001c0, 22346 }, /* Racute */
     { 0x000001c3, 445 }, /* Abreve */
-    { 0x000001c5, 19229 }, /* Lacute */
+    { 0x000001c5, 19208 }, /* Lacute */
     { 0x000001c6, 8475 }, /* Cacute */
     { 0x000001c8, 8525 }, /* Ccaron */
-    { 0x000001ca, 12117 }, /* Eogonek */
-    { 0x000001cc, 11564 }, /* Ecaron */
+    { 0x000001ca, 12067 }, /* Eogonek */
+    { 0x000001cc, 11514 }, /* Ecaron */
     { 0x000001cf, 10447 }, /* Dcaron */
-    { 0x000001d0, 11483 }, /* Dstroke */
-    { 0x000001d1, 20035 }, /* Nacute */
-    { 0x000001d2, 20059 }, /* Ncaron */
-    { 0x000001d5, 20570 }, /* Odoubleacute */
-    { 0x000001d8, 22376 }, /* Rcaron */
-    { 0x000001d9, 26534 }, /* Uring */
-    { 0x000001db, 26027 }, /* Udoubleacute */
-    { 0x000001de, 24418 }, /* Tcedilla */
-    { 0x000001e0, 22361 }, /* racute */
+    { 0x000001d0, 11433 }, /* Dstroke */
+    { 0x000001d1, 20014 }, /* Nacute */
+    { 0x000001d2, 20038 }, /* Ncaron */
+    { 0x000001d5, 20549 }, /* Odoubleacute */
+    { 0x000001d8, 22368 }, /* Rcaron */
+    { 0x000001d9, 26526 }, /* Uring */
+    { 0x000001db, 26019 }, /* Udoubleacute */
+    { 0x000001de, 24410 }, /* Tcedilla */
+    { 0x000001e0, 22353 }, /* racute */
     { 0x000001e3, 452 }, /* abreve */
-    { 0x000001e5, 19236 }, /* lacute */
+    { 0x000001e5, 19215 }, /* lacute */
     { 0x000001e6, 8482 }, /* cacute */
     { 0x000001e8, 8532 }, /* ccaron */
-    { 0x000001ea, 12125 }, /* eogonek */
-    { 0x000001ec, 11571 }, /* ecaron */
+    { 0x000001ea, 12075 }, /* eogonek */
+    { 0x000001ec, 11521 }, /* ecaron */
     { 0x000001ef, 10454 }, /* dcaron */
-    { 0x000001f0, 11491 }, /* dstroke */
-    { 0x000001f1, 20042 }, /* nacute */
-    { 0x000001f2, 20066 }, /* ncaron */
-    { 0x000001f5, 20583 }, /* odoubleacute */
-    { 0x000001f8, 22383 }, /* rcaron */
-    { 0x000001f9, 26540 }, /* uring */
-    { 0x000001fb, 26040 }, /* udoubleacute */
-    { 0x000001fe, 24427 }, /* tcedilla */
+    { 0x000001f0, 11441 }, /* dstroke */
+    { 0x000001f1, 20021 }, /* nacute */
+    { 0x000001f2, 20045 }, /* ncaron */
+    { 0x000001f5, 20562 }, /* odoubleacute */
+    { 0x000001f8, 22375 }, /* rcaron */
+    { 0x000001f9, 26532 }, /* uring */
+    { 0x000001fb, 26032 }, /* udoubleacute */
+    { 0x000001fe, 24419 }, /* tcedilla */
     { 0x000001ff, 436 }, /* abovedot */
-    { 0x000002a1, 17109 }, /* Hstroke */
-    { 0x000002a6, 16138 }, /* Hcircumflex */
-    { 0x000002a9, 17155 }, /* Iabovedot */
-    { 0x000002ab, 12771 }, /* Gbreve */
-    { 0x000002ac, 18200 }, /* Jcircumflex */
-    { 0x000002b1, 17117 }, /* hstroke */
-    { 0x000002b6, 16150 }, /* hcircumflex */
-    { 0x000002b9, 17269 }, /* idotless */
-    { 0x000002bb, 12778 }, /* gbreve */
-    { 0x000002bc, 18212 }, /* jcircumflex */
+    { 0x000002a1, 17088 }, /* Hstroke */
+    { 0x000002a6, 16117 }, /* Hcircumflex */
+    { 0x000002a9, 17134 }, /* Iabovedot */
+    { 0x000002ab, 12721 }, /* Gbreve */
+    { 0x000002ac, 18179 }, /* Jcircumflex */
+    { 0x000002b1, 17096 }, /* hstroke */
+    { 0x000002b6, 16129 }, /* hcircumflex */
+    { 0x000002b9, 17248 }, /* idotless */
+    { 0x000002bb, 12728 }, /* gbreve */
+    { 0x000002bc, 18191 }, /* jcircumflex */
     { 0x000002c5, 8455 }, /* Cabovedot */
     { 0x000002c6, 8557 }, /* Ccircumflex */
-    { 0x000002d5, 12751 }, /* Gabovedot */
-    { 0x000002d8, 12817 }, /* Gcircumflex */
-    { 0x000002dd, 25967 }, /* Ubreve */
-    { 0x000002de, 22743 }, /* Scircumflex */
+    { 0x000002d5, 12701 }, /* Gabovedot */
+    { 0x000002d8, 12767 }, /* Gcircumflex */
+    { 0x000002dd, 25959 }, /* Ubreve */
+    { 0x000002de, 22735 }, /* Scircumflex */
     { 0x000002e5, 8465 }, /* cabovedot */
     { 0x000002e6, 8569 }, /* ccircumflex */
-    { 0x000002f5, 12761 }, /* gabovedot */
-    { 0x000002f8, 12829 }, /* gcircumflex */
-    { 0x000002fd, 25974 }, /* ubreve */
-    { 0x000002fe, 22755 }, /* scircumflex */
-    { 0x000003a2, 19190 }, /* kra */
-    { 0x000003a3, 22390 }, /* Rcedilla */
-    { 0x000003a5, 18182 }, /* Itilde */
-    { 0x000003a6, 19308 }, /* Lcedilla */
-    { 0x000003aa, 11921 }, /* Emacron */
-    { 0x000003ab, 12799 }, /* Gcedilla */
-    { 0x000003ac, 25870 }, /* Tslash */
-    { 0x000003b3, 22399 }, /* rcedilla */
-    { 0x000003b5, 18189 }, /* itilde */
-    { 0x000003b6, 19317 }, /* lcedilla */
-    { 0x000003ba, 11929 }, /* emacron */
-    { 0x000003bb, 12808 }, /* gcedilla */
-    { 0x000003bc, 25877 }, /* tslash */
-    { 0x000003bd, 12065 }, /* ENG */
-    { 0x000003bf, 12069 }, /* eng */
+    { 0x000002f5, 12711 }, /* gabovedot */
+    { 0x000002f8, 12779 }, /* gcircumflex */
+    { 0x000002fd, 25966 }, /* ubreve */
+    { 0x000002fe, 22747 }, /* scircumflex */
+    { 0x000003a2, 19169 }, /* kra */
+    { 0x000003a3, 22382 }, /* Rcedilla */
+    { 0x000003a5, 18161 }, /* Itilde */
+    { 0x000003a6, 19287 }, /* Lcedilla */
+    { 0x000003aa, 11871 }, /* Emacron */
+    { 0x000003ab, 12749 }, /* Gcedilla */
+    { 0x000003ac, 25862 }, /* Tslash */
+    { 0x000003b3, 22391 }, /* rcedilla */
+    { 0x000003b5, 18168 }, /* itilde */
+    { 0x000003b6, 19296 }, /* lcedilla */
+    { 0x000003ba, 11879 }, /* emacron */
+    { 0x000003bb, 12758 }, /* gcedilla */
+    { 0x000003bc, 25869 }, /* tslash */
+    { 0x000003bd, 12015 }, /* ENG */
+    { 0x000003bf, 12019 }, /* eng */
     { 0x000003c0, 892 }, /* Amacron */
-    { 0x000003c7, 17420 }, /* Iogonek */
-    { 0x000003cc, 11510 }, /* Eabovedot */
-    { 0x000003cf, 17313 }, /* Imacron */
-    { 0x000003d1, 20073 }, /* Ncedilla */
-    { 0x000003d2, 20761 }, /* Omacron */
-    { 0x000003d3, 18861 }, /* Kcedilla */
-    { 0x000003d9, 26450 }, /* Uogonek */
-    { 0x000003dd, 26551 }, /* Utilde */
-    { 0x000003de, 26403 }, /* Umacron */
+    { 0x000003c7, 17399 }, /* Iogonek */
+    { 0x000003cc, 11460 }, /* Eabovedot */
+    { 0x000003cf, 17292 }, /* Imacron */
+    { 0x000003d1, 20052 }, /* Ncedilla */
+    { 0x000003d2, 20740 }, /* Omacron */
+    { 0x000003d3, 18840 }, /* Kcedilla */
+    { 0x000003d9, 26442 }, /* Uogonek */
+    { 0x000003dd, 26543 }, /* Utilde */
+    { 0x000003de, 26395 }, /* Umacron */
     { 0x000003e0, 900 }, /* amacron */
-    { 0x000003e7, 17428 }, /* iogonek */
-    { 0x000003ec, 11520 }, /* eabovedot */
-    { 0x000003ef, 17321 }, /* imacron */
-    { 0x000003f1, 20082 }, /* ncedilla */
-    { 0x000003f2, 20769 }, /* omacron */
-    { 0x000003f3, 18870 }, /* kcedilla */
-    { 0x000003f9, 26458 }, /* uogonek */
-    { 0x000003fd, 26558 }, /* utilde */
-    { 0x000003fe, 26411 }, /* umacron */
-    { 0x0000047e, 21446 }, /* overline */
-    { 0x000004a1, 18325 }, /* kana_fullstop */
-    { 0x000004a2, 18559 }, /* kana_openingbracket */
-    { 0x000004a3, 18255 }, /* kana_closingbracket */
-    { 0x000004a4, 18275 }, /* kana_comma */
-    { 0x000004a5, 18286 }, /* kana_conjunctive */
-    { 0x000004a6, 18771 }, /* kana_WO */
-    { 0x000004a7, 18232 }, /* kana_a */
-    { 0x000004a8, 18379 }, /* kana_i */
-    { 0x000004a9, 18749 }, /* kana_u */
-    { 0x000004aa, 18303 }, /* kana_e */
-    { 0x000004ab, 18545 }, /* kana_o */
-    { 0x000004ac, 18779 }, /* kana_ya */
-    { 0x000004ad, 18811 }, /* kana_yu */
-    { 0x000004ae, 18795 }, /* kana_yo */
-    { 0x000004af, 18715 }, /* kana_tsu */
-    { 0x000004b0, 22212 }, /* prolongedsound */
-    { 0x000004b1, 18239 }, /* kana_A */
-    { 0x000004b2, 18386 }, /* kana_I */
-    { 0x000004b3, 18756 }, /* kana_U */
-    { 0x000004b4, 18310 }, /* kana_E */
-    { 0x000004b5, 18552 }, /* kana_O */
-    { 0x000004b6, 18393 }, /* kana_KA */
-    { 0x000004b7, 18409 }, /* kana_KI */
-    { 0x000004b8, 18425 }, /* kana_KU */
-    { 0x000004b9, 18401 }, /* kana_KE */
-    { 0x000004ba, 18417 }, /* kana_KO */
-    { 0x000004bb, 18619 }, /* kana_SA */
-    { 0x000004bc, 18635 }, /* kana_SHI */
-    { 0x000004bd, 18663 }, /* kana_SU */
-    { 0x000004be, 18627 }, /* kana_SE */
-    { 0x000004bf, 18655 }, /* kana_SO */
-    { 0x000004c0, 18683 }, /* kana_TA */
-    { 0x000004c1, 18246 }, /* kana_CHI */
-    { 0x000004c2, 18724 }, /* kana_TSU */
-    { 0x000004c3, 18691 }, /* kana_TE */
-    { 0x000004c4, 18707 }, /* kana_TO */
-    { 0x000004c5, 18505 }, /* kana_NA */
-    { 0x000004c6, 18521 }, /* kana_NI */
-    { 0x000004c7, 18537 }, /* kana_NU */
-    { 0x000004c8, 18513 }, /* kana_NE */
-    { 0x000004c9, 18529 }, /* kana_NO */
-    { 0x000004ca, 18339 }, /* kana_HA */
-    { 0x000004cb, 18355 }, /* kana_HI */
-    { 0x000004cc, 18317 }, /* kana_FU */
-    { 0x000004cd, 18347 }, /* kana_HE */
-    { 0x000004ce, 18363 }, /* kana_HO */
-    { 0x000004cf, 18443 }, /* kana_MA */
-    { 0x000004d0, 18459 }, /* kana_MI */
-    { 0x000004d1, 18490 }, /* kana_MU */
-    { 0x000004d2, 18451 }, /* kana_ME */
-    { 0x000004d3, 18482 }, /* kana_MO */
-    { 0x000004d4, 18787 }, /* kana_YA */
-    { 0x000004d5, 18819 }, /* kana_YU */
-    { 0x000004d6, 18803 }, /* kana_YO */
-    { 0x000004d7, 18579 }, /* kana_RA */
-    { 0x000004d8, 18595 }, /* kana_RI */
-    { 0x000004d9, 18611 }, /* kana_RU */
-    { 0x000004da, 18587 }, /* kana_RE */
-    { 0x000004db, 18603 }, /* kana_RO */
-    { 0x000004dc, 18763 }, /* kana_WA */
-    { 0x000004dd, 18498 }, /* kana_N */
-    { 0x000004de, 26601 }, /* voicedsound */
-    { 0x000004df, 22826 }, /* semivoicedsound */
+    { 0x000003e7, 17407 }, /* iogonek */
+    { 0x000003ec, 11470 }, /* eabovedot */
+    { 0x000003ef, 17300 }, /* imacron */
+    { 0x000003f1, 20061 }, /* ncedilla */
+    { 0x000003f2, 20748 }, /* omacron */
+    { 0x000003f3, 18849 }, /* kcedilla */
+    { 0x000003f9, 26450 }, /* uogonek */
+    { 0x000003fd, 26550 }, /* utilde */
+    { 0x000003fe, 26403 }, /* umacron */
+    { 0x0000047e, 21438 }, /* overline */
+    { 0x000004a1, 18304 }, /* kana_fullstop */
+    { 0x000004a2, 18538 }, /* kana_openingbracket */
+    { 0x000004a3, 18234 }, /* kana_closingbracket */
+    { 0x000004a4, 18254 }, /* kana_comma */
+    { 0x000004a5, 18265 }, /* kana_conjunctive */
+    { 0x000004a6, 18750 }, /* kana_WO */
+    { 0x000004a7, 18211 }, /* kana_a */
+    { 0x000004a8, 18358 }, /* kana_i */
+    { 0x000004a9, 18728 }, /* kana_u */
+    { 0x000004aa, 18282 }, /* kana_e */
+    { 0x000004ab, 18524 }, /* kana_o */
+    { 0x000004ac, 18758 }, /* kana_ya */
+    { 0x000004ad, 18790 }, /* kana_yu */
+    { 0x000004ae, 18774 }, /* kana_yo */
+    { 0x000004af, 18694 }, /* kana_tsu */
+    { 0x000004b0, 22204 }, /* prolongedsound */
+    { 0x000004b1, 18218 }, /* kana_A */
+    { 0x000004b2, 18365 }, /* kana_I */
+    { 0x000004b3, 18735 }, /* kana_U */
+    { 0x000004b4, 18289 }, /* kana_E */
+    { 0x000004b5, 18531 }, /* kana_O */
+    { 0x000004b6, 18372 }, /* kana_KA */
+    { 0x000004b7, 18388 }, /* kana_KI */
+    { 0x000004b8, 18404 }, /* kana_KU */
+    { 0x000004b9, 18380 }, /* kana_KE */
+    { 0x000004ba, 18396 }, /* kana_KO */
+    { 0x000004bb, 18598 }, /* kana_SA */
+    { 0x000004bc, 18614 }, /* kana_SHI */
+    { 0x000004bd, 18642 }, /* kana_SU */
+    { 0x000004be, 18606 }, /* kana_SE */
+    { 0x000004bf, 18634 }, /* kana_SO */
+    { 0x000004c0, 18662 }, /* kana_TA */
+    { 0x000004c1, 18225 }, /* kana_CHI */
+    { 0x000004c2, 18703 }, /* kana_TSU */
+    { 0x000004c3, 18670 }, /* kana_TE */
+    { 0x000004c4, 18686 }, /* kana_TO */
+    { 0x000004c5, 18484 }, /* kana_NA */
+    { 0x000004c6, 18500 }, /* kana_NI */
+    { 0x000004c7, 18516 }, /* kana_NU */
+    { 0x000004c8, 18492 }, /* kana_NE */
+    { 0x000004c9, 18508 }, /* kana_NO */
+    { 0x000004ca, 18318 }, /* kana_HA */
+    { 0x000004cb, 18334 }, /* kana_HI */
+    { 0x000004cc, 18296 }, /* kana_FU */
+    { 0x000004cd, 18326 }, /* kana_HE */
+    { 0x000004ce, 18342 }, /* kana_HO */
+    { 0x000004cf, 18422 }, /* kana_MA */
+    { 0x000004d0, 18438 }, /* kana_MI */
+    { 0x000004d1, 18469 }, /* kana_MU */
+    { 0x000004d2, 18430 }, /* kana_ME */
+    { 0x000004d3, 18461 }, /* kana_MO */
+    { 0x000004d4, 18766 }, /* kana_YA */
+    { 0x000004d5, 18798 }, /* kana_YU */
+    { 0x000004d6, 18782 }, /* kana_YO */
+    { 0x000004d7, 18558 }, /* kana_RA */
+    { 0x000004d8, 18574 }, /* kana_RI */
+    { 0x000004d9, 18590 }, /* kana_RU */
+    { 0x000004da, 18566 }, /* kana_RE */
+    { 0x000004db, 18582 }, /* kana_RO */
+    { 0x000004dc, 18742 }, /* kana_WA */
+    { 0x000004dd, 18477 }, /* kana_N */
+    { 0x000004de, 26593 }, /* voicedsound */
+    { 0x000004df, 22818 }, /* semivoicedsound */
     { 0x000005ac, 1109 }, /* Arabic_comma */
     { 0x000005bb, 1764 }, /* Arabic_semicolon */
     { 0x000005bf, 1698 }, /* Arabic_question_mark */
@@ -5860,35 +5905,35 @@ static const struct name_keysym keysym_to_name[] = {
     { 0x000005f0, 1515 }, /* Arabic_kasra */
     { 0x000005f1, 1781 }, /* Arabic_shadda */
     { 0x000005f2, 1808 }, /* Arabic_sukun */
-    { 0x000006a1, 22842 }, /* Serbian_dje */
-    { 0x000006a2, 19667 }, /* Macedonia_gje */
+    { 0x000006a1, 22834 }, /* Serbian_dje */
+    { 0x000006a2, 19646 }, /* Macedonia_gje */
     { 0x000006a3, 9538 }, /* Cyrillic_io */
-    { 0x000006a4, 26281 }, /* Ukrainian_ie */
-    { 0x000006a5, 19639 }, /* Macedonia_dse */
-    { 0x000006a6, 26257 }, /* Ukrainian_i */
-    { 0x000006a7, 26307 }, /* Ukrainian_yi */
+    { 0x000006a4, 26273 }, /* Ukrainian_ie */
+    { 0x000006a5, 19618 }, /* Macedonia_dse */
+    { 0x000006a6, 26249 }, /* Ukrainian_i */
+    { 0x000006a7, 26299 }, /* Ukrainian_yi */
     { 0x000006a8, 9562 }, /* Cyrillic_je */
     { 0x000006a9, 9700 }, /* Cyrillic_lje */
     { 0x000006aa, 9726 }, /* Cyrillic_nje */
-    { 0x000006ab, 22960 }, /* Serbian_tshe */
-    { 0x000006ac, 19695 }, /* Macedonia_kje */
-    { 0x000006ad, 26205 }, /* Ukrainian_ghe_with_upturn */
+    { 0x000006ab, 22952 }, /* Serbian_tshe */
+    { 0x000006ac, 19674 }, /* Macedonia_kje */
+    { 0x000006ad, 26197 }, /* Ukrainian_ghe_with_upturn */
     { 0x000006ae, 8399 }, /* Byelorussian_shortu */
     { 0x000006af, 9054 }, /* Cyrillic_dzhe */
-    { 0x000006b0, 20271 }, /* numerosign */
-    { 0x000006b1, 22854 }, /* Serbian_DJE */
-    { 0x000006b2, 19681 }, /* Macedonia_GJE */
+    { 0x000006b0, 20250 }, /* numerosign */
+    { 0x000006b1, 22846 }, /* Serbian_DJE */
+    { 0x000006b2, 19660 }, /* Macedonia_GJE */
     { 0x000006b3, 9550 }, /* Cyrillic_IO */
-    { 0x000006b4, 26294 }, /* Ukrainian_IE */
-    { 0x000006b5, 19653 }, /* Macedonia_DSE */
-    { 0x000006b6, 26269 }, /* Ukrainian_I */
-    { 0x000006b7, 26320 }, /* Ukrainian_YI */
+    { 0x000006b4, 26286 }, /* Ukrainian_IE */
+    { 0x000006b5, 19632 }, /* Macedonia_DSE */
+    { 0x000006b6, 26261 }, /* Ukrainian_I */
+    { 0x000006b7, 26312 }, /* Ukrainian_YI */
     { 0x000006b8, 9574 }, /* Cyrillic_JE */
     { 0x000006b9, 9713 }, /* Cyrillic_LJE */
     { 0x000006ba, 9739 }, /* Cyrillic_NJE */
-    { 0x000006bb, 22973 }, /* Serbian_TSHE */
-    { 0x000006bc, 19709 }, /* Macedonia_KJE */
-    { 0x000006bd, 26231 }, /* Ukrainian_GHE_WITH_UPTURN */
+    { 0x000006bb, 22965 }, /* Serbian_TSHE */
+    { 0x000006bc, 19688 }, /* Macedonia_KJE */
+    { 0x000006bd, 26223 }, /* Ukrainian_GHE_WITH_UPTURN */
     { 0x000006be, 8419 }, /* Byelorussian_SHORTU */
     { 0x000006bf, 9068 }, /* Cyrillic_DZHE */
     { 0x000006c0, 10282 }, /* Cyrillic_yu */
@@ -5955,460 +6000,460 @@ static const struct name_keysym keysym_to_name[] = {
     { 0x000006fd, 9899 }, /* Cyrillic_SHCHA */
     { 0x000006fe, 8923 }, /* Cyrillic_CHE */
     { 0x000006ff, 9438 }, /* Cyrillic_HARDSIGN */
-    { 0x000007a1, 13424 }, /* Greek_ALPHAaccent */
-    { 0x000007a2, 13554 }, /* Greek_EPSILONaccent */
-    { 0x000007a3, 13614 }, /* Greek_ETAaccent */
-    { 0x000007a4, 13729 }, /* Greek_IOTAaccent */
-    { 0x000007a5, 13808 }, /* Greek_IOTAdieresis */
-    { 0x000007a7, 14044 }, /* Greek_OMICRONaccent */
-    { 0x000007a8, 14271 }, /* Greek_UPSILONaccent */
-    { 0x000007a9, 14339 }, /* Greek_UPSILONdieresis */
-    { 0x000007ab, 13980 }, /* Greek_OMEGAaccent */
-    { 0x000007ae, 13379 }, /* Greek_accentdieresis */
-    { 0x000007af, 13692 }, /* Greek_horizbar */
-    { 0x000007b1, 13442 }, /* Greek_alphaaccent */
-    { 0x000007b2, 13574 }, /* Greek_epsilonaccent */
-    { 0x000007b3, 13630 }, /* Greek_etaaccent */
-    { 0x000007b4, 13746 }, /* Greek_iotaaccent */
-    { 0x000007b5, 13827 }, /* Greek_iotadieresis */
-    { 0x000007b6, 13763 }, /* Greek_iotaaccentdieresis */
-    { 0x000007b7, 14064 }, /* Greek_omicronaccent */
-    { 0x000007b8, 14291 }, /* Greek_upsilonaccent */
-    { 0x000007b9, 14361 }, /* Greek_upsilondieresis */
-    { 0x000007ba, 14311 }, /* Greek_upsilonaccentdieresis */
-    { 0x000007bb, 13998 }, /* Greek_omegaaccent */
-    { 0x000007c1, 13400 }, /* Greek_ALPHA */
-    { 0x000007c2, 13460 }, /* Greek_BETA */
-    { 0x000007c3, 13668 }, /* Greek_GAMMA */
-    { 0x000007c4, 13502 }, /* Greek_DELTA */
-    { 0x000007c5, 13526 }, /* Greek_EPSILON */
-    { 0x000007c6, 14401 }, /* Greek_ZETA */
-    { 0x000007c7, 13594 }, /* Greek_ETA */
-    { 0x000007c8, 14219 }, /* Greek_THETA */
-    { 0x000007c9, 13707 }, /* Greek_IOTA */
-    { 0x000007ca, 13846 }, /* Greek_KAPPA */
-    { 0x000007cb, 13896 }, /* Greek_LAMDA */
-    { 0x000007cc, 13920 }, /* Greek_MU */
-    { 0x000007cd, 13938 }, /* Greek_NU */
-    { 0x000007ce, 14383 }, /* Greek_XI */
-    { 0x000007cf, 14016 }, /* Greek_OMICRON */
-    { 0x000007d0, 14104 }, /* Greek_PI */
-    { 0x000007d1, 14142 }, /* Greek_RHO */
-    { 0x000007d2, 14162 }, /* Greek_SIGMA */
-    { 0x000007d4, 14199 }, /* Greek_TAU */
-    { 0x000007d5, 14243 }, /* Greek_UPSILON */
-    { 0x000007d6, 14084 }, /* Greek_PHI */
-    { 0x000007d7, 13482 }, /* Greek_CHI */
-    { 0x000007d8, 14122 }, /* Greek_PSI */
-    { 0x000007d9, 13956 }, /* Greek_OMEGA */
-    { 0x000007e1, 13412 }, /* Greek_alpha */
-    { 0x000007e2, 13471 }, /* Greek_beta */
-    { 0x000007e3, 13680 }, /* Greek_gamma */
-    { 0x000007e4, 13514 }, /* Greek_delta */
-    { 0x000007e5, 13540 }, /* Greek_epsilon */
-    { 0x000007e6, 14412 }, /* Greek_zeta */
-    { 0x000007e7, 13604 }, /* Greek_eta */
-    { 0x000007e8, 14231 }, /* Greek_theta */
-    { 0x000007e9, 13718 }, /* Greek_iota */
-    { 0x000007ea, 13858 }, /* Greek_kappa */
-    { 0x000007eb, 13908 }, /* Greek_lamda */
-    { 0x000007ec, 13929 }, /* Greek_mu */
-    { 0x000007ed, 13947 }, /* Greek_nu */
-    { 0x000007ee, 14392 }, /* Greek_xi */
-    { 0x000007ef, 14030 }, /* Greek_omicron */
-    { 0x000007f0, 14113 }, /* Greek_pi */
-    { 0x000007f1, 14152 }, /* Greek_rho */
-    { 0x000007f2, 14174 }, /* Greek_sigma */
-    { 0x000007f3, 13646 }, /* Greek_finalsmallsigma */
-    { 0x000007f4, 14209 }, /* Greek_tau */
-    { 0x000007f5, 14257 }, /* Greek_upsilon */
-    { 0x000007f6, 14094 }, /* Greek_phi */
-    { 0x000007f7, 13492 }, /* Greek_chi */
-    { 0x000007f8, 14132 }, /* Greek_psi */
-    { 0x000007f9, 13968 }, /* Greek_omega */
-    { 0x000008a1, 19438 }, /* leftradical */
-    { 0x000008a2, 25703 }, /* topleftradical */
-    { 0x000008a3, 16749 }, /* horizconnector */
-    { 0x000008a4, 25677 }, /* topintegral */
+    { 0x000007a1, 13374 }, /* Greek_ALPHAaccent */
+    { 0x000007a2, 13504 }, /* Greek_EPSILONaccent */
+    { 0x000007a3, 13564 }, /* Greek_ETAaccent */
+    { 0x000007a4, 13679 }, /* Greek_IOTAaccent */
+    { 0x000007a5, 13758 }, /* Greek_IOTAdieresis */
+    { 0x000007a7, 13994 }, /* Greek_OMICRONaccent */
+    { 0x000007a8, 14221 }, /* Greek_UPSILONaccent */
+    { 0x000007a9, 14289 }, /* Greek_UPSILONdieresis */
+    { 0x000007ab, 13930 }, /* Greek_OMEGAaccent */
+    { 0x000007ae, 13329 }, /* Greek_accentdieresis */
+    { 0x000007af, 13642 }, /* Greek_horizbar */
+    { 0x000007b1, 13392 }, /* Greek_alphaaccent */
+    { 0x000007b2, 13524 }, /* Greek_epsilonaccent */
+    { 0x000007b3, 13580 }, /* Greek_etaaccent */
+    { 0x000007b4, 13696 }, /* Greek_iotaaccent */
+    { 0x000007b5, 13777 }, /* Greek_iotadieresis */
+    { 0x000007b6, 13713 }, /* Greek_iotaaccentdieresis */
+    { 0x000007b7, 14014 }, /* Greek_omicronaccent */
+    { 0x000007b8, 14241 }, /* Greek_upsilonaccent */
+    { 0x000007b9, 14311 }, /* Greek_upsilondieresis */
+    { 0x000007ba, 14261 }, /* Greek_upsilonaccentdieresis */
+    { 0x000007bb, 13948 }, /* Greek_omegaaccent */
+    { 0x000007c1, 13350 }, /* Greek_ALPHA */
+    { 0x000007c2, 13410 }, /* Greek_BETA */
+    { 0x000007c3, 13618 }, /* Greek_GAMMA */
+    { 0x000007c4, 13452 }, /* Greek_DELTA */
+    { 0x000007c5, 13476 }, /* Greek_EPSILON */
+    { 0x000007c6, 14351 }, /* Greek_ZETA */
+    { 0x000007c7, 13544 }, /* Greek_ETA */
+    { 0x000007c8, 14169 }, /* Greek_THETA */
+    { 0x000007c9, 13657 }, /* Greek_IOTA */
+    { 0x000007ca, 13796 }, /* Greek_KAPPA */
+    { 0x000007cb, 13846 }, /* Greek_LAMDA */
+    { 0x000007cc, 13870 }, /* Greek_MU */
+    { 0x000007cd, 13888 }, /* Greek_NU */
+    { 0x000007ce, 14333 }, /* Greek_XI */
+    { 0x000007cf, 13966 }, /* Greek_OMICRON */
+    { 0x000007d0, 14054 }, /* Greek_PI */
+    { 0x000007d1, 14092 }, /* Greek_RHO */
+    { 0x000007d2, 14112 }, /* Greek_SIGMA */
+    { 0x000007d4, 14149 }, /* Greek_TAU */
+    { 0x000007d5, 14193 }, /* Greek_UPSILON */
+    { 0x000007d6, 14034 }, /* Greek_PHI */
+    { 0x000007d7, 13432 }, /* Greek_CHI */
+    { 0x000007d8, 14072 }, /* Greek_PSI */
+    { 0x000007d9, 13906 }, /* Greek_OMEGA */
+    { 0x000007e1, 13362 }, /* Greek_alpha */
+    { 0x000007e2, 13421 }, /* Greek_beta */
+    { 0x000007e3, 13630 }, /* Greek_gamma */
+    { 0x000007e4, 13464 }, /* Greek_delta */
+    { 0x000007e5, 13490 }, /* Greek_epsilon */
+    { 0x000007e6, 14362 }, /* Greek_zeta */
+    { 0x000007e7, 13554 }, /* Greek_eta */
+    { 0x000007e8, 14181 }, /* Greek_theta */
+    { 0x000007e9, 13668 }, /* Greek_iota */
+    { 0x000007ea, 13808 }, /* Greek_kappa */
+    { 0x000007eb, 13858 }, /* Greek_lamda */
+    { 0x000007ec, 13879 }, /* Greek_mu */
+    { 0x000007ed, 13897 }, /* Greek_nu */
+    { 0x000007ee, 14342 }, /* Greek_xi */
+    { 0x000007ef, 13980 }, /* Greek_omicron */
+    { 0x000007f0, 14063 }, /* Greek_pi */
+    { 0x000007f1, 14102 }, /* Greek_rho */
+    { 0x000007f2, 14124 }, /* Greek_sigma */
+    { 0x000007f3, 13596 }, /* Greek_finalsmallsigma */
+    { 0x000007f4, 14159 }, /* Greek_tau */
+    { 0x000007f5, 14207 }, /* Greek_upsilon */
+    { 0x000007f6, 14044 }, /* Greek_phi */
+    { 0x000007f7, 13442 }, /* Greek_chi */
+    { 0x000007f8, 14082 }, /* Greek_psi */
+    { 0x000007f9, 13918 }, /* Greek_omega */
+    { 0x000008a1, 19417 }, /* leftradical */
+    { 0x000008a2, 25695 }, /* topleftradical */
+    { 0x000008a3, 16728 }, /* horizconnector */
+    { 0x000008a4, 25669 }, /* topintegral */
     { 0x000008a5, 3422 }, /* botintegral */
-    { 0x000008a6, 26587 }, /* vertconnector */
-    { 0x000008a7, 25718 }, /* topleftsqbracket */
+    { 0x000008a6, 26579 }, /* vertconnector */
+    { 0x000008a7, 25710 }, /* topleftsqbracket */
     { 0x000008a8, 3448 }, /* botleftsqbracket */
-    { 0x000008a9, 25767 }, /* toprightsqbracket */
+    { 0x000008a9, 25759 }, /* toprightsqbracket */
     { 0x000008aa, 3497 }, /* botrightsqbracket */
-    { 0x000008ab, 25689 }, /* topleftparens */
+    { 0x000008ab, 25681 }, /* topleftparens */
     { 0x000008ac, 3434 }, /* botleftparens */
-    { 0x000008ad, 25752 }, /* toprightparens */
+    { 0x000008ad, 25744 }, /* toprightparens */
     { 0x000008ae, 3482 }, /* botrightparens */
-    { 0x000008af, 19388 }, /* leftmiddlecurlybrace */
-    { 0x000008b0, 22522 }, /* rightmiddlecurlybrace */
-    { 0x000008b1, 25735 }, /* topleftsummation */
+    { 0x000008af, 19367 }, /* leftmiddlecurlybrace */
+    { 0x000008b0, 22514 }, /* rightmiddlecurlybrace */
+    { 0x000008b1, 25727 }, /* topleftsummation */
     { 0x000008b2, 3465 }, /* botleftsummation */
-    { 0x000008b3, 25808 }, /* topvertsummationconnector */
+    { 0x000008b3, 25800 }, /* topvertsummationconnector */
     { 0x000008b4, 3538 }, /* botvertsummationconnector */
-    { 0x000008b5, 25785 }, /* toprightsummation */
+    { 0x000008b5, 25777 }, /* toprightsummation */
     { 0x000008b6, 3515 }, /* botrightsummation */
-    { 0x000008b7, 22544 }, /* rightmiddlesummation */
-    { 0x000008bc, 19499 }, /* lessthanequal */
-    { 0x000008bd, 20207 }, /* notequal */
-    { 0x000008be, 13362 }, /* greaterthanequal */
-    { 0x000008bf, 17395 }, /* integral */
-    { 0x000008c0, 25561 }, /* therefore */
-    { 0x000008c1, 26569 }, /* variation */
-    { 0x000008c2, 17357 }, /* infinity */
-    { 0x000008c5, 20029 }, /* nabla */
+    { 0x000008b7, 22536 }, /* rightmiddlesummation */
+    { 0x000008bc, 19478 }, /* lessthanequal */
+    { 0x000008bd, 20186 }, /* notequal */
+    { 0x000008be, 13312 }, /* greaterthanequal */
+    { 0x000008bf, 17374 }, /* integral */
+    { 0x000008c0, 25553 }, /* therefore */
+    { 0x000008c1, 26561 }, /* variation */
+    { 0x000008c2, 17336 }, /* infinity */
+    { 0x000008c5, 20008 }, /* nabla */
     { 0x000008c8, 954 }, /* approximate */
-    { 0x000008c9, 23081 }, /* similarequal */
-    { 0x000008cd, 17278 }, /* ifonlyif */
-    { 0x000008ce, 17329 }, /* implies */
-    { 0x000008cf, 17237 }, /* identical */
-    { 0x000008d6, 22368 }, /* radical */
-    { 0x000008da, 17337 }, /* includedin */
-    { 0x000008db, 17348 }, /* includes */
-    { 0x000008dc, 17404 }, /* intersection */
-    { 0x000008dd, 26444 }, /* union */
-    { 0x000008de, 19539 }, /* logicaland */
-    { 0x000008df, 19550 }, /* logicalor */
-    { 0x000008ef, 21545 }, /* partialderivative */
-    { 0x000008f6, 12738 }, /* function */
-    { 0x000008fb, 19348 }, /* leftarrow */
-    { 0x000008fc, 26469 }, /* uparrow */
-    { 0x000008fd, 22479 }, /* rightarrow */
-    { 0x000008fe, 11414 }, /* downarrow */
+    { 0x000008c9, 23073 }, /* similarequal */
+    { 0x000008cd, 17257 }, /* ifonlyif */
+    { 0x000008ce, 17308 }, /* implies */
+    { 0x000008cf, 17216 }, /* identical */
+    { 0x000008d6, 22360 }, /* radical */
+    { 0x000008da, 17316 }, /* includedin */
+    { 0x000008db, 17327 }, /* includes */
+    { 0x000008dc, 17383 }, /* intersection */
+    { 0x000008dd, 26436 }, /* union */
+    { 0x000008de, 19518 }, /* logicaland */
+    { 0x000008df, 19529 }, /* logicalor */
+    { 0x000008ef, 21537 }, /* partialderivative */
+    { 0x000008f6, 12688 }, /* function */
+    { 0x000008fb, 19327 }, /* leftarrow */
+    { 0x000008fc, 26461 }, /* uparrow */
+    { 0x000008fd, 22471 }, /* rightarrow */
+    { 0x000008fe, 11364 }, /* downarrow */
     { 0x000009df, 3410 }, /* blank */
-    { 0x000009e0, 23872 }, /* soliddiamond */
+    { 0x000009e0, 23864 }, /* soliddiamond */
     { 0x000009e1, 8603 }, /* checkerboard */
-    { 0x000009e2, 17125 }, /* ht */
-    { 0x000009e3, 12495 }, /* ff */
+    { 0x000009e2, 17104 }, /* ht */
+    { 0x000009e3, 12445 }, /* ff */
     { 0x000009e4, 8809 }, /* cr */
-    { 0x000009e5, 19513 }, /* lf */
-    { 0x000009e8, 20157 }, /* nl */
-    { 0x000009e9, 26624 }, /* vt */
-    { 0x000009ea, 19584 }, /* lowrightcorner */
-    { 0x000009eb, 26498 }, /* uprightcorner */
-    { 0x000009ec, 26485 }, /* upleftcorner */
-    { 0x000009ed, 19570 }, /* lowleftcorner */
+    { 0x000009e5, 19492 }, /* lf */
+    { 0x000009e8, 20136 }, /* nl */
+    { 0x000009e9, 26616 }, /* vt */
+    { 0x000009ea, 19563 }, /* lowrightcorner */
+    { 0x000009eb, 26490 }, /* uprightcorner */
+    { 0x000009ec, 26477 }, /* upleftcorner */
+    { 0x000009ed, 19549 }, /* lowleftcorner */
     { 0x000009ee, 8812 }, /* crossinglines */
-    { 0x000009ef, 16764 }, /* horizlinescan1 */
-    { 0x000009f0, 16779 }, /* horizlinescan3 */
-    { 0x000009f1, 16794 }, /* horizlinescan5 */
-    { 0x000009f2, 16809 }, /* horizlinescan7 */
-    { 0x000009f3, 16824 }, /* horizlinescan9 */
-    { 0x000009f4, 19479 }, /* leftt */
-    { 0x000009f5, 22627 }, /* rightt */
+    { 0x000009ef, 16743 }, /* horizlinescan1 */
+    { 0x000009f0, 16758 }, /* horizlinescan3 */
+    { 0x000009f1, 16773 }, /* horizlinescan5 */
+    { 0x000009f2, 16788 }, /* horizlinescan7 */
+    { 0x000009f3, 16803 }, /* horizlinescan9 */
+    { 0x000009f4, 19458 }, /* leftt */
+    { 0x000009f5, 22619 }, /* rightt */
     { 0x000009f6, 3533 }, /* bott */
-    { 0x000009f7, 25803 }, /* topt */
-    { 0x000009f8, 26579 }, /* vertbar */
-    { 0x00000aa1, 12010 }, /* emspace */
-    { 0x00000aa2, 12109 }, /* enspace */
-    { 0x00000aa3, 11903 }, /* em3space */
-    { 0x00000aa4, 11912 }, /* em4space */
-    { 0x00000aa5, 11303 }, /* digitspace */
-    { 0x00000aa6, 22227 }, /* punctspace */
-    { 0x00000aa7, 25571 }, /* thinspace */
-    { 0x00000aa8, 14464 }, /* hairspace */
-    { 0x00000aa9, 11937 }, /* emdash */
-    { 0x00000aaa, 12022 }, /* endash */
-    { 0x00000aac, 23069 }, /* signifblank */
-    { 0x00000aae, 11894 }, /* ellipsis */
-    { 0x00000aaf, 11349 }, /* doubbaselinedot */
-    { 0x00000ab0, 20849 }, /* onethird */
-    { 0x00000ab1, 25919 }, /* twothirds */
-    { 0x00000ab2, 20787 }, /* onefifth */
-    { 0x00000ab3, 25884 }, /* twofifths */
-    { 0x00000ab4, 25612 }, /* threefifths */
-    { 0x00000ab5, 12689 }, /* fourfifths */
-    { 0x00000ab6, 20815 }, /* onesixth */
-    { 0x00000ab7, 12651 }, /* fivesixths */
+    { 0x000009f7, 25795 }, /* topt */
+    { 0x000009f8, 26571 }, /* vertbar */
+    { 0x00000aa1, 11960 }, /* emspace */
+    { 0x00000aa2, 12059 }, /* enspace */
+    { 0x00000aa3, 11853 }, /* em3space */
+    { 0x00000aa4, 11862 }, /* em4space */
+    { 0x00000aa5, 11253 }, /* digitspace */
+    { 0x00000aa6, 22219 }, /* punctspace */
+    { 0x00000aa7, 25563 }, /* thinspace */
+    { 0x00000aa8, 14443 }, /* hairspace */
+    { 0x00000aa9, 11887 }, /* emdash */
+    { 0x00000aaa, 11972 }, /* endash */
+    { 0x00000aac, 23061 }, /* signifblank */
+    { 0x00000aae, 11844 }, /* ellipsis */
+    { 0x00000aaf, 11299 }, /* doubbaselinedot */
+    { 0x00000ab0, 20828 }, /* onethird */
+    { 0x00000ab1, 25911 }, /* twothirds */
+    { 0x00000ab2, 20766 }, /* onefifth */
+    { 0x00000ab3, 25876 }, /* twofifths */
+    { 0x00000ab4, 25604 }, /* threefifths */
+    { 0x00000ab5, 12639 }, /* fourfifths */
+    { 0x00000ab6, 20794 }, /* onesixth */
+    { 0x00000ab7, 12601 }, /* fivesixths */
     { 0x00000ab8, 8506 }, /* careof */
-    { 0x00000abb, 12509 }, /* figdash */
-    { 0x00000abc, 19331 }, /* leftanglebracket */
-    { 0x00000abd, 11222 }, /* decimalpoint */
-    { 0x00000abe, 22461 }, /* rightanglebracket */
-    { 0x00000abf, 19763 }, /* marker */
-    { 0x00000ac3, 20777 }, /* oneeighth */
-    { 0x00000ac4, 25599 }, /* threeeighths */
-    { 0x00000ac5, 12639 }, /* fiveeighths */
-    { 0x00000ac6, 22986 }, /* seveneighths */
-    { 0x00000ac9, 25842 }, /* trademark */
-    { 0x00000aca, 23055 }, /* signaturemark */
-    { 0x00000acb, 25852 }, /* trademarkincircle */
-    { 0x00000acc, 19409 }, /* leftopentriangle */
-    { 0x00000acd, 22565 }, /* rightopentriangle */
-    { 0x00000ace, 11972 }, /* emopencircle */
-    { 0x00000acf, 11985 }, /* emopenrectangle */
-    { 0x00000ad0, 19459 }, /* leftsinglequotemark */
-    { 0x00000ad1, 22606 }, /* rightsinglequotemark */
-    { 0x00000ad2, 19368 }, /* leftdoublequotemark */
-    { 0x00000ad3, 22501 }, /* rightdoublequotemark */
-    { 0x00000ad4, 22149 }, /* prescription */
-    { 0x00000ad5, 21599 }, /* permille */
-    { 0x00000ad6, 19821 }, /* minutes */
-    { 0x00000ad7, 22793 }, /* seconds */
-    { 0x00000ad9, 19263 }, /* latincross */
-    { 0x00000ada, 16708 }, /* hexagram */
-    { 0x00000adb, 12537 }, /* filledrectbullet */
-    { 0x00000adc, 12517 }, /* filledlefttribullet */
-    { 0x00000add, 12554 }, /* filledrighttribullet */
-    { 0x00000ade, 11944 }, /* emfilledcircle */
-    { 0x00000adf, 11959 }, /* emfilledrect */
-    { 0x00000ae0, 12073 }, /* enopencircbullet */
-    { 0x00000ae1, 12090 }, /* enopensquarebullet */
-    { 0x00000ae2, 20876 }, /* openrectbullet */
-    { 0x00000ae3, 20918 }, /* opentribulletup */
-    { 0x00000ae4, 20900 }, /* opentribulletdown */
-    { 0x00000ae5, 20891 }, /* openstar */
-    { 0x00000ae6, 12029 }, /* enfilledcircbullet */
-    { 0x00000ae7, 12048 }, /* enfilledsqbullet */
-    { 0x00000ae8, 12595 }, /* filledtribulletup */
-    { 0x00000ae9, 12575 }, /* filledtribulletdown */
-    { 0x00000aea, 19426 }, /* leftpointer */
-    { 0x00000aeb, 22583 }, /* rightpointer */
+    { 0x00000abb, 12459 }, /* figdash */
+    { 0x00000abc, 19310 }, /* leftanglebracket */
+    { 0x00000abd, 11172 }, /* decimalpoint */
+    { 0x00000abe, 22453 }, /* rightanglebracket */
+    { 0x00000abf, 19742 }, /* marker */
+    { 0x00000ac3, 20756 }, /* oneeighth */
+    { 0x00000ac4, 25591 }, /* threeeighths */
+    { 0x00000ac5, 12589 }, /* fiveeighths */
+    { 0x00000ac6, 22978 }, /* seveneighths */
+    { 0x00000ac9, 25834 }, /* trademark */
+    { 0x00000aca, 23047 }, /* signaturemark */
+    { 0x00000acb, 25844 }, /* trademarkincircle */
+    { 0x00000acc, 19388 }, /* leftopentriangle */
+    { 0x00000acd, 22557 }, /* rightopentriangle */
+    { 0x00000ace, 11922 }, /* emopencircle */
+    { 0x00000acf, 11935 }, /* emopenrectangle */
+    { 0x00000ad0, 19438 }, /* leftsinglequotemark */
+    { 0x00000ad1, 22598 }, /* rightsinglequotemark */
+    { 0x00000ad2, 19347 }, /* leftdoublequotemark */
+    { 0x00000ad3, 22493 }, /* rightdoublequotemark */
+    { 0x00000ad4, 22141 }, /* prescription */
+    { 0x00000ad5, 21591 }, /* permille */
+    { 0x00000ad6, 19800 }, /* minutes */
+    { 0x00000ad7, 22785 }, /* seconds */
+    { 0x00000ad9, 19242 }, /* latincross */
+    { 0x00000ada, 16687 }, /* hexagram */
+    { 0x00000adb, 12487 }, /* filledrectbullet */
+    { 0x00000adc, 12467 }, /* filledlefttribullet */
+    { 0x00000add, 12504 }, /* filledrighttribullet */
+    { 0x00000ade, 11894 }, /* emfilledcircle */
+    { 0x00000adf, 11909 }, /* emfilledrect */
+    { 0x00000ae0, 12023 }, /* enopencircbullet */
+    { 0x00000ae1, 12040 }, /* enopensquarebullet */
+    { 0x00000ae2, 20855 }, /* openrectbullet */
+    { 0x00000ae3, 20897 }, /* opentribulletup */
+    { 0x00000ae4, 20879 }, /* opentribulletdown */
+    { 0x00000ae5, 20870 }, /* openstar */
+    { 0x00000ae6, 11979 }, /* enfilledcircbullet */
+    { 0x00000ae7, 11998 }, /* enfilledsqbullet */
+    { 0x00000ae8, 12545 }, /* filledtribulletup */
+    { 0x00000ae9, 12525 }, /* filledtribulletdown */
+    { 0x00000aea, 19405 }, /* leftpointer */
+    { 0x00000aeb, 22575 }, /* rightpointer */
     { 0x00000aec, 8649 }, /* club */
-    { 0x00000aed, 11295 }, /* diamond */
-    { 0x00000aee, 16162 }, /* heart */
-    { 0x00000af0, 19750 }, /* maltesecross */
+    { 0x00000aed, 11245 }, /* diamond */
+    { 0x00000aee, 16141 }, /* heart */
+    { 0x00000af0, 19729 }, /* maltesecross */
     { 0x00000af1, 10440 }, /* dagger */
-    { 0x00000af2, 11377 }, /* doubledagger */
+    { 0x00000af2, 11327 }, /* doubledagger */
     { 0x00000af3, 8616 }, /* checkmark */
     { 0x00000af4, 3380 }, /* ballotcross */
-    { 0x00000af5, 19942 }, /* musicalsharp */
-    { 0x00000af6, 19930 }, /* musicalflat */
-    { 0x00000af7, 19739 }, /* malesymbol */
-    { 0x00000af8, 12482 }, /* femalesymbol */
-    { 0x00000af9, 24436 }, /* telephone */
-    { 0x00000afa, 24446 }, /* telephonerecorder */
-    { 0x00000afb, 21619 }, /* phonographcopyright */
+    { 0x00000af5, 19921 }, /* musicalsharp */
+    { 0x00000af6, 19909 }, /* musicalflat */
+    { 0x00000af7, 19718 }, /* malesymbol */
+    { 0x00000af8, 12432 }, /* femalesymbol */
+    { 0x00000af9, 24428 }, /* telephone */
+    { 0x00000afa, 24438 }, /* telephonerecorder */
+    { 0x00000afb, 21611 }, /* phonographcopyright */
     { 0x00000afc, 8513 }, /* caret */
-    { 0x00000afd, 23110 }, /* singlelowquotemark */
-    { 0x00000afe, 11390 }, /* doublelowquotemark */
+    { 0x00000afd, 23102 }, /* singlelowquotemark */
+    { 0x00000afe, 11340 }, /* doublelowquotemark */
     { 0x00000aff, 8857 }, /* cursor */
-    { 0x00000ba3, 19358 }, /* leftcaret */
-    { 0x00000ba6, 22490 }, /* rightcaret */
-    { 0x00000ba8, 11424 }, /* downcaret */
-    { 0x00000ba9, 26477 }, /* upcaret */
-    { 0x00000bc0, 21406 }, /* overbar */
-    { 0x00000bc2, 11453 }, /* downtack */
-    { 0x00000bc3, 26512 }, /* upshoe */
-    { 0x00000bc4, 11443 }, /* downstile */
-    { 0x00000bc6, 26419 }, /* underbar */
-    { 0x00000bca, 18224 }, /* jot */
-    { 0x00000bcc, 22242 }, /* quad */
-    { 0x00000bce, 26527 }, /* uptack */
+    { 0x00000ba3, 19337 }, /* leftcaret */
+    { 0x00000ba6, 22482 }, /* rightcaret */
+    { 0x00000ba8, 11374 }, /* downcaret */
+    { 0x00000ba9, 26469 }, /* upcaret */
+    { 0x00000bc0, 21398 }, /* overbar */
+    { 0x00000bc2, 11403 }, /* downtack */
+    { 0x00000bc3, 26504 }, /* upshoe */
+    { 0x00000bc4, 11393 }, /* downstile */
+    { 0x00000bc6, 26411 }, /* underbar */
+    { 0x00000bca, 18203 }, /* jot */
+    { 0x00000bcc, 22234 }, /* quad */
+    { 0x00000bce, 26519 }, /* uptack */
     { 0x00000bcf, 8626 }, /* circle */
-    { 0x00000bd3, 26519 }, /* upstile */
-    { 0x00000bd6, 11434 }, /* downshoe */
-    { 0x00000bd8, 22596 }, /* rightshoe */
-    { 0x00000bda, 19450 }, /* leftshoe */
-    { 0x00000bdc, 19485 }, /* lefttack */
-    { 0x00000bfc, 22634 }, /* righttack */
-    { 0x00000cdf, 16255 }, /* hebrew_doublelowline */
-    { 0x00000ce0, 16168 }, /* hebrew_aleph */
-    { 0x00000ce1, 16193 }, /* hebrew_bet */
-    { 0x00000ce2, 16374 }, /* hebrew_gimel */
-    { 0x00000ce3, 16228 }, /* hebrew_dalet */
-    { 0x00000ce4, 16401 }, /* hebrew_he */
-    { 0x00000ce5, 16613 }, /* hebrew_waw */
-    { 0x00000ce6, 16659 }, /* hebrew_zain */
-    { 0x00000ce7, 16216 }, /* hebrew_chet */
-    { 0x00000ce8, 16590 }, /* hebrew_tet */
-    { 0x00000ce9, 16624 }, /* hebrew_yod */
-    { 0x00000cea, 16276 }, /* hebrew_finalkaph */
-    { 0x00000ceb, 16422 }, /* hebrew_kaph */
-    { 0x00000cec, 16445 }, /* hebrew_lamed */
-    { 0x00000ced, 16293 }, /* hebrew_finalmem */
-    { 0x00000cee, 16458 }, /* hebrew_mem */
-    { 0x00000cef, 16309 }, /* hebrew_finalnun */
-    { 0x00000cf0, 16469 }, /* hebrew_nun */
-    { 0x00000cf1, 16514 }, /* hebrew_samech */
-    { 0x00000cf2, 16181 }, /* hebrew_ayin */
-    { 0x00000cf3, 16325 }, /* hebrew_finalpe */
-    { 0x00000cf4, 16480 }, /* hebrew_pe */
-    { 0x00000cf5, 16340 }, /* hebrew_finalzade */
-    { 0x00000cf6, 16635 }, /* hebrew_zade */
-    { 0x00000cf7, 16490 }, /* hebrew_qoph */
-    { 0x00000cf8, 16502 }, /* hebrew_resh */
-    { 0x00000cf9, 16542 }, /* hebrew_shin */
-    { 0x00000cfa, 16579 }, /* hebrew_taw */
-    { 0x00000da1, 24699 }, /* Thai_kokai */
-    { 0x00000da2, 24629 }, /* Thai_khokhai */
-    { 0x00000da3, 24655 }, /* Thai_khokhuat */
-    { 0x00000da4, 24669 }, /* Thai_khokhwai */
-    { 0x00000da5, 24642 }, /* Thai_khokhon */
-    { 0x00000da6, 24683 }, /* Thai_khorakhang */
-    { 0x00000da7, 25012 }, /* Thai_ngongu */
-    { 0x00000da8, 24505 }, /* Thai_chochan */
-    { 0x00000da9, 24532 }, /* Thai_choching */
-    { 0x00000daa, 24518 }, /* Thai_chochang */
-    { 0x00000dab, 25373 }, /* Thai_soso */
-    { 0x00000dac, 24546 }, /* Thai_chochoe */
-    { 0x00000dad, 25549 }, /* Thai_yoying */
-    { 0x00000dae, 24559 }, /* Thai_dochada */
-    { 0x00000daf, 25502 }, /* Thai_topatak */
-    { 0x00000db0, 25461 }, /* Thai_thothan */
-    { 0x00000db1, 25411 }, /* Thai_thonangmontho */
-    { 0x00000db2, 25430 }, /* Thai_thophuthao */
-    { 0x00000db3, 25038 }, /* Thai_nonen */
-    { 0x00000db4, 24572 }, /* Thai_dodek */
-    { 0x00000db5, 25515 }, /* Thai_totao */
-    { 0x00000db6, 25488 }, /* Thai_thothung */
-    { 0x00000db7, 25446 }, /* Thai_thothahan */
-    { 0x00000db8, 25474 }, /* Thai_thothong */
-    { 0x00000db9, 25049 }, /* Thai_nonu */
-    { 0x00000dba, 24491 }, /* Thai_bobaimai */
-    { 0x00000dbb, 25140 }, /* Thai_popla */
-    { 0x00000dbc, 25110 }, /* Thai_phophung */
-    { 0x00000dbd, 24583 }, /* Thai_fofa */
-    { 0x00000dbe, 25097 }, /* Thai_phophan */
-    { 0x00000dbf, 24593 }, /* Thai_fofan */
-    { 0x00000dc0, 25124 }, /* Thai_phosamphao */
-    { 0x00000dc1, 25002 }, /* Thai_moma */
-    { 0x00000dc2, 25538 }, /* Thai_yoyak */
-    { 0x00000dc3, 25151 }, /* Thai_rorua */
-    { 0x00000dc4, 25162 }, /* Thai_ru */
-    { 0x00000dc5, 24862 }, /* Thai_loling */
-    { 0x00000dc6, 24874 }, /* Thai_lu */
-    { 0x00000dc7, 25526 }, /* Thai_wowaen */
-    { 0x00000dc8, 25361 }, /* Thai_sosala */
-    { 0x00000dc9, 25349 }, /* Thai_sorusi */
-    { 0x00000dca, 25383 }, /* Thai_sosua */
-    { 0x00000dcb, 24604 }, /* Thai_hohip */
-    { 0x00000dcc, 24849 }, /* Thai_lochula */
-    { 0x00000dcd, 25059 }, /* Thai_oang */
-    { 0x00000dce, 24615 }, /* Thai_honokhuk */
-    { 0x00000dcf, 25069 }, /* Thai_paiyannoi */
-    { 0x00000dd0, 25170 }, /* Thai_saraa */
-    { 0x00000dd1, 24910 }, /* Thai_maihanakat */
-    { 0x00000dd2, 25181 }, /* Thai_saraaa */
-    { 0x00000dd3, 25244 }, /* Thai_saraam */
-    { 0x00000dd4, 25267 }, /* Thai_sarai */
-    { 0x00000dd5, 25278 }, /* Thai_saraii */
-    { 0x00000dd6, 25312 }, /* Thai_saraue */
-    { 0x00000dd7, 25324 }, /* Thai_sarauee */
-    { 0x00000dd8, 25301 }, /* Thai_sarau */
-    { 0x00000dd9, 25337 }, /* Thai_sarauu */
-    { 0x00000dda, 25084 }, /* Thai_phinthu */
-    { 0x00000dde, 24926 }, /* Thai_maihanakat_maitho */
-    { 0x00000ddf, 24481 }, /* Thai_baht */
-    { 0x00000de0, 25256 }, /* Thai_sarae */
-    { 0x00000de1, 25193 }, /* Thai_saraae */
-    { 0x00000de2, 25290 }, /* Thai_sarao */
-    { 0x00000de3, 25225 }, /* Thai_saraaimaimuan */
-    { 0x00000de4, 25205 }, /* Thai_saraaimaimalai */
-    { 0x00000de5, 24710 }, /* Thai_lakkhangyao */
-    { 0x00000de6, 24988 }, /* Thai_maiyamok */
-    { 0x00000de7, 24949 }, /* Thai_maitaikhu */
-    { 0x00000de8, 24899 }, /* Thai_maiek */
-    { 0x00000de9, 24964 }, /* Thai_maitho */
-    { 0x00000dea, 24976 }, /* Thai_maitri */
-    { 0x00000deb, 24882 }, /* Thai_maichattawa */
-    { 0x00000dec, 25394 }, /* Thai_thanthakhat */
-    { 0x00000ded, 25024 }, /* Thai_nikhahit */
-    { 0x00000df0, 24837 }, /* Thai_leksun */
-    { 0x00000df1, 24775 }, /* Thai_leknung */
-    { 0x00000df2, 24824 }, /* Thai_leksong */
-    { 0x00000df3, 24801 }, /* Thai_leksam */
-    { 0x00000df4, 24813 }, /* Thai_leksi */
-    { 0x00000df5, 24740 }, /* Thai_lekha */
-    { 0x00000df6, 24751 }, /* Thai_lekhok */
-    { 0x00000df7, 24727 }, /* Thai_lekchet */
-    { 0x00000df8, 24788 }, /* Thai_lekpaet */
-    { 0x00000df9, 24763 }, /* Thai_lekkao */
-    { 0x00000ea1, 15263 }, /* Hangul_Kiyeog */
-    { 0x00000ea2, 15808 }, /* Hangul_SsangKiyeog */
-    { 0x00000ea3, 15277 }, /* Hangul_KiyeogSios */
-    { 0x00000ea4, 15358 }, /* Hangul_Nieun */
-    { 0x00000ea5, 15389 }, /* Hangul_NieunJieuj */
-    { 0x00000ea6, 15371 }, /* Hangul_NieunHieuh */
-    { 0x00000ea7, 14570 }, /* Hangul_Dikeud */
-    { 0x00000ea8, 15771 }, /* Hangul_SsangDikeud */
-    { 0x00000ea9, 15543 }, /* Hangul_Rieul */
-    { 0x00000eaa, 15574 }, /* Hangul_RieulKiyeog */
-    { 0x00000eab, 15593 }, /* Hangul_RieulMieum */
-    { 0x00000eac, 15630 }, /* Hangul_RieulPieub */
-    { 0x00000ead, 15648 }, /* Hangul_RieulSios */
-    { 0x00000eae, 15665 }, /* Hangul_RieulTieut */
-    { 0x00000eaf, 15611 }, /* Hangul_RieulPhieuf */
-    { 0x00000eb0, 15556 }, /* Hangul_RieulHieuh */
-    { 0x00000eb1, 15320 }, /* Hangul_Mieum */
-    { 0x00000eb2, 15455 }, /* Hangul_Pieub */
-    { 0x00000eb3, 15827 }, /* Hangul_SsangPieub */
-    { 0x00000eb4, 15468 }, /* Hangul_PieubSios */
-    { 0x00000eb5, 15744 }, /* Hangul_Sios */
-    { 0x00000eb6, 15845 }, /* Hangul_SsangSios */
-    { 0x00000eb7, 14659 }, /* Hangul_Ieung */
-    { 0x00000eb8, 15236 }, /* Hangul_Jieuj */
-    { 0x00000eb9, 15790 }, /* Hangul_SsangJieuj */
-    { 0x00000eba, 14540 }, /* Hangul_Cieuc */
-    { 0x00000ebb, 15249 }, /* Hangul_Khieuq */
-    { 0x00000ebc, 15965 }, /* Hangul_Tieut */
-    { 0x00000ebd, 15441 }, /* Hangul_Phieuf */
-    { 0x00000ebe, 14637 }, /* Hangul_Hieuh */
-    { 0x00000ebf, 14481 }, /* Hangul_A */
-    { 0x00000ec0, 14490 }, /* Hangul_AE */
-    { 0x00000ec1, 16039 }, /* Hangul_YA */
-    { 0x00000ec2, 16049 }, /* Hangul_YAE */
-    { 0x00000ec3, 14604 }, /* Hangul_EO */
-    { 0x00000ec4, 14584 }, /* Hangul_E */
-    { 0x00000ec5, 16070 }, /* Hangul_YEO */
-    { 0x00000ec6, 16060 }, /* Hangul_YE */
-    { 0x00000ec7, 15407 }, /* Hangul_O */
-    { 0x00000ec8, 15987 }, /* Hangul_WA */
-    { 0x00000ec9, 15997 }, /* Hangul_WAE */
-    { 0x00000eca, 15416 }, /* Hangul_OE */
-    { 0x00000ecb, 16110 }, /* Hangul_YO */
-    { 0x00000ecc, 15978 }, /* Hangul_U */
-    { 0x00000ecd, 16018 }, /* Hangul_WEO */
-    { 0x00000ece, 16008 }, /* Hangul_WE */
-    { 0x00000ecf, 16029 }, /* Hangul_WI */
-    { 0x00000ed0, 16120 }, /* Hangul_YU */
-    { 0x00000ed1, 14614 }, /* Hangul_EU */
-    { 0x00000ed2, 16100 }, /* Hangul_YI */
-    { 0x00000ed3, 14650 }, /* Hangul_I */
-    { 0x00000ed4, 14764 }, /* Hangul_J_Kiyeog */
-    { 0x00000ed5, 15134 }, /* Hangul_J_SsangKiyeog */
-    { 0x00000ed6, 14780 }, /* Hangul_J_KiyeogSios */
-    { 0x00000ed7, 14842 }, /* Hangul_J_Nieun */
-    { 0x00000ed8, 14877 }, /* Hangul_J_NieunJieuj */
-    { 0x00000ed9, 14857 }, /* Hangul_J_NieunHieuh */
-    { 0x00000eda, 14687 }, /* Hangul_J_Dikeud */
-    { 0x00000edb, 14964 }, /* Hangul_J_Rieul */
-    { 0x00000edc, 14999 }, /* Hangul_J_RieulKiyeog */
-    { 0x00000edd, 15020 }, /* Hangul_J_RieulMieum */
-    { 0x00000ede, 15061 }, /* Hangul_J_RieulPieub */
-    { 0x00000edf, 15081 }, /* Hangul_J_RieulSios */
-    { 0x00000ee0, 15100 }, /* Hangul_J_RieulTieut */
-    { 0x00000ee1, 15040 }, /* Hangul_J_RieulPhieuf */
-    { 0x00000ee2, 14979 }, /* Hangul_J_RieulHieuh */
-    { 0x00000ee3, 14827 }, /* Hangul_J_Mieum */
-    { 0x00000ee4, 14930 }, /* Hangul_J_Pieub */
-    { 0x00000ee5, 14945 }, /* Hangul_J_PieubSios */
-    { 0x00000ee6, 15120 }, /* Hangul_J_Sios */
-    { 0x00000ee7, 15155 }, /* Hangul_J_SsangSios */
-    { 0x00000ee8, 14718 }, /* Hangul_J_Ieung */
-    { 0x00000ee9, 14733 }, /* Hangul_J_Jieuj */
-    { 0x00000eea, 14672 }, /* Hangul_J_Cieuc */
-    { 0x00000eeb, 14748 }, /* Hangul_J_Khieuq */
-    { 0x00000eec, 15174 }, /* Hangul_J_Tieut */
-    { 0x00000eed, 14914 }, /* Hangul_J_Phieuf */
-    { 0x00000eee, 14703 }, /* Hangul_J_Hieuh */
-    { 0x00000eef, 15683 }, /* Hangul_RieulYeorinHieuh */
-    { 0x00000ef0, 15875 }, /* Hangul_SunkyeongeumMieum */
-    { 0x00000ef1, 15926 }, /* Hangul_SunkyeongeumPieub */
-    { 0x00000ef2, 15426 }, /* Hangul_PanSios */
-    { 0x00000ef3, 15295 }, /* Hangul_KkogjiDalrinIeung */
-    { 0x00000ef4, 15900 }, /* Hangul_SunkyeongeumPhieuf */
-    { 0x00000ef5, 16081 }, /* Hangul_YeorinHieuh */
-    { 0x00000ef6, 14500 }, /* Hangul_AraeA */
-    { 0x00000ef7, 14513 }, /* Hangul_AraeAE */
-    { 0x00000ef8, 14897 }, /* Hangul_J_PanSios */
-    { 0x00000ef9, 14800 }, /* Hangul_J_KkogjiDalrinIeung */
-    { 0x00000efa, 15189 }, /* Hangul_J_YeorinHieuh */
-    { 0x00000eff, 18879 }, /* Korean_Won */
-    { 0x000013bc, 20596 }, /* OE */
-    { 0x000013bd, 20599 }, /* oe */
-    { 0x000013be, 31263 }, /* Ydiaeresis */
-    { 0x000020ac, 12172 }, /* EuroSign */
+    { 0x00000bd3, 26511 }, /* upstile */
+    { 0x00000bd6, 11384 }, /* downshoe */
+    { 0x00000bd8, 22588 }, /* rightshoe */
+    { 0x00000bda, 19429 }, /* leftshoe */
+    { 0x00000bdc, 19464 }, /* lefttack */
+    { 0x00000bfc, 22626 }, /* righttack */
+    { 0x00000cdf, 16234 }, /* hebrew_doublelowline */
+    { 0x00000ce0, 16147 }, /* hebrew_aleph */
+    { 0x00000ce1, 16172 }, /* hebrew_bet */
+    { 0x00000ce2, 16353 }, /* hebrew_gimel */
+    { 0x00000ce3, 16207 }, /* hebrew_dalet */
+    { 0x00000ce4, 16380 }, /* hebrew_he */
+    { 0x00000ce5, 16592 }, /* hebrew_waw */
+    { 0x00000ce6, 16638 }, /* hebrew_zain */
+    { 0x00000ce7, 16195 }, /* hebrew_chet */
+    { 0x00000ce8, 16569 }, /* hebrew_tet */
+    { 0x00000ce9, 16603 }, /* hebrew_yod */
+    { 0x00000cea, 16255 }, /* hebrew_finalkaph */
+    { 0x00000ceb, 16401 }, /* hebrew_kaph */
+    { 0x00000cec, 16424 }, /* hebrew_lamed */
+    { 0x00000ced, 16272 }, /* hebrew_finalmem */
+    { 0x00000cee, 16437 }, /* hebrew_mem */
+    { 0x00000cef, 16288 }, /* hebrew_finalnun */
+    { 0x00000cf0, 16448 }, /* hebrew_nun */
+    { 0x00000cf1, 16493 }, /* hebrew_samech */
+    { 0x00000cf2, 16160 }, /* hebrew_ayin */
+    { 0x00000cf3, 16304 }, /* hebrew_finalpe */
+    { 0x00000cf4, 16459 }, /* hebrew_pe */
+    { 0x00000cf5, 16319 }, /* hebrew_finalzade */
+    { 0x00000cf6, 16614 }, /* hebrew_zade */
+    { 0x00000cf7, 16469 }, /* hebrew_qoph */
+    { 0x00000cf8, 16481 }, /* hebrew_resh */
+    { 0x00000cf9, 16521 }, /* hebrew_shin */
+    { 0x00000cfa, 16558 }, /* hebrew_taw */
+    { 0x00000da1, 24691 }, /* Thai_kokai */
+    { 0x00000da2, 24621 }, /* Thai_khokhai */
+    { 0x00000da3, 24647 }, /* Thai_khokhuat */
+    { 0x00000da4, 24661 }, /* Thai_khokhwai */
+    { 0x00000da5, 24634 }, /* Thai_khokhon */
+    { 0x00000da6, 24675 }, /* Thai_khorakhang */
+    { 0x00000da7, 25004 }, /* Thai_ngongu */
+    { 0x00000da8, 24497 }, /* Thai_chochan */
+    { 0x00000da9, 24524 }, /* Thai_choching */
+    { 0x00000daa, 24510 }, /* Thai_chochang */
+    { 0x00000dab, 25365 }, /* Thai_soso */
+    { 0x00000dac, 24538 }, /* Thai_chochoe */
+    { 0x00000dad, 25541 }, /* Thai_yoying */
+    { 0x00000dae, 24551 }, /* Thai_dochada */
+    { 0x00000daf, 25494 }, /* Thai_topatak */
+    { 0x00000db0, 25453 }, /* Thai_thothan */
+    { 0x00000db1, 25403 }, /* Thai_thonangmontho */
+    { 0x00000db2, 25422 }, /* Thai_thophuthao */
+    { 0x00000db3, 25030 }, /* Thai_nonen */
+    { 0x00000db4, 24564 }, /* Thai_dodek */
+    { 0x00000db5, 25507 }, /* Thai_totao */
+    { 0x00000db6, 25480 }, /* Thai_thothung */
+    { 0x00000db7, 25438 }, /* Thai_thothahan */
+    { 0x00000db8, 25466 }, /* Thai_thothong */
+    { 0x00000db9, 25041 }, /* Thai_nonu */
+    { 0x00000dba, 24483 }, /* Thai_bobaimai */
+    { 0x00000dbb, 25132 }, /* Thai_popla */
+    { 0x00000dbc, 25102 }, /* Thai_phophung */
+    { 0x00000dbd, 24575 }, /* Thai_fofa */
+    { 0x00000dbe, 25089 }, /* Thai_phophan */
+    { 0x00000dbf, 24585 }, /* Thai_fofan */
+    { 0x00000dc0, 25116 }, /* Thai_phosamphao */
+    { 0x00000dc1, 24994 }, /* Thai_moma */
+    { 0x00000dc2, 25530 }, /* Thai_yoyak */
+    { 0x00000dc3, 25143 }, /* Thai_rorua */
+    { 0x00000dc4, 25154 }, /* Thai_ru */
+    { 0x00000dc5, 24854 }, /* Thai_loling */
+    { 0x00000dc6, 24866 }, /* Thai_lu */
+    { 0x00000dc7, 25518 }, /* Thai_wowaen */
+    { 0x00000dc8, 25353 }, /* Thai_sosala */
+    { 0x00000dc9, 25341 }, /* Thai_sorusi */
+    { 0x00000dca, 25375 }, /* Thai_sosua */
+    { 0x00000dcb, 24596 }, /* Thai_hohip */
+    { 0x00000dcc, 24841 }, /* Thai_lochula */
+    { 0x00000dcd, 25051 }, /* Thai_oang */
+    { 0x00000dce, 24607 }, /* Thai_honokhuk */
+    { 0x00000dcf, 25061 }, /* Thai_paiyannoi */
+    { 0x00000dd0, 25162 }, /* Thai_saraa */
+    { 0x00000dd1, 24902 }, /* Thai_maihanakat */
+    { 0x00000dd2, 25173 }, /* Thai_saraaa */
+    { 0x00000dd3, 25236 }, /* Thai_saraam */
+    { 0x00000dd4, 25259 }, /* Thai_sarai */
+    { 0x00000dd5, 25270 }, /* Thai_saraii */
+    { 0x00000dd6, 25304 }, /* Thai_saraue */
+    { 0x00000dd7, 25316 }, /* Thai_sarauee */
+    { 0x00000dd8, 25293 }, /* Thai_sarau */
+    { 0x00000dd9, 25329 }, /* Thai_sarauu */
+    { 0x00000dda, 25076 }, /* Thai_phinthu */
+    { 0x00000dde, 24918 }, /* Thai_maihanakat_maitho */
+    { 0x00000ddf, 24473 }, /* Thai_baht */
+    { 0x00000de0, 25248 }, /* Thai_sarae */
+    { 0x00000de1, 25185 }, /* Thai_saraae */
+    { 0x00000de2, 25282 }, /* Thai_sarao */
+    { 0x00000de3, 25217 }, /* Thai_saraaimaimuan */
+    { 0x00000de4, 25197 }, /* Thai_saraaimaimalai */
+    { 0x00000de5, 24702 }, /* Thai_lakkhangyao */
+    { 0x00000de6, 24980 }, /* Thai_maiyamok */
+    { 0x00000de7, 24941 }, /* Thai_maitaikhu */
+    { 0x00000de8, 24891 }, /* Thai_maiek */
+    { 0x00000de9, 24956 }, /* Thai_maitho */
+    { 0x00000dea, 24968 }, /* Thai_maitri */
+    { 0x00000deb, 24874 }, /* Thai_maichattawa */
+    { 0x00000dec, 25386 }, /* Thai_thanthakhat */
+    { 0x00000ded, 25016 }, /* Thai_nikhahit */
+    { 0x00000df0, 24829 }, /* Thai_leksun */
+    { 0x00000df1, 24767 }, /* Thai_leknung */
+    { 0x00000df2, 24816 }, /* Thai_leksong */
+    { 0x00000df3, 24793 }, /* Thai_leksam */
+    { 0x00000df4, 24805 }, /* Thai_leksi */
+    { 0x00000df5, 24732 }, /* Thai_lekha */
+    { 0x00000df6, 24743 }, /* Thai_lekhok */
+    { 0x00000df7, 24719 }, /* Thai_lekchet */
+    { 0x00000df8, 24780 }, /* Thai_lekpaet */
+    { 0x00000df9, 24755 }, /* Thai_lekkao */
+    { 0x00000ea1, 15242 }, /* Hangul_Kiyeog */
+    { 0x00000ea2, 15787 }, /* Hangul_SsangKiyeog */
+    { 0x00000ea3, 15256 }, /* Hangul_KiyeogSios */
+    { 0x00000ea4, 15337 }, /* Hangul_Nieun */
+    { 0x00000ea5, 15368 }, /* Hangul_NieunJieuj */
+    { 0x00000ea6, 15350 }, /* Hangul_NieunHieuh */
+    { 0x00000ea7, 14549 }, /* Hangul_Dikeud */
+    { 0x00000ea8, 15750 }, /* Hangul_SsangDikeud */
+    { 0x00000ea9, 15522 }, /* Hangul_Rieul */
+    { 0x00000eaa, 15553 }, /* Hangul_RieulKiyeog */
+    { 0x00000eab, 15572 }, /* Hangul_RieulMieum */
+    { 0x00000eac, 15609 }, /* Hangul_RieulPieub */
+    { 0x00000ead, 15627 }, /* Hangul_RieulSios */
+    { 0x00000eae, 15644 }, /* Hangul_RieulTieut */
+    { 0x00000eaf, 15590 }, /* Hangul_RieulPhieuf */
+    { 0x00000eb0, 15535 }, /* Hangul_RieulHieuh */
+    { 0x00000eb1, 15299 }, /* Hangul_Mieum */
+    { 0x00000eb2, 15434 }, /* Hangul_Pieub */
+    { 0x00000eb3, 15806 }, /* Hangul_SsangPieub */
+    { 0x00000eb4, 15447 }, /* Hangul_PieubSios */
+    { 0x00000eb5, 15723 }, /* Hangul_Sios */
+    { 0x00000eb6, 15824 }, /* Hangul_SsangSios */
+    { 0x00000eb7, 14638 }, /* Hangul_Ieung */
+    { 0x00000eb8, 15215 }, /* Hangul_Jieuj */
+    { 0x00000eb9, 15769 }, /* Hangul_SsangJieuj */
+    { 0x00000eba, 14519 }, /* Hangul_Cieuc */
+    { 0x00000ebb, 15228 }, /* Hangul_Khieuq */
+    { 0x00000ebc, 15944 }, /* Hangul_Tieut */
+    { 0x00000ebd, 15420 }, /* Hangul_Phieuf */
+    { 0x00000ebe, 14616 }, /* Hangul_Hieuh */
+    { 0x00000ebf, 14460 }, /* Hangul_A */
+    { 0x00000ec0, 14469 }, /* Hangul_AE */
+    { 0x00000ec1, 16018 }, /* Hangul_YA */
+    { 0x00000ec2, 16028 }, /* Hangul_YAE */
+    { 0x00000ec3, 14583 }, /* Hangul_EO */
+    { 0x00000ec4, 14563 }, /* Hangul_E */
+    { 0x00000ec5, 16049 }, /* Hangul_YEO */
+    { 0x00000ec6, 16039 }, /* Hangul_YE */
+    { 0x00000ec7, 15386 }, /* Hangul_O */
+    { 0x00000ec8, 15966 }, /* Hangul_WA */
+    { 0x00000ec9, 15976 }, /* Hangul_WAE */
+    { 0x00000eca, 15395 }, /* Hangul_OE */
+    { 0x00000ecb, 16089 }, /* Hangul_YO */
+    { 0x00000ecc, 15957 }, /* Hangul_U */
+    { 0x00000ecd, 15997 }, /* Hangul_WEO */
+    { 0x00000ece, 15987 }, /* Hangul_WE */
+    { 0x00000ecf, 16008 }, /* Hangul_WI */
+    { 0x00000ed0, 16099 }, /* Hangul_YU */
+    { 0x00000ed1, 14593 }, /* Hangul_EU */
+    { 0x00000ed2, 16079 }, /* Hangul_YI */
+    { 0x00000ed3, 14629 }, /* Hangul_I */
+    { 0x00000ed4, 14743 }, /* Hangul_J_Kiyeog */
+    { 0x00000ed5, 15113 }, /* Hangul_J_SsangKiyeog */
+    { 0x00000ed6, 14759 }, /* Hangul_J_KiyeogSios */
+    { 0x00000ed7, 14821 }, /* Hangul_J_Nieun */
+    { 0x00000ed8, 14856 }, /* Hangul_J_NieunJieuj */
+    { 0x00000ed9, 14836 }, /* Hangul_J_NieunHieuh */
+    { 0x00000eda, 14666 }, /* Hangul_J_Dikeud */
+    { 0x00000edb, 14943 }, /* Hangul_J_Rieul */
+    { 0x00000edc, 14978 }, /* Hangul_J_RieulKiyeog */
+    { 0x00000edd, 14999 }, /* Hangul_J_RieulMieum */
+    { 0x00000ede, 15040 }, /* Hangul_J_RieulPieub */
+    { 0x00000edf, 15060 }, /* Hangul_J_RieulSios */
+    { 0x00000ee0, 15079 }, /* Hangul_J_RieulTieut */
+    { 0x00000ee1, 15019 }, /* Hangul_J_RieulPhieuf */
+    { 0x00000ee2, 14958 }, /* Hangul_J_RieulHieuh */
+    { 0x00000ee3, 14806 }, /* Hangul_J_Mieum */
+    { 0x00000ee4, 14909 }, /* Hangul_J_Pieub */
+    { 0x00000ee5, 14924 }, /* Hangul_J_PieubSios */
+    { 0x00000ee6, 15099 }, /* Hangul_J_Sios */
+    { 0x00000ee7, 15134 }, /* Hangul_J_SsangSios */
+    { 0x00000ee8, 14697 }, /* Hangul_J_Ieung */
+    { 0x00000ee9, 14712 }, /* Hangul_J_Jieuj */
+    { 0x00000eea, 14651 }, /* Hangul_J_Cieuc */
+    { 0x00000eeb, 14727 }, /* Hangul_J_Khieuq */
+    { 0x00000eec, 15153 }, /* Hangul_J_Tieut */
+    { 0x00000eed, 14893 }, /* Hangul_J_Phieuf */
+    { 0x00000eee, 14682 }, /* Hangul_J_Hieuh */
+    { 0x00000eef, 15662 }, /* Hangul_RieulYeorinHieuh */
+    { 0x00000ef0, 15854 }, /* Hangul_SunkyeongeumMieum */
+    { 0x00000ef1, 15905 }, /* Hangul_SunkyeongeumPieub */
+    { 0x00000ef2, 15405 }, /* Hangul_PanSios */
+    { 0x00000ef3, 15274 }, /* Hangul_KkogjiDalrinIeung */
+    { 0x00000ef4, 15879 }, /* Hangul_SunkyeongeumPhieuf */
+    { 0x00000ef5, 16060 }, /* Hangul_YeorinHieuh */
+    { 0x00000ef6, 14479 }, /* Hangul_AraeA */
+    { 0x00000ef7, 14492 }, /* Hangul_AraeAE */
+    { 0x00000ef8, 14876 }, /* Hangul_J_PanSios */
+    { 0x00000ef9, 14779 }, /* Hangul_J_KkogjiDalrinIeung */
+    { 0x00000efa, 15168 }, /* Hangul_J_YeorinHieuh */
+    { 0x00000eff, 18858 }, /* Korean_Won */
+    { 0x000013bc, 20575 }, /* OE */
+    { 0x000013bd, 20578 }, /* oe */
+    { 0x000013be, 31593 }, /* Ydiaeresis */
+    { 0x000020ac, 12122 }, /* EuroSign */
     { 0x0000fd01, 125 }, /* 3270_Duplicate */
     { 0x0000fd02, 195 }, /* 3270_FieldMark */
     { 0x0000fd03, 343 }, /* 3270_Right2 */
@@ -6439,293 +6484,290 @@ static const struct name_keysym keysym_to_name[] = {
     { 0x0000fd1c, 91 }, /* 3270_CursorSelect */
     { 0x0000fd1d, 293 }, /* 3270_PrintScreen */
     { 0x0000fd1e, 140 }, /* 3270_Enter */
-    { 0x0000fe01, 17863 }, /* ISO_Lock */
-    { 0x0000fe02, 17746 }, /* ISO_Level2_Latch */
-    { 0x0000fe03, 17796 }, /* ISO_Level3_Shift */
-    { 0x0000fe04, 17763 }, /* ISO_Level3_Latch */
-    { 0x0000fe05, 17780 }, /* ISO_Level3_Lock */
-    { 0x0000fe06, 17651 }, /* ISO_Group_Latch */
-    { 0x0000fe07, 17667 }, /* ISO_Group_Lock */
-    { 0x0000fe08, 17908 }, /* ISO_Next_Group */
-    { 0x0000fe09, 17923 }, /* ISO_Next_Group_Lock */
-    { 0x0000fe0a, 18032 }, /* ISO_Prev_Group */
-    { 0x0000fe0b, 18047 }, /* ISO_Prev_Group_Lock */
-    { 0x0000fe0c, 17614 }, /* ISO_First_Group */
-    { 0x0000fe0d, 17630 }, /* ISO_First_Group_Lock */
-    { 0x0000fe0e, 17698 }, /* ISO_Last_Group */
-    { 0x0000fe0f, 17713 }, /* ISO_Last_Group_Lock */
-    { 0x0000fe11, 17846 }, /* ISO_Level5_Shift */
-    { 0x0000fe12, 17813 }, /* ISO_Level5_Latch */
-    { 0x0000fe13, 17830 }, /* ISO_Level5_Lock */
-    { 0x0000fe20, 17733 }, /* ISO_Left_Tab */
-    { 0x0000fe21, 17891 }, /* ISO_Move_Line_Up */
-    { 0x0000fe22, 17872 }, /* ISO_Move_Line_Down */
-    { 0x0000fe23, 17965 }, /* ISO_Partial_Line_Up */
-    { 0x0000fe24, 17943 }, /* ISO_Partial_Line_Down */
-    { 0x0000fe25, 17985 }, /* ISO_Partial_Space_Left */
-    { 0x0000fe26, 18008 }, /* ISO_Partial_Space_Right */
-    { 0x0000fe27, 18141 }, /* ISO_Set_Margin_Left */
-    { 0x0000fe28, 18161 }, /* ISO_Set_Margin_Right */
-    { 0x0000fe29, 18092 }, /* ISO_Release_Margin_Left */
-    { 0x0000fe2a, 18116 }, /* ISO_Release_Margin_Right */
-    { 0x0000fe2b, 18067 }, /* ISO_Release_Both_Margins */
-    { 0x0000fe2c, 17552 }, /* ISO_Fast_Cursor_Left */
-    { 0x0000fe2d, 17573 }, /* ISO_Fast_Cursor_Right */
-    { 0x0000fe2e, 17595 }, /* ISO_Fast_Cursor_Up */
-    { 0x0000fe2f, 17531 }, /* ISO_Fast_Cursor_Down */
-    { 0x0000fe30, 17454 }, /* ISO_Continuous_Underline */
-    { 0x0000fe31, 17479 }, /* ISO_Discontinuous_Underline */
-    { 0x0000fe32, 17507 }, /* ISO_Emphasize */
-    { 0x0000fe33, 17436 }, /* ISO_Center_Object */
-    { 0x0000fe34, 17521 }, /* ISO_Enter */
-    { 0x0000fe50, 10940 }, /* dead_grave */
-    { 0x0000fe51, 10613 }, /* dead_acute */
-    { 0x0000fe52, 10836 }, /* dead_circumflex */
-    { 0x0000fe53, 11179 }, /* dead_tilde */
-    { 0x0000fe54, 11062 }, /* dead_macron */
-    { 0x0000fe55, 10782 }, /* dead_breve */
+    { 0x0000fe01, 17842 }, /* ISO_Lock */
+    { 0x0000fe02, 17725 }, /* ISO_Level2_Latch */
+    { 0x0000fe03, 17775 }, /* ISO_Level3_Shift */
+    { 0x0000fe04, 17742 }, /* ISO_Level3_Latch */
+    { 0x0000fe05, 17759 }, /* ISO_Level3_Lock */
+    { 0x0000fe06, 17630 }, /* ISO_Group_Latch */
+    { 0x0000fe07, 17646 }, /* ISO_Group_Lock */
+    { 0x0000fe08, 17887 }, /* ISO_Next_Group */
+    { 0x0000fe09, 17902 }, /* ISO_Next_Group_Lock */
+    { 0x0000fe0a, 18011 }, /* ISO_Prev_Group */
+    { 0x0000fe0b, 18026 }, /* ISO_Prev_Group_Lock */
+    { 0x0000fe0c, 17593 }, /* ISO_First_Group */
+    { 0x0000fe0d, 17609 }, /* ISO_First_Group_Lock */
+    { 0x0000fe0e, 17677 }, /* ISO_Last_Group */
+    { 0x0000fe0f, 17692 }, /* ISO_Last_Group_Lock */
+    { 0x0000fe11, 17825 }, /* ISO_Level5_Shift */
+    { 0x0000fe12, 17792 }, /* ISO_Level5_Latch */
+    { 0x0000fe13, 17809 }, /* ISO_Level5_Lock */
+    { 0x0000fe20, 17712 }, /* ISO_Left_Tab */
+    { 0x0000fe21, 17870 }, /* ISO_Move_Line_Up */
+    { 0x0000fe22, 17851 }, /* ISO_Move_Line_Down */
+    { 0x0000fe23, 17944 }, /* ISO_Partial_Line_Up */
+    { 0x0000fe24, 17922 }, /* ISO_Partial_Line_Down */
+    { 0x0000fe25, 17964 }, /* ISO_Partial_Space_Left */
+    { 0x0000fe26, 17987 }, /* ISO_Partial_Space_Right */
+    { 0x0000fe27, 18120 }, /* ISO_Set_Margin_Left */
+    { 0x0000fe28, 18140 }, /* ISO_Set_Margin_Right */
+    { 0x0000fe29, 18071 }, /* ISO_Release_Margin_Left */
+    { 0x0000fe2a, 18095 }, /* ISO_Release_Margin_Right */
+    { 0x0000fe2b, 18046 }, /* ISO_Release_Both_Margins */
+    { 0x0000fe2c, 17531 }, /* ISO_Fast_Cursor_Left */
+    { 0x0000fe2d, 17552 }, /* ISO_Fast_Cursor_Right */
+    { 0x0000fe2e, 17574 }, /* ISO_Fast_Cursor_Up */
+    { 0x0000fe2f, 17510 }, /* ISO_Fast_Cursor_Down */
+    { 0x0000fe30, 17433 }, /* ISO_Continuous_Underline */
+    { 0x0000fe31, 17458 }, /* ISO_Discontinuous_Underline */
+    { 0x0000fe32, 17486 }, /* ISO_Emphasize */
+    { 0x0000fe33, 17415 }, /* ISO_Center_Object */
+    { 0x0000fe34, 17500 }, /* ISO_Enter */
+    { 0x0000fe50, 10894 }, /* dead_grave */
+    { 0x0000fe51, 10590 }, /* dead_acute */
+    { 0x0000fe52, 10790 }, /* dead_circumflex */
+    { 0x0000fe53, 11129 }, /* dead_tilde */
+    { 0x0000fe54, 10990 }, /* dead_macron */
+    { 0x0000fe55, 10736 }, /* dead_breve */
     { 0x0000fe56, 10537 }, /* dead_abovedot */
-    { 0x0000fe57, 10877 }, /* dead_diaeresis */
+    { 0x0000fe57, 10831 }, /* dead_diaeresis */
     { 0x0000fe58, 10575 }, /* dead_abovering */
-    { 0x0000fe59, 10892 }, /* dead_doubleacute */
-    { 0x0000fe5a, 10812 }, /* dead_caron */
-    { 0x0000fe5b, 10823 }, /* dead_cedilla */
-    { 0x0000fe5c, 11088 }, /* dead_ogonek */
-    { 0x0000fe5d, 11015 }, /* dead_iota */
-    { 0x0000fe5e, 11204 }, /* dead_voiced_sound */
-    { 0x0000fe5f, 11128 }, /* dead_semivoiced_sound */
-    { 0x0000fe60, 10697 }, /* dead_belowdot */
-    { 0x0000fe61, 10962 }, /* dead_hook */
-    { 0x0000fe62, 10972 }, /* dead_horn */
-    { 0x0000fe63, 11167 }, /* dead_stroke */
+    { 0x0000fe59, 10846 }, /* dead_doubleacute */
+    { 0x0000fe5a, 10766 }, /* dead_caron */
+    { 0x0000fe5b, 10777 }, /* dead_cedilla */
+    { 0x0000fe5c, 11016 }, /* dead_ogonek */
+    { 0x0000fe5d, 10980 }, /* dead_iota */
+    { 0x0000fe5e, 11154 }, /* dead_voiced_sound */
+    { 0x0000fe5f, 11078 }, /* dead_semivoiced_sound */
+    { 0x0000fe60, 10674 }, /* dead_belowdot */
+    { 0x0000fe61, 10927 }, /* dead_hook */
+    { 0x0000fe62, 10937 }, /* dead_horn */
+    { 0x0000fe63, 11117 }, /* dead_stroke */
     { 0x0000fe64, 10521 }, /* dead_abovecomma */
     { 0x0000fe65, 10551 }, /* dead_abovereversedcomma */
-    { 0x0000fe66, 10909 }, /* dead_doublegrave */
-    { 0x0000fe67, 10728 }, /* dead_belowring */
-    { 0x0000fe68, 10711 }, /* dead_belowmacron */
-    { 0x0000fe69, 10640 }, /* dead_belowcircumflex */
-    { 0x0000fe6a, 10743 }, /* dead_belowtilde */
-    { 0x0000fe6b, 10624 }, /* dead_belowbreve */
-    { 0x0000fe6c, 10677 }, /* dead_belowdiaeresis */
-    { 0x0000fe6d, 10996 }, /* dead_invertedbreve */
-    { 0x0000fe6e, 10661 }, /* dead_belowcomma */
-    { 0x0000fe6f, 10852 }, /* dead_currency */
+    { 0x0000fe66, 10863 }, /* dead_doublegrave */
+    { 0x0000fe67, 10705 }, /* dead_belowring */
+    { 0x0000fe68, 10688 }, /* dead_belowmacron */
+    { 0x0000fe69, 10617 }, /* dead_belowcircumflex */
+    { 0x0000fe6a, 10720 }, /* dead_belowtilde */
+    { 0x0000fe6b, 10601 }, /* dead_belowbreve */
+    { 0x0000fe6c, 10654 }, /* dead_belowdiaeresis */
+    { 0x0000fe6d, 10961 }, /* dead_invertedbreve */
+    { 0x0000fe6e, 10638 }, /* dead_belowcomma */
+    { 0x0000fe6f, 10806 }, /* dead_currency */
     { 0x0000fe70, 583 }, /* AccessX_Enable */
     { 0x0000fe71, 598 }, /* AccessX_Feedback_Enable */
-    { 0x0000fe72, 22424 }, /* RepeatKeys_Enable */
-    { 0x0000fe73, 23856 }, /* SlowKeys_Enable */
+    { 0x0000fe72, 22416 }, /* RepeatKeys_Enable */
+    { 0x0000fe73, 23848 }, /* SlowKeys_Enable */
     { 0x0000fe74, 3564 }, /* BounceKeys_Enable */
-    { 0x0000fe75, 23918 }, /* StickyKeys_Enable */
-    { 0x0000fe76, 19864 }, /* MouseKeys_Enable */
-    { 0x0000fe77, 19841 }, /* MouseKeys_Accel_Enable */
-    { 0x0000fe78, 21414 }, /* Overlay1_Enable */
-    { 0x0000fe79, 21430 }, /* Overlay2_Enable */
+    { 0x0000fe75, 23910 }, /* StickyKeys_Enable */
+    { 0x0000fe76, 19843 }, /* MouseKeys_Enable */
+    { 0x0000fe77, 19820 }, /* MouseKeys_Accel_Enable */
+    { 0x0000fe78, 21406 }, /* Overlay1_Enable */
+    { 0x0000fe79, 21422 }, /* Overlay2_Enable */
     { 0x0000fe7a, 3309 }, /* AudibleBell_Enable */
     { 0x0000fe80, 10507 }, /* dead_a */
     { 0x0000fe81, 10514 }, /* dead_A */
-    { 0x0000fe82, 10926 }, /* dead_e */
-    { 0x0000fe83, 10933 }, /* dead_E */
-    { 0x0000fe84, 10982 }, /* dead_i */
-    { 0x0000fe85, 10989 }, /* dead_I */
-    { 0x0000fe86, 11074 }, /* dead_o */
-    { 0x0000fe87, 11081 }, /* dead_O */
-    { 0x0000fe88, 11190 }, /* dead_u */
-    { 0x0000fe89, 11197 }, /* dead_U */
-    { 0x0000fe8a, 11150 }, /* dead_small_schwa */
-    { 0x0000fe8b, 10793 }, /* dead_capital_schwa */
-    { 0x0000fe8c, 10951 }, /* dead_greek */
-    { 0x0000fe90, 11049 }, /* dead_lowline */
-    { 0x0000fe91, 10590 }, /* dead_aboveverticalline */
-    { 0x0000fe92, 10759 }, /* dead_belowverticalline */
-    { 0x0000fe93, 11025 }, /* dead_longsolidusoverlay */
+    { 0x0000fe82, 10880 }, /* dead_e */
+    { 0x0000fe83, 10887 }, /* dead_E */
+    { 0x0000fe84, 10947 }, /* dead_i */
+    { 0x0000fe85, 10954 }, /* dead_I */
+    { 0x0000fe86, 11002 }, /* dead_o */
+    { 0x0000fe87, 11009 }, /* dead_O */
+    { 0x0000fe88, 11140 }, /* dead_u */
+    { 0x0000fe89, 11147 }, /* dead_U */
+    { 0x0000fe8a, 11056 }, /* dead_schwa */
+    { 0x0000fe8b, 11067 }, /* dead_SCHWA */
+    { 0x0000fe8c, 10905 }, /* dead_greek */
+    { 0x0000fe8d, 10916 }, /* dead_hamza */
     { 0x0000fea0, 8594 }, /* ch */
     { 0x0000fea1, 8597 }, /* Ch */
     { 0x0000fea2, 8600 }, /* CH */
     { 0x0000fea3, 8443 }, /* c_h */
     { 0x0000fea4, 8447 }, /* C_h */
     { 0x0000fea5, 8451 }, /* C_H */
-    { 0x0000fed0, 12618 }, /* First_Virtual_Screen */
-    { 0x0000fed1, 22162 }, /* Prev_Virtual_Screen */
-    { 0x0000fed2, 20110 }, /* Next_Virtual_Screen */
-    { 0x0000fed4, 19243 }, /* Last_Virtual_Screen */
-    { 0x0000fed5, 24464 }, /* Terminate_Server */
-    { 0x0000fee0, 22080 }, /* Pointer_Left */
-    { 0x0000fee1, 22093 }, /* Pointer_Right */
-    { 0x0000fee2, 22107 }, /* Pointer_Up */
-    { 0x0000fee3, 21925 }, /* Pointer_Down */
-    { 0x0000fee4, 22118 }, /* Pointer_UpLeft */
-    { 0x0000fee5, 22133 }, /* Pointer_UpRight */
-    { 0x0000fee6, 21938 }, /* Pointer_DownLeft */
-    { 0x0000fee7, 21955 }, /* Pointer_DownRight */
-    { 0x0000fee8, 21753 }, /* Pointer_Button_Dflt */
-    { 0x0000fee9, 21673 }, /* Pointer_Button1 */
-    { 0x0000feea, 21689 }, /* Pointer_Button2 */
-    { 0x0000feeb, 21705 }, /* Pointer_Button3 */
-    { 0x0000feec, 21721 }, /* Pointer_Button4 */
-    { 0x0000feed, 21737 }, /* Pointer_Button5 */
-    { 0x0000feee, 21863 }, /* Pointer_DblClick_Dflt */
-    { 0x0000feef, 21773 }, /* Pointer_DblClick1 */
-    { 0x0000fef0, 21791 }, /* Pointer_DblClick2 */
-    { 0x0000fef1, 21809 }, /* Pointer_DblClick3 */
-    { 0x0000fef2, 21827 }, /* Pointer_DblClick4 */
-    { 0x0000fef3, 21845 }, /* Pointer_DblClick5 */
-    { 0x0000fef4, 22043 }, /* Pointer_Drag_Dflt */
-    { 0x0000fef5, 21973 }, /* Pointer_Drag1 */
-    { 0x0000fef6, 21987 }, /* Pointer_Drag2 */
-    { 0x0000fef7, 22001 }, /* Pointer_Drag3 */
-    { 0x0000fef8, 22015 }, /* Pointer_Drag4 */
-    { 0x0000fef9, 22061 }, /* Pointer_EnableKeys */
-    { 0x0000fefa, 21654 }, /* Pointer_Accelerate */
-    { 0x0000fefb, 21885 }, /* Pointer_DfltBtnNext */
-    { 0x0000fefc, 21905 }, /* Pointer_DfltBtnPrev */
-    { 0x0000fefd, 22029 }, /* Pointer_Drag5 */
+    { 0x0000fed0, 12568 }, /* First_Virtual_Screen */
+    { 0x0000fed1, 22154 }, /* Prev_Virtual_Screen */
+    { 0x0000fed2, 20089 }, /* Next_Virtual_Screen */
+    { 0x0000fed4, 19222 }, /* Last_Virtual_Screen */
+    { 0x0000fed5, 24456 }, /* Terminate_Server */
+    { 0x0000fee0, 22072 }, /* Pointer_Left */
+    { 0x0000fee1, 22085 }, /* Pointer_Right */
+    { 0x0000fee2, 22099 }, /* Pointer_Up */
+    { 0x0000fee3, 21917 }, /* Pointer_Down */
+    { 0x0000fee4, 22110 }, /* Pointer_UpLeft */
+    { 0x0000fee5, 22125 }, /* Pointer_UpRight */
+    { 0x0000fee6, 21930 }, /* Pointer_DownLeft */
+    { 0x0000fee7, 21947 }, /* Pointer_DownRight */
+    { 0x0000fee8, 21745 }, /* Pointer_Button_Dflt */
+    { 0x0000fee9, 21665 }, /* Pointer_Button1 */
+    { 0x0000feea, 21681 }, /* Pointer_Button2 */
+    { 0x0000feeb, 21697 }, /* Pointer_Button3 */
+    { 0x0000feec, 21713 }, /* Pointer_Button4 */
+    { 0x0000feed, 21729 }, /* Pointer_Button5 */
+    { 0x0000feee, 21855 }, /* Pointer_DblClick_Dflt */
+    { 0x0000feef, 21765 }, /* Pointer_DblClick1 */
+    { 0x0000fef0, 21783 }, /* Pointer_DblClick2 */
+    { 0x0000fef1, 21801 }, /* Pointer_DblClick3 */
+    { 0x0000fef2, 21819 }, /* Pointer_DblClick4 */
+    { 0x0000fef3, 21837 }, /* Pointer_DblClick5 */
+    { 0x0000fef4, 22035 }, /* Pointer_Drag_Dflt */
+    { 0x0000fef5, 21965 }, /* Pointer_Drag1 */
+    { 0x0000fef6, 21979 }, /* Pointer_Drag2 */
+    { 0x0000fef7, 21993 }, /* Pointer_Drag3 */
+    { 0x0000fef8, 22007 }, /* Pointer_Drag4 */
+    { 0x0000fef9, 22053 }, /* Pointer_EnableKeys */
+    { 0x0000fefa, 21646 }, /* Pointer_Accelerate */
+    { 0x0000fefb, 21877 }, /* Pointer_DfltBtnNext */
+    { 0x0000fefc, 21897 }, /* Pointer_DfltBtnPrev */
+    { 0x0000fefd, 22021 }, /* Pointer_Drag5 */
     { 0x0000ff08, 3362 }, /* BackSpace */
-    { 0x0000ff09, 24380 }, /* Tab */
-    { 0x0000ff0a, 19516 }, /* Linefeed */
+    { 0x0000ff09, 24372 }, /* Tab */
+    { 0x0000ff0a, 19495 }, /* Linefeed */
     { 0x0000ff0b, 8633 }, /* Clear */
-    { 0x0000ff0d, 22448 }, /* Return */
-    { 0x0000ff13, 21563 }, /* Pause */
-    { 0x0000ff14, 22781 }, /* Scroll_Lock */
-    { 0x0000ff15, 24361 }, /* Sys_Req */
-    { 0x0000ff1b, 12139 }, /* Escape */
-    { 0x0000ff20, 19893 }, /* Multi_key */
-    { 0x0000ff21, 18827 }, /* Kanji */
-    { 0x0000ff22, 19884 }, /* Muhenkan */
-    { 0x0000ff23, 16696 }, /* Henkan_Mode */
-    { 0x0000ff24, 22644 }, /* Romaji */
-    { 0x0000ff25, 16717 }, /* Hiragana */
-    { 0x0000ff26, 18852 }, /* Katakana */
-    { 0x0000ff27, 16726 }, /* Hiragana_Katakana */
-    { 0x0000ff28, 31379 }, /* Zenkaku */
-    { 0x0000ff29, 16130 }, /* Hankaku */
-    { 0x0000ff2a, 31387 }, /* Zenkaku_Hankaku */
-    { 0x0000ff2b, 25834 }, /* Touroku */
-    { 0x0000ff2c, 19780 }, /* Massyo */
-    { 0x0000ff2d, 18433 }, /* Kana_Lock */
-    { 0x0000ff2e, 18644 }, /* Kana_Shift */
-    { 0x0000ff2f, 11861 }, /* Eisu_Shift */
-    { 0x0000ff30, 11872 }, /* Eisu_toggle */
-    { 0x0000ff31, 14474 }, /* Hangul */
-    { 0x0000ff32, 15862 }, /* Hangul_Start */
-    { 0x0000ff33, 14593 }, /* Hangul_End */
-    { 0x0000ff34, 14624 }, /* Hangul_Hanja */
-    { 0x0000ff35, 15210 }, /* Hangul_Jamo */
-    { 0x0000ff36, 15707 }, /* Hangul_Romaja */
+    { 0x0000ff0d, 22440 }, /* Return */
+    { 0x0000ff13, 21555 }, /* Pause */
+    { 0x0000ff14, 22773 }, /* Scroll_Lock */
+    { 0x0000ff15, 24353 }, /* Sys_Req */
+    { 0x0000ff1b, 12089 }, /* Escape */
+    { 0x0000ff20, 19872 }, /* Multi_key */
+    { 0x0000ff21, 18806 }, /* Kanji */
+    { 0x0000ff22, 19863 }, /* Muhenkan */
+    { 0x0000ff23, 16675 }, /* Henkan_Mode */
+    { 0x0000ff24, 22636 }, /* Romaji */
+    { 0x0000ff25, 16696 }, /* Hiragana */
+    { 0x0000ff26, 18831 }, /* Katakana */
+    { 0x0000ff27, 16705 }, /* Hiragana_Katakana */
+    { 0x0000ff28, 31709 }, /* Zenkaku */
+    { 0x0000ff29, 16109 }, /* Hankaku */
+    { 0x0000ff2a, 31717 }, /* Zenkaku_Hankaku */
+    { 0x0000ff2b, 25826 }, /* Touroku */
+    { 0x0000ff2c, 19759 }, /* Massyo */
+    { 0x0000ff2d, 18412 }, /* Kana_Lock */
+    { 0x0000ff2e, 18623 }, /* Kana_Shift */
+    { 0x0000ff2f, 11811 }, /* Eisu_Shift */
+    { 0x0000ff30, 11822 }, /* Eisu_toggle */
+    { 0x0000ff31, 14453 }, /* Hangul */
+    { 0x0000ff32, 15841 }, /* Hangul_Start */
+    { 0x0000ff33, 14572 }, /* Hangul_End */
+    { 0x0000ff34, 14603 }, /* Hangul_Hanja */
+    { 0x0000ff35, 15189 }, /* Hangul_Jamo */
+    { 0x0000ff36, 15686 }, /* Hangul_Romaja */
     { 0x0000ff37, 8654 }, /* Codeinput */
-    { 0x0000ff38, 15222 }, /* Hangul_Jeonja */
-    { 0x0000ff39, 14527 }, /* Hangul_Banja */
-    { 0x0000ff3a, 15502 }, /* Hangul_PreHanja */
-    { 0x0000ff3b, 15485 }, /* Hangul_PostHanja */
-    { 0x0000ff3c, 23094 }, /* SingleCandidate */
-    { 0x0000ff3d, 19903 }, /* MultipleCandidate */
-    { 0x0000ff3e, 22182 }, /* PreviousCandidate */
-    { 0x0000ff3f, 15756 }, /* Hangul_Special */
-    { 0x0000ff50, 16744 }, /* Home */
-    { 0x0000ff51, 19326 }, /* Left */
-    { 0x0000ff52, 26466 }, /* Up */
-    { 0x0000ff53, 22455 }, /* Right */
-    { 0x0000ff54, 11409 }, /* Down */
-    { 0x0000ff55, 22206 }, /* Prior */
-    { 0x0000ff56, 20105 }, /* Next */
-    { 0x0000ff57, 12018 }, /* End */
+    { 0x0000ff38, 15201 }, /* Hangul_Jeonja */
+    { 0x0000ff39, 14506 }, /* Hangul_Banja */
+    { 0x0000ff3a, 15481 }, /* Hangul_PreHanja */
+    { 0x0000ff3b, 15464 }, /* Hangul_PostHanja */
+    { 0x0000ff3c, 23086 }, /* SingleCandidate */
+    { 0x0000ff3d, 19882 }, /* MultipleCandidate */
+    { 0x0000ff3e, 22174 }, /* PreviousCandidate */
+    { 0x0000ff3f, 15735 }, /* Hangul_Special */
+    { 0x0000ff50, 16723 }, /* Home */
+    { 0x0000ff51, 19305 }, /* Left */
+    { 0x0000ff52, 26458 }, /* Up */
+    { 0x0000ff53, 22447 }, /* Right */
+    { 0x0000ff54, 11359 }, /* Down */
+    { 0x0000ff55, 22198 }, /* Prior */
+    { 0x0000ff56, 20084 }, /* Next */
+    { 0x0000ff57, 11968 }, /* End */
     { 0x0000ff58, 3404 }, /* Begin */
-    { 0x0000ff60, 22809 }, /* Select */
-    { 0x0000ff61, 22200 }, /* Print */
-    { 0x0000ff62, 12199 }, /* Execute */
-    { 0x0000ff63, 17366 }, /* Insert */
-    { 0x0000ff65, 26439 }, /* Undo */
-    { 0x0000ff66, 22408 }, /* Redo */
-    { 0x0000ff67, 19787 }, /* Menu */
-    { 0x0000ff68, 12613 }, /* Find */
+    { 0x0000ff60, 22801 }, /* Select */
+    { 0x0000ff61, 22192 }, /* Print */
+    { 0x0000ff62, 12149 }, /* Execute */
+    { 0x0000ff63, 17345 }, /* Insert */
+    { 0x0000ff65, 26431 }, /* Undo */
+    { 0x0000ff66, 22400 }, /* Redo */
+    { 0x0000ff67, 19766 }, /* Menu */
+    { 0x0000ff68, 12563 }, /* Find */
     { 0x0000ff69, 8489 }, /* Cancel */
-    { 0x0000ff6a, 16684 }, /* Help */
+    { 0x0000ff6a, 16663 }, /* Help */
     { 0x0000ff6b, 8377 }, /* Break */
-    { 0x0000ff7e, 19829 }, /* Mode_switch */
-    { 0x0000ff7f, 20251 }, /* Num_Lock */
-    { 0x0000ff80, 19156 }, /* KP_Space */
-    { 0x0000ff89, 19177 }, /* KP_Tab */
-    { 0x0000ff8d, 19013 }, /* KP_Enter */
-    { 0x0000ff91, 19031 }, /* KP_F1 */
-    { 0x0000ff92, 19037 }, /* KP_F2 */
-    { 0x0000ff93, 19043 }, /* KP_F3 */
-    { 0x0000ff94, 19049 }, /* KP_F4 */
-    { 0x0000ff95, 19055 }, /* KP_Home */
-    { 0x0000ff96, 19073 }, /* KP_Left */
-    { 0x0000ff97, 19184 }, /* KP_Up */
-    { 0x0000ff98, 19134 }, /* KP_Right */
-    { 0x0000ff99, 18998 }, /* KP_Down */
-    { 0x0000ff9a, 19125 }, /* KP_Prior */
-    { 0x0000ff9b, 19093 }, /* KP_Next */
-    { 0x0000ff9c, 19006 }, /* KP_End */
-    { 0x0000ff9d, 18958 }, /* KP_Begin */
-    { 0x0000ff9e, 19063 }, /* KP_Insert */
-    { 0x0000ff9f, 18978 }, /* KP_Delete */
-    { 0x0000ffaa, 19081 }, /* KP_Multiply */
-    { 0x0000ffab, 18940 }, /* KP_Add */
-    { 0x0000ffac, 19143 }, /* KP_Separator */
-    { 0x0000ffad, 19165 }, /* KP_Subtract */
-    { 0x0000ffae, 18967 }, /* KP_Decimal */
-    { 0x0000ffaf, 18988 }, /* KP_Divide */
-    { 0x0000ffb0, 18890 }, /* KP_0 */
-    { 0x0000ffb1, 18895 }, /* KP_1 */
-    { 0x0000ffb2, 18900 }, /* KP_2 */
-    { 0x0000ffb3, 18905 }, /* KP_3 */
-    { 0x0000ffb4, 18910 }, /* KP_4 */
-    { 0x0000ffb5, 18915 }, /* KP_5 */
-    { 0x0000ffb6, 18920 }, /* KP_6 */
-    { 0x0000ffb7, 18925 }, /* KP_7 */
-    { 0x0000ffb8, 18930 }, /* KP_8 */
-    { 0x0000ffb9, 18935 }, /* KP_9 */
-    { 0x0000ffbd, 19022 }, /* KP_Equal */
-    { 0x0000ffbe, 12241 }, /* F1 */
-    { 0x0000ffbf, 12284 }, /* F2 */
-    { 0x0000ffc0, 12327 }, /* F3 */
-    { 0x0000ffc1, 12354 }, /* F4 */
-    { 0x0000ffc2, 12357 }, /* F5 */
-    { 0x0000ffc3, 12360 }, /* F6 */
-    { 0x0000ffc4, 12363 }, /* F7 */
-    { 0x0000ffc5, 12366 }, /* F8 */
-    { 0x0000ffc6, 12369 }, /* F9 */
-    { 0x0000ffc7, 12244 }, /* F10 */
-    { 0x0000ffc8, 12248 }, /* F11 */
-    { 0x0000ffc9, 12252 }, /* F12 */
-    { 0x0000ffca, 12256 }, /* F13 */
-    { 0x0000ffcb, 12260 }, /* F14 */
-    { 0x0000ffcc, 12264 }, /* F15 */
-    { 0x0000ffcd, 12268 }, /* F16 */
-    { 0x0000ffce, 12272 }, /* F17 */
-    { 0x0000ffcf, 12276 }, /* F18 */
-    { 0x0000ffd0, 12280 }, /* F19 */
-    { 0x0000ffd1, 12287 }, /* F20 */
-    { 0x0000ffd2, 12291 }, /* F21 */
-    { 0x0000ffd3, 12295 }, /* F22 */
-    { 0x0000ffd4, 12299 }, /* F23 */
-    { 0x0000ffd5, 12303 }, /* F24 */
-    { 0x0000ffd6, 12307 }, /* F25 */
-    { 0x0000ffd7, 12311 }, /* F26 */
-    { 0x0000ffd8, 12315 }, /* F27 */
-    { 0x0000ffd9, 12319 }, /* F28 */
-    { 0x0000ffda, 12323 }, /* F29 */
-    { 0x0000ffdb, 12330 }, /* F30 */
-    { 0x0000ffdc, 12334 }, /* F31 */
-    { 0x0000ffdd, 12338 }, /* F32 */
-    { 0x0000ffde, 12342 }, /* F33 */
-    { 0x0000ffdf, 12346 }, /* F34 */
-    { 0x0000ffe0, 12350 }, /* F35 */
-    { 0x0000ffe1, 23028 }, /* Shift_L */
-    { 0x0000ffe2, 23047 }, /* Shift_R */
+    { 0x0000ff7e, 19808 }, /* Mode_switch */
+    { 0x0000ff7f, 20230 }, /* Num_Lock */
+    { 0x0000ff80, 19135 }, /* KP_Space */
+    { 0x0000ff89, 19156 }, /* KP_Tab */
+    { 0x0000ff8d, 18992 }, /* KP_Enter */
+    { 0x0000ff91, 19010 }, /* KP_F1 */
+    { 0x0000ff92, 19016 }, /* KP_F2 */
+    { 0x0000ff93, 19022 }, /* KP_F3 */
+    { 0x0000ff94, 19028 }, /* KP_F4 */
+    { 0x0000ff95, 19034 }, /* KP_Home */
+    { 0x0000ff96, 19052 }, /* KP_Left */
+    { 0x0000ff97, 19163 }, /* KP_Up */
+    { 0x0000ff98, 19113 }, /* KP_Right */
+    { 0x0000ff99, 18977 }, /* KP_Down */
+    { 0x0000ff9a, 19104 }, /* KP_Prior */
+    { 0x0000ff9b, 19072 }, /* KP_Next */
+    { 0x0000ff9c, 18985 }, /* KP_End */
+    { 0x0000ff9d, 18937 }, /* KP_Begin */
+    { 0x0000ff9e, 19042 }, /* KP_Insert */
+    { 0x0000ff9f, 18957 }, /* KP_Delete */
+    { 0x0000ffaa, 19060 }, /* KP_Multiply */
+    { 0x0000ffab, 18919 }, /* KP_Add */
+    { 0x0000ffac, 19122 }, /* KP_Separator */
+    { 0x0000ffad, 19144 }, /* KP_Subtract */
+    { 0x0000ffae, 18946 }, /* KP_Decimal */
+    { 0x0000ffaf, 18967 }, /* KP_Divide */
+    { 0x0000ffb0, 18869 }, /* KP_0 */
+    { 0x0000ffb1, 18874 }, /* KP_1 */
+    { 0x0000ffb2, 18879 }, /* KP_2 */
+    { 0x0000ffb3, 18884 }, /* KP_3 */
+    { 0x0000ffb4, 18889 }, /* KP_4 */
+    { 0x0000ffb5, 18894 }, /* KP_5 */
+    { 0x0000ffb6, 18899 }, /* KP_6 */
+    { 0x0000ffb7, 18904 }, /* KP_7 */
+    { 0x0000ffb8, 18909 }, /* KP_8 */
+    { 0x0000ffb9, 18914 }, /* KP_9 */
+    { 0x0000ffbd, 19001 }, /* KP_Equal */
+    { 0x0000ffbe, 12191 }, /* F1 */
+    { 0x0000ffbf, 12234 }, /* F2 */
+    { 0x0000ffc0, 12277 }, /* F3 */
+    { 0x0000ffc1, 12304 }, /* F4 */
+    { 0x0000ffc2, 12307 }, /* F5 */
+    { 0x0000ffc3, 12310 }, /* F6 */
+    { 0x0000ffc4, 12313 }, /* F7 */
+    { 0x0000ffc5, 12316 }, /* F8 */
+    { 0x0000ffc6, 12319 }, /* F9 */
+    { 0x0000ffc7, 12194 }, /* F10 */
+    { 0x0000ffc8, 12198 }, /* F11 */
+    { 0x0000ffc9, 12202 }, /* F12 */
+    { 0x0000ffca, 12206 }, /* F13 */
+    { 0x0000ffcb, 12210 }, /* F14 */
+    { 0x0000ffcc, 12214 }, /* F15 */
+    { 0x0000ffcd, 12218 }, /* F16 */
+    { 0x0000ffce, 12222 }, /* F17 */
+    { 0x0000ffcf, 12226 }, /* F18 */
+    { 0x0000ffd0, 12230 }, /* F19 */
+    { 0x0000ffd1, 12237 }, /* F20 */
+    { 0x0000ffd2, 12241 }, /* F21 */
+    { 0x0000ffd3, 12245 }, /* F22 */
+    { 0x0000ffd4, 12249 }, /* F23 */
+    { 0x0000ffd5, 12253 }, /* F24 */
+    { 0x0000ffd6, 12257 }, /* F25 */
+    { 0x0000ffd7, 12261 }, /* F26 */
+    { 0x0000ffd8, 12265 }, /* F27 */
+    { 0x0000ffd9, 12269 }, /* F28 */
+    { 0x0000ffda, 12273 }, /* F29 */
+    { 0x0000ffdb, 12280 }, /* F30 */
+    { 0x0000ffdc, 12284 }, /* F31 */
+    { 0x0000ffdd, 12288 }, /* F32 */
+    { 0x0000ffde, 12292 }, /* F33 */
+    { 0x0000ffdf, 12296 }, /* F34 */
+    { 0x0000ffe0, 12300 }, /* F35 */
+    { 0x0000ffe1, 23020 }, /* Shift_L */
+    { 0x0000ffe2, 23039 }, /* Shift_R */
     { 0x0000ffe3, 8779 }, /* Control_L */
     { 0x0000ffe4, 8789 }, /* Control_R */
     { 0x0000ffe5, 8496 }, /* Caps_Lock */
-    { 0x0000ffe6, 23036 }, /* Shift_Lock */
-    { 0x0000ffe7, 19792 }, /* Meta_L */
-    { 0x0000ffe8, 19799 }, /* Meta_R */
+    { 0x0000ffe6, 23028 }, /* Shift_Lock */
+    { 0x0000ffe7, 19771 }, /* Meta_L */
+    { 0x0000ffe8, 19778 }, /* Meta_R */
     { 0x0000ffe9, 880 }, /* Alt_L */
     { 0x0000ffea, 886 }, /* Alt_R */
-    { 0x0000ffeb, 24345 }, /* Super_L */
-    { 0x0000ffec, 24353 }, /* Super_R */
-    { 0x0000ffed, 17128 }, /* Hyper_L */
-    { 0x0000ffee, 17136 }, /* Hyper_R */
+    { 0x0000ffeb, 24337 }, /* Super_L */
+    { 0x0000ffec, 24345 }, /* Super_R */
+    { 0x0000ffed, 17107 }, /* Hyper_L */
+    { 0x0000ffee, 17115 }, /* Hyper_R */
     { 0x0000fff1, 3642 }, /* braille_dot_1 */
     { 0x0000fff2, 3671 }, /* braille_dot_2 */
     { 0x0000fff3, 3685 }, /* braille_dot_3 */
@@ -6736,30 +6778,30 @@ static const struct name_keysym keysym_to_name[] = {
     { 0x0000fff8, 3755 }, /* braille_dot_8 */
     { 0x0000fff9, 3769 }, /* braille_dot_9 */
     { 0x0000fffa, 3656 }, /* braille_dot_10 */
-    { 0x0000ffff, 11242 }, /* Delete */
-    { 0x00ffffff, 26613 }, /* VoidSymbol */
-    { 0x0100012c, 17199 }, /* Ibreve */
-    { 0x0100012d, 17206 }, /* ibreve */
-    { 0x01000174, 26645 }, /* Wcircumflex */
-    { 0x01000175, 26657 }, /* wcircumflex */
-    { 0x01000176, 31228 }, /* Ycircumflex */
-    { 0x01000177, 31240 }, /* ycircumflex */
-    { 0x0100018f, 22731 }, /* SCHWA */
-    { 0x0100019f, 20300 }, /* Obarred */
-    { 0x010001a0, 20635 }, /* Ohorn */
-    { 0x010001a1, 20641 }, /* ohorn */
-    { 0x010001af, 26079 }, /* Uhorn */
-    { 0x010001b0, 26085 }, /* uhorn */
-    { 0x010001b5, 31430 }, /* Zstroke */
-    { 0x010001b6, 31438 }, /* zstroke */
-    { 0x010001b7, 12229 }, /* EZH */
-    { 0x010001d1, 20336 }, /* Ocaron */
-    { 0x010001d2, 20343 }, /* ocaron */
-    { 0x010001e6, 12785 }, /* Gcaron */
-    { 0x010001e7, 12792 }, /* gcaron */
-    { 0x01000259, 22737 }, /* schwa */
-    { 0x01000275, 20308 }, /* obarred */
-    { 0x01000292, 12233 }, /* ezh */
+    { 0x0000ffff, 11192 }, /* Delete */
+    { 0x00ffffff, 26605 }, /* VoidSymbol */
+    { 0x0100012c, 17178 }, /* Ibreve */
+    { 0x0100012d, 17185 }, /* ibreve */
+    { 0x01000174, 26637 }, /* Wcircumflex */
+    { 0x01000175, 26649 }, /* wcircumflex */
+    { 0x01000176, 31558 }, /* Ycircumflex */
+    { 0x01000177, 31570 }, /* ycircumflex */
+    { 0x0100018f, 22723 }, /* SCHWA */
+    { 0x0100019f, 20279 }, /* Obarred */
+    { 0x010001a0, 20614 }, /* Ohorn */
+    { 0x010001a1, 20620 }, /* ohorn */
+    { 0x010001af, 26071 }, /* Uhorn */
+    { 0x010001b0, 26077 }, /* uhorn */
+    { 0x010001b5, 31760 }, /* Zstroke */
+    { 0x010001b6, 31768 }, /* zstroke */
+    { 0x010001b7, 12179 }, /* EZH */
+    { 0x010001d1, 20315 }, /* Ocaron */
+    { 0x010001d2, 20322 }, /* ocaron */
+    { 0x010001e6, 12735 }, /* Gcaron */
+    { 0x010001e7, 12742 }, /* gcaron */
+    { 0x01000259, 22729 }, /* schwa */
+    { 0x01000275, 20287 }, /* obarred */
+    { 0x01000292, 12183 }, /* ezh */
     { 0x01000300, 8715 }, /* combining_grave */
     { 0x01000301, 8680 }, /* combining_acute */
     { 0x01000303, 8746 }, /* combining_tilde */
@@ -6906,162 +6948,162 @@ static const struct name_keysym keysym_to_name[] = {
     { 0x010006ba, 1642 }, /* Arabic_noon_ghunna */
     { 0x010006be, 1442 }, /* Arabic_heh_doachashmee */
     { 0x010006c1, 1465 }, /* Arabic_heh_goal */
-    { 0x010006cc, 12472 }, /* Farsi_yeh */
+    { 0x010006cc, 12422 }, /* Farsi_yeh */
     { 0x010006d2, 1996 }, /* Arabic_yeh_baree */
     { 0x010006d4, 1242 }, /* Arabic_fullstop */
-    { 0x010006f0, 12392 }, /* Farsi_0 */
-    { 0x010006f1, 12400 }, /* Farsi_1 */
-    { 0x010006f2, 12408 }, /* Farsi_2 */
-    { 0x010006f3, 12416 }, /* Farsi_3 */
-    { 0x010006f4, 12424 }, /* Farsi_4 */
-    { 0x010006f5, 12432 }, /* Farsi_5 */
-    { 0x010006f6, 12440 }, /* Farsi_6 */
-    { 0x010006f7, 12448 }, /* Farsi_7 */
-    { 0x010006f8, 12456 }, /* Farsi_8 */
-    { 0x010006f9, 12464 }, /* Farsi_9 */
-    { 0x01000d82, 23566 }, /* Sinh_ng */
-    { 0x01000d83, 23360 }, /* Sinh_h2 */
-    { 0x01000d85, 23129 }, /* Sinh_a */
-    { 0x01000d86, 23136 }, /* Sinh_aa */
-    { 0x01000d87, 23153 }, /* Sinh_ae */
-    { 0x01000d88, 23170 }, /* Sinh_aee */
-    { 0x01000d89, 23376 }, /* Sinh_i */
-    { 0x01000d8a, 23391 }, /* Sinh_ii */
-    { 0x01000d8b, 23777 }, /* Sinh_u */
-    { 0x01000d8c, 23792 }, /* Sinh_uu */
-    { 0x01000d8d, 23676 }, /* Sinh_ri */
-    { 0x01000d8e, 23684 }, /* Sinh_rii */
-    { 0x01000d8f, 23485 }, /* Sinh_lu */
-    { 0x01000d90, 23502 }, /* Sinh_luu */
-    { 0x01000d91, 23303 }, /* Sinh_e */
-    { 0x01000d92, 23318 }, /* Sinh_ee */
-    { 0x01000d93, 23189 }, /* Sinh_ai */
-    { 0x01000d94, 23619 }, /* Sinh_o */
-    { 0x01000d95, 23634 }, /* Sinh_oo */
-    { 0x01000d96, 23214 }, /* Sinh_au */
-    { 0x01000d9a, 23435 }, /* Sinh_ka */
-    { 0x01000d9b, 23443 }, /* Sinh_kha */
-    { 0x01000d9c, 23343 }, /* Sinh_ga */
-    { 0x01000d9d, 23351 }, /* Sinh_gha */
-    { 0x01000d9e, 23574 }, /* Sinh_ng2 */
-    { 0x01000d9f, 23583 }, /* Sinh_nga */
-    { 0x01000da0, 23248 }, /* Sinh_ca */
-    { 0x01000da1, 23256 }, /* Sinh_cha */
-    { 0x01000da2, 23408 }, /* Sinh_ja */
-    { 0x01000da3, 23416 }, /* Sinh_jha */
-    { 0x01000da4, 23610 }, /* Sinh_nya */
-    { 0x01000da5, 23425 }, /* Sinh_jnya */
-    { 0x01000da6, 23592 }, /* Sinh_nja */
-    { 0x01000da7, 23758 }, /* Sinh_tta */
-    { 0x01000da8, 23767 }, /* Sinh_ttha */
-    { 0x01000da9, 23265 }, /* Sinh_dda */
-    { 0x01000daa, 23274 }, /* Sinh_ddha */
-    { 0x01000dab, 23601 }, /* Sinh_nna */
-    { 0x01000dac, 23546 }, /* Sinh_ndda */
-    { 0x01000dad, 23739 }, /* Sinh_tha */
-    { 0x01000dae, 23748 }, /* Sinh_thha */
-    { 0x01000daf, 23284 }, /* Sinh_dha */
-    { 0x01000db0, 23293 }, /* Sinh_dhha */
-    { 0x01000db1, 23538 }, /* Sinh_na */
-    { 0x01000db3, 23556 }, /* Sinh_ndha */
-    { 0x01000db4, 23651 }, /* Sinh_pa */
-    { 0x01000db5, 23659 }, /* Sinh_pha */
-    { 0x01000db6, 23231 }, /* Sinh_ba */
-    { 0x01000db7, 23239 }, /* Sinh_bha */
-    { 0x01000db8, 23521 }, /* Sinh_ma */
-    { 0x01000db9, 23529 }, /* Sinh_mba */
-    { 0x01000dba, 23817 }, /* Sinh_ya */
-    { 0x01000dbb, 23668 }, /* Sinh_ra */
-    { 0x01000dbd, 23468 }, /* Sinh_la */
-    { 0x01000dc0, 23809 }, /* Sinh_va */
-    { 0x01000dc1, 23720 }, /* Sinh_sha */
-    { 0x01000dc2, 23729 }, /* Sinh_ssha */
-    { 0x01000dc3, 23712 }, /* Sinh_sa */
-    { 0x01000dc4, 23368 }, /* Sinh_ha */
-    { 0x01000dc5, 23476 }, /* Sinh_lla */
-    { 0x01000dc6, 23335 }, /* Sinh_fa */
-    { 0x01000dca, 23206 }, /* Sinh_al */
-    { 0x01000dcf, 23144 }, /* Sinh_aa2 */
-    { 0x01000dd0, 23161 }, /* Sinh_ae2 */
-    { 0x01000dd1, 23179 }, /* Sinh_aee2 */
-    { 0x01000dd2, 23383 }, /* Sinh_i2 */
-    { 0x01000dd3, 23399 }, /* Sinh_ii2 */
-    { 0x01000dd4, 23784 }, /* Sinh_u2 */
-    { 0x01000dd6, 23800 }, /* Sinh_uu2 */
-    { 0x01000dd8, 23693 }, /* Sinh_ru2 */
-    { 0x01000dd9, 23310 }, /* Sinh_e2 */
-    { 0x01000dda, 23326 }, /* Sinh_ee2 */
-    { 0x01000ddb, 23197 }, /* Sinh_ai2 */
-    { 0x01000ddc, 23626 }, /* Sinh_o2 */
-    { 0x01000ddd, 23642 }, /* Sinh_oo2 */
-    { 0x01000dde, 23222 }, /* Sinh_au2 */
-    { 0x01000ddf, 23493 }, /* Sinh_lu2 */
-    { 0x01000df2, 23702 }, /* Sinh_ruu2 */
-    { 0x01000df3, 23511 }, /* Sinh_luu2 */
-    { 0x01000df4, 23452 }, /* Sinh_kunddaliya */
-    { 0x010010d0, 12841 }, /* Georgian_an */
-    { 0x010010d1, 12853 }, /* Georgian_ban */
-    { 0x010010d2, 12957 }, /* Georgian_gan */
-    { 0x010010d3, 12920 }, /* Georgian_don */
-    { 0x010010d4, 12933 }, /* Georgian_en */
-    { 0x010010d5, 13283 }, /* Georgian_vin */
-    { 0x010010d6, 13321 }, /* Georgian_zen */
-    { 0x010010d7, 13245 }, /* Georgian_tan */
-    { 0x010010d8, 13048 }, /* Georgian_in */
-    { 0x010010d9, 13087 }, /* Georgian_kan */
-    { 0x010010da, 13114 }, /* Georgian_las */
-    { 0x010010db, 13127 }, /* Georgian_man */
-    { 0x010010dc, 13140 }, /* Georgian_nar */
-    { 0x010010dd, 13153 }, /* Georgian_on */
-    { 0x010010de, 13165 }, /* Georgian_par */
-    { 0x010010df, 13334 }, /* Georgian_zhar */
-    { 0x010010e0, 13205 }, /* Georgian_rae */
-    { 0x010010e1, 13218 }, /* Georgian_san */
-    { 0x010010e2, 13258 }, /* Georgian_tar */
-    { 0x010010e3, 13271 }, /* Georgian_un */
-    { 0x010010e4, 13178 }, /* Georgian_phar */
-    { 0x010010e5, 13100 }, /* Georgian_khar */
-    { 0x010010e6, 12970 }, /* Georgian_ghan */
-    { 0x010010e7, 13192 }, /* Georgian_qar */
-    { 0x010010e8, 13231 }, /* Georgian_shin */
-    { 0x010010e9, 12893 }, /* Georgian_chin */
-    { 0x010010ea, 12866 }, /* Georgian_can */
-    { 0x010010eb, 13074 }, /* Georgian_jil */
-    { 0x010010ec, 12907 }, /* Georgian_cil */
-    { 0x010010ed, 12879 }, /* Georgian_char */
-    { 0x010010ee, 13308 }, /* Georgian_xan */
-    { 0x010010ef, 13060 }, /* Georgian_jhan */
-    { 0x010010f0, 12984 }, /* Georgian_hae */
-    { 0x010010f1, 13010 }, /* Georgian_he */
-    { 0x010010f2, 13022 }, /* Georgian_hie */
-    { 0x010010f3, 13296 }, /* Georgian_we */
-    { 0x010010f4, 12997 }, /* Georgian_har */
-    { 0x010010f5, 13035 }, /* Georgian_hoe */
-    { 0x010010f6, 12945 }, /* Georgian_fi */
+    { 0x010006f0, 12342 }, /* Farsi_0 */
+    { 0x010006f1, 12350 }, /* Farsi_1 */
+    { 0x010006f2, 12358 }, /* Farsi_2 */
+    { 0x010006f3, 12366 }, /* Farsi_3 */
+    { 0x010006f4, 12374 }, /* Farsi_4 */
+    { 0x010006f5, 12382 }, /* Farsi_5 */
+    { 0x010006f6, 12390 }, /* Farsi_6 */
+    { 0x010006f7, 12398 }, /* Farsi_7 */
+    { 0x010006f8, 12406 }, /* Farsi_8 */
+    { 0x010006f9, 12414 }, /* Farsi_9 */
+    { 0x01000d82, 23558 }, /* Sinh_ng */
+    { 0x01000d83, 23352 }, /* Sinh_h2 */
+    { 0x01000d85, 23121 }, /* Sinh_a */
+    { 0x01000d86, 23128 }, /* Sinh_aa */
+    { 0x01000d87, 23145 }, /* Sinh_ae */
+    { 0x01000d88, 23162 }, /* Sinh_aee */
+    { 0x01000d89, 23368 }, /* Sinh_i */
+    { 0x01000d8a, 23383 }, /* Sinh_ii */
+    { 0x01000d8b, 23769 }, /* Sinh_u */
+    { 0x01000d8c, 23784 }, /* Sinh_uu */
+    { 0x01000d8d, 23668 }, /* Sinh_ri */
+    { 0x01000d8e, 23676 }, /* Sinh_rii */
+    { 0x01000d8f, 23477 }, /* Sinh_lu */
+    { 0x01000d90, 23494 }, /* Sinh_luu */
+    { 0x01000d91, 23295 }, /* Sinh_e */
+    { 0x01000d92, 23310 }, /* Sinh_ee */
+    { 0x01000d93, 23181 }, /* Sinh_ai */
+    { 0x01000d94, 23611 }, /* Sinh_o */
+    { 0x01000d95, 23626 }, /* Sinh_oo */
+    { 0x01000d96, 23206 }, /* Sinh_au */
+    { 0x01000d9a, 23427 }, /* Sinh_ka */
+    { 0x01000d9b, 23435 }, /* Sinh_kha */
+    { 0x01000d9c, 23335 }, /* Sinh_ga */
+    { 0x01000d9d, 23343 }, /* Sinh_gha */
+    { 0x01000d9e, 23566 }, /* Sinh_ng2 */
+    { 0x01000d9f, 23575 }, /* Sinh_nga */
+    { 0x01000da0, 23240 }, /* Sinh_ca */
+    { 0x01000da1, 23248 }, /* Sinh_cha */
+    { 0x01000da2, 23400 }, /* Sinh_ja */
+    { 0x01000da3, 23408 }, /* Sinh_jha */
+    { 0x01000da4, 23602 }, /* Sinh_nya */
+    { 0x01000da5, 23417 }, /* Sinh_jnya */
+    { 0x01000da6, 23584 }, /* Sinh_nja */
+    { 0x01000da7, 23750 }, /* Sinh_tta */
+    { 0x01000da8, 23759 }, /* Sinh_ttha */
+    { 0x01000da9, 23257 }, /* Sinh_dda */
+    { 0x01000daa, 23266 }, /* Sinh_ddha */
+    { 0x01000dab, 23593 }, /* Sinh_nna */
+    { 0x01000dac, 23538 }, /* Sinh_ndda */
+    { 0x01000dad, 23731 }, /* Sinh_tha */
+    { 0x01000dae, 23740 }, /* Sinh_thha */
+    { 0x01000daf, 23276 }, /* Sinh_dha */
+    { 0x01000db0, 23285 }, /* Sinh_dhha */
+    { 0x01000db1, 23530 }, /* Sinh_na */
+    { 0x01000db3, 23548 }, /* Sinh_ndha */
+    { 0x01000db4, 23643 }, /* Sinh_pa */
+    { 0x01000db5, 23651 }, /* Sinh_pha */
+    { 0x01000db6, 23223 }, /* Sinh_ba */
+    { 0x01000db7, 23231 }, /* Sinh_bha */
+    { 0x01000db8, 23513 }, /* Sinh_ma */
+    { 0x01000db9, 23521 }, /* Sinh_mba */
+    { 0x01000dba, 23809 }, /* Sinh_ya */
+    { 0x01000dbb, 23660 }, /* Sinh_ra */
+    { 0x01000dbd, 23460 }, /* Sinh_la */
+    { 0x01000dc0, 23801 }, /* Sinh_va */
+    { 0x01000dc1, 23712 }, /* Sinh_sha */
+    { 0x01000dc2, 23721 }, /* Sinh_ssha */
+    { 0x01000dc3, 23704 }, /* Sinh_sa */
+    { 0x01000dc4, 23360 }, /* Sinh_ha */
+    { 0x01000dc5, 23468 }, /* Sinh_lla */
+    { 0x01000dc6, 23327 }, /* Sinh_fa */
+    { 0x01000dca, 23198 }, /* Sinh_al */
+    { 0x01000dcf, 23136 }, /* Sinh_aa2 */
+    { 0x01000dd0, 23153 }, /* Sinh_ae2 */
+    { 0x01000dd1, 23171 }, /* Sinh_aee2 */
+    { 0x01000dd2, 23375 }, /* Sinh_i2 */
+    { 0x01000dd3, 23391 }, /* Sinh_ii2 */
+    { 0x01000dd4, 23776 }, /* Sinh_u2 */
+    { 0x01000dd6, 23792 }, /* Sinh_uu2 */
+    { 0x01000dd8, 23685 }, /* Sinh_ru2 */
+    { 0x01000dd9, 23302 }, /* Sinh_e2 */
+    { 0x01000dda, 23318 }, /* Sinh_ee2 */
+    { 0x01000ddb, 23189 }, /* Sinh_ai2 */
+    { 0x01000ddc, 23618 }, /* Sinh_o2 */
+    { 0x01000ddd, 23634 }, /* Sinh_oo2 */
+    { 0x01000dde, 23214 }, /* Sinh_au2 */
+    { 0x01000ddf, 23485 }, /* Sinh_lu2 */
+    { 0x01000df2, 23694 }, /* Sinh_ruu2 */
+    { 0x01000df3, 23503 }, /* Sinh_luu2 */
+    { 0x01000df4, 23444 }, /* Sinh_kunddaliya */
+    { 0x010010d0, 12791 }, /* Georgian_an */
+    { 0x010010d1, 12803 }, /* Georgian_ban */
+    { 0x010010d2, 12907 }, /* Georgian_gan */
+    { 0x010010d3, 12870 }, /* Georgian_don */
+    { 0x010010d4, 12883 }, /* Georgian_en */
+    { 0x010010d5, 13233 }, /* Georgian_vin */
+    { 0x010010d6, 13271 }, /* Georgian_zen */
+    { 0x010010d7, 13195 }, /* Georgian_tan */
+    { 0x010010d8, 12998 }, /* Georgian_in */
+    { 0x010010d9, 13037 }, /* Georgian_kan */
+    { 0x010010da, 13064 }, /* Georgian_las */
+    { 0x010010db, 13077 }, /* Georgian_man */
+    { 0x010010dc, 13090 }, /* Georgian_nar */
+    { 0x010010dd, 13103 }, /* Georgian_on */
+    { 0x010010de, 13115 }, /* Georgian_par */
+    { 0x010010df, 13284 }, /* Georgian_zhar */
+    { 0x010010e0, 13155 }, /* Georgian_rae */
+    { 0x010010e1, 13168 }, /* Georgian_san */
+    { 0x010010e2, 13208 }, /* Georgian_tar */
+    { 0x010010e3, 13221 }, /* Georgian_un */
+    { 0x010010e4, 13128 }, /* Georgian_phar */
+    { 0x010010e5, 13050 }, /* Georgian_khar */
+    { 0x010010e6, 12920 }, /* Georgian_ghan */
+    { 0x010010e7, 13142 }, /* Georgian_qar */
+    { 0x010010e8, 13181 }, /* Georgian_shin */
+    { 0x010010e9, 12843 }, /* Georgian_chin */
+    { 0x010010ea, 12816 }, /* Georgian_can */
+    { 0x010010eb, 13024 }, /* Georgian_jil */
+    { 0x010010ec, 12857 }, /* Georgian_cil */
+    { 0x010010ed, 12829 }, /* Georgian_char */
+    { 0x010010ee, 13258 }, /* Georgian_xan */
+    { 0x010010ef, 13010 }, /* Georgian_jhan */
+    { 0x010010f0, 12934 }, /* Georgian_hae */
+    { 0x010010f1, 12960 }, /* Georgian_he */
+    { 0x010010f2, 12972 }, /* Georgian_hie */
+    { 0x010010f3, 13246 }, /* Georgian_we */
+    { 0x010010f4, 12947 }, /* Georgian_har */
+    { 0x010010f5, 12985 }, /* Georgian_hoe */
+    { 0x010010f6, 12895 }, /* Georgian_fi */
     { 0x01001e02, 3332 }, /* Babovedot */
     { 0x01001e03, 3342 }, /* babovedot */
     { 0x01001e0a, 10406 }, /* Dabovedot */
     { 0x01001e0b, 10416 }, /* dabovedot */
-    { 0x01001e1e, 12372 }, /* Fabovedot */
-    { 0x01001e1f, 12382 }, /* fabovedot */
-    { 0x01001e36, 19274 }, /* Lbelowdot */
-    { 0x01001e37, 19284 }, /* lbelowdot */
-    { 0x01001e40, 19619 }, /* Mabovedot */
-    { 0x01001e41, 19629 }, /* mabovedot */
-    { 0x01001e56, 21459 }, /* Pabovedot */
-    { 0x01001e57, 21469 }, /* pabovedot */
-    { 0x01001e60, 22665 }, /* Sabovedot */
-    { 0x01001e61, 22675 }, /* sabovedot */
-    { 0x01001e6a, 24384 }, /* Tabovedot */
-    { 0x01001e6b, 24394 }, /* tabovedot */
-    { 0x01001e80, 26691 }, /* Wgrave */
-    { 0x01001e81, 26698 }, /* wgrave */
-    { 0x01001e82, 26631 }, /* Wacute */
-    { 0x01001e83, 26638 }, /* wacute */
-    { 0x01001e84, 26669 }, /* Wdiaeresis */
-    { 0x01001e85, 26680 }, /* wdiaeresis */
-    { 0x01001e8a, 26717 }, /* Xabovedot */
-    { 0x01001e8b, 26727 }, /* xabovedot */
+    { 0x01001e1e, 12322 }, /* Fabovedot */
+    { 0x01001e1f, 12332 }, /* fabovedot */
+    { 0x01001e36, 19253 }, /* Lbelowdot */
+    { 0x01001e37, 19263 }, /* lbelowdot */
+    { 0x01001e40, 19598 }, /* Mabovedot */
+    { 0x01001e41, 19608 }, /* mabovedot */
+    { 0x01001e56, 21451 }, /* Pabovedot */
+    { 0x01001e57, 21461 }, /* pabovedot */
+    { 0x01001e60, 22657 }, /* Sabovedot */
+    { 0x01001e61, 22667 }, /* sabovedot */
+    { 0x01001e6a, 24376 }, /* Tabovedot */
+    { 0x01001e6b, 24386 }, /* tabovedot */
+    { 0x01001e80, 26683 }, /* Wgrave */
+    { 0x01001e81, 26690 }, /* wgrave */
+    { 0x01001e82, 26623 }, /* Wacute */
+    { 0x01001e83, 26630 }, /* wacute */
+    { 0x01001e84, 26661 }, /* Wdiaeresis */
+    { 0x01001e85, 26672 }, /* wdiaeresis */
+    { 0x01001e8a, 26709 }, /* Xabovedot */
+    { 0x01001e8b, 26719 }, /* xabovedot */
     { 0x01001ea0, 416 }, /* Abelowdot */
     { 0x01001ea1, 426 }, /* abelowdot */
     { 0x01001ea2, 868 }, /* Ahook */
@@ -7086,116 +7128,116 @@ static const struct name_keysym keysym_to_name[] = {
     { 0x01001eb5, 571 }, /* abrevetilde */
     { 0x01001eb6, 483 }, /* Abrevebelowdot */
     { 0x01001eb7, 498 }, /* abrevebelowdot */
-    { 0x01001eb8, 11544 }, /* Ebelowdot */
-    { 0x01001eb9, 11554 }, /* ebelowdot */
-    { 0x01001eba, 11820 }, /* Ehook */
-    { 0x01001ebb, 11826 }, /* ehook */
-    { 0x01001ebc, 12158 }, /* Etilde */
-    { 0x01001ebd, 12165 }, /* etilde */
-    { 0x01001ebe, 11602 }, /* Ecircumflexacute */
-    { 0x01001ebf, 11619 }, /* ecircumflexacute */
-    { 0x01001ec0, 11676 }, /* Ecircumflexgrave */
-    { 0x01001ec1, 11693 }, /* ecircumflexgrave */
-    { 0x01001ec2, 11710 }, /* Ecircumflexhook */
-    { 0x01001ec3, 11726 }, /* ecircumflexhook */
-    { 0x01001ec4, 11742 }, /* Ecircumflextilde */
-    { 0x01001ec5, 11759 }, /* ecircumflextilde */
-    { 0x01001ec6, 11636 }, /* Ecircumflexbelowdot */
-    { 0x01001ec7, 11656 }, /* ecircumflexbelowdot */
-    { 0x01001ec8, 17301 }, /* Ihook */
-    { 0x01001ec9, 17307 }, /* ihook */
-    { 0x01001eca, 17179 }, /* Ibelowdot */
-    { 0x01001ecb, 17189 }, /* ibelowdot */
-    { 0x01001ecc, 20316 }, /* Obelowdot */
-    { 0x01001ecd, 20326 }, /* obelowdot */
-    { 0x01001ece, 20623 }, /* Ohook */
-    { 0x01001ecf, 20629 }, /* ohook */
-    { 0x01001ed0, 20374 }, /* Ocircumflexacute */
-    { 0x01001ed1, 20391 }, /* ocircumflexacute */
-    { 0x01001ed2, 20448 }, /* Ocircumflexgrave */
-    { 0x01001ed3, 20465 }, /* ocircumflexgrave */
-    { 0x01001ed4, 20482 }, /* Ocircumflexhook */
-    { 0x01001ed5, 20498 }, /* ocircumflexhook */
-    { 0x01001ed6, 20514 }, /* Ocircumflextilde */
-    { 0x01001ed7, 20531 }, /* ocircumflextilde */
-    { 0x01001ed8, 20408 }, /* Ocircumflexbelowdot */
-    { 0x01001ed9, 20428 }, /* ocircumflexbelowdot */
-    { 0x01001eda, 20647 }, /* Ohornacute */
-    { 0x01001edb, 20658 }, /* ohornacute */
-    { 0x01001edc, 20697 }, /* Ohorngrave */
-    { 0x01001edd, 20708 }, /* ohorngrave */
-    { 0x01001ede, 20719 }, /* Ohornhook */
-    { 0x01001edf, 20729 }, /* ohornhook */
-    { 0x01001ee0, 20739 }, /* Ohorntilde */
-    { 0x01001ee1, 20750 }, /* ohorntilde */
-    { 0x01001ee2, 20669 }, /* Ohornbelowdot */
-    { 0x01001ee3, 20683 }, /* ohornbelowdot */
-    { 0x01001ee4, 25947 }, /* Ubelowdot */
-    { 0x01001ee5, 25957 }, /* ubelowdot */
-    { 0x01001ee6, 26067 }, /* Uhook */
-    { 0x01001ee7, 26073 }, /* uhook */
-    { 0x01001ee8, 26091 }, /* Uhornacute */
-    { 0x01001ee9, 26102 }, /* uhornacute */
-    { 0x01001eea, 26141 }, /* Uhorngrave */
-    { 0x01001eeb, 26152 }, /* uhorngrave */
-    { 0x01001eec, 26163 }, /* Uhornhook */
-    { 0x01001eed, 26173 }, /* uhornhook */
-    { 0x01001eee, 26183 }, /* Uhorntilde */
-    { 0x01001eef, 26194 }, /* uhorntilde */
-    { 0x01001ef0, 26113 }, /* Uhornbelowdot */
-    { 0x01001ef1, 26127 }, /* uhornbelowdot */
-    { 0x01001ef2, 31278 }, /* Ygrave */
-    { 0x01001ef3, 31285 }, /* ygrave */
-    { 0x01001ef4, 31208 }, /* Ybelowdot */
-    { 0x01001ef5, 31218 }, /* ybelowdot */
-    { 0x01001ef6, 31292 }, /* Yhook */
-    { 0x01001ef7, 31298 }, /* yhook */
-    { 0x01001ef8, 31304 }, /* Ytilde */
-    { 0x01001ef9, 31311 }, /* ytilde */
-    { 0x01002070, 31417 }, /* zerosuperior */
-    { 0x01002074, 12714 }, /* foursuperior */
-    { 0x01002075, 12676 }, /* fivesuperior */
-    { 0x01002076, 23838 }, /* sixsuperior */
-    { 0x01002077, 23014 }, /* sevensuperior */
-    { 0x01002078, 11847 }, /* eightsuperior */
-    { 0x01002079, 20144 }, /* ninesuperior */
-    { 0x01002080, 31403 }, /* zerosubscript */
-    { 0x01002081, 20824 }, /* onesubscript */
-    { 0x01002082, 25894 }, /* twosubscript */
-    { 0x01002083, 25638 }, /* threesubscript */
-    { 0x01002084, 12700 }, /* foursubscript */
-    { 0x01002085, 12662 }, /* fivesubscript */
-    { 0x01002086, 23825 }, /* sixsubscript */
-    { 0x01002087, 22999 }, /* sevensubscript */
-    { 0x01002088, 11832 }, /* eightsubscript */
-    { 0x01002089, 20130 }, /* ninesubscript */
-    { 0x010020a0, 11776 }, /* EcuSign */
+    { 0x01001eb8, 11494 }, /* Ebelowdot */
+    { 0x01001eb9, 11504 }, /* ebelowdot */
+    { 0x01001eba, 11770 }, /* Ehook */
+    { 0x01001ebb, 11776 }, /* ehook */
+    { 0x01001ebc, 12108 }, /* Etilde */
+    { 0x01001ebd, 12115 }, /* etilde */
+    { 0x01001ebe, 11552 }, /* Ecircumflexacute */
+    { 0x01001ebf, 11569 }, /* ecircumflexacute */
+    { 0x01001ec0, 11626 }, /* Ecircumflexgrave */
+    { 0x01001ec1, 11643 }, /* ecircumflexgrave */
+    { 0x01001ec2, 11660 }, /* Ecircumflexhook */
+    { 0x01001ec3, 11676 }, /* ecircumflexhook */
+    { 0x01001ec4, 11692 }, /* Ecircumflextilde */
+    { 0x01001ec5, 11709 }, /* ecircumflextilde */
+    { 0x01001ec6, 11586 }, /* Ecircumflexbelowdot */
+    { 0x01001ec7, 11606 }, /* ecircumflexbelowdot */
+    { 0x01001ec8, 17280 }, /* Ihook */
+    { 0x01001ec9, 17286 }, /* ihook */
+    { 0x01001eca, 17158 }, /* Ibelowdot */
+    { 0x01001ecb, 17168 }, /* ibelowdot */
+    { 0x01001ecc, 20295 }, /* Obelowdot */
+    { 0x01001ecd, 20305 }, /* obelowdot */
+    { 0x01001ece, 20602 }, /* Ohook */
+    { 0x01001ecf, 20608 }, /* ohook */
+    { 0x01001ed0, 20353 }, /* Ocircumflexacute */
+    { 0x01001ed1, 20370 }, /* ocircumflexacute */
+    { 0x01001ed2, 20427 }, /* Ocircumflexgrave */
+    { 0x01001ed3, 20444 }, /* ocircumflexgrave */
+    { 0x01001ed4, 20461 }, /* Ocircumflexhook */
+    { 0x01001ed5, 20477 }, /* ocircumflexhook */
+    { 0x01001ed6, 20493 }, /* Ocircumflextilde */
+    { 0x01001ed7, 20510 }, /* ocircumflextilde */
+    { 0x01001ed8, 20387 }, /* Ocircumflexbelowdot */
+    { 0x01001ed9, 20407 }, /* ocircumflexbelowdot */
+    { 0x01001eda, 20626 }, /* Ohornacute */
+    { 0x01001edb, 20637 }, /* ohornacute */
+    { 0x01001edc, 20676 }, /* Ohorngrave */
+    { 0x01001edd, 20687 }, /* ohorngrave */
+    { 0x01001ede, 20698 }, /* Ohornhook */
+    { 0x01001edf, 20708 }, /* ohornhook */
+    { 0x01001ee0, 20718 }, /* Ohorntilde */
+    { 0x01001ee1, 20729 }, /* ohorntilde */
+    { 0x01001ee2, 20648 }, /* Ohornbelowdot */
+    { 0x01001ee3, 20662 }, /* ohornbelowdot */
+    { 0x01001ee4, 25939 }, /* Ubelowdot */
+    { 0x01001ee5, 25949 }, /* ubelowdot */
+    { 0x01001ee6, 26059 }, /* Uhook */
+    { 0x01001ee7, 26065 }, /* uhook */
+    { 0x01001ee8, 26083 }, /* Uhornacute */
+    { 0x01001ee9, 26094 }, /* uhornacute */
+    { 0x01001eea, 26133 }, /* Uhorngrave */
+    { 0x01001eeb, 26144 }, /* uhorngrave */
+    { 0x01001eec, 26155 }, /* Uhornhook */
+    { 0x01001eed, 26165 }, /* uhornhook */
+    { 0x01001eee, 26175 }, /* Uhorntilde */
+    { 0x01001eef, 26186 }, /* uhorntilde */
+    { 0x01001ef0, 26105 }, /* Uhornbelowdot */
+    { 0x01001ef1, 26119 }, /* uhornbelowdot */
+    { 0x01001ef2, 31608 }, /* Ygrave */
+    { 0x01001ef3, 31615 }, /* ygrave */
+    { 0x01001ef4, 31538 }, /* Ybelowdot */
+    { 0x01001ef5, 31548 }, /* ybelowdot */
+    { 0x01001ef6, 31622 }, /* Yhook */
+    { 0x01001ef7, 31628 }, /* yhook */
+    { 0x01001ef8, 31634 }, /* Ytilde */
+    { 0x01001ef9, 31641 }, /* ytilde */
+    { 0x01002070, 31747 }, /* zerosuperior */
+    { 0x01002074, 12664 }, /* foursuperior */
+    { 0x01002075, 12626 }, /* fivesuperior */
+    { 0x01002076, 23830 }, /* sixsuperior */
+    { 0x01002077, 23006 }, /* sevensuperior */
+    { 0x01002078, 11797 }, /* eightsuperior */
+    { 0x01002079, 20123 }, /* ninesuperior */
+    { 0x01002080, 31733 }, /* zerosubscript */
+    { 0x01002081, 20803 }, /* onesubscript */
+    { 0x01002082, 25886 }, /* twosubscript */
+    { 0x01002083, 25630 }, /* threesubscript */
+    { 0x01002084, 12650 }, /* foursubscript */
+    { 0x01002085, 12612 }, /* fivesubscript */
+    { 0x01002086, 23817 }, /* sixsubscript */
+    { 0x01002087, 22991 }, /* sevensubscript */
+    { 0x01002088, 11782 }, /* eightsubscript */
+    { 0x01002089, 20109 }, /* ninesubscript */
+    { 0x010020a0, 11726 }, /* EcuSign */
     { 0x010020a1, 8670 }, /* ColonSign */
     { 0x010020a2, 8826 }, /* CruzeiroSign */
-    { 0x010020a3, 12498 }, /* FFrancSign */
-    { 0x010020a4, 19530 }, /* LiraSign */
-    { 0x010020a5, 19806 }, /* MillSign */
-    { 0x010020a6, 20049 }, /* NairaSign */
-    { 0x010020a7, 21608 }, /* PesetaSign */
-    { 0x010020a8, 22651 }, /* RupeeSign */
-    { 0x010020a9, 26705 }, /* WonSign */
-    { 0x010020aa, 20091 }, /* NewSheqelSign */
-    { 0x010020ab, 11340 }, /* DongSign */
-    { 0x01002202, 21528 }, /* partdifferential */
-    { 0x01002205, 12001 }, /* emptyset */
-    { 0x01002208, 11884 }, /* elementof */
-    { 0x01002209, 20194 }, /* notelementof */
+    { 0x010020a3, 12448 }, /* FFrancSign */
+    { 0x010020a4, 19509 }, /* LiraSign */
+    { 0x010020a5, 19785 }, /* MillSign */
+    { 0x010020a6, 20028 }, /* NairaSign */
+    { 0x010020a7, 21600 }, /* PesetaSign */
+    { 0x010020a8, 22643 }, /* RupeeSign */
+    { 0x010020a9, 26697 }, /* WonSign */
+    { 0x010020aa, 20070 }, /* NewSheqelSign */
+    { 0x010020ab, 11290 }, /* DongSign */
+    { 0x01002202, 21520 }, /* partdifferential */
+    { 0x01002205, 11951 }, /* emptyset */
+    { 0x01002208, 11834 }, /* elementof */
+    { 0x01002209, 20173 }, /* notelementof */
     { 0x0100220b, 8768 }, /* containsas */
-    { 0x0100221a, 23891 }, /* squareroot */
+    { 0x0100221a, 23883 }, /* squareroot */
     { 0x0100221b, 8839 }, /* cuberoot */
-    { 0x0100221c, 12727 }, /* fourthroot */
-    { 0x0100222c, 11314 }, /* dintegral */
-    { 0x0100222d, 25667 }, /* tintegral */
+    { 0x0100221c, 12677 }, /* fourthroot */
+    { 0x0100222c, 11264 }, /* dintegral */
+    { 0x0100222d, 25659 }, /* tintegral */
     { 0x01002235, 3396 }, /* because */
-    { 0x01002247, 20182 }, /* notapproxeq */
+    { 0x01002247, 20161 }, /* notapproxeq */
     { 0x01002248, 945 }, /* approxeq */
-    { 0x01002262, 20216 }, /* notidentical */
-    { 0x01002263, 23936 }, /* stricteq */
+    { 0x01002262, 20195 }, /* notidentical */
+    { 0x01002263, 23928 }, /* stricteq */
     { 0x01002800, 3628 }, /* braille_blank */
     { 0x01002801, 3783 }, /* braille_dots_1 */
     { 0x01002802, 6151 }, /* braille_dots_2 */
@@ -7452,420 +7494,439 @@ static const struct name_keysym keysym_to_name[] = {
     { 0x010028fd, 5104 }, /* braille_dots_1345678 */
     { 0x010028fe, 6256 }, /* braille_dots_2345678 */
     { 0x010028ff, 3909 }, /* braille_dots_12345678 */
-    { 0x100000a8, 16992 }, /* hpmute_acute */
-    { 0x100000a9, 17059 }, /* hpmute_grave */
-    { 0x100000aa, 17005 }, /* hpmute_asciicircum */
-    { 0x100000ab, 17042 }, /* hpmute_diaeresis */
-    { 0x100000ac, 17024 }, /* hpmute_asciitilde */
-    { 0x100000af, 16949 }, /* hplira */
-    { 0x100000be, 16895 }, /* hpguilder */
-    { 0x100000ee, 17096 }, /* hpYdiaeresis */
-    { 0x100000f6, 16956 }, /* hplongminus */
-    { 0x100000fc, 16849 }, /* hpblock */
+    { 0x100000a8, 16971 }, /* hpmute_acute */
+    { 0x100000a9, 17038 }, /* hpmute_grave */
+    { 0x100000aa, 16984 }, /* hpmute_asciicircum */
+    { 0x100000ab, 17021 }, /* hpmute_diaeresis */
+    { 0x100000ac, 17003 }, /* hpmute_asciitilde */
+    { 0x100000af, 16928 }, /* hplira */
+    { 0x100000be, 16874 }, /* hpguilder */
+    { 0x100000ee, 17075 }, /* hpYdiaeresis */
+    { 0x100000f6, 16935 }, /* hplongminus */
+    { 0x100000fc, 16828 }, /* hpblock */
     { 0x1000fe22, 10496 }, /* Ddiaeresis */
     { 0x1000fe27, 10426 }, /* Dacute_accent */
     { 0x1000fe2c, 10461 }, /* Dcedilla_accent */
     { 0x1000fe5e, 10477 }, /* Dcircumflex_accent */
-    { 0x1000fe60, 11271 }, /* Dgrave_accent */
-    { 0x1000fe7e, 11499 }, /* Dtilde */
-    { 0x1000feb0, 11470 }, /* Dring_accent */
-    { 0x1000ff00, 11462 }, /* DRemove */
-    { 0x1000ff48, 16968 }, /* hpModelock1 */
-    { 0x1000ff49, 16980 }, /* hpModelock2 */
-    { 0x1000ff6c, 17072 }, /* hpReset */
-    { 0x1000ff6d, 17080 }, /* hpSystem */
-    { 0x1000ff6e, 17089 }, /* hpUser */
-    { 0x1000ff6f, 16857 }, /* hpClearLine */
-    { 0x1000ff70, 16918 }, /* hpInsertLine */
-    { 0x1000ff71, 16882 }, /* hpDeleteLine */
-    { 0x1000ff72, 16905 }, /* hpInsertChar */
-    { 0x1000ff73, 16869 }, /* hpDeleteChar */
-    { 0x1000ff74, 16839 }, /* hpBackTab */
-    { 0x1000ff75, 16936 }, /* hpKP_BackTab */
-    { 0x1000ff76, 12207 }, /* Ext16bit_L */
-    { 0x1000ff77, 12218 }, /* Ext16bit_R */
-    { 0x1004ff02, 21038 }, /* osfCopy */
-    { 0x1004ff03, 21046 }, /* osfCut */
-    { 0x1004ff04, 21245 }, /* osfPaste */
-    { 0x1004ff07, 20982 }, /* osfBackTab */
-    { 0x1004ff08, 20969 }, /* osfBackSpace */
-    { 0x1004ff0b, 21029 }, /* osfClear */
-    { 0x1004ff1b, 21108 }, /* osfEscape */
-    { 0x1004ff31, 20958 }, /* osfAddMode */
-    { 0x1004ff32, 21279 }, /* osfPrimaryPaste */
-    { 0x1004ff33, 21295 }, /* osfQuickPaste */
-    { 0x1004ff40, 21210 }, /* osfPageLeft */
-    { 0x1004ff41, 21235 }, /* osfPageUp */
-    { 0x1004ff42, 21198 }, /* osfPageDown */
-    { 0x1004ff43, 21222 }, /* osfPageRight */
-    { 0x1004ff44, 20946 }, /* osfActivate */
-    { 0x1004ff45, 21162 }, /* osfMenuBar */
-    { 0x1004ff51, 21146 }, /* osfLeft */
-    { 0x1004ff52, 21372 }, /* osfUp */
-    { 0x1004ff53, 21332 }, /* osfRight */
-    { 0x1004ff54, 21078 }, /* osfDown */
-    { 0x1004ff57, 21097 }, /* osfEndLine */
-    { 0x1004ff58, 21006 }, /* osfBeginLine */
-    { 0x1004ff59, 21086 }, /* osfEndData */
-    { 0x1004ff5a, 20993 }, /* osfBeginData */
-    { 0x1004ff5b, 21267 }, /* osfPrevMenu */
-    { 0x1004ff5c, 21186 }, /* osfNextMenu */
-    { 0x1004ff5d, 21254 }, /* osfPrevField */
-    { 0x1004ff5e, 21173 }, /* osfNextField */
-    { 0x1004ff60, 21341 }, /* osfSelect */
-    { 0x1004ff63, 21136 }, /* osfInsert */
-    { 0x1004ff65, 21364 }, /* osfUndo */
-    { 0x1004ff67, 21154 }, /* osfMenu */
-    { 0x1004ff69, 21019 }, /* osfCancel */
-    { 0x1004ff6a, 21128 }, /* osfHelp */
-    { 0x1004ff71, 21351 }, /* osfSelectAll */
-    { 0x1004ff72, 21063 }, /* osfDeselectAll */
-    { 0x1004ff73, 21309 }, /* osfReselect */
-    { 0x1004ff74, 21118 }, /* osfExtend */
-    { 0x1004ff78, 21321 }, /* osfRestore */
-    { 0x1004ffff, 21053 }, /* osfDelete */
-    { 0x1005ff00, 24114 }, /* SunFA_Grave */
-    { 0x1005ff01, 24085 }, /* SunFA_Circum */
-    { 0x1005ff02, 24126 }, /* SunFA_Tilde */
-    { 0x1005ff03, 24059 }, /* SunFA_Acute */
-    { 0x1005ff04, 24098 }, /* SunFA_Diaeresis */
-    { 0x1005ff05, 24071 }, /* SunFA_Cedilla */
-    { 0x1005ff10, 24045 }, /* SunF36 */
-    { 0x1005ff11, 24052 }, /* SunF37 */
-    { 0x1005ff60, 24262 }, /* SunSys_Req */
-    { 0x1005ff70, 24245 }, /* SunProps */
-    { 0x1005ff71, 24146 }, /* SunFront */
-    { 0x1005ff72, 24030 }, /* SunCopy */
-    { 0x1005ff73, 24155 }, /* SunOpen */
-    { 0x1005ff74, 24185 }, /* SunPaste */
-    { 0x1005ff75, 24038 }, /* SunCut */
-    { 0x1005ff76, 24194 }, /* SunPowerSwitch */
-    { 0x1005ff77, 23966 }, /* SunAudioLowerVolume */
-    { 0x1005ff78, 23986 }, /* SunAudioMute */
-    { 0x1005ff79, 23999 }, /* SunAudioRaiseVolume */
-    { 0x1005ff7a, 24281 }, /* SunVideoDegauss */
-    { 0x1005ff7b, 24297 }, /* SunVideoLowerBrightness */
-    { 0x1005ff7c, 24321 }, /* SunVideoRaiseBrightness */
-    { 0x1005ff7d, 24209 }, /* SunPowerSwitchShift */
-    { 0x100810f4, 27381 }, /* XF86BrightnessAuto */
-    { 0x100810f5, 27809 }, /* XF86DisplayOff */
-    { 0x10081166, 28175 }, /* XF86Info */
-    { 0x10081177, 26885 }, /* XF86AspectRatio */
-    { 0x10081185, 27864 }, /* XF86DVD */
-    { 0x10081188, 26968 }, /* XF86Audio */
-    { 0x10081192, 27629 }, /* XF86ChannelUp */
-    { 0x10081193, 27613 }, /* XF86ChannelDown */
-    { 0x1008119b, 27350 }, /* XF86Break */
-    { 0x100811a0, 30983 }, /* XF86VideoPhone */
-    { 0x100811a4, 31176 }, /* XF86ZoomReset */
-    { 0x100811a6, 27872 }, /* XF86Editor */
-    { 0x100811a8, 28067 }, /* XF86GraphicsEditor */
-    { 0x100811a9, 29984 }, /* XF86Presentation */
-    { 0x100811aa, 27784 }, /* XF86Database */
-    { 0x100811ac, 31032 }, /* XF86Voicemail */
-    { 0x100811ad, 26800 }, /* XF86Addressbook */
-    { 0x100811af, 27824 }, /* XF86DisplayToggle */
-    { 0x100811b0, 30437 }, /* XF86SpellCheck */
-    { 0x100811b6, 27691 }, /* XF86ContextMenu */
-    { 0x100811b7, 29304 }, /* XF86MediaRepeat */
-    { 0x100811b8, 26756 }, /* XF8610ChannelsUp */
-    { 0x100811b9, 26737 }, /* XF8610ChannelsDown */
-    { 0x100811ba, 28164 }, /* XF86Images */
-    { 0x100811bc, 29558 }, /* XF86NotificationCenter */
-    { 0x100811bd, 29928 }, /* XF86PickupPhone */
-    { 0x100811be, 28096 }, /* XF86HangupPhone */
-    { 0x100811d0, 27958 }, /* XF86Fn */
-    { 0x100811d1, 27965 }, /* XF86Fn_Esc */
-    { 0x100811e5, 27976 }, /* XF86FnRightShift */
-    { 0x10081200, 29581 }, /* XF86Numeric0 */
-    { 0x10081201, 29594 }, /* XF86Numeric1 */
-    { 0x10081202, 29635 }, /* XF86Numeric2 */
-    { 0x10081203, 29648 }, /* XF86Numeric3 */
-    { 0x10081204, 29661 }, /* XF86Numeric4 */
-    { 0x10081205, 29674 }, /* XF86Numeric5 */
-    { 0x10081206, 29687 }, /* XF86Numeric6 */
-    { 0x10081207, 29700 }, /* XF86Numeric7 */
-    { 0x10081208, 29713 }, /* XF86Numeric8 */
-    { 0x10081209, 29726 }, /* XF86Numeric9 */
-    { 0x1008120a, 29808 }, /* XF86NumericStar */
-    { 0x1008120b, 29791 }, /* XF86NumericPound */
-    { 0x1008120c, 29739 }, /* XF86NumericA */
-    { 0x1008120d, 29752 }, /* XF86NumericB */
-    { 0x1008120e, 29765 }, /* XF86NumericC */
-    { 0x1008120f, 29778 }, /* XF86NumericD */
-    { 0x10081210, 27511 }, /* XF86CameraFocus */
-    { 0x10081211, 31102 }, /* XF86WPSButton */
-    { 0x10081215, 27571 }, /* XF86CameraZoomIn */
-    { 0x10081216, 27588 }, /* XF86CameraZoomOut */
-    { 0x10081217, 27558 }, /* XF86CameraUp */
-    { 0x10081218, 27496 }, /* XF86CameraDown */
-    { 0x10081219, 27527 }, /* XF86CameraLeft */
-    { 0x1008121a, 27542 }, /* XF86CameraRight */
-    { 0x1008121b, 26932 }, /* XF86AttendantOn */
-    { 0x1008121c, 26915 }, /* XF86AttendantOff */
-    { 0x1008121d, 26948 }, /* XF86AttendantToggle */
-    { 0x1008121e, 28742 }, /* XF86LightsToggle */
-    { 0x10081230, 26816 }, /* XF86ALSToggle */
-    { 0x10081240, 27436 }, /* XF86Buttonconfig */
-    { 0x10081241, 30746 }, /* XF86Taskmanager */
-    { 0x10081242, 28195 }, /* XF86Journal */
-    { 0x10081243, 27726 }, /* XF86ControlPanel */
-    { 0x10081244, 26871 }, /* XF86AppSelect */
-    { 0x10081245, 30277 }, /* XF86Screensaver */
-    { 0x10081246, 31015 }, /* XF86VoiceCommand */
-    { 0x10081247, 26901 }, /* XF86Assistant */
-    { 0x10081250, 27418 }, /* XF86BrightnessMin */
-    { 0x10081251, 27400 }, /* XF86BrightnessMax */
-    { 0x10081260, 28350 }, /* XF86KbdInputAssistPrev */
-    { 0x10081261, 28299 }, /* XF86KbdInputAssistNext */
-    { 0x10081262, 28373 }, /* XF86KbdInputAssistPrevgroup */
-    { 0x10081263, 28322 }, /* XF86KbdInputAssistNextgroup */
-    { 0x10081264, 28249 }, /* XF86KbdInputAssistAccept */
-    { 0x10081265, 28274 }, /* XF86KbdInputAssistCancel */
-    { 0x10081266, 30112 }, /* XF86RightUp */
-    { 0x10081267, 30098 }, /* XF86RightDown */
-    { 0x10081268, 28717 }, /* XF86LeftUp */
-    { 0x10081269, 28704 }, /* XF86LeftDown */
-    { 0x1008126a, 30168 }, /* XF86RootMenu */
-    { 0x1008126b, 29320 }, /* XF86MediaTopMenu */
-    { 0x1008126c, 29607 }, /* XF86Numeric11 */
-    { 0x1008126d, 29621 }, /* XF86Numeric12 */
-    { 0x1008126e, 26998 }, /* XF86AudioDesc */
-    { 0x1008126f, 26773 }, /* XF863DMode */
-    { 0x10081270, 29541 }, /* XF86NextFavorite */
-    { 0x10081271, 30499 }, /* XF86StopRecord */
-    { 0x10081272, 29902 }, /* XF86PauseRecord */
-    { 0x10081273, 31007 }, /* XF86VOD */
-    { 0x10081274, 30904 }, /* XF86Unmute */
-    { 0x10081275, 27916 }, /* XF86FastReverse */
-    { 0x10081276, 30411 }, /* XF86SlowReverse */
-    { 0x10081277, 27775 }, /* XF86Data */
-    { 0x10081278, 29839 }, /* XF86OnScreenKeyboard */
-    { 0x10081279, 30016 }, /* XF86PrivacyScreenToggle */
-    { 0x1008127a, 30359 }, /* XF86SelectiveScreenshot */
-    { 0x10081290, 28804 }, /* XF86Macro1 */
-    { 0x10081291, 28935 }, /* XF86Macro2 */
-    { 0x10081292, 29066 }, /* XF86Macro3 */
-    { 0x10081293, 29089 }, /* XF86Macro4 */
-    { 0x10081294, 29100 }, /* XF86Macro5 */
-    { 0x10081295, 29111 }, /* XF86Macro6 */
-    { 0x10081296, 29122 }, /* XF86Macro7 */
-    { 0x10081297, 29133 }, /* XF86Macro8 */
-    { 0x10081298, 29144 }, /* XF86Macro9 */
-    { 0x10081299, 28815 }, /* XF86Macro10 */
-    { 0x1008129a, 28827 }, /* XF86Macro11 */
-    { 0x1008129b, 28839 }, /* XF86Macro12 */
-    { 0x1008129c, 28851 }, /* XF86Macro13 */
-    { 0x1008129d, 28863 }, /* XF86Macro14 */
-    { 0x1008129e, 28875 }, /* XF86Macro15 */
-    { 0x1008129f, 28887 }, /* XF86Macro16 */
-    { 0x100812a0, 28899 }, /* XF86Macro17 */
-    { 0x100812a1, 28911 }, /* XF86Macro18 */
-    { 0x100812a2, 28923 }, /* XF86Macro19 */
-    { 0x100812a3, 28946 }, /* XF86Macro20 */
-    { 0x100812a4, 28958 }, /* XF86Macro21 */
-    { 0x100812a5, 28970 }, /* XF86Macro22 */
-    { 0x100812a6, 28982 }, /* XF86Macro23 */
-    { 0x100812a7, 28994 }, /* XF86Macro24 */
-    { 0x100812a8, 29006 }, /* XF86Macro25 */
-    { 0x100812a9, 29018 }, /* XF86Macro26 */
-    { 0x100812aa, 29030 }, /* XF86Macro27 */
-    { 0x100812ab, 29042 }, /* XF86Macro28 */
-    { 0x100812ac, 29054 }, /* XF86Macro29 */
-    { 0x100812ad, 29077 }, /* XF86Macro30 */
-    { 0x100812b0, 29227 }, /* XF86MacroRecordStart */
-    { 0x100812b1, 29248 }, /* XF86MacroRecordStop */
-    { 0x100812b2, 29206 }, /* XF86MacroPresetCycle */
-    { 0x100812b3, 29155 }, /* XF86MacroPreset1 */
-    { 0x100812b4, 29172 }, /* XF86MacroPreset2 */
-    { 0x100812b5, 29189 }, /* XF86MacroPreset3 */
-    { 0x100812b8, 28401 }, /* XF86KbdLcdMenu1 */
-    { 0x100812b9, 28417 }, /* XF86KbdLcdMenu2 */
-    { 0x100812ba, 28433 }, /* XF86KbdLcdMenu3 */
-    { 0x100812bb, 28449 }, /* XF86KbdLcdMenu4 */
-    { 0x100812bc, 28465 }, /* XF86KbdLcdMenu5 */
-    { 0x1008fe01, 30551 }, /* XF86Switch_VT_1 */
-    { 0x1008fe02, 30618 }, /* XF86Switch_VT_2 */
-    { 0x1008fe03, 30634 }, /* XF86Switch_VT_3 */
-    { 0x1008fe04, 30650 }, /* XF86Switch_VT_4 */
-    { 0x1008fe05, 30666 }, /* XF86Switch_VT_5 */
-    { 0x1008fe06, 30682 }, /* XF86Switch_VT_6 */
-    { 0x1008fe07, 30698 }, /* XF86Switch_VT_7 */
-    { 0x1008fe08, 30714 }, /* XF86Switch_VT_8 */
-    { 0x1008fe09, 30730 }, /* XF86Switch_VT_9 */
-    { 0x1008fe0a, 30567 }, /* XF86Switch_VT_10 */
-    { 0x1008fe0b, 30584 }, /* XF86Switch_VT_11 */
-    { 0x1008fe0c, 30601 }, /* XF86Switch_VT_12 */
-    { 0x1008fe20, 30893 }, /* XF86Ungrab */
-    { 0x1008fe21, 27653 }, /* XF86ClearGrab */
-    { 0x1008fe22, 29526 }, /* XF86Next_VMode */
-    { 0x1008fe23, 30001 }, /* XF86Prev_VMode */
-    { 0x1008fe24, 28786 }, /* XF86LogWindowTree */
-    { 0x1008fe25, 28759 }, /* XF86LogGrabInfo */
-    { 0x1008ff01, 29394 }, /* XF86ModeLock */
-    { 0x1008ff02, 29452 }, /* XF86MonBrightnessUp */
-    { 0x1008ff03, 29430 }, /* XF86MonBrightnessDown */
-    { 0x1008ff04, 28481 }, /* XF86KbdLightOnOff */
-    { 0x1008ff05, 28229 }, /* XF86KbdBrightnessUp */
-    { 0x1008ff06, 28207 }, /* XF86KbdBrightnessDown */
-    { 0x1008ff07, 29407 }, /* XF86MonBrightnessCycle */
-    { 0x1008ff10, 30468 }, /* XF86Standby */
-    { 0x1008ff11, 27029 }, /* XF86AudioLowerVolume */
-    { 0x1008ff12, 27082 }, /* XF86AudioMute */
-    { 0x1008ff13, 27169 }, /* XF86AudioRaiseVolume */
-    { 0x1008ff14, 27125 }, /* XF86AudioPlay */
-    { 0x1008ff15, 27258 }, /* XF86AudioStop */
-    { 0x1008ff16, 27155 }, /* XF86AudioPrev */
-    { 0x1008ff17, 27096 }, /* XF86AudioNext */
-    { 0x1008ff18, 28138 }, /* XF86HomePage */
-    { 0x1008ff19, 29268 }, /* XF86Mail */
-    { 0x1008ff1a, 30480 }, /* XF86Start */
-    { 0x1008ff1b, 30337 }, /* XF86Search */
-    { 0x1008ff1c, 27210 }, /* XF86AudioRecord */
-    { 0x1008ff1d, 27468 }, /* XF86Calculator */
-    { 0x1008ff1e, 29349 }, /* XF86Memo */
-    { 0x1008ff1f, 30797 }, /* XF86ToDoList */
-    { 0x1008ff20, 27483 }, /* XF86Calendar */
-    { 0x1008ff21, 29957 }, /* XF86PowerDown */
-    { 0x1008ff22, 27707 }, /* XF86ContrastAdjust */
-    { 0x1008ff23, 30155 }, /* XF86RockerUp */
-    { 0x1008ff24, 30124 }, /* XF86RockerDown */
-    { 0x1008ff25, 30139 }, /* XF86RockerEnter */
-    { 0x1008ff26, 27281 }, /* XF86Back */
-    { 0x1008ff27, 27993 }, /* XF86Forward */
-    { 0x1008ff28, 30490 }, /* XF86Stop */
-    { 0x1008ff29, 30054 }, /* XF86Refresh */
-    { 0x1008ff2a, 29971 }, /* XF86PowerOff */
-    { 0x1008ff2b, 31046 }, /* XF86WakeUp */
-    { 0x1008ff2c, 27883 }, /* XF86Eject */
-    { 0x1008ff2d, 30261 }, /* XF86ScreenSaver */
-    { 0x1008ff2e, 31125 }, /* XF86WWW */
-    { 0x1008ff2f, 30401 }, /* XF86Sleep */
-    { 0x1008ff30, 27932 }, /* XF86Favorites */
-    { 0x1008ff31, 27110 }, /* XF86AudioPause */
-    { 0x1008ff32, 27050 }, /* XF86AudioMedia */
-    { 0x1008ff33, 29482 }, /* XF86MyComputer */
-    { 0x1008ff34, 30958 }, /* XF86VendorHome */
-    { 0x1008ff35, 28728 }, /* XF86LightBulb */
-    { 0x1008ff36, 30392 }, /* XF86Shop */
-    { 0x1008ff37, 28126 }, /* XF86History */
-    { 0x1008ff38, 29869 }, /* XF86OpenURL */
-    { 0x1008ff39, 26784 }, /* XF86AddFavorite */
-    { 0x1008ff3a, 28151 }, /* XF86HotLinks */
-    { 0x1008ff3b, 27360 }, /* XF86BrightnessAdjust */
-    { 0x1008ff3c, 27946 }, /* XF86Finance */
-    { 0x1008ff3d, 27677 }, /* XF86Community */
-    { 0x1008ff3e, 27242 }, /* XF86AudioRewind */
-    { 0x1008ff3f, 27290 }, /* XF86BackForward */
-    { 0x1008ff40, 28512 }, /* XF86Launch0 */
-    { 0x1008ff41, 28524 }, /* XF86Launch1 */
-    { 0x1008ff42, 28536 }, /* XF86Launch2 */
-    { 0x1008ff43, 28548 }, /* XF86Launch3 */
-    { 0x1008ff44, 28560 }, /* XF86Launch4 */
-    { 0x1008ff45, 28572 }, /* XF86Launch5 */
-    { 0x1008ff46, 28584 }, /* XF86Launch6 */
-    { 0x1008ff47, 28596 }, /* XF86Launch7 */
-    { 0x1008ff48, 28608 }, /* XF86Launch8 */
-    { 0x1008ff49, 28620 }, /* XF86Launch9 */
-    { 0x1008ff4a, 28632 }, /* XF86LaunchA */
-    { 0x1008ff4b, 28644 }, /* XF86LaunchB */
-    { 0x1008ff4c, 28656 }, /* XF86LaunchC */
-    { 0x1008ff4d, 28668 }, /* XF86LaunchD */
-    { 0x1008ff4e, 28680 }, /* XF86LaunchE */
-    { 0x1008ff4f, 28692 }, /* XF86LaunchF */
-    { 0x1008ff50, 26830 }, /* XF86ApplicationLeft */
-    { 0x1008ff51, 26850 }, /* XF86ApplicationRight */
-    { 0x1008ff52, 27341 }, /* XF86Book */
-    { 0x1008ff53, 27606 }, /* XF86CD */
-    { 0x1008ff54, 27453 }, /* XF86Calculater */
-    { 0x1008ff55, 27643 }, /* XF86Clear */
-    { 0x1008ff56, 27667 }, /* XF86Close */
-    { 0x1008ff57, 27743 }, /* XF86Copy */
-    { 0x1008ff58, 27752 }, /* XF86Cut */
-    { 0x1008ff59, 27797 }, /* XF86Display */
-    { 0x1008ff5a, 27856 }, /* XF86DOS */
-    { 0x1008ff5b, 27842 }, /* XF86Documents */
-    { 0x1008ff5c, 27893 }, /* XF86Excel */
-    { 0x1008ff5d, 27903 }, /* XF86Explorer */
-    { 0x1008ff5e, 28051 }, /* XF86Game */
-    { 0x1008ff5f, 28060 }, /* XF86Go */
-    { 0x1008ff60, 28184 }, /* XF86iTouch */
-    { 0x1008ff61, 28775 }, /* XF86LogOff */
-    { 0x1008ff62, 29293 }, /* XF86Market */
-    { 0x1008ff63, 29337 }, /* XF86Meeting */
-    { 0x1008ff65, 29358 }, /* XF86MenuKB */
-    { 0x1008ff66, 29369 }, /* XF86MenuPB */
-    { 0x1008ff67, 29497 }, /* XF86MySites */
-    { 0x1008ff68, 29509 }, /* XF86New */
-    { 0x1008ff69, 29517 }, /* XF86News */
-    { 0x1008ff6a, 29824 }, /* XF86OfficeHome */
-    { 0x1008ff6b, 29860 }, /* XF86Open */
-    { 0x1008ff6c, 29881 }, /* XF86Option */
-    { 0x1008ff6d, 29892 }, /* XF86Paste */
-    { 0x1008ff6e, 29918 }, /* XF86Phone */
-    { 0x1008ff70, 30040 }, /* XF86Q */
-    { 0x1008ff72, 30077 }, /* XF86Reply */
-    { 0x1008ff73, 30066 }, /* XF86Reload */
-    { 0x1008ff74, 30181 }, /* XF86RotateWindows */
-    { 0x1008ff75, 30237 }, /* XF86RotationPB */
-    { 0x1008ff76, 30199 }, /* XF86RotationKB */
-    { 0x1008ff77, 30252 }, /* XF86Save */
-    { 0x1008ff78, 30324 }, /* XF86ScrollUp */
-    { 0x1008ff79, 30309 }, /* XF86ScrollDown */
-    { 0x1008ff7a, 30293 }, /* XF86ScrollClick */
-    { 0x1008ff7b, 30383 }, /* XF86Send */
-    { 0x1008ff7c, 30427 }, /* XF86Spell */
-    { 0x1008ff7d, 30452 }, /* XF86SplitScreen */
-    { 0x1008ff7e, 30527 }, /* XF86Support */
-    { 0x1008ff7f, 30762 }, /* XF86TaskPane */
-    { 0x1008ff80, 30775 }, /* XF86Terminal */
-    { 0x1008ff81, 30810 }, /* XF86Tools */
-    { 0x1008ff82, 30882 }, /* XF86Travel */
-    { 0x1008ff84, 30939 }, /* XF86UserPB */
-    { 0x1008ff85, 30915 }, /* XF86User1KB */
-    { 0x1008ff86, 30927 }, /* XF86User2KB */
-    { 0x1008ff87, 30973 }, /* XF86Video */
-    { 0x1008ff88, 31068 }, /* XF86WheelButton */
-    { 0x1008ff89, 31093 }, /* XF86Word */
-    { 0x1008ff8a, 31133 }, /* XF86Xfer */
-    { 0x1008ff8b, 31153 }, /* XF86ZoomIn */
-    { 0x1008ff8c, 31164 }, /* XF86ZoomOut */
-    { 0x1008ff8d, 27272 }, /* XF86Away */
-    { 0x1008ff8e, 29380 }, /* XF86Messenger */
-    { 0x1008ff8f, 31057 }, /* XF86WebCam */
-    { 0x1008ff90, 29277 }, /* XF86MailForward */
-    { 0x1008ff91, 29944 }, /* XF86Pictures */
-    { 0x1008ff92, 29472 }, /* XF86Music */
-    { 0x1008ff93, 27306 }, /* XF86Battery */
-    { 0x1008ff94, 27327 }, /* XF86Bluetooth */
-    { 0x1008ff95, 31084 }, /* XF86WLAN */
-    { 0x1008ff96, 30950 }, /* XF86UWB */
-    { 0x1008ff97, 27012 }, /* XF86AudioForward */
-    { 0x1008ff98, 27226 }, /* XF86AudioRepeat */
-    { 0x1008ff99, 27190 }, /* XF86AudioRandomPlay */
-    { 0x1008ff9a, 30514 }, /* XF86Subtitle */
-    { 0x1008ff9b, 26978 }, /* XF86AudioCycleTrack */
-    { 0x1008ff9c, 27760 }, /* XF86CycleAngle */
-    { 0x1008ff9d, 28005 }, /* XF86FrameBack */
-    { 0x1008ff9e, 28019 }, /* XF86FrameForward */
-    { 0x1008ff9f, 30788 }, /* XF86Time */
-    { 0x1008ffa0, 30348 }, /* XF86Select */
-    { 0x1008ffa1, 30998 }, /* XF86View */
-    { 0x1008ffa2, 30820 }, /* XF86TopMenu */
-    { 0x1008ffa3, 30046 }, /* XF86Red */
-    { 0x1008ffa4, 28086 }, /* XF86Green */
-    { 0x1008ffa5, 31142 }, /* XF86Yellow */
-    { 0x1008ffa6, 27318 }, /* XF86Blue */
-    { 0x1008ffa7, 30539 }, /* XF86Suspend */
-    { 0x1008ffa8, 28112 }, /* XF86Hibernate */
-    { 0x1008ffa9, 30863 }, /* XF86TouchpadToggle */
-    { 0x1008ffb0, 30848 }, /* XF86TouchpadOn */
-    { 0x1008ffb1, 30832 }, /* XF86TouchpadOff */
-    { 0x1008ffb2, 27065 }, /* XF86AudioMicMute */
-    { 0x1008ffb3, 28499 }, /* XF86Keyboard */
-    { 0x1008ffb4, 31116 }, /* XF86WWAN */
-    { 0x1008ffb5, 30087 }, /* XF86RFKill */
-    { 0x1008ffb6, 27139 }, /* XF86AudioPreset */
-    { 0x1008ffb7, 30214 }, /* XF86RotationLockToggle */
-    { 0x1008ffb8, 28036 }, /* XF86FullScreen */
+    { 0x1000fe60, 11221 }, /* Dgrave_accent */
+    { 0x1000fe7e, 11449 }, /* Dtilde */
+    { 0x1000feb0, 11420 }, /* Dring_accent */
+    { 0x1000ff00, 11412 }, /* DRemove */
+    { 0x1000ff48, 16947 }, /* hpModelock1 */
+    { 0x1000ff49, 16959 }, /* hpModelock2 */
+    { 0x1000ff6c, 17051 }, /* hpReset */
+    { 0x1000ff6d, 17059 }, /* hpSystem */
+    { 0x1000ff6e, 17068 }, /* hpUser */
+    { 0x1000ff6f, 16836 }, /* hpClearLine */
+    { 0x1000ff70, 16897 }, /* hpInsertLine */
+    { 0x1000ff71, 16861 }, /* hpDeleteLine */
+    { 0x1000ff72, 16884 }, /* hpInsertChar */
+    { 0x1000ff73, 16848 }, /* hpDeleteChar */
+    { 0x1000ff74, 16818 }, /* hpBackTab */
+    { 0x1000ff75, 16915 }, /* hpKP_BackTab */
+    { 0x1000ff76, 12157 }, /* Ext16bit_L */
+    { 0x1000ff77, 12168 }, /* Ext16bit_R */
+    { 0x1004ff02, 21030 }, /* osfCopy */
+    { 0x1004ff03, 21038 }, /* osfCut */
+    { 0x1004ff04, 21237 }, /* osfPaste */
+    { 0x1004ff07, 20974 }, /* osfBackTab */
+    { 0x1004ff08, 20961 }, /* osfBackSpace */
+    { 0x1004ff0b, 21021 }, /* osfClear */
+    { 0x1004ff1b, 21100 }, /* osfEscape */
+    { 0x1004ff31, 20950 }, /* osfAddMode */
+    { 0x1004ff32, 21271 }, /* osfPrimaryPaste */
+    { 0x1004ff33, 21287 }, /* osfQuickPaste */
+    { 0x1004ff40, 21202 }, /* osfPageLeft */
+    { 0x1004ff41, 21227 }, /* osfPageUp */
+    { 0x1004ff42, 21190 }, /* osfPageDown */
+    { 0x1004ff43, 21214 }, /* osfPageRight */
+    { 0x1004ff44, 20938 }, /* osfActivate */
+    { 0x1004ff45, 21154 }, /* osfMenuBar */
+    { 0x1004ff51, 21138 }, /* osfLeft */
+    { 0x1004ff52, 21364 }, /* osfUp */
+    { 0x1004ff53, 21324 }, /* osfRight */
+    { 0x1004ff54, 21070 }, /* osfDown */
+    { 0x1004ff57, 21089 }, /* osfEndLine */
+    { 0x1004ff58, 20998 }, /* osfBeginLine */
+    { 0x1004ff59, 21078 }, /* osfEndData */
+    { 0x1004ff5a, 20985 }, /* osfBeginData */
+    { 0x1004ff5b, 21259 }, /* osfPrevMenu */
+    { 0x1004ff5c, 21178 }, /* osfNextMenu */
+    { 0x1004ff5d, 21246 }, /* osfPrevField */
+    { 0x1004ff5e, 21165 }, /* osfNextField */
+    { 0x1004ff60, 21333 }, /* osfSelect */
+    { 0x1004ff63, 21128 }, /* osfInsert */
+    { 0x1004ff65, 21356 }, /* osfUndo */
+    { 0x1004ff67, 21146 }, /* osfMenu */
+    { 0x1004ff69, 21011 }, /* osfCancel */
+    { 0x1004ff6a, 21120 }, /* osfHelp */
+    { 0x1004ff71, 21343 }, /* osfSelectAll */
+    { 0x1004ff72, 21055 }, /* osfDeselectAll */
+    { 0x1004ff73, 21301 }, /* osfReselect */
+    { 0x1004ff74, 21110 }, /* osfExtend */
+    { 0x1004ff78, 21313 }, /* osfRestore */
+    { 0x1004ffff, 21045 }, /* osfDelete */
+    { 0x1005ff00, 24106 }, /* SunFA_Grave */
+    { 0x1005ff01, 24077 }, /* SunFA_Circum */
+    { 0x1005ff02, 24118 }, /* SunFA_Tilde */
+    { 0x1005ff03, 24051 }, /* SunFA_Acute */
+    { 0x1005ff04, 24090 }, /* SunFA_Diaeresis */
+    { 0x1005ff05, 24063 }, /* SunFA_Cedilla */
+    { 0x1005ff10, 24037 }, /* SunF36 */
+    { 0x1005ff11, 24044 }, /* SunF37 */
+    { 0x1005ff60, 24254 }, /* SunSys_Req */
+    { 0x1005ff70, 24237 }, /* SunProps */
+    { 0x1005ff71, 24138 }, /* SunFront */
+    { 0x1005ff72, 24022 }, /* SunCopy */
+    { 0x1005ff73, 24147 }, /* SunOpen */
+    { 0x1005ff74, 24177 }, /* SunPaste */
+    { 0x1005ff75, 24030 }, /* SunCut */
+    { 0x1005ff76, 24186 }, /* SunPowerSwitch */
+    { 0x1005ff77, 23958 }, /* SunAudioLowerVolume */
+    { 0x1005ff78, 23978 }, /* SunAudioMute */
+    { 0x1005ff79, 23991 }, /* SunAudioRaiseVolume */
+    { 0x1005ff7a, 24273 }, /* SunVideoDegauss */
+    { 0x1005ff7b, 24289 }, /* SunVideoLowerBrightness */
+    { 0x1005ff7c, 24313 }, /* SunVideoRaiseBrightness */
+    { 0x1005ff7d, 24201 }, /* SunPowerSwitchShift */
+    { 0x100810f4, 27399 }, /* XF86BrightnessAuto */
+    { 0x100810f5, 27926 }, /* XF86DisplayOff */
+    { 0x10081166, 28344 }, /* XF86Info */
+    { 0x10081177, 26877 }, /* XF86AspectRatio */
+    { 0x10081185, 28000 }, /* XF86DVD */
+    { 0x10081188, 26960 }, /* XF86Audio */
+    { 0x10081192, 27717 }, /* XF86ChannelUp */
+    { 0x10081193, 27701 }, /* XF86ChannelDown */
+    { 0x1008119b, 27368 }, /* XF86Break */
+    { 0x100811a0, 31313 }, /* XF86VideoPhone */
+    { 0x100811a4, 31506 }, /* XF86ZoomReset */
+    { 0x100811a6, 28008 }, /* XF86Editor */
+    { 0x100811a8, 28236 }, /* XF86GraphicsEditor */
+    { 0x100811a9, 30211 }, /* XF86Presentation */
+    { 0x100811aa, 27889 }, /* XF86Database */
+    { 0x100811ac, 31362 }, /* XF86Voicemail */
+    { 0x100811ad, 26792 }, /* XF86Addressbook */
+    { 0x100811af, 27941 }, /* XF86DisplayToggle */
+    { 0x100811b0, 30746 }, /* XF86SpellCheck */
+    { 0x100811b6, 27796 }, /* XF86ContextMenu */
+    { 0x100811b7, 29490 }, /* XF86MediaRepeat */
+    { 0x100811b8, 26748 }, /* XF8610ChannelsUp */
+    { 0x100811b9, 26729 }, /* XF8610ChannelsDown */
+    { 0x100811ba, 28333 }, /* XF86Images */
+    { 0x100811bc, 29785 }, /* XF86NotificationCenter */
+    { 0x100811bd, 30155 }, /* XF86PickupPhone */
+    { 0x100811be, 28265 }, /* XF86HangupPhone */
+    { 0x100811d0, 28127 }, /* XF86Fn */
+    { 0x100811d1, 28134 }, /* XF86Fn_Esc */
+    { 0x100811e5, 28145 }, /* XF86FnRightShift */
+    { 0x10081200, 29808 }, /* XF86Numeric0 */
+    { 0x10081201, 29821 }, /* XF86Numeric1 */
+    { 0x10081202, 29862 }, /* XF86Numeric2 */
+    { 0x10081203, 29875 }, /* XF86Numeric3 */
+    { 0x10081204, 29888 }, /* XF86Numeric4 */
+    { 0x10081205, 29901 }, /* XF86Numeric5 */
+    { 0x10081206, 29914 }, /* XF86Numeric6 */
+    { 0x10081207, 29927 }, /* XF86Numeric7 */
+    { 0x10081208, 29940 }, /* XF86Numeric8 */
+    { 0x10081209, 29953 }, /* XF86Numeric9 */
+    { 0x1008120a, 30035 }, /* XF86NumericStar */
+    { 0x1008120b, 30018 }, /* XF86NumericPound */
+    { 0x1008120c, 29966 }, /* XF86NumericA */
+    { 0x1008120d, 29979 }, /* XF86NumericB */
+    { 0x1008120e, 29992 }, /* XF86NumericC */
+    { 0x1008120f, 30005 }, /* XF86NumericD */
+    { 0x10081210, 27599 }, /* XF86CameraFocus */
+    { 0x10081211, 31432 }, /* XF86WPSButton */
+    { 0x10081215, 27659 }, /* XF86CameraZoomIn */
+    { 0x10081216, 27676 }, /* XF86CameraZoomOut */
+    { 0x10081217, 27646 }, /* XF86CameraUp */
+    { 0x10081218, 27584 }, /* XF86CameraDown */
+    { 0x10081219, 27615 }, /* XF86CameraLeft */
+    { 0x1008121a, 27630 }, /* XF86CameraRight */
+    { 0x1008121b, 26924 }, /* XF86AttendantOn */
+    { 0x1008121c, 26907 }, /* XF86AttendantOff */
+    { 0x1008121d, 26940 }, /* XF86AttendantToggle */
+    { 0x1008121e, 28911 }, /* XF86LightsToggle */
+    { 0x10081230, 26808 }, /* XF86ALSToggle */
+    { 0x10081240, 27454 }, /* XF86Buttonconfig */
+    { 0x10081241, 31055 }, /* XF86Taskmanager */
+    { 0x10081242, 28364 }, /* XF86Journal */
+    { 0x10081243, 27831 }, /* XF86ControlPanel */
+    { 0x10081244, 26863 }, /* XF86AppSelect */
+    { 0x10081245, 30541 }, /* XF86Screensaver */
+    { 0x10081246, 31345 }, /* XF86VoiceCommand */
+    { 0x10081247, 26893 }, /* XF86Assistant */
+    { 0x10081249, 28029 }, /* XF86EmojiPicker */
+    { 0x1008124a, 27902 }, /* XF86Dictate */
+    { 0x1008124b, 27538 }, /* XF86CameraAccessEnable */
+    { 0x1008124c, 27514 }, /* XF86CameraAccessDisable */
+    { 0x1008124d, 27561 }, /* XF86CameraAccessToggle */
+    { 0x10081250, 27436 }, /* XF86BrightnessMin */
+    { 0x10081251, 27418 }, /* XF86BrightnessMax */
+    { 0x10081260, 28519 }, /* XF86KbdInputAssistPrev */
+    { 0x10081261, 28468 }, /* XF86KbdInputAssistNext */
+    { 0x10081262, 28542 }, /* XF86KbdInputAssistPrevgroup */
+    { 0x10081263, 28491 }, /* XF86KbdInputAssistNextgroup */
+    { 0x10081264, 28418 }, /* XF86KbdInputAssistAccept */
+    { 0x10081265, 28443 }, /* XF86KbdInputAssistCancel */
+    { 0x10081266, 30376 }, /* XF86RightUp */
+    { 0x10081267, 30362 }, /* XF86RightDown */
+    { 0x10081268, 28886 }, /* XF86LeftUp */
+    { 0x10081269, 28873 }, /* XF86LeftDown */
+    { 0x1008126a, 30432 }, /* XF86RootMenu */
+    { 0x1008126b, 29506 }, /* XF86MediaTopMenu */
+    { 0x1008126c, 29834 }, /* XF86Numeric11 */
+    { 0x1008126d, 29848 }, /* XF86Numeric12 */
+    { 0x1008126e, 26990 }, /* XF86AudioDesc */
+    { 0x1008126f, 26765 }, /* XF863DMode */
+    { 0x10081270, 29768 }, /* XF86NextFavorite */
+    { 0x10081271, 30808 }, /* XF86StopRecord */
+    { 0x10081272, 30129 }, /* XF86PauseRecord */
+    { 0x10081273, 31337 }, /* XF86VOD */
+    { 0x10081274, 31234 }, /* XF86Unmute */
+    { 0x10081275, 28068 }, /* XF86FastReverse */
+    { 0x10081276, 30712 }, /* XF86SlowReverse */
+    { 0x10081277, 27880 }, /* XF86Data */
+    { 0x10081278, 30066 }, /* XF86OnScreenKeyboard */
+    { 0x10081279, 30263 }, /* XF86PrivacyScreenToggle */
+    { 0x1008127a, 30623 }, /* XF86SelectiveScreenshot */
+    { 0x1008127b, 29752 }, /* XF86NextElement */
+    { 0x1008127c, 30243 }, /* XF86PreviousElement */
+    { 0x1008127d, 27264 }, /* XF86AutopilotEngageToggle */
+    { 0x1008127e, 29473 }, /* XF86MarkWaypoint */
+    { 0x1008127f, 30728 }, /* XF86Sos */
+    { 0x10081280, 29695 }, /* XF86NavChart */
+    { 0x10081281, 28110 }, /* XF86FishingChart */
+    { 0x10081282, 30681 }, /* XF86SingleRangeRadar */
+    { 0x10081283, 27981 }, /* XF86DualRangeRadar */
+    { 0x10081284, 30293 }, /* XF86RadarOverlay */
+    { 0x10081285, 31191 }, /* XF86TraditionalSonar */
+    { 0x10081286, 27755 }, /* XF86ClearvuSonar */
+    { 0x10081287, 30665 }, /* XF86SidevuSonar */
+    { 0x10081288, 29708 }, /* XF86NavInfo */
+    { 0x10081290, 28973 }, /* XF86Macro1 */
+    { 0x10081291, 29104 }, /* XF86Macro2 */
+    { 0x10081292, 29235 }, /* XF86Macro3 */
+    { 0x10081293, 29258 }, /* XF86Macro4 */
+    { 0x10081294, 29269 }, /* XF86Macro5 */
+    { 0x10081295, 29280 }, /* XF86Macro6 */
+    { 0x10081296, 29291 }, /* XF86Macro7 */
+    { 0x10081297, 29302 }, /* XF86Macro8 */
+    { 0x10081298, 29313 }, /* XF86Macro9 */
+    { 0x10081299, 28984 }, /* XF86Macro10 */
+    { 0x1008129a, 28996 }, /* XF86Macro11 */
+    { 0x1008129b, 29008 }, /* XF86Macro12 */
+    { 0x1008129c, 29020 }, /* XF86Macro13 */
+    { 0x1008129d, 29032 }, /* XF86Macro14 */
+    { 0x1008129e, 29044 }, /* XF86Macro15 */
+    { 0x1008129f, 29056 }, /* XF86Macro16 */
+    { 0x100812a0, 29068 }, /* XF86Macro17 */
+    { 0x100812a1, 29080 }, /* XF86Macro18 */
+    { 0x100812a2, 29092 }, /* XF86Macro19 */
+    { 0x100812a3, 29115 }, /* XF86Macro20 */
+    { 0x100812a4, 29127 }, /* XF86Macro21 */
+    { 0x100812a5, 29139 }, /* XF86Macro22 */
+    { 0x100812a6, 29151 }, /* XF86Macro23 */
+    { 0x100812a7, 29163 }, /* XF86Macro24 */
+    { 0x100812a8, 29175 }, /* XF86Macro25 */
+    { 0x100812a9, 29187 }, /* XF86Macro26 */
+    { 0x100812aa, 29199 }, /* XF86Macro27 */
+    { 0x100812ab, 29211 }, /* XF86Macro28 */
+    { 0x100812ac, 29223 }, /* XF86Macro29 */
+    { 0x100812ad, 29246 }, /* XF86Macro30 */
+    { 0x100812b0, 29396 }, /* XF86MacroRecordStart */
+    { 0x100812b1, 29417 }, /* XF86MacroRecordStop */
+    { 0x100812b2, 29375 }, /* XF86MacroPresetCycle */
+    { 0x100812b3, 29324 }, /* XF86MacroPreset1 */
+    { 0x100812b4, 29341 }, /* XF86MacroPreset2 */
+    { 0x100812b5, 29358 }, /* XF86MacroPreset3 */
+    { 0x100812b8, 28570 }, /* XF86KbdLcdMenu1 */
+    { 0x100812b9, 28586 }, /* XF86KbdLcdMenu2 */
+    { 0x100812ba, 28602 }, /* XF86KbdLcdMenu3 */
+    { 0x100812bb, 28618 }, /* XF86KbdLcdMenu4 */
+    { 0x100812bc, 28634 }, /* XF86KbdLcdMenu5 */
+    { 0x1008fe01, 30860 }, /* XF86Switch_VT_1 */
+    { 0x1008fe02, 30927 }, /* XF86Switch_VT_2 */
+    { 0x1008fe03, 30943 }, /* XF86Switch_VT_3 */
+    { 0x1008fe04, 30959 }, /* XF86Switch_VT_4 */
+    { 0x1008fe05, 30975 }, /* XF86Switch_VT_5 */
+    { 0x1008fe06, 30991 }, /* XF86Switch_VT_6 */
+    { 0x1008fe07, 31007 }, /* XF86Switch_VT_7 */
+    { 0x1008fe08, 31023 }, /* XF86Switch_VT_8 */
+    { 0x1008fe09, 31039 }, /* XF86Switch_VT_9 */
+    { 0x1008fe0a, 30876 }, /* XF86Switch_VT_10 */
+    { 0x1008fe0b, 30893 }, /* XF86Switch_VT_11 */
+    { 0x1008fe0c, 30910 }, /* XF86Switch_VT_12 */
+    { 0x1008fe20, 31223 }, /* XF86Ungrab */
+    { 0x1008fe21, 27741 }, /* XF86ClearGrab */
+    { 0x1008fe22, 29737 }, /* XF86Next_VMode */
+    { 0x1008fe23, 30228 }, /* XF86Prev_VMode */
+    { 0x1008fe24, 28955 }, /* XF86LogWindowTree */
+    { 0x1008fe25, 28928 }, /* XF86LogGrabInfo */
+    { 0x1008ff01, 29580 }, /* XF86ModeLock */
+    { 0x1008ff02, 29638 }, /* XF86MonBrightnessUp */
+    { 0x1008ff03, 29616 }, /* XF86MonBrightnessDown */
+    { 0x1008ff04, 28650 }, /* XF86KbdLightOnOff */
+    { 0x1008ff05, 28398 }, /* XF86KbdBrightnessUp */
+    { 0x1008ff06, 28376 }, /* XF86KbdBrightnessDown */
+    { 0x1008ff07, 29593 }, /* XF86MonBrightnessCycle */
+    { 0x1008ff10, 30777 }, /* XF86Standby */
+    { 0x1008ff11, 27021 }, /* XF86AudioLowerVolume */
+    { 0x1008ff12, 27074 }, /* XF86AudioMute */
+    { 0x1008ff13, 27161 }, /* XF86AudioRaiseVolume */
+    { 0x1008ff14, 27117 }, /* XF86AudioPlay */
+    { 0x1008ff15, 27250 }, /* XF86AudioStop */
+    { 0x1008ff16, 27147 }, /* XF86AudioPrev */
+    { 0x1008ff17, 27088 }, /* XF86AudioNext */
+    { 0x1008ff18, 28307 }, /* XF86HomePage */
+    { 0x1008ff19, 29437 }, /* XF86Mail */
+    { 0x1008ff1a, 30789 }, /* XF86Start */
+    { 0x1008ff1b, 30601 }, /* XF86Search */
+    { 0x1008ff1c, 27202 }, /* XF86AudioRecord */
+    { 0x1008ff1d, 27486 }, /* XF86Calculator */
+    { 0x1008ff1e, 29535 }, /* XF86Memo */
+    { 0x1008ff1f, 31106 }, /* XF86ToDoList */
+    { 0x1008ff20, 27501 }, /* XF86Calendar */
+    { 0x1008ff21, 30184 }, /* XF86PowerDown */
+    { 0x1008ff22, 27812 }, /* XF86ContrastAdjust */
+    { 0x1008ff23, 30419 }, /* XF86RockerUp */
+    { 0x1008ff24, 30388 }, /* XF86RockerDown */
+    { 0x1008ff25, 30403 }, /* XF86RockerEnter */
+    { 0x1008ff26, 27299 }, /* XF86Back */
+    { 0x1008ff27, 28162 }, /* XF86Forward */
+    { 0x1008ff28, 30799 }, /* XF86Stop */
+    { 0x1008ff29, 30318 }, /* XF86Refresh */
+    { 0x1008ff2a, 30198 }, /* XF86PowerOff */
+    { 0x1008ff2b, 31376 }, /* XF86WakeUp */
+    { 0x1008ff2c, 28019 }, /* XF86Eject */
+    { 0x1008ff2d, 30525 }, /* XF86ScreenSaver */
+    { 0x1008ff2e, 31455 }, /* XF86WWW */
+    { 0x1008ff2f, 30702 }, /* XF86Sleep */
+    { 0x1008ff30, 28084 }, /* XF86Favorites */
+    { 0x1008ff31, 27102 }, /* XF86AudioPause */
+    { 0x1008ff32, 27042 }, /* XF86AudioMedia */
+    { 0x1008ff33, 29668 }, /* XF86MyComputer */
+    { 0x1008ff34, 31288 }, /* XF86VendorHome */
+    { 0x1008ff35, 28897 }, /* XF86LightBulb */
+    { 0x1008ff36, 30656 }, /* XF86Shop */
+    { 0x1008ff37, 28295 }, /* XF86History */
+    { 0x1008ff38, 30096 }, /* XF86OpenURL */
+    { 0x1008ff39, 26776 }, /* XF86AddFavorite */
+    { 0x1008ff3a, 28320 }, /* XF86HotLinks */
+    { 0x1008ff3b, 27378 }, /* XF86BrightnessAdjust */
+    { 0x1008ff3c, 28098 }, /* XF86Finance */
+    { 0x1008ff3d, 27782 }, /* XF86Community */
+    { 0x1008ff3e, 27234 }, /* XF86AudioRewind */
+    { 0x1008ff3f, 27308 }, /* XF86BackForward */
+    { 0x1008ff40, 28681 }, /* XF86Launch0 */
+    { 0x1008ff41, 28693 }, /* XF86Launch1 */
+    { 0x1008ff42, 28705 }, /* XF86Launch2 */
+    { 0x1008ff43, 28717 }, /* XF86Launch3 */
+    { 0x1008ff44, 28729 }, /* XF86Launch4 */
+    { 0x1008ff45, 28741 }, /* XF86Launch5 */
+    { 0x1008ff46, 28753 }, /* XF86Launch6 */
+    { 0x1008ff47, 28765 }, /* XF86Launch7 */
+    { 0x1008ff48, 28777 }, /* XF86Launch8 */
+    { 0x1008ff49, 28789 }, /* XF86Launch9 */
+    { 0x1008ff4a, 28801 }, /* XF86LaunchA */
+    { 0x1008ff4b, 28813 }, /* XF86LaunchB */
+    { 0x1008ff4c, 28825 }, /* XF86LaunchC */
+    { 0x1008ff4d, 28837 }, /* XF86LaunchD */
+    { 0x1008ff4e, 28849 }, /* XF86LaunchE */
+    { 0x1008ff4f, 28861 }, /* XF86LaunchF */
+    { 0x1008ff50, 26822 }, /* XF86ApplicationLeft */
+    { 0x1008ff51, 26842 }, /* XF86ApplicationRight */
+    { 0x1008ff52, 27359 }, /* XF86Book */
+    { 0x1008ff53, 27694 }, /* XF86CD */
+    { 0x1008ff54, 27471 }, /* XF86Calculater */
+    { 0x1008ff55, 27731 }, /* XF86Clear */
+    { 0x1008ff56, 27772 }, /* XF86Close */
+    { 0x1008ff57, 27848 }, /* XF86Copy */
+    { 0x1008ff58, 27857 }, /* XF86Cut */
+    { 0x1008ff59, 27914 }, /* XF86Display */
+    { 0x1008ff5a, 27973 }, /* XF86DOS */
+    { 0x1008ff5b, 27959 }, /* XF86Documents */
+    { 0x1008ff5c, 28045 }, /* XF86Excel */
+    { 0x1008ff5d, 28055 }, /* XF86Explorer */
+    { 0x1008ff5e, 28220 }, /* XF86Game */
+    { 0x1008ff5f, 28229 }, /* XF86Go */
+    { 0x1008ff60, 28353 }, /* XF86iTouch */
+    { 0x1008ff61, 28944 }, /* XF86LogOff */
+    { 0x1008ff62, 29462 }, /* XF86Market */
+    { 0x1008ff63, 29523 }, /* XF86Meeting */
+    { 0x1008ff65, 29544 }, /* XF86MenuKB */
+    { 0x1008ff66, 29555 }, /* XF86MenuPB */
+    { 0x1008ff67, 29683 }, /* XF86MySites */
+    { 0x1008ff68, 29720 }, /* XF86New */
+    { 0x1008ff69, 29728 }, /* XF86News */
+    { 0x1008ff6a, 30051 }, /* XF86OfficeHome */
+    { 0x1008ff6b, 30087 }, /* XF86Open */
+    { 0x1008ff6c, 30108 }, /* XF86Option */
+    { 0x1008ff6d, 30119 }, /* XF86Paste */
+    { 0x1008ff6e, 30145 }, /* XF86Phone */
+    { 0x1008ff70, 30287 }, /* XF86Q */
+    { 0x1008ff72, 30341 }, /* XF86Reply */
+    { 0x1008ff73, 30330 }, /* XF86Reload */
+    { 0x1008ff74, 30445 }, /* XF86RotateWindows */
+    { 0x1008ff75, 30501 }, /* XF86RotationPB */
+    { 0x1008ff76, 30463 }, /* XF86RotationKB */
+    { 0x1008ff77, 30516 }, /* XF86Save */
+    { 0x1008ff78, 30588 }, /* XF86ScrollUp */
+    { 0x1008ff79, 30573 }, /* XF86ScrollDown */
+    { 0x1008ff7a, 30557 }, /* XF86ScrollClick */
+    { 0x1008ff7b, 30647 }, /* XF86Send */
+    { 0x1008ff7c, 30736 }, /* XF86Spell */
+    { 0x1008ff7d, 30761 }, /* XF86SplitScreen */
+    { 0x1008ff7e, 30836 }, /* XF86Support */
+    { 0x1008ff7f, 31071 }, /* XF86TaskPane */
+    { 0x1008ff80, 31084 }, /* XF86Terminal */
+    { 0x1008ff81, 31119 }, /* XF86Tools */
+    { 0x1008ff82, 31212 }, /* XF86Travel */
+    { 0x1008ff84, 31269 }, /* XF86UserPB */
+    { 0x1008ff85, 31245 }, /* XF86User1KB */
+    { 0x1008ff86, 31257 }, /* XF86User2KB */
+    { 0x1008ff87, 31303 }, /* XF86Video */
+    { 0x1008ff88, 31398 }, /* XF86WheelButton */
+    { 0x1008ff89, 31423 }, /* XF86Word */
+    { 0x1008ff8a, 31463 }, /* XF86Xfer */
+    { 0x1008ff8b, 31483 }, /* XF86ZoomIn */
+    { 0x1008ff8c, 31494 }, /* XF86ZoomOut */
+    { 0x1008ff8d, 27290 }, /* XF86Away */
+    { 0x1008ff8e, 29566 }, /* XF86Messenger */
+    { 0x1008ff8f, 31387 }, /* XF86WebCam */
+    { 0x1008ff90, 29446 }, /* XF86MailForward */
+    { 0x1008ff91, 30171 }, /* XF86Pictures */
+    { 0x1008ff92, 29658 }, /* XF86Music */
+    { 0x1008ff93, 27324 }, /* XF86Battery */
+    { 0x1008ff94, 27345 }, /* XF86Bluetooth */
+    { 0x1008ff95, 31414 }, /* XF86WLAN */
+    { 0x1008ff96, 31280 }, /* XF86UWB */
+    { 0x1008ff97, 27004 }, /* XF86AudioForward */
+    { 0x1008ff98, 27218 }, /* XF86AudioRepeat */
+    { 0x1008ff99, 27182 }, /* XF86AudioRandomPlay */
+    { 0x1008ff9a, 30823 }, /* XF86Subtitle */
+    { 0x1008ff9b, 26970 }, /* XF86AudioCycleTrack */
+    { 0x1008ff9c, 27865 }, /* XF86CycleAngle */
+    { 0x1008ff9d, 28174 }, /* XF86FrameBack */
+    { 0x1008ff9e, 28188 }, /* XF86FrameForward */
+    { 0x1008ff9f, 31097 }, /* XF86Time */
+    { 0x1008ffa0, 30612 }, /* XF86Select */
+    { 0x1008ffa1, 31328 }, /* XF86View */
+    { 0x1008ffa2, 31129 }, /* XF86TopMenu */
+    { 0x1008ffa3, 30310 }, /* XF86Red */
+    { 0x1008ffa4, 28255 }, /* XF86Green */
+    { 0x1008ffa5, 31472 }, /* XF86Yellow */
+    { 0x1008ffa6, 27336 }, /* XF86Blue */
+    { 0x1008ffa7, 30848 }, /* XF86Suspend */
+    { 0x1008ffa8, 28281 }, /* XF86Hibernate */
+    { 0x1008ffa9, 31172 }, /* XF86TouchpadToggle */
+    { 0x1008ffb0, 31157 }, /* XF86TouchpadOn */
+    { 0x1008ffb1, 31141 }, /* XF86TouchpadOff */
+    { 0x1008ffb2, 27057 }, /* XF86AudioMicMute */
+    { 0x1008ffb3, 28668 }, /* XF86Keyboard */
+    { 0x1008ffb4, 31446 }, /* XF86WWAN */
+    { 0x1008ffb5, 30351 }, /* XF86RFKill */
+    { 0x1008ffb6, 27131 }, /* XF86AudioPreset */
+    { 0x1008ffb7, 30478 }, /* XF86RotationLockToggle */
+    { 0x1008ffb8, 28205 }, /* XF86FullScreen */
 };