Keysyms: Update using latest xorgproto
[platform/upstream/libxkbcommon.git] / src / ks_tables.h
index 46d6f98..5c6ced8 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"
@@ -1286,7 +1287,6 @@ static const char *keysym_names =
     "hpReset\0"
     "hpSystem\0"
     "hpUser\0"
-    "hpYdiaeresis\0"
     "Hstroke\0"
     "hstroke\0"
     "ht\0"
@@ -1666,6 +1666,7 @@ static const char *keysym_names =
     "opentribulletdown\0"
     "opentribulletup\0"
     "ordfeminine\0"
+    "ordmasculine\0"
     "osfActivate\0"
     "osfAddMode\0"
     "osfBackSpace\0"
@@ -2241,6 +2242,7 @@ static const char *keysym_names =
     "XF86AudioRepeat\0"
     "XF86AudioRewind\0"
     "XF86AudioStop\0"
+    "XF86AutopilotEngageToggle\0"
     "XF86Away\0"
     "XF86Back\0"
     "XF86BackForward\0"
@@ -2257,6 +2259,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 +2274,7 @@ static const char *keysym_names =
     "XF86ChannelUp\0"
     "XF86Clear\0"
     "XF86ClearGrab\0"
+    "XF86ClearvuSonar\0"
     "XF86Close\0"
     "XF86Community\0"
     "XF86ContextMenu\0"
@@ -2279,19 +2285,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 +2399,7 @@ static const char *keysym_names =
     "XF86Mail\0"
     "XF86MailForward\0"
     "XF86Market\0"
+    "XF86MarkWaypoint\0"
     "XF86MediaRepeat\0"
     "XF86MediaTopMenu\0"
     "XF86Meeting\0"
@@ -2403,9 +2414,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 +2454,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 +2484,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 +2521,7 @@ static const char *keysym_names =
     "XF86TouchpadOff\0"
     "XF86TouchpadOn\0"
     "XF86TouchpadToggle\0"
+    "XF86TraditionalSonar\0"
     "XF86Travel\0"
     "XF86Ungrab\0"
     "XF86Unmute\0"
@@ -2567,301 +2587,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, 1650, 0, 0, 0, 0,
-    0, 1245, 0, 3310, 4490, 0, 0, 0, 0, 4529, 0, 0, 0, 0, 3857, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2266, 0, 0, 0, 0, 0,
-    3688, 0, 0, 4511, 0, 0, 0, 0, 0, 0, 0, 3299, 0, 0, 0, 0, 0, 544, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 1200, 3223, 4207, 0, 672, 0, 0, 0, 0, 0, 3303,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4369, 0, 2211, 0, 0, 0, 2592, 0, 0,
-    0, 0, 1606, 0, 2530, 1223, 0, 0, 727, 0, 0, 297, 0, 4204, 0, 0, 0, 0,
-    0, 2370, 0, 0, 3160, 0, 0, 0, 0, 3661, 0, 0, 0, 0, 1253, 0, 0, 2229,
-    4008, 4269, 0, 0, 0, 0, 1572, 0, 1730, 3284, 0, 3643, 0, 0, 0, 4448,
-    783, 0, 0, 0, 419, 0, 0, 564, 0, 0, 0, 0, 0, 1896, 2895, 0, 303, 0,
-    3482, 1037, 0, 0, 0, 888, 0, 0, 0, 0, 3829, 0, 486, 0, 0, 0, 244, 0,
-    1731, 0, 0, 0, 0, 1609, 417, 2333, 2106, 4289, 1503, 0, 0, 0, 0, 0,
-    1880, 0, 0, 0, 0, 1740, 0, 0, 1273, 1470, 0, 0, 188, 0, 0, 0, 0, 1001,
-    0, 0, 3155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2269, 3789, 0, 0, 0, 0, 0, 0, 0,
-    0, 1492, 3200, 0, 0, 0, 0, 0, 2009, 24, 0, 0, 0, 80, 3123, 0, 0, 0, 0,
-    0, 0, 0, 1126, 0, 0, 0, 0, 3585, 858, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    811, 0, 4003, 3813, 0, 0, 2583, 113, 4408, 0, 386, 4182, 0, 0, 142,
-    1325, 0, 0, 3074, 2313, 1469, 0, 0, 0, 3369, 2485, 0, 0, 4129, 1512, 0,
-    0, 0, 0, 0, 771, 0, 0, 0, 767, 0, 0, 0, 1664, 0, 1616, 0, 0, 2363, 0,
-    0, 0, 0, 2513, 0, 496, 1054, 0, 2211, 0, 0, 0, 0, 0, 1986, 348, 0, 0,
-    2203, 0, 2784, 1635, 0, 0, 0, 0, 0, 0, 243, 0, 0, 0, 0, 347, 3512, 0,
-    0, 0, 1129, 4390, 0, 4273, 0, 0, 1171, 0, 0, 0, 114, 874, 4517, 0, 0,
-    0, 0, 0, 0, 1747, 0, 0, 0, 0, 0, 4188, 0, 2430, 0, 0, 0, 0, 0, 0, 2788,
-    0, 2921, 0, 0, 874, 0, 0, 0, 0, 0, 2047, 0, 1604, 0, 0, 3995, 2895, 0,
-    0, 0, 0, 0, 2604, 0, 0, 1881, 0, 0, 0, 4253, 1024, 4228, 0, 0, 1914,
-    4001, 1011, 1639, 0, 0, 0, 0, 0, 3540, 0, 0, 2461, 0, 0, 3833, 0, 0,
-    2013, 0, 0, 0, 2245, 0, 3283, 2902, 2494, 0, 610, 1708, 0, 0, 0, 0, 0,
-    2934, 4383, 0, 1636, 0, 0, 0, 0, 3355, 0, 1971, 482, 1599, 0, 3749,
-    2152, 0, 0, 0, 0, 1097, 982, 3592, 2806, 0, 0, 0, 0, 173, 780, 0, 2659,
-    3730, 0, 599, 361, 382, 0, 574, 571, 0, 158, 0, 0, 0, 4332, 654, 0,
-    478, 2666, 0, 0, 4354, 0, 723, 745, 0, 2334, 0, 0, 0, 315, 0, 0, 0,
-    2285, 0, 0, 0, 0, 0, 0, 0, 0, 190, 2779, 2749, 0, 0, 0, 0, 0, 2127, 0,
-    0, 168, 0, 2437, 2837, 3502, 0, 0, 0, 0, 0, 0, 1849, 1598, 0, 4373, 0,
-    1200, 0, 238, 3420, 0, 3178, 0, 1571, 372, 0, 0, 1495, 3121, 0, 4099,
-    0, 3109, 0, 0, 0, 0, 0, 1373, 0, 4432, 0, 0, 3370, 3279, 0, 0, 2799, 0,
-    0, 0, 0, 2953, 3278, 1971, 1613, 0, 0, 0, 0, 0, 0, 0, 0, 1369, 2843, 0,
-    989, 0, 358, 0, 0, 0, 298, 0, 0, 0, 0, 0, 0, 964, 3811, 0, 0, 0, 0,
-    1364, 0, 0, 344, 2501, 0, 0, 1167, 1318, 137, 0, 0, 0, 930, 0, 1340,
-    1404, 873, 0, 0, 0, 0, 0, 391, 0, 2376, 3115, 2659, 1273, 2214, 0,
-    1769, 0, 194, 0, 3009, 0, 0, 1100, 2540, 1308, 1729, 3882, 0, 0, 1925,
-    0, 0, 0, 0, 3324, 3605, 1221, 0, 0, 0, 644, 4360, 4557, 0, 0, 0, 0,
-    1224, 2656, 0, 4378, 4065, 0, 0, 0, 0, 0, 203, 0, 173, 0, 0, 0, 435,
-    2916, 3546, 288, 0, 0, 0, 0, 0, 3744, 2681, 0, 0, 4396, 0, 0, 0, 3078,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 615, 1523, 0, 0, 2313, 4347, 3320, 0, 0,
-    3360, 566, 0, 88, 0, 0, 0, 0, 0, 2736, 0, 0, 4062, 0, 1939, 0, 2354, 0,
-    4354, 4398, 0, 2328, 1976, 270, 0, 0, 2344, 1040, 0, 0, 3016, 4339,
-    1220, 1136, 0, 1813, 0, 0, 990, 1892, 2453, 3252, 0, 2452, 2497, 2007,
-    3329, 508, 0, 4500, 0, 0, 0, 0, 4293, 1207, 0, 719, 257, 0, 4532, 3884,
-    2899, 2065, 967, 0, 0, 0, 4561, 0, 0, 1197, 0, 0, 0, 2578, 3109, 0,
-    112, 0, 1923, 0, 809, 0, 4444, 3287, 0, 3693, 4508, 0, 0, 0, 0, 0, 0,
-    0, 2024, 0, 0, 0, 0, 0, 2196, 0, 0, 0, 0, 3174, 3287, 0, 1813, 0, 0,
-    3626, 2618, 2811, 0, 0, 0, 0, 910, 0, 1874, 0, 290, 1791, 0, 1291, 0,
-    4027, 0, 3605, 0, 0, 0, 3275, 874, 3363, 0, 0, 1321, 0, 1500, 0, 0,
-    4206, 2033, 4437, 2991, 0, 0, 0, 0, 4382, 3870, 1984, 0, 0, 0, 1096, 0,
-    0, 4036, 0, 0, 3578, 1230, 0, 0, 2550, 0, 978, 3007, 0, 140, 0, 1157,
-    0, 0, 0, 0, 0, 0, 4544, 4453, 0, 0, 0, 0, 504, 1136, 1395, 0, 0, 0,
-    1736, 0, 2745, 952, 0, 0, 2650, 0, 0, 3808, 0, 0, 1148, 0, 0, 1821,
-    622, 1626, 4464, 0, 0, 3930, 2404, 117, 0, 0, 10, 0, 2283, 1235, 4224,
-    0, 0, 0, 0, 2917, 0, 0, 0, 2356, 0, 156, 1142, 0, 0, 0, 0, 1677, 0,
-    3796, 3689, 602, 0, 0, 737, 0, 0, 1591, 0, 0, 0, 0, 408, 0, 0, 0, 0, 0,
-    25, 0, 0, 0, 0, 0, 3265, 0, 0, 0, 0, 621, 2329, 2059, 2850, 0, 0, 0, 0,
-    40, 0, 0, 1095, 0, 743, 3541, 0, 0, 0, 3625, 4459, 1580, 4164, 1255, 0,
-    0, 0, 1599, 0, 1036, 0, 0, 3438, 2656, 0, 0, 0, 1261, 224, 3600, 0,
-    3943, 949, 2512, 0, 2796, 4233, 0, 1863, 0, 3283, 175, 0, 148, 0, 0,
-    4320, 2004, 1503, 0, 0, 1438, 2823, 402, 1019, 0, 3343, 4216, 0, 0,
-    2357, 0, 0, 0, 0, 1547, 0, 0, 3307, 0, 2347, 256, 0, 853, 0, 0, 0,
-    1785, 0, 0, 0, 0, 1663, 0, 3095, 2419, 1711, 0, 4493, 0, 0, 1144, 0, 0,
-    0, 1492, 370, 0, 0, 1007, 3167, 2813, 0, 562, 2721, 2083, 0, 2706, 0,
-    0, 0, 0, 2937, 0, 0, 1876, 568, 0, 1859, 0, 0, 0, 0, 0, 3006, 3663,
-    3429, 0, 1369, 0, 1599, 0, 0, 771, 1338, 0, 0, 0, 0, 0, 0, 2529, 0, 0,
-    178, 2516, 0, 0, 2130, 2859, 1920, 0, 1992, 0, 4554, 0, 0, 0, 0, 0,
-    2702, 4463, 688, 0, 0, 1500, 2711, 0, 0, 206, 3960, 0, 0, 0, 1051,
-    4456, 1089, 0, 0, 712, 879, 621, 0, 0, 1353, 779, 0, 1075, 0, 1778, 0,
-    1311, 3544, 0, 1373, 0, 0, 650, 0, 1475, 4297, 1100, 0, 343, 2758,
-    1764, 0, 4163, 1327, 3569, 1363, 0, 2967, 0, 0, 137, 2277, 0, 0, 2411,
-    0, 2685, 0, 2001, 948, 0, 159, 870, 1921, 1561, 0, 0, 2183, 0, 1004, 0,
-    0, 0, 2363, 0, 0, 3473, 0, 0, 0, 2218, 0, 1021, 1919, 0, 0, 0, 0, 0,
-    2324, 0, 1031, 0, 3739, 185, 0, 1932, 2109, 1363, 0, 0, 35, 2104, 1041,
-    573, 0, 1518, 0, 0, 1515, 0, 0, 0, 2500, 1426, 1422, 0, 0, 2395, 706,
-    0, 214, 889, 3801, 4108, 0, 0, 0, 2087, 0, 0, 2881, 1904, 2258, 0, 0,
-    2408, 0, 454, 3224, 0, 0, 0, 0, 1337, 1509, 3638, 0, 0, 0, 3689, 0, 0,
-    1774, 0, 0, 0, 0, 0, 1252, 1139, 0, 0, 0, 0, 75, 3651, 0, 1656, 0,
-    1937, 0, 0, 4027, 0, 0, 0, 911, 1719, 0, 0, 3449, 0, 0, 0, 0, 4342,
-    3593, 0, 0, 3476, 1690, 2585, 4484, 4479, 0, 0, 3932, 0, 3837, 3028,
-    4047, 0, 705, 2616, 3782, 0, 0, 0, 108, 0, 0, 0, 1874, 1744, 0, 0,
-    1147, 0, 0, 0, 166, 4277, 513, 0, 3623, 415, 0, 1574, 3753, 2473, 734,
-    1129, 0, 0, 0, 0, 2241, 862, 0, 0, 0, 0, 2103, 1999, 2605, 821, 0, 0,
-    0, 1653, 3756, 0, 0, 0, 2470, 0, 400, 2791, 717, 0, 154, 3490, 197,
-    2675, 1405, 0, 2048, 0, 0, 1560, 4143, 4495, 0, 0, 0, 1299, 4554, 3847,
-    0, 4308, 1560, 0, 3992, 0, 3209, 0, 452, 0, 2346, 0, 0, 225, 3030, 0,
-    4370, 12, 239, 881, 0, 1561, 4251, 3310, 494, 0, 0, 232, 2509, 3198, 0,
-    0, 0, 3390, 2956, 0, 1255, 0, 2148, 2692, 3865, 3864, 2586, 293, 0,
-    4220, 4073, 0, 3423, 1262, 0, 1410, 2104, 0, 2074, 0, 0, 980, 0, 1684,
-    1686, 0, 0, 429, 0, 358, 161, 0, 0, 0, 2029, 0, 2511, 817, 0, 3331, 0,
-    1552, 0, 3380, 0, 0, 0, 3240, 0, 3499, 4041, 2450, 0, 0, 0, 0, 2214,
-    787, 2906, 464, 1122, 3813, 0, 0, 2034, 0, 0, 0, 1037, 961, 0, 0, 3884,
-    0, 0, 2764, 0, 0, 915, 0, 1417, 0, 6, 4134, 0, 2797, 1881, 259, 795, 0,
-    15, 0, 2863, 0, 0, 0, 0, 0, 223, 720, 0, 1702, 0, 0, 0, 984, 1110, 0,
-    547, 1906, 0, 0, 4286, 1875, 0, 0, 0, 1324, 0, 3589, 3911, 0, 0, 0, 0,
-    2520, 844, 2801, 1149, 656, 0, 1837, 3441, 2127, 0, 0, 1325, 377, 1012,
-    4280, 2404, 0, 1286, 0, 0, 0, 855, 0, 1793, 0, 4512, 2776, 2200, 2056,
-    0, 2144, 1763, 0, 0, 549, 2475, 845, 1493, 0, 0, 306, 1398, 0, 0, 3775,
-    0, 1451, 597, 2130, 0, 232, 2836, 957, 0, 619, 0, 2041, 0, 0, 295, 0,
-    4361, 0, 2223, 0, 3727, 0, 0, 4294, 0, 33, 4397, 4511, 3626, 3329, 0,
-    40, 0, 0, 0, 0, 478, 0, 0, 0, 2925, 0, 0, 3779, 1880, 0, 1556, 0, 1545,
-    3249, 0, 0, 0, 1080, 0, 4112, 0, 3086, 46, 0, 0, 3165, 3414, 0, 0, 342,
-    1885, 0, 0, 0, 0, 3071, 3404, 0, 0, 35, 0, 0, 0, 0, 857, 0, 627, 21, 0,
-    0, 0, 0, 1021, 2099, 3483, 0, 0, 2693, 1014, 11, 0, 3352, 0, 3751,
-    2476, 3014, 0, 1327, 974, 3502, 0, 611, 1838, 0, 4467, 2970, 1191, 474,
-    0, 1366, 230, 1879, 3942, 0, 0, 0, 0, 1406, 0, 1304, 0, 0, 0, 277,
-    3398, 0, 735, 165, 0, 0, 4185, 0, 3404, 0, 3821, 0, 0, 3450, 4161, 0,
-    761, 0, 0, 0, 1807, 0, 0, 0, 0, 0, 0, 3962, 0, 0, 1833, 0, 1710, 0,
-    1670, 2946, 1186, 56, 0, 533, 991, 246, 141, 0, 0, 0, 0, 687, 3830, 0,
-    2495, 245, 0, 0, 2921, 2534, 706, 3729, 3941, 4335, 4295, 1671, 549,
-    2015, 1777, 3057, 0, 1399, 1197, 2741, 4091, 0, 938, 0, 4322, 561, 0,
-    527, 0, 481, 2496, 0, 0, 1771, 3444, 0, 2951, 0, 0, 0, 2244, 1013, 256,
-    0, 1672, 0, 3115, 2720, 0, 1458, 0, 1476, 0, 2729, 0, 0, 1889, 2226,
-    3945, 0, 1937, 0, 0, 0, 0, 4254, 1906, 4260, 2108, 0, 197, 4071, 2688,
-    1691, 0, 0, 4467, 0, 1271, 0, 2029, 1625, 0, 0, 4259, 1222, 4139, 1497,
-    0, 2919, 0, 86, 0, 0, 1685, 2585, 0, 1363, 0, 0, 0, 1548, 3807, 1891,
-    4369, 774, 409, 4191, 0, 0, 3898, 1893, 4164, 765, 893, 1340, 0, 0, 0,
-    4086, 2119, 173, 3518, 0, 0, 742, 0, 2059, 0, 0, 2955, 612, 0, 1660,
-    4201, 2466, 485, 3476, 0, 945, 1441, 0, 3974, 0, 1551, 0, 664, 2978, 0,
-    0, 1798, 2640, 0, 0, 0, 349, 0, 0, 3992, 0, 4168, 0, 0, 3294, 308,
-    1332, 1191, 0, 0, 3821, 3969, 411, 1184, 0, 1417, 4191, 0, 4509, 881,
-    593, 407, 1659, 0, 4237, 0, 1285, 2877, 2965, 3187, 0, 2725, 997, 530,
-    2675, 0, 541, 4405, 1975, 0, 0, 2067, 801, 0, 0, 0, 0, 3746, 3215,
-    3657, 0, 82, 0, 0, 0, 1624, 221, 0, 0, 2193, 483, 1281, 669, 2430, 0,
-    1340, 4426, 0, 2419, 0, 2303, 0, 2691, 0, 305, 0, 0, 4276, 2246, 0,
-    2533, 1139, 0, 626, 0, 9, 0, 2276, 2052, 178, 527, 2479, 2242, 762,
-    212, 0, 860, 1718, 537, 0, 0, 1190, 4038, 1017, 0, 0, 0, 0, 1271, 0, 0,
-    2261, 732, 4062, 2896, 4335, 1570, 3121, 0, 1791, 1798, 3642, 0, 125,
-    3588, 2802, 0, 1162, 4276, 3536, 4314, 999, 0, 1518, 34, 0, 264, 4085,
-    85, 4152, 2133, 1519, 1367, 0, 0, 3903, 420, 0, 2737, 490, 1704, 4389,
-    0, 1631, 3809, 0, 1758, 0, 1162, 154, 980, 0, 0, 1188, 0, 0, 0, 1634,
-    2486, 0, 0, 2972, 3280, 0, 0, 1909, 1386, 915, 2446, 0, 0, 0, 2371, 0,
-    4499, 1915, 656, 2964, 4228, 0, 0, 0, 0, 910, 0, 0, 0, 1505, 3300, 0,
-    2754, 2586, 2505, 3028, 135, 1124, 2602, 34, 2658, 1047, 885, 0, 0, 0,
-    2117, 221, 2841, 153, 2240, 0, 3880, 0, 1101, 4095, 3147, 1757, 692,
-    2280, 3049, 0, 2319, 1519, 0, 0, 0, 0, 4291, 4464, 164, 0, 1108, 4291,
-    2707, 3843, 0, 0, 1160, 4318, 2473, 0, 4391, 0, 0, 0, 2743, 2146, 1050,
-    0, 0, 0, 58, 191, 1754, 1704, 0, 0, 2581, 1920, 2443, 0, 3264, 0, 1379,
-    0, 3933, 1049, 4127, 0, 2030, 0, 1363, 1411, 720, 945, 0, 367, 1312, 0,
-    0, 0, 0, 1257, 2000, 0, 0, 260, 2860, 3118, 0, 85, 2600, 1842, 3727,
-    554, 0, 0, 3763, 111, 0, 2993, 2128, 4103, 620, 0, 4018, 3867, 967,
-    3281, 808, 482, 0, 2321, 0, 0, 943, 574, 256, 4177, 574, 0, 4048, 212,
-    3917, 0, 4026, 0, 4161, 3004, 0, 3974, 0, 668, 426, 1194, 0, 0, 0,
-    2099, 3538, 0, 1951, 0, 0, 0, 2892, 0, 0, 451, 0, 3417, 2937, 0, 0,
-    2086, 0, 406, 0, 0, 0, 0, 4572, 1399, 3622, 894, 824, 195, 2309, 0, 0,
-    2169, 0, 1898, 2616, 0, 626, 1848, 7, 0, 3290, 2404, 0, 3593, 0, 4205,
-    1884, 0, 0, 3522, 1862, 2700, 0, 946, 2876, 1349, 0, 4208, 0, 0, 0,
-    670, 0, 0, 0, 2742, 145, 776, 0, 63, 850, 781, 0, 0, 3548, 1898, 1220,
-    490, 0, 875, 0, 0, 0, 520, 877, 1172, 1527, 0, 897, 0, 2415, 1127, 638,
-    4329, 0, 523, 4283, 1165, 0, 15, 2321, 978, 0, 1307, 0, 816, 1025,
-    3393, 0, 240, 145, 0, 3635, 3382, 2315, 3567, 3047, 0, 1752, 49, 4512,
-    4482, 3417, 0, 0, 4282, 463, 4462, 0, 128, 0, 23, 4462, 836, 0, 1029,
-    0, 2019, 0, 0, 2658, 0, 4525, 0, 3862, 0, 1577, 0, 0, 2372, 4416, 2195,
-    0, 516, 0, 0, 551, 849, 1716, 2507, 522, 550, 0, 1543, 1983, 4223,
-    3500, 0, 0, 1262, 502, 1512, 0, 0, 898, 292, 1236, 0, 0, 1004, 1963,
-    1952, 0, 0, 287, 2341, 3718, 1251, 4119, 1321, 3407, 0, 0, 0, 0, 2423,
-    251, 573, 3729, 4519, 1526, 4165, 2557, 0, 788, 0, 1448, 0, 0, 618, 0,
-    850, 0, 161, 1350, 644, 853, 1374, 0, 1767, 1315, 1539, 596, 753, 0,
-    467, 0, 4512, 970, 1730, 0, 0, 527, 3617, 2164, 2371, 0, 2418, 0, 0,
-    2504, 405, 0, 3599, 1925, 0, 1064, 0, 370, 0, 4526, 325, 1972, 0, 3356,
-    1134, 3930, 1318, 421, 2514, 2476, 638, 3571, 0, 0, 2142, 3054, 0,
-    2064, 2541, 1652, 3622, 0, 823, 1941, 878, 1673, 0, 3435, 0, 0, 0, 661,
-    3064, 0, 627, 0, 0, 0, 2359, 4291, 2531, 0, 4000, 0, 296, 0, 3074, 225,
-    0, 0, 2491, 99, 0, 0, 0, 0, 0, 0, 695, 1499, 0, 0, 2403, 3941, 558, 0,
-    0, 2265, 1068, 0, 845, 0, 0, 2485, 1864, 0, 1349, 598, 1415, 0, 544, 0,
-    3472, 0, 392, 113, 3942, 3088, 1266, 1235, 0, 540, 169, 436, 4186,
-    1878, 4206, 4094, 0, 662, 0, 2003, 2545, 3270, 708, 0, 0, 4359, 59, 0,
-    2044, 1527, 4373, 0, 528, 736, 0, 0, 0, 1621, 1206, 4202, 0, 0, 2613,
-    4059, 0, 844, 0, 2071, 0, 1126, 1719, 448, 3767, 2876, 1428, 925, 0, 0,
-    2965, 1816, 64, 0, 0, 3750, 0, 0, 1995, 0, 0, 1647, 0, 0, 0, 755, 0, 0,
-    0, 0, 0, 3336, 3374, 123, 0, 2172, 0, 0, 0, 2338, 519, 2630, 3573, 0,
-    0, 1269, 2325, 0, 1935, 485, 0, 0, 2310, 2413, 4405, 2397, 1122, 1824,
-    2055, 4062, 1449, 671, 412, 446, 4007, 286, 3846, 1387, 1978, 2443,
-    534, 0, 1061, 2005, 2269, 597, 2272, 0, 0, 3738, 0, 0, 1562, 741, 0, 0,
-    0, 0, 2349, 0, 2030, 0, 0, 0, 0, 0, 991, 0, 2416, 0, 2178, 1493, 0,
-    2163, 0, 17, 1651, 1348, 4337, 2029, 0, 117, 1605, 0, 3444, 1965, 0,
-    1776, 458, 397, 3063, 5, 4058, 535, 2807, 977, 314, 3613, 105, 3191,
-    153, 4397, 2752, 1412, 4069, 0, 0, 0, 0, 1089, 0, 1968, 0, 768, 2132,
-    0, 2582, 0, 0, 3753, 3512, 0, 909, 3256, 3999, 2436, 710, 0, 700, 248,
-    4078, 4347, 1222, 3669, 0, 0, 882, 0, 0, 0, 0, 2293, 362, 81, 1667,
-    3662, 2259, 0, 433, 4306, 3200, 0, 2445, 786, 3554, 0, 0, 0, 704, 0,
-    2695, 3256, 3676, 881, 2107, 1637, 0, 778, 0, 2232, 1858, 1616, 2872,
-    1467, 1545, 1613, 2512, 1587, 0, 1816, 4354, 1844, 0, 0, 3707, 3982,
-    3115, 2408, 1957, 0, 0, 4180, 177, 0, 759, 2615, 0, 2657, 208, 286, 0,
-    0, 0, 3075, 174, 1690, 2099, 0, 1345, 2018, 19, 1714, 0, 4440, 0, 3433,
-    0, 2951, 3090, 0, 1572, 1834, 3590, 0, 0, 443, 0, 3912, 0, 3850, 0,
-    497, 0, 2180, 2326, 1839, 0, 4155, 2871, 767, 0, 1249, 1687, 32, 4323,
-    4213, 2276, 1015, 0, 0, 2246, 327, 3992, 580, 1752, 3376, 2986, 2046,
-    2680, 0, 3862, 1306, 1087, 0, 50, 0, 0, 1553, 307, 0, 2332, 2418, 2474,
-    0, 1160, 1935, 1511, 0, 2082, 1193, 0, 0, 4054, 0, 367, 0, 1201, 1052,
-    0, 4550, 0, 1202, 1630, 0, 3705, 0, 0, 1923, 1124, 0, 508, 0, 2268, 0,
-    1205, 977, 2839, 0, 1054, 577, 3807, 1596, 0, 0, 1252, 0, 2653, 805,
-    2845, 942, 2231, 4007, 0, 2601, 277, 0, 1288, 1431, 0, 236, 3253, 0,
-    544, 1633, 928, 1446, 3652, 2, 467, 555, 1602, 0, 1105, 0, 10, 163, 0,
-    0, 1877, 0, 0, 0, 162, 1367, 4327, 0, 2915, 2460, 0, 0, 3361, 719,
-    1406, 201, 0, 467, 0, 0, 4303, 3609, 1599, 330, 108, 316, 0, 0, 0, 0,
-    2013, 18, 120, 1763, 3139, 0, 3485, 2025, 855, 0, 0, 572, 2308, 2496,
-    4410, 1711, 0, 3226, 0, 543, 0, 1621, 76, 3210, 3215, 17, 384, 0, 3294,
-    4505, 0, 0, 0, 1675, 1668, 1035, 0, 119, 0, 2789, 0, 3570, 4549, 98,
-    204, 2275, 0, 0, 0, 1949, 0, 0, 717, 0, 0, 0, 0, 113, 202, 0, 1557, 0,
-    1485, 840, 1002, 0, 0, 4427, 626, 4249, 0, 0, 2078, 165, 0, 929, 705,
-    1441, 0, 0, 1210, 972, 2190, 0, 0, 0, 0, 1931, 869, 0, 3521, 1203, 346,
-    0, 0, 0, 0, 0, 318, 1320, 667, 2715, 699, 1811, 0, 129, 813, 133, 1170,
-    0, 2082, 97, 0, 3526, 326, 0, 3954, 0, 4154, 0, 4309, 2381, 3528, 0,
-    30, 871, 4124, 4443, 2937, 0, 1725, 0, 0, 0, 2310, 455, 1619, 0, 1311,
-    0, 1380, 0, 0, 1836, 0, 0, 1089, 2913, 4345, 246, 0, 26, 961, 0, 0,
-    4157, 784, 0, 0, 2551, 3071, 485, 939, 2498, 0, 0, 0, 780, 4229, 1715,
-    0, 0, 0, 0, 70, 347, 3277, 639, 0, 0, 1504, 583, 0, 3743, 1826, 0, 45,
-    0, 0, 1008, 2163, 334, 1442, 0, 3030, 2537, 2051, 2729, 233, 3286, 0,
-    2576, 937, 950, 0, 2733, 0, 330, 4489, 2811, 0, 0, 0, 4544, 744, 2276,
-    0, 0, 1033, 203, 1114, 4197, 0, 0, 0, 0, 0, 2414, 295, 2339, 320, 1012,
-    0, 0, 3831, 2284, 0, 0, 1032, 134, 1726, 0, 0, 0, 3449, 0, 0, 3858,
-    191, 0, 1722, 790, 0, 2422, 0, 0, 1274, 0, 2270, 0, 0, 1010, 0, 0, 0,
-    1282, 1284, 0, 449, 0, 3027, 193, 0, 2027, 0, 1373, 0, 980, 3570, 1766,
-    1599, 4117, 167, 2021, 0, 2297, 471, 4085, 3018, 0, 335, 2835, 0, 2171,
-    0, 1360, 0, 1099, 3721, 1043, 0, 0, 0, 475, 3827, 16, 0, 672, 3315, 0,
-    4339, 0, 4427, 2223, 0, 0, 337, 0, 501, 229, 355, 85, 2613, 1226, 2295,
-    2336, 105, 0, 4538, 1538, 0, 0, 0, 2782, 3838, 0, 648, 0, 3778, 0, 0,
-    0, 0, 0, 0, 1336, 0, 0, 0, 2497, 743, 2249, 4081, 1023, 1864, 0, 3566,
-    2420, 1134, 1465, 1353, 1077, 149, 1704, 1778, 0, 0, 3553, 2079, 3287,
-    0, 0, 0, 1268, 599, 0, 0, 1112, 3816, 2411, 2535, 508, 0, 1829, 3311,
-    4312, 660, 2714, 0, 1657, 1994, 82, 3885, 1442, 0, 3432, 4337, 2665,
-    2778, 1687, 2522, 0, 1835, 1945, 1097, 682, 3420, 0, 0, 1450, 2138,
-    1006, 1376, 1456, 226, 3999, 982, 1417, 3602, 1964, 1894, 1525, 2505,
-    0, 4288, 0, 0, 2350, 441, 0, 0, 4083, 925, 3113, 310, 2991, 189, 1721,
-    544, 4105, 4546, 3498, 3022, 978, 0, 2007, 0, 1107, 0, 2286, 0, 1037,
-    0, 0, 0, 285, 0, 1559, 0, 0, 1728, 0, 0, 0, 284, 624, 263, 303, 1181,
-    2548, 1546, 2138, 0, 3610, 4024, 720, 2156, 0, 0, 446, 0, 0, 0, 0, 747,
-    0, 3594, 461, 3128, 505, 0, 67, 0, 2413, 0, 2775, 0, 0, 1780, 802, 0,
-    0, 0, 401, 1834, 2278, 4251, 0, 0, 0, 413, 0, 3070, 1726, 0, 0, 475, 0,
-    1857, 685, 2597, 981, 0, 0, 1655, 1180, 2228, 1253, 132, 63, 4266,
-    3166, 78, 0, 2635, 1295, 344, 3971, 743, 1580, 320, 4562, 0, 4412,
-    1166, 4460, 2660, 2264, 2579, 2733, 0, 2113, 3809, 2064, 1495, 0, 618,
-    886, 0, 0, 0, 4410, 1989, 0, 3907, 1781, 0, 2385, 92, 330, 1729, 3966,
-    1631, 4133, 2905, 2557, 3232, 0, 0, 0, 0, 0, 0, 291, 220, 3039, 465, 0,
-    4496, 0, 315, 3140, 0, 781, 0, 0, 0, 0, 0, 1419, 325, 4515, 4243, 1209,
-    2121, 0, 0, 2217, 2871, 417, 0, 0, 2310, 0, 2700, 4347, 1805, 1330,
-    3905, 760, 3564, 0, 2297, 2413, 1603, 1234, 3139, 0, 3836, 1431, 833,
-    1461, 146, 2173, 1111, 0, 1226, 1383, 0, 683, 2289, 783, 0, 0, 0, 0,
-    2024, 2362, 0, 2822, 0, 2184, 3117, 2289, 2884, 3942, 0, 0, 1806, 2073,
-    1039, 1332, 4148, 3602, 1500, 703, 0, 0, 0, 4304, 4271, 3563, 0, 214,
-    27, 1267, 1882, 3233, 3015, 0, 0, 0, 0, 2139, 1571, 0, 0, 4364, 3885,
-    3251, 0, 1662, 481, 9, 595, 0, 0, 1805, 0, 1783, 1270, 4365, 1375, 0,
-    0, 0, 3269, 1077, 2763, 324, 0, 4353, 2358, 2675, 0, 1843, 0, 1649,
-    333, 0, 0, 3961, 4484, 0, 0, 1368, 0, 3211, 4118, 4373, 3908, 1991, 0,
-    2189, 1381, 0, 2168, 1463, 1308, 466, 145, 3355, 0, 0, 298, 298, 1183,
-    0, 1145, 2060, 1516, 199, 0, 3088, 3607, 4408, 2304, 0, 2190, 2747, 0,
-    474, 0, 0, 3078, 4275, 820, 876, 1004, 2364, 0, 0, 3908, 2394, 1474,
-    2723, 1814, 2086, 294, 1788, 4408, 0, 2955, 3862, 912, 3296, 2130, 116,
-    1388, 2762, 2870, 0, 165, 0, 1852, 2287, 0, 0, 489, 2160, 441, 0, 2625,
-    349, 2280, 3030, 58, 0, 0, 4201, 0, 1229, 1760, 0, 4234, 791, 1053,
-    1349, 1951, 0, 1694, 1742, 4365, 3099, 2439, 4373, 0, 413, 0, 0, 0, 0,
-    3261, 1612, 0, 0, 3708, 1350, 252, 2326, 3770, 2427, 0, 1973, 3648,
-    2213, 253, 2017, 1533, 2014, 0, 0, 0, 1254, 2047, 0, 285, 1208, 2385,
-    0, 3284, 1586, 1396, 0, 0, 0, 1567, 1056, 0, 2370, 2208, 2196, 930,
-    1787, 0, 0, 0, 101, 0, 4554, 589, 1093, 3184, 0, 1063, 2620, 0, 323,
-    3160, 0, 1985, 2649, 0, 2950, 1670, 1932, 303, 630, 0, 1604, 0, 384,
-    1160, 4004, 3476, 4046, 1701, 0, 1182, 0, 3666, 1562, 1622, 1384, 0, 0,
-    0, 3622, 1340, 0, 3506, 2618, 2792, 1141, 1702, 4495, 2269, 0, 4344,
-    2047, 0, 2506, 0, 604, 0, 1979, 1455, 148, 2255, 0, 1069, 0, 4532, 0,
-    0, 3671, 265, 87, 0, 0, 4398, 4347, 1070, 970, 0, 1960, 3092, 943, 0,
-    1007, 0, 2528, 2173, 313, 347, 1560, 946, 4204, 2101, 0, 991, 0, 2102,
-    2053, 0, 680, 1979, 0, 1701, 0, 3621, 1556, 0, 331, 2707, 2448, 1240,
-    4042, 1616, 0, 3662, 0, 0, 0, 53, 4001, 0, 3069, 1309, 1446, 304, 357,
-    0, 3309, 2111, 3132, 264, 0, 103, 1400, 3319, 809, 2150, 2224, 0, 1528,
-    1147, 1528, 2667, 0, 0, 415, 0, 175, 3613, 1402, 1905, 0, 803, 1744,
-    2833, 804, 0, 0, 0, 0, 4466, 585, 2964, 1606, 3440, 297, 4247, 1275, 0,
-    0, 0, 1508, 0, 2835, 3573, 0, 400, 0, 4481, 3301, 734, 1036, 823, 1398,
-    706, 0, 0, 3880, 2284, 0, 0, 619, 0, 1317, 0, 0, 2219, 0, 4480, 628,
-    983, 4502, 3011, 1487, 44, 0, 0, 30, 2527, 2246, 804, 0, 2016, 2001,
-    1657, 0, 0, 1330, 739, 0, 0, 0, 0, 3978, 219, 974, 339, 3993, 2, 1118,
-    1395, 2451, 3610, 1189, 2341, 53, 110, 2132, 4538, 4392, 393, 53, 2176,
-    92, 2282, 0, 584, 885, 1401, 2282, 79, 1644, 0, 4316, 0, 4033, 0, 4235,
-    3232, 2752, 0, 0, 2010, 2446, 0, 0, 4547, 0, 2203, 247, 4125, 0, 0,
-    1261, 216, 0, 4138, 0, 0, 0, 0, 1637, 0, 0, 200, 750, 262, 0, 4510, 0,
-    1506, 2069, 4241, 1589, 661, 0, 277, 3425, 1294, 14, 0, 1747, 2220,
-    2297, 0, 0, 238, 0, 547, 476, 2223, 4221, 4355, 1385, 1724, 0, 0, 2139,
-    1990, 902, 0, 1183, 18, 0, 1607, 0, 2513, 1427, 395, 975, 0, 3106,
-    1756, 2038, 561, 0, 1217, 925, 158, 989, 4043, 0, 0, 0, 2342, 0, 2070,
-    297, 457, 0, 3756, 451, 0, 4085, 0, 4111, 2184, 0, 0, 0, 3984, 373, 0,
-    3175, 1178, 4351, 1137, 2453, 1709, 1594, 4546, 3060, 0, 1834, 3303, 0,
-    1327, 1177, 553, 404, 4148, 1271, 0, 603, 0, 0, 1541, 0, 2530, 0, 0,
-    2593, 1055, 0, 2346, 0, 424, 2332, 0, 1654, 0, 2249, 466, 1189, 700,
-    4013, 852, 126, 1203, 221, 852, 667, 350, 0, 758, 4008, 0, 4389, 854,
-    2392, 0, 2277, 782, 1516, 0, 2643, 766, 1171, 137, 3759, 733, 981, 0,
-    0, 1208, 1949, 2894, 0, 1871, 4499, 0, 1179, 0, 263, 414, 3460, 3873,
-    131, 1836, 528, 0, 0, 2185, 0, 2149, 0, 0, 1688, 1626, 4532, 0, 4415,
-    0, 4262, 0, 0, 1962, 0, 0, 453, 2195, 3045, 648, 3824, 1109, 2294,
-    3776, 0, 1433, 3623, 761, 2010, 0, 2049, 496, 0, 2094, 4421, 0, 420, 0,
-    0, 90, 0, 0, 485, 0, 0, 2499, 1177, 0, 0, 4511, 2369, 1523, 0, 0, 3755,
-    2071
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 487, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4320, 0, 0, 0,
+    0, 0, 0, 3487, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 911,
+    170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337, 2237, 0, 0, 1255, 0, 0, 0, 0, 0,
+    4586, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2587, 0, 0, 0, 0, 2095, 2473, 0, 0, 0,
+    0, 3660, 3155, 0, 4215, 0, 0, 0, 3269, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1233, 0, 938, 0, 0, 0, 0,
+    3024, 0, 0, 0, 0, 0, 0, 2140, 1323, 0, 0, 3357, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 267, 0, 1334, 2206, 0, 0, 0, 0, 0, 0, 2223, 0, 0, 0, 0, 0,
+    2646, 0, 4468, 1654, 0, 3013, 0, 3827, 0, 0, 0, 754, 271, 0, 0, 0, 0,
+    0, 2138, 934, 2447, 3798, 623, 292, 0, 0, 0, 2078, 0, 0, 0, 0, 0, 0, 0,
+    0, 860, 614, 0, 1667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1966, 2819,
+    1086, 0, 613, 0, 0, 0, 2392, 0, 2124, 0, 0, 0, 0, 0, 0, 0, 2683, 2902,
+    0, 0, 0, 0, 0, 0, 4054, 0, 0, 0, 0, 130, 884, 4346, 0, 0, 0, 0, 0, 0,
+    0, 0, 495, 0, 0, 0, 0, 0, 847, 0, 0, 0, 0, 2464, 4132, 1191, 0, 0, 0,
+    0, 0, 2897, 1235, 113, 4597, 0, 0, 1982, 0, 0, 0, 0, 0, 1276, 2857, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 2300, 0, 0, 0, 0, 0, 0, 0, 0, 2956, 0, 0, 0, 0,
+    0, 0, 0, 1500, 0, 0, 0, 3846, 2818, 0, 0, 1274, 0, 1751, 0, 0, 3872, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 181, 0, 0, 0, 0, 0, 0, 1902, 0, 0,
+    0, 0, 0, 0, 0, 1021, 935, 3867, 0, 0, 695, 0, 0, 2791, 1285, 959, 104,
+    3701, 0, 0, 0, 0, 148, 0, 0, 0, 0, 0, 1986, 249, 830, 0, 1101, 0, 0,
+    702, 0, 2373, 0, 3925, 0, 0, 17, 0, 2474, 1714, 661, 1143, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 3877, 0, 0, 0, 0, 0, 0, 1837, 3205, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 997, 0, 0, 2889, 0, 1001, 1103, 0, 0, 2906,
+    2247, 0, 0, 0, 0, 0, 3811, 2559, 1107, 0, 0, 0, 0, 1281, 1748, 766, 0,
+    478, 0, 794, 2034, 0, 0, 4078, 0, 1052, 43, 0, 0, 0, 0, 370, 0, 4344,
+    0, 336, 0, 2520, 0, 4354, 0, 0, 4115, 106, 0, 0, 0, 0, 4483, 0, 4133,
+    4146, 0, 362, 0, 0, 0, 0, 2155, 2025, 0, 2538, 1624, 1569, 524, 344,
+    4216, 0, 0, 1049, 0, 0, 0, 0, 0, 0, 3971, 0, 0, 0, 0, 0, 0, 0, 0, 3506,
+    134, 0, 1029, 0, 0, 0, 0, 1999, 0, 3959, 3052, 0, 0, 0, 0, 0, 190,
+    4269, 124, 1503, 0, 789, 0, 0, 3157, 1339, 0, 2987, 1230, 340, 2855,
+    3977, 0, 0, 0, 3572, 0, 4005, 0, 0, 3389, 56, 3158, 2568, 1126, 2237,
+    0, 0, 3137, 2064, 2000, 0, 0, 4194, 0, 2009, 0, 0, 0, 352, 333, 0, 699,
+    1725, 0, 0, 1095, 758, 931, 0, 0, 3395, 0, 0, 0, 2779, 4331, 0, 376,
+    2643, 786, 0, 0, 0, 1695, 4476, 250, 1346, 0, 1584, 1546, 0, 0, 0, 547,
+    0, 0, 0, 0, 185, 0, 0, 3138, 0, 0, 0, 780, 2326, 3641, 357, 2909, 0,
+    2744, 0, 0, 3782, 3851, 0, 0, 2410, 0, 165, 0, 3929, 0, 332, 0, 0, 0,
+    285, 0, 132, 0, 0, 0, 0, 614, 2413, 0, 2071, 4452, 0, 2932, 0, 0, 2154,
+    0, 0, 0, 0, 47, 2817, 378, 0, 0, 0, 0, 2675, 2532, 0, 4444, 0, 0, 0,
+    3801, 1146, 1503, 0, 0, 360, 0, 1844, 3762, 0, 0, 0, 0, 808, 1971, 0,
+    0, 0, 3447, 2133, 1130, 277, 0, 2150, 0, 0, 0, 2022, 0, 0, 842, 0,
+    4056, 1546, 0, 2903, 2961, 0, 0, 1147, 0, 0, 0, 0, 0, 178, 2494, 4293,
+    0, 2691, 373, 898, 0, 0, 0, 358, 0, 1566, 1952, 4315, 1333, 0, 0, 0, 0,
+    0, 0, 0, 9, 4181, 0, 0, 3233, 0, 4170, 1838, 0, 4213, 0, 0, 4162, 1623,
+    4072, 0, 0, 4274, 1135, 0, 0, 0, 4580, 0, 0, 4155, 0, 0, 2104, 0, 0, 0,
+    0, 0, 0, 448, 392, 1065, 0, 0, 0, 3992, 0, 0, 0, 0, 874, 1186, 0, 0,
+    3272, 0, 0, 0, 2602, 1968, 2263, 3121, 1106, 0, 3214, 3710, 1824, 0,
+    81, 0, 0, 491, 0, 0, 0, 2160, 0, 0, 0, 1550, 1499, 0, 0, 162, 0, 2511,
+    0, 1750, 938, 114, 28, 0, 0, 0, 4369, 1651, 0, 705, 2124, 3706, 0,
+    2823, 0, 2478, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2047, 4270,
+    875, 2763, 2128, 0, 0, 3258, 0, 0, 0, 0, 0, 368, 0, 0, 0, 793, 0, 214,
+    3900, 905, 0, 406, 3898, 2054, 249, 0, 1331, 1784, 4611, 456, 501,
+    3088, 0, 0, 469, 0, 0, 2591, 0, 0, 0, 0, 1924, 55, 1167, 3760, 1818, 0,
+    0, 0, 1494, 0, 2654, 3852, 0, 0, 0, 0, 3028, 0, 0, 4508, 1985, 0, 0,
+    3133, 1856, 0, 0, 3109, 4002, 2283, 0, 0, 0, 4105, 187, 0, 0, 1929,
+    2367, 0, 0, 3757, 0, 845, 1521, 0, 0, 1719, 1103, 3287, 0, 2813, 1345,
+    4445, 3128, 0, 0, 1629, 1909, 1628, 0, 0, 1206, 0, 0, 0, 0, 2835, 681,
+    690, 901, 2977, 2564, 0, 2775, 548, 2437, 4559, 0, 0, 0, 0, 1736, 615,
+    2162, 3107, 1079, 0, 2046, 3020, 4365, 3527, 0, 1791, 0, 560, 0, 0,
+    1693, 0, 1508, 3077, 0, 3861, 3413, 0, 1644, 0, 2261, 0, 0, 4419, 0, 0,
+    0, 0, 1783, 1949, 670, 0, 2807, 0, 3264, 0, 0, 3500, 0, 3809, 0, 3710,
+    2708, 855, 779, 1897, 1327, 0, 89, 414, 0, 0, 0, 4593, 266, 2482, 0, 0,
+    0, 630, 2992, 598, 0, 0, 0, 0, 2746, 1263, 0, 0, 0, 928, 4158, 0, 0, 0,
+    2804, 0, 98, 2895, 1286, 1852, 1606, 0, 760, 3974, 0, 3593, 0, 2401, 0,
+    0, 0, 979, 1479, 0, 2460, 0, 0, 0, 4357, 0, 1179, 1816, 0, 0, 288, 504,
+    680, 1197, 0, 2419, 1491, 3478, 4381, 357, 2773, 0, 857, 0, 0, 0, 2017,
+    0, 0, 0, 41, 2934, 0, 567, 699, 0, 0, 168, 3581, 1598, 0, 4363, 1661,
+    0, 0, 0, 1962, 0, 2193, 0, 0, 0, 0, 0, 0, 654, 2195, 0, 0, 0, 689, 0,
+    30, 418, 0, 3789, 168, 0, 2310, 0, 1482, 1739, 0, 466, 2856, 1317, 0,
+    1474, 413, 0, 0, 203, 3930, 0, 2854, 0, 0, 0, 0, 0, 0, 939, 480, 0, 0,
+    0, 2769, 0, 3083, 322, 0, 0, 2912, 0, 0, 4317, 0, 1978, 0, 2739, 0, 0,
+    1692, 968, 2256, 2834, 2206, 0, 0, 2922, 4496, 0, 2023, 1618, 1558, 0,
+    0, 0, 3103, 0, 117, 0, 0, 1043, 0, 4545, 0, 1017, 3407, 0, 0, 0, 0, 0,
+    0, 0, 3337, 0, 37, 0, 2483, 0, 0, 3015, 0, 388, 4012, 1582, 0, 0, 0,
+    3336, 426, 0, 0, 0, 257, 0, 0, 2599, 0, 4247, 2006, 3047, 0, 2213, 509,
+    0, 0, 0, 4575, 0, 626, 468, 0, 1886, 41, 0, 4401, 1277, 699, 3046,
+    4021, 640, 216, 2983, 0, 0, 0, 0, 0, 512, 0, 0, 0, 3830, 2250, 0, 0, 0,
+    472, 1251, 580, 54, 1885, 752, 0, 2764, 0, 0, 0, 1136, 0, 0, 0, 0, 0,
+    0, 316, 0, 0, 755, 307, 2168, 0, 0, 0, 2039, 0, 1407, 1154, 3271, 317,
+    0, 3901, 0, 0, 3089, 0, 0, 1927, 2173, 2261, 0, 3960, 3945, 0, 0, 0,
+    3262, 0, 2300, 0, 0, 1050, 0, 4371, 263, 4212, 0, 1765, 490, 1231,
+    1733, 386, 3524, 0, 1741, 145, 3981, 0, 4225, 2019, 4364, 0, 362, 1949,
+    0, 0, 0, 0, 3135, 0, 3799, 17, 1898, 0, 0, 0, 1882, 3926, 0, 0, 906,
+    2272, 4078, 0, 0, 0, 1329, 0, 0, 3206, 2808, 1071, 12, 0, 1132, 826,
+    2189, 3585, 1315, 0, 1446, 0, 3355, 0, 0, 0, 0, 3454, 0, 0, 0, 0, 0,
+    1644, 0, 0, 1239, 0, 0, 0, 0, 0, 0, 0, 4270, 1803, 1120, 810, 3997, 0,
+    4208, 856, 0, 432, 0, 0, 0, 1577, 294, 546, 4593, 1840, 3008, 0, 2831,
+    0, 1024, 548, 432, 0, 0, 3271, 0, 0, 0, 743, 4454, 2733, 492, 3608,
+    450, 394, 0, 0, 0, 0, 0, 0, 3649, 3146, 0, 123, 2509, 0, 648, 0, 1140,
+    1576, 2452, 0, 4466, 0, 0, 0, 917, 2554, 2666, 820, 0, 0, 0, 3847,
+    4485, 1720, 0, 3395, 0, 4207, 1646, 0, 0, 3864, 2769, 0, 0, 0, 1922,
+    1148, 1154, 3890, 3356, 0, 4379, 1216, 3140, 3410, 104, 4133, 1961,
+    2117, 2542, 0, 35, 0, 0, 0, 0, 0, 4566, 1392, 78, 0, 0, 0, 0, 1497,
+    1127, 3475, 2131, 0, 1542, 115, 0, 0, 2423, 0, 1085, 0, 4107, 0, 0, 0,
+    670, 0, 0, 727, 3031, 496, 0, 57, 410, 0, 0, 792, 0, 0, 2294, 819,
+    2235, 0, 2932, 0, 0, 1187, 0, 2607, 0, 2644, 2662, 0, 3119, 754, 3518,
+    0, 4450, 2376, 3838, 0, 2746, 0, 0, 0, 2546, 0, 0, 4014, 0, 0, 773,
+    1800, 4341, 167, 557, 2228, 2192, 0, 3800, 0, 0, 0, 452, 0, 1653, 0,
+    3644, 0, 3310, 2402, 2016, 2197, 4126, 0, 49, 1010, 0, 184, 1760, 0, 0,
+    0, 175, 0, 4572, 2257, 0, 10, 0, 3065, 3576, 0, 4364, 0, 3932, 0, 3972,
+    0, 0, 0, 2929, 2748, 0, 777, 772, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3840, 0,
+    3686, 648, 4560, 2355, 0, 3810, 0, 1185, 3316, 0, 0, 0, 499, 114, 1648,
+    0, 0, 200, 755, 1904, 2791, 0, 0, 1895, 203, 324, 3235, 0, 914, 0,
+    2455, 433, 2094, 0, 1912, 1694, 1060, 0, 265, 1272, 3959, 0, 447, 0,
+    1764, 0, 3672, 0, 0, 879, 4279, 0, 4020, 4545, 2515, 0, 2117, 0, 0,
+    3962, 0, 921, 0, 0, 4294, 1896, 0, 2210, 3360, 1577, 0, 0, 0, 3977, 0,
+    0, 1144, 0, 826, 2324, 1132, 2034, 1158, 1135, 946, 956, 239, 0, 0,
+    3569, 3333, 89, 0, 277, 95, 0, 87, 0, 1121, 4175, 4315, 0, 0, 0, 4327,
+    3717, 0, 0, 1816, 0, 0, 1357, 2223, 4018, 402, 0, 2666, 0, 2433, 0, 62,
+    4019, 4126, 0, 2089, 1465, 0, 0, 0, 0, 1865, 2570, 0, 0, 3547, 0, 0,
+    1738, 2306, 0, 2554, 25, 4148, 0, 894, 44, 2761, 1014, 0, 683, 0, 0, 0,
+    0, 3662, 2450, 0, 386, 0, 0, 2787, 3177, 4183, 0, 938, 0, 0, 680, 1290,
+    2558, 2639, 3187, 0, 3103, 0, 3969, 0, 1322, 2924, 0, 2736, 2280, 0, 0,
+    1917, 1812, 203, 0, 0, 0, 2461, 0, 2593, 0, 0, 3621, 0, 1220, 1648,
+    106, 829, 3850, 0, 1075, 0, 606, 0, 0, 0, 0, 0, 0, 1920, 2590, 96,
+    2374, 0, 0, 0, 601, 1893, 954, 0, 4300, 0, 1536, 247, 0, 0, 22, 0,
+    2829, 2555, 4439, 0, 0, 1085, 0, 0, 0, 0, 0, 168, 2604, 2767, 746,
+    3025, 0, 0, 0, 1450, 322, 2587, 0, 3406, 4597, 4511, 4129, 0, 1978, 0,
+    0, 0, 0, 0, 4011, 0, 3285, 1026, 0, 0, 1323, 0, 0, 0, 0, 0, 0, 0, 2385,
+    4525, 4454, 0, 612, 0, 1005, 905, 1176, 4261, 0, 0, 0, 0, 0, 4024, 904,
+    1519, 2375, 1332, 2396, 3030, 3260, 0, 0, 1997, 0, 346, 805, 0, 882, 0,
+    0, 3798, 0, 1445, 3177, 0, 3276, 0, 0, 0, 3708, 1862, 0, 0, 1791, 2259,
+    0, 2541, 2344, 0, 1206, 0, 179, 2055, 0, 2004, 0, 2398, 2566, 4529, 0,
+    0, 4408, 3074, 759, 0, 1870, 2819, 480, 0, 1073, 0, 0, 54, 0, 0, 0,
+    3155, 0, 2157, 2647, 0, 4360, 1175, 0, 0, 0, 0, 1516, 0, 1412, 0, 0, 0,
+    3822, 0, 0, 208, 2376, 0, 0, 2470, 2285, 0, 3535, 0, 0, 0, 2189, 0,
+    3893, 0, 0, 2904, 1834, 0, 2047, 0, 1673, 0, 3400, 444, 2149, 0, 3722,
+    4374, 0, 0, 1765, 32, 0, 1845, 0, 2227, 0, 2218, 1189, 635, 0, 0, 4043,
+    0, 0, 1355, 546, 880, 1232, 0, 0, 979, 1026, 2994, 847, 4444, 1700, 0,
+    715, 2754, 1754, 1593, 2000, 2866, 75, 2984, 0, 3366, 0, 0, 4310, 0, 0,
+    1454, 1314, 2974, 1861, 0, 631, 0, 438, 0, 1356, 1, 0, 1741, 4142, 0,
+    2052, 0, 1413, 4150, 0, 0, 2030, 0, 0, 0, 2107, 3073, 0, 4274, 0, 3454,
+    0, 0, 0, 489, 0, 0, 1406, 240, 0, 4341, 0, 4521, 0, 779, 2086, 0, 147,
+    4363, 0, 1677, 3165, 94, 0, 0, 756, 0, 0, 2489, 0, 0, 348, 0, 2440,
+    3650, 0, 0, 0, 860, 0, 476, 4182, 0, 1660, 2876, 0, 614, 0, 2459, 2348,
+    1300, 869, 0, 0, 4191, 892, 0, 568, 1619, 1407, 0, 2008, 3378, 3560,
+    671, 0, 0, 1195, 2593, 1701, 0, 1066, 1386, 2346, 0, 157, 0, 1385, 0,
+    1539, 0, 4037, 0, 876, 470, 0, 0, 3501, 0, 2981, 0, 2518, 1965, 714,
+    742, 0, 1146, 4523, 925, 1750, 0, 793, 1214, 0, 0, 0, 986, 0, 1419, 0,
+    422, 0, 0, 3102, 0, 0, 1161, 0, 0, 1922, 384, 3114, 1338, 673, 2544,
+    1178, 0, 2655, 0, 0, 2115, 0, 0, 1186, 0, 1442, 0, 0, 1481, 0, 1249,
+    2298, 0, 654, 0, 2037, 2897, 44, 0, 980, 0, 2331, 237, 1433, 3625,
+    3499, 0, 0, 0, 0, 3647, 0, 4314, 0, 0, 3036, 2163, 0, 1508, 0, 0, 0,
+    3902, 1316, 0, 4039, 221, 2193, 0, 4408, 0, 2270, 1942, 0, 926, 0,
+    1357, 3155, 370, 3727, 2686, 486, 0, 2195, 0, 3232, 0, 2638, 3788, 0,
+    0, 4468, 0, 301, 2376, 1629, 0, 2617, 0, 0, 0, 0, 3051, 0, 0, 0, 2993,
+    1215, 1858, 2975, 2521, 3692, 0, 0, 0, 3415, 330, 0, 0, 0, 3843, 863,
+    783, 0, 1169, 0, 1959, 0, 1170, 0, 141, 962, 4052, 3117, 2148, 1529, 0,
+    2295, 199, 679, 1686, 0, 0, 0, 0, 0, 3989, 134, 0, 2985, 0, 2368, 1163,
+    0, 3044, 0, 0, 2082, 2087, 2363, 927, 1803, 2273, 0, 2139, 1758, 558,
+    2097, 3701, 2157, 0, 1072, 2318, 384, 697, 926, 0, 45, 4570, 1136, 0,
+    0, 0, 0, 1262, 131, 0, 1221, 509, 0, 0, 0, 2424, 2271, 0, 3312, 1760,
+    0, 3206, 1726, 0, 0, 0, 1191, 4271, 0, 1232, 1865, 0, 4273, 2759, 0,
+    73, 4001, 914, 1791, 0, 0, 0, 780, 2128, 4578, 2457, 718, 640, 0, 0,
+    4459, 2308, 0, 0, 1829, 786, 2262, 4353, 2218, 1066, 0, 3008, 0, 0,
+    1472, 413, 3432, 2224, 0, 928, 1456, 366, 0, 1833, 1960, 461, 401, 0,
+    1153, 4573, 4279, 0, 955, 0, 452, 0, 3923, 4321, 982, 0, 2740, 2306,
+    4436, 505, 475, 0, 0, 2155, 618, 2209, 0, 2294, 1073, 4372, 1727, 637,
+    3760, 1622, 0, 0, 1132, 24, 3006, 1848, 0, 0, 0, 2214, 498, 41, 0, 0,
+    0, 0, 1243, 0, 0, 0, 1408, 0, 1267, 590, 893, 3099, 219, 4387, 2079,
+    1046, 741, 1263, 0, 1591, 729, 4048, 4089, 0, 0, 0, 0, 4356, 1404,
+    4137, 0, 2006, 532, 4260, 2539, 0, 0, 3768, 0, 1365, 3632, 667, 0, 0,
+    0, 575, 1056, 0, 1940, 4403, 2407, 542, 477, 1672, 0, 0, 2115, 194,
+    1223, 3127, 232, 806, 1427, 465, 0, 1084, 4353, 1867, 2110, 916, 0, 0,
+    0, 189, 0, 0, 0, 1027, 0, 1941, 0, 507, 1250, 186, 0, 806, 1551, 0, 0,
+    3379, 0, 3241, 1046, 0, 0, 0, 4397, 0, 1879, 0, 0, 0, 1307, 500, 0,
+    269, 3410, 0, 0, 1704, 4066, 0, 1658, 0, 0, 2145, 0, 0, 67, 2385, 0,
+    2870, 1720, 3313, 135, 422, 3949, 416, 0, 0, 0, 0, 2383, 4498, 274,
+    3732, 4606, 1790, 4026, 455, 1208, 0, 0, 0, 1435, 4443, 1809, 688,
+    1261, 2208, 1162, 3110, 983, 614, 956, 0, 0, 2359, 546, 0, 1757, 1323,
+    3127, 1460, 1960, 0, 1618, 3415, 2671, 0, 0, 0, 0, 0, 1309, 4469, 3190,
+    0, 91, 1713, 0, 2493, 0, 3447, 3135, 756, 0, 1771, 83, 3691, 639, 0, 0,
+    1540, 0, 0, 1238, 901, 1278, 2740, 0, 1178, 0, 0, 763, 766, 198, 0,
+    1387, 953, 1489, 0, 0, 0, 0, 0, 2303, 223, 976, 0, 0, 4245, 307, 157,
+    1206, 1274, 0, 308, 0, 2383, 1239, 2282, 2427, 1263, 728, 0, 0, 0,
+    3416, 554, 3315, 676, 32, 2314, 3964, 2787, 0, 990, 94, 0, 2503, 0,
+    649, 4520, 2460, 1954, 1970, 0, 2239, 10, 2262, 489, 2114, 0, 4069,
+    1359, 0, 0, 0, 2238, 1574, 513, 778, 0, 1481, 1306, 2154, 1524, 0,
+    1874, 2319, 876, 3874, 803, 0, 0, 0, 791, 0, 2170, 4415, 932, 0, 43,
+    18, 1742, 0, 2177, 1260, 1831, 1251, 1863, 770, 236, 1431, 0, 0, 0,
+    2079, 2232, 1549, 0, 2576, 0, 259, 0, 621, 1145, 0, 82, 558, 1493, 0,
+    0, 0, 0, 0, 0, 268, 1885, 2256, 244, 0, 4446, 3820, 0, 0, 0, 378, 0,
+    1501, 0, 0, 0, 1514, 3959, 1176, 0, 672, 2850, 3333, 2604, 1491, 0,
+    168, 0, 0, 166, 0, 0, 232, 0, 0, 2038, 107, 72, 0, 1934, 548, 1752,
+    521, 686, 3319, 1870, 0, 908, 2282, 3795, 2507, 3130, 3193, 0, 718,
+    1719, 2524, 1009, 3547, 4434, 0, 2226, 1467, 2434, 0, 1492, 1703, 3906,
+    0, 3136, 0, 0, 0, 1982, 4083, 0, 0, 678, 4376, 820, 0, 1824, 1878,
+    4547, 3898, 0, 2474, 0, 3527, 0, 0, 0, 4300, 1984, 0, 1538, 609, 1871,
+    1057, 91, 754, 3623, 0, 81, 650, 0, 0, 0, 2511, 3336, 2943, 645, 582,
+    1540, 234, 3076, 0, 0, 0, 1182, 1626, 0, 135, 0, 0, 1070, 593, 3974,
+    1201, 3010, 841, 789, 2161, 0, 170, 0, 694, 0, 173, 1625, 151, 0, 74,
+    1739, 1396, 1562, 1660, 983, 0, 0, 4372, 795, 710, 1229, 0, 851, 0,
+    1560, 0, 1068, 864, 4015, 0, 0, 0, 1379, 2130, 1248, 2249, 1779, 0, 0,
+    2458, 0, 1571, 0, 0, 2801, 0, 1031, 2097, 0, 0, 0, 970, 2887, 3117,
+    3683, 0, 605, 1252, 2635, 561, 237, 0, 3399, 1219, 0, 0, 4338, 1551,
+    2682, 0, 0, 3866, 876, 2472, 1606, 3122, 4141, 0, 0, 1156, 1675, 0, 0,
+    2339, 0, 1178, 2992, 0, 481, 0, 1442, 2412, 0, 0, 0, 459, 0, 1969, 0,
+    1780, 1322, 2942, 0, 3040, 0, 100, 938, 1780, 0, 2221, 516, 803, 2692,
+    121, 0, 3620, 1321, 0, 324, 4171, 956, 1553, 4184, 2462, 3604, 411, 0,
+    1797, 0, 3767, 0, 343, 0, 4420, 4463, 2887, 139, 2146, 0, 1171, 921,
+    2470, 4567, 0, 895, 63, 4295, 915, 108, 0, 2499, 1618, 189, 508, 2479,
+    691, 0, 4492, 4387, 575, 0, 139, 1520, 0, 2553, 2328, 0, 0, 4163, 1443,
+    1328, 0, 0, 0, 98, 0, 1063, 0, 281, 2373, 1958, 0, 0, 2523, 0, 3045, 0,
+    3401, 905, 0, 0, 1459, 0, 2542, 1401, 4036, 0, 3986, 3804, 0, 448,
+    4199, 2354, 0, 0, 737, 875, 579, 3407, 2269, 3386, 3526, 856, 4502,
+    293, 4206, 1128, 0, 0, 4575, 0, 3408, 665, 0, 0, 0, 1975, 3768, 0, 895,
+    0, 4265, 0, 1137, 0, 1550, 2075, 1644, 375, 4072, 1565, 2881, 2203,
+    1994, 0, 2963, 0, 0, 768, 1782, 2777, 451, 673, 0, 944, 2569, 3292,
+    1887, 0, 0, 3424, 1252, 1678, 0, 4009, 4450, 0, 1854, 934, 2056, 3595,
+    0, 0, 1721, 2411, 474, 4124, 0, 3968, 0, 0, 0, 0, 3712, 2639, 4503,
+    266, 0, 683, 3452, 0, 2561, 2601, 0, 0, 0, 0, 0, 4449, 2045, 906, 0, 0,
+    0, 694, 785, 1675, 1568, 770, 0, 1077, 1802, 2977, 323, 2499, 0, 2224,
+    768, 0, 3199, 994, 0, 1415, 1651, 0, 4050, 3810, 1445, 0, 4008, 2352,
+    1227, 0, 0, 0, 1558, 0, 0, 3892, 1681, 2935, 3854, 0, 331, 1822, 0, 0,
+    0, 3075, 2244, 3397, 3740, 3817, 0, 887, 4000, 0, 0, 3958, 2295, 153,
+    2381, 841, 0, 4387, 0, 749, 0, 1102, 292, 2236, 0, 64, 4080, 4079,
+    2156, 1635, 0, 2280, 0, 4071, 3890, 0, 2728, 0, 2321, 0, 1329, 280,
+    2511, 0, 4325, 945, 0, 0, 1492, 1409, 3620, 3209, 4206, 0, 2380, 0,
+    3329, 0, 0, 595, 1188, 0, 355, 3644, 4412, 907, 2500, 0, 2756, 994,
+    4396, 0, 0, 2526, 2188, 0, 1071, 0, 3025, 2109, 0, 3108, 4118, 1275,
+    455, 0, 2185, 2656, 0, 4048, 1177, 0, 1783, 954, 0, 3029, 0, 0, 37, 0,
+    4485, 1684, 4352, 3102, 3215, 1982, 897, 0, 0, 217, 407, 2090, 0, 1018,
+    0, 2242, 0, 0, 4484, 243, 3005, 599, 0, 2170, 1477, 1183, 2268, 2219,
+    3091, 0, 0, 658, 922, 1663, 2237, 2354, 2133, 0, 1447, 0, 0, 0, 0,
+    2373, 1235, 0, 1254, 999, 481, 1986, 1841, 1749, 0, 2996, 0, 4305, 668,
+    4457, 0, 402, 0, 2073, 2492, 0, 1907, 0, 547, 3906, 1385, 4301, 610,
+    3710, 0, 4109, 662, 0, 0, 908, 973, 0, 0, 3643, 2278, 1562, 3749, 2077,
+    2, 1579, 0, 2054, 0, 255, 1572, 2428, 0, 0, 1245, 0, 2011, 2162, 0,
+    4464, 3666, 734, 0, 1410, 1654, 938, 0, 2308, 2319, 1105, 0, 1875, 0,
+    0, 1284, 2051, 1823, 0, 0, 0, 2044, 1989, 0, 0, 0, 2765, 0, 959, 2179,
+    1357, 2221, 0, 1178, 940, 776, 0, 0, 0, 2301, 0, 0, 1552, 1569, 1563,
+    2304, 0, 0, 2184, 0, 0, 1947, 250, 3985, 721, 2529, 0, 2484, 4077,
+    4190, 0, 0, 1330, 1155, 0, 0, 0, 1992, 1076, 0, 3109, 4209, 0, 1053,
+    1634, 0, 0, 2301, 1000, 846, 1990, 0, 3692, 891, 1498, 0, 1717, 1379,
+    0, 1602, 0, 0, 4296, 1184, 551, 3740, 0, 0, 0, 0, 3978, 0, 2819, 0,
+    798, 3737, 455, 455, 0, 868, 1172, 534, 1667, 1743, 259, 807, 185, 0,
+    691, 1809, 1818, 0, 2555, 3932, 0, 3603, 652, 3316, 406, 0, 4370, 2502,
+    0, 953, 1012, 0, 0, 1531, 405, 2297, 1287, 3925, 4421, 1211, 126, 0,
+    2239, 0, 2856, 3085, 0, 1565, 1837, 0, 4337, 0, 800, 4515, 4339, 0,
+    2503, 321, 1097, 76, 4378, 1654, 0, 0, 0, 0, 580, 760, 3993, 1708,
+    1048, 3113, 2204, 0, 0, 1478, 0, 1773, 0, 511, 1074, 2864, 0, 325, 0,
+    0, 0, 1611, 1410, 292, 0, 1106, 792, 215, 2126, 3979, 0, 2162, 0, 0,
+    1589, 888, 3080, 0, 370, 633, 0, 1925, 697, 2439, 1248, 1495, 2064, 0,
+    2557, 2312, 962, 4295, 1003, 0, 443, 0, 0, 0, 0, 1868, 3881, 0, 627, 0,
+    0, 2475, 0, 149, 2594, 3913, 427, 987, 0, 0, 1895, 548, 0, 0, 0, 0,
+    3841, 4400, 0, 1167, 1544, 3890, 904, 1509, 0, 327, 0, 0, 0, 0, 0,
+    1927, 1072, 0, 1020, 1417, 0, 2159, 0, 0, 0, 1488, 1053, 2508, 2253,
+    1070, 3787, 0, 1152, 0, 2926, 0, 0, 760, 62, 3666, 519, 2472, 2194,
+    1075, 3738, 786, 2312, 2225, 3012, 0, 0, 1963, 2184, 0, 0, 0, 0, 4377,
+    0, 4572, 2177, 4048, 0, 273, 3854, 0, 1722, 3730, 0, 345, 2198, 491, 0,
+    3223, 1644, 0, 318, 0, 0, 3276, 888, 21, 2501, 147, 0, 362, 3764, 0,
+    1434, 2518, 0, 0, 2196, 0, 0, 2302, 0, 1924, 0, 1452, 1322, 1938, 429,
+    2339, 0, 0, 1505, 0, 1108, 1526, 0, 0, 2565, 1295, 0, 3120, 0, 1576, 0,
+    1969, 0, 3235, 1777, 0, 436, 3493, 3407, 129, 4595, 1234, 0, 0, 1506,
+    2927, 4450, 0, 0, 231, 0, 2147, 2221, 0, 0, 3140, 3899, 0, 918, 0, 322,
+    3241, 2195, 596, 3441, 0, 1030, 1415, 0, 1457, 262, 1752, 3006, 0,
+    1991, 2081, 450, 320, 4468, 90, 119, 1462, 1115, 4372, 1478, 2432, 0,
+    1711, 3502, 47, 171, 27, 0, 1910, 4095, 4045, 0, 1530, 1386, 889, 1749,
+    2521, 0, 1211, 3177, 84, 860, 0, 0, 3532, 3302, 4243, 0, 0, 0, 0, 11,
+    0, 425, 0, 0, 1810, 4403, 170, 4534, 912, 121, 73, 1694, 1715, 1085, 0,
+    1211, 0, 1499, 2300, 0, 0, 0, 1155, 1482, 2392, 0, 2460, 44, 4257,
+    2192, 4279, 351, 4530, 0, 2947, 323, 441, 483, 1916, 2100, 136, 1619,
+    0, 2554, 0, 139, 3717, 0, 0, 2871, 4598, 4345, 3350, 377, 1592, 1126,
+    0, 3052, 330, 481, 0, 4228, 1776, 870, 0, 1589, 381, 742, 0, 2092, 0,
+    0, 67, 2552, 2961, 387, 0, 1513, 85, 0, 0, 0, 0, 0, 0, 497, 2744, 971,
+    3547, 890, 1655, 965, 0, 1978, 158, 1617, 0, 0, 2083, 0, 2133, 2142, 0,
+    122, 1918, 1517, 0, 420, 3896, 249, 4537, 3582, 2197, 0, 2269, 0, 0, 0,
+    3428, 0, 712, 0, 0, 0, 1990, 118, 0, 0, 0, 2158, 632, 1421, 4020, 2618,
+    0, 2551, 0, 1139, 853, 3202, 1747, 2556, 0, 0, 0, 1076, 1601, 3316,
+    2248, 2735, 331, 983, 2943, 1849, 0, 4239, 616, 854, 2714, 0, 71, 0, 0,
+    1699, 823, 1106, 2374, 696, 1427, 758, 3450, 2227, 651, 2022, 1777,
+    1485, 0, 3073, 4168, 4468, 0, 3297, 2232, 146, 2062, 2069, 1607, 2020,
+    0, 1111, 252, 807, 499, 19, 2068, 0, 859, 0, 2456, 0, 226, 2014, 4336,
+    3076, 1354, 2190, 1141, 4335, 0, 0, 0, 626, 1445, 0, 1323, 93, 551, 0,
+    3766, 3094, 4130, 0, 802, 851, 4357, 210, 4348, 155, 2173, 3068, 0,
+    576, 1015, 0, 1207, 0, 650, 1510, 0, 393, 4434, 0, 0, 2486, 0, 0, 881,
+    545, 1619, 2522, 0, 13, 0, 1439, 1072, 4538, 141, 875, 363, 3108, 1639,
+    2093, 1683, 0, 0, 1275, 1380, 0, 0, 2250, 1671, 383, 0, 735, 2113, 246,
+    0, 2571, 0, 0, 63, 4169, 2381, 0, 0, 0, 270, 0, 0, 0, 0, 597, 0, 1445,
+    161, 3611, 517, 858, 2565, 0, 898, 3906, 0, 724, 3848, 1292, 588, 4288,
+    0, 4289, 0, 2040, 4461, 2488, 902, 0, 1553, 4434, 0, 1634, 1660, 0,
+    227, 680, 351, 134, 0, 721, 552, 0, 0, 350, 2106, 2361, 1161, 0, 3509,
+    0, 2066, 3599, 2713, 0, 0, 0, 958, 0, 3985, 2235, 0, 3484, 1526, 0,
+    3997, 3856, 3705, 0, 1114, 478, 3496, 0, 2065, 1798, 0, 438, 2183,
+    3691, 2138, 0, 4347, 2773, 1812, 634, 653, 1352, 1167, 2857, 3336, 669,
+    0, 3571, 0, 0, 0, 4331, 1078, 3414, 321, 0, 1168, 605, 0, 0, 3475, 514,
+    3183, 0, 2396, 2752, 0, 0, 707, 502, 581, 861, 1139, 220, 0, 0, 2153,
+    0, 720, 3989, 588, 0, 0, 375, 1656, 0, 3602, 2160, 3452, 3644, 3271,
+    1107, 0, 1209, 0, 0, 1491, 0, 1956, 936, 3001, 0, 673, 3628, 0, 549,
+    166, 0, 0, 1052, 1940, 80, 4319, 817, 2753, 4416, 2497, 453, 3395,
+    2372, 0, 0, 0, 0, 3332, 0, 0, 4077, 695, 0, 112, 1483, 1263, 3434,
+    2098, 2184, 2076, 2041, 1784, 0, 2750, 1463, 1172, 1700, 629, 728,
+    1930, 1906, 397, 3282, 0, 1192, 4395, 1937, 4085, 2044, 0, 634, 201, 0,
+    0, 1702, 3943, 0, 0, 252, 1346, 3797, 2283, 0, 3054, 0, 1616, 0, 0,
+    352, 1218, 0, 748, 3804, 0, 0, 1573, 3709, 189, 894, 695, 4152, 3200,
+    0, 1870, 587, 0, 617, 2304, 715, 1375, 1033, 0, 0, 1555, 296, 620, 0,
+    3252, 406, 1015, 3277, 0, 4545, 6, 1495, 0
 };
 
 static size_t
@@ -2870,16 +2892,16 @@ 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 % 32] * key[i];
-    return sum % 4573;
+    return sum % 4612;
 }
 
 static size_t
 keysym_name_perfect_hash(const char *key)
 {
     return (
-        keysym_name_G[keysym_name_hash_f(key, "xQ6s5AweQcmhYSjcMnXcbUZV5VlaPl27")] +
-        keysym_name_G[keysym_name_hash_f(key, "rCH1UKEZTzn9hlnUvX76Sw7VmrLuST7A")]
-    ) % 4573;
+        keysym_name_G[keysym_name_hash_f(key, "kGpyFyaH2vL17QkpsHYTxpmPRdRQGX1d")] +
+        keysym_name_G[keysym_name_hash_f(key, "bvkOjMVxdRlqBmcnPnEdGTGOrfAJmDxh")]
+    ) % 4612;
 }
 
 
@@ -3629,1837 +3651,1857 @@ 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 */
+    { 0x000002a1, 17075 }, /* Hstroke */
+    { 0x000002b1, 17083 }, /* hstroke */
+    { 0x000009e2, 17091 }, /* ht */
+    { 0x0000ffed, 17094 }, /* Hyper_L */
+    { 0x0000ffee, 17102 }, /* Hyper_R */
+    { 0x000000ad, 17110 }, /* hyphen */
+    { 0x00000049, 17117 }, /* I */
+    { 0x00000069, 17119 }, /* i */
+    { 0x000002a9, 17121 }, /* Iabovedot */
+    { 0x000000cd, 17131 }, /* Iacute */
+    { 0x000000ed, 17138 }, /* iacute */
+    { 0x01001eca, 17145 }, /* Ibelowdot */
+    { 0x01001ecb, 17155 }, /* ibelowdot */
+    { 0x0100012c, 17165 }, /* Ibreve */
+    { 0x0100012d, 17172 }, /* ibreve */
+    { 0x000000ce, 17179 }, /* Icircumflex */
+    { 0x000000ee, 17191 }, /* icircumflex */
+    { 0x000008cf, 17203 }, /* identical */
+    { 0x000000cf, 17213 }, /* Idiaeresis */
+    { 0x000000ef, 17224 }, /* idiaeresis */
+    { 0x000002b9, 17235 }, /* idotless */
+    { 0x000008cd, 17244 }, /* ifonlyif */
+    { 0x000000cc, 17253 }, /* Igrave */
+    { 0x000000ec, 17260 }, /* igrave */
+    { 0x01001ec8, 17267 }, /* Ihook */
+    { 0x01001ec9, 17273 }, /* ihook */
+    { 0x000003cf, 17279 }, /* Imacron */
+    { 0x000003ef, 17287 }, /* imacron */
+    { 0x000008ce, 17295 }, /* implies */
+    { 0x000008da, 17303 }, /* includedin */
+    { 0x000008db, 17314 }, /* includes */
+    { 0x000008c2, 17323 }, /* infinity */
+    { 0x0000ff63, 17332 }, /* Insert */
+    { 0x1000ff72, 17339 }, /* InsertChar */
+    { 0x1000ff70, 17350 }, /* InsertLine */
+    { 0x000008bf, 17361 }, /* integral */
+    { 0x000008dc, 17370 }, /* intersection */
+    { 0x100000ee, 17383 }, /* IO */
+    { 0x000003c7, 17386 }, /* Iogonek */
+    { 0x000003e7, 17394 }, /* iogonek */
+    { 0x0000fe33, 17402 }, /* ISO_Center_Object */
+    { 0x0000fe30, 17420 }, /* ISO_Continuous_Underline */
+    { 0x0000fe31, 17445 }, /* ISO_Discontinuous_Underline */
+    { 0x0000fe32, 17473 }, /* ISO_Emphasize */
+    { 0x0000fe34, 17487 }, /* ISO_Enter */
+    { 0x0000fe2f, 17497 }, /* ISO_Fast_Cursor_Down */
+    { 0x0000fe2c, 17518 }, /* ISO_Fast_Cursor_Left */
+    { 0x0000fe2d, 17539 }, /* ISO_Fast_Cursor_Right */
+    { 0x0000fe2e, 17561 }, /* ISO_Fast_Cursor_Up */
+    { 0x0000fe0c, 17580 }, /* ISO_First_Group */
+    { 0x0000fe0d, 17596 }, /* ISO_First_Group_Lock */
+    { 0x0000fe06, 17617 }, /* ISO_Group_Latch */
+    { 0x0000fe07, 17633 }, /* ISO_Group_Lock */
+    { 0x0000ff7e, 17648 }, /* ISO_Group_Shift */
+    { 0x0000fe0e, 17664 }, /* ISO_Last_Group */
+    { 0x0000fe0f, 17679 }, /* ISO_Last_Group_Lock */
+    { 0x0000fe20, 17699 }, /* ISO_Left_Tab */
+    { 0x0000fe02, 17712 }, /* ISO_Level2_Latch */
+    { 0x0000fe04, 17729 }, /* ISO_Level3_Latch */
+    { 0x0000fe05, 17746 }, /* ISO_Level3_Lock */
+    { 0x0000fe03, 17762 }, /* ISO_Level3_Shift */
+    { 0x0000fe12, 17779 }, /* ISO_Level5_Latch */
+    { 0x0000fe13, 17796 }, /* ISO_Level5_Lock */
+    { 0x0000fe11, 17812 }, /* ISO_Level5_Shift */
+    { 0x0000fe01, 17829 }, /* ISO_Lock */
+    { 0x0000fe22, 17838 }, /* ISO_Move_Line_Down */
+    { 0x0000fe21, 17857 }, /* ISO_Move_Line_Up */
+    { 0x0000fe08, 17874 }, /* ISO_Next_Group */
+    { 0x0000fe09, 17889 }, /* ISO_Next_Group_Lock */
+    { 0x0000fe24, 17909 }, /* ISO_Partial_Line_Down */
+    { 0x0000fe23, 17931 }, /* ISO_Partial_Line_Up */
+    { 0x0000fe25, 17951 }, /* ISO_Partial_Space_Left */
+    { 0x0000fe26, 17974 }, /* ISO_Partial_Space_Right */
+    { 0x0000fe0a, 17998 }, /* ISO_Prev_Group */
+    { 0x0000fe0b, 18013 }, /* ISO_Prev_Group_Lock */
+    { 0x0000fe2b, 18033 }, /* ISO_Release_Both_Margins */
+    { 0x0000fe29, 18058 }, /* ISO_Release_Margin_Left */
+    { 0x0000fe2a, 18082 }, /* ISO_Release_Margin_Right */
+    { 0x0000fe27, 18107 }, /* ISO_Set_Margin_Left */
+    { 0x0000fe28, 18127 }, /* ISO_Set_Margin_Right */
+    { 0x000003a5, 18148 }, /* Itilde */
+    { 0x000003b5, 18155 }, /* itilde */
+    { 0x0000004a, 18162 }, /* J */
+    { 0x0000006a, 18164 }, /* j */
+    { 0x000002ac, 18166 }, /* Jcircumflex */
+    { 0x000002bc, 18178 }, /* jcircumflex */
+    { 0x00000bca, 18190 }, /* jot */
+    { 0x0000004b, 18194 }, /* K */
+    { 0x0000006b, 18196 }, /* k */
+    { 0x000004a7, 18198 }, /* kana_a */
+    { 0x000004b1, 18205 }, /* kana_A */
+    { 0x000004c1, 18212 }, /* kana_CHI */
+    { 0x000004a3, 18221 }, /* kana_closingbracket */
+    { 0x000004a4, 18241 }, /* kana_comma */
+    { 0x000004a5, 18252 }, /* kana_conjunctive */
+    { 0x000004aa, 18269 }, /* kana_e */
+    { 0x000004b4, 18276 }, /* kana_E */
+    { 0x000004cc, 18283 }, /* kana_FU */
+    { 0x000004a1, 18291 }, /* kana_fullstop */
+    { 0x000004ca, 18305 }, /* kana_HA */
+    { 0x000004cd, 18313 }, /* kana_HE */
+    { 0x000004cb, 18321 }, /* kana_HI */
+    { 0x000004ce, 18329 }, /* kana_HO */
+    { 0x000004cc, 18337 }, /* kana_HU */
+    { 0x000004a8, 18345 }, /* kana_i */
+    { 0x000004b2, 18352 }, /* kana_I */
+    { 0x000004b6, 18359 }, /* kana_KA */
+    { 0x000004b9, 18367 }, /* kana_KE */
+    { 0x000004b7, 18375 }, /* kana_KI */
+    { 0x000004ba, 18383 }, /* kana_KO */
+    { 0x000004b8, 18391 }, /* kana_KU */
+    { 0x0000ff2d, 18399 }, /* Kana_Lock */
+    { 0x000004cf, 18409 }, /* kana_MA */
+    { 0x000004d2, 18417 }, /* kana_ME */
+    { 0x000004d0, 18425 }, /* kana_MI */
+    { 0x000004a5, 18433 }, /* kana_middledot */
+    { 0x000004d3, 18448 }, /* kana_MO */
+    { 0x000004d1, 18456 }, /* kana_MU */
+    { 0x000004dd, 18464 }, /* kana_N */
+    { 0x000004c5, 18471 }, /* kana_NA */
+    { 0x000004c8, 18479 }, /* kana_NE */
+    { 0x000004c6, 18487 }, /* kana_NI */
+    { 0x000004c9, 18495 }, /* kana_NO */
+    { 0x000004c7, 18503 }, /* kana_NU */
+    { 0x000004ab, 18511 }, /* kana_o */
+    { 0x000004b5, 18518 }, /* kana_O */
+    { 0x000004a2, 18525 }, /* kana_openingbracket */
+    { 0x000004d7, 18545 }, /* kana_RA */
+    { 0x000004da, 18553 }, /* kana_RE */
+    { 0x000004d8, 18561 }, /* kana_RI */
+    { 0x000004db, 18569 }, /* kana_RO */
+    { 0x000004d9, 18577 }, /* kana_RU */
+    { 0x000004bb, 18585 }, /* kana_SA */
+    { 0x000004be, 18593 }, /* kana_SE */
+    { 0x000004bc, 18601 }, /* kana_SHI */
+    { 0x0000ff2e, 18610 }, /* Kana_Shift */
+    { 0x000004bf, 18621 }, /* kana_SO */
+    { 0x000004bd, 18629 }, /* kana_SU */
+    { 0x0000ff7e, 18637 }, /* kana_switch */
+    { 0x000004c0, 18649 }, /* kana_TA */
+    { 0x000004c3, 18657 }, /* kana_TE */
+    { 0x000004c1, 18665 }, /* kana_TI */
+    { 0x000004c4, 18673 }, /* kana_TO */
+    { 0x000004af, 18681 }, /* kana_tsu */
+    { 0x000004c2, 18690 }, /* kana_TSU */
+    { 0x000004af, 18699 }, /* kana_tu */
+    { 0x000004c2, 18707 }, /* kana_TU */
+    { 0x000004a9, 18715 }, /* kana_u */
+    { 0x000004b3, 18722 }, /* kana_U */
+    { 0x000004dc, 18729 }, /* kana_WA */
+    { 0x000004a6, 18737 }, /* kana_WO */
+    { 0x000004ac, 18745 }, /* kana_ya */
+    { 0x000004d4, 18753 }, /* kana_YA */
+    { 0x000004ae, 18761 }, /* kana_yo */
+    { 0x000004d6, 18769 }, /* kana_YO */
+    { 0x000004ad, 18777 }, /* kana_yu */
+    { 0x000004d5, 18785 }, /* kana_YU */
+    { 0x0000ff21, 18793 }, /* Kanji */
+    { 0x0000ff37, 18799 }, /* Kanji_Bangou */
+    { 0x000003a2, 18812 }, /* kappa */
+    { 0x0000ff26, 18818 }, /* Katakana */
+    { 0x000003d3, 18827 }, /* Kcedilla */
+    { 0x000003f3, 18836 }, /* kcedilla */
+    { 0x00000eff, 18845 }, /* Korean_Won */
+    { 0x0000ffb0, 18856 }, /* KP_0 */
+    { 0x0000ffb1, 18861 }, /* KP_1 */
+    { 0x0000ffb2, 18866 }, /* KP_2 */
+    { 0x0000ffb3, 18871 }, /* KP_3 */
+    { 0x0000ffb4, 18876 }, /* KP_4 */
+    { 0x0000ffb5, 18881 }, /* KP_5 */
+    { 0x0000ffb6, 18886 }, /* KP_6 */
+    { 0x0000ffb7, 18891 }, /* KP_7 */
+    { 0x0000ffb8, 18896 }, /* KP_8 */
+    { 0x0000ffb9, 18901 }, /* KP_9 */
+    { 0x0000ffab, 18906 }, /* KP_Add */
+    { 0x1000ff75, 18913 }, /* KP_BackTab */
+    { 0x0000ff9d, 18924 }, /* KP_Begin */
+    { 0x0000ffae, 18933 }, /* KP_Decimal */
+    { 0x0000ff9f, 18944 }, /* KP_Delete */
+    { 0x0000ffaf, 18954 }, /* KP_Divide */
+    { 0x0000ff99, 18964 }, /* KP_Down */
+    { 0x0000ff9c, 18972 }, /* KP_End */
+    { 0x0000ff8d, 18979 }, /* KP_Enter */
+    { 0x0000ffbd, 18988 }, /* KP_Equal */
+    { 0x0000ff91, 18997 }, /* KP_F1 */
+    { 0x0000ff92, 19003 }, /* KP_F2 */
+    { 0x0000ff93, 19009 }, /* KP_F3 */
+    { 0x0000ff94, 19015 }, /* KP_F4 */
+    { 0x0000ff95, 19021 }, /* KP_Home */
+    { 0x0000ff9e, 19029 }, /* KP_Insert */
+    { 0x0000ff96, 19039 }, /* KP_Left */
+    { 0x0000ffaa, 19047 }, /* KP_Multiply */
+    { 0x0000ff9b, 19059 }, /* KP_Next */
+    { 0x0000ff9b, 19067 }, /* KP_Page_Down */
+    { 0x0000ff9a, 19080 }, /* KP_Page_Up */
+    { 0x0000ff9a, 19091 }, /* KP_Prior */
+    { 0x0000ff98, 19100 }, /* KP_Right */
+    { 0x0000ffac, 19109 }, /* KP_Separator */
+    { 0x0000ff80, 19122 }, /* KP_Space */
+    { 0x0000ffad, 19131 }, /* KP_Subtract */
+    { 0x0000ff89, 19143 }, /* KP_Tab */
+    { 0x0000ff97, 19150 }, /* KP_Up */
+    { 0x000003a2, 19156 }, /* kra */
+    { 0x0000004c, 19160 }, /* L */
+    { 0x0000006c, 19162 }, /* l */
+    { 0x0000ffc8, 19164 }, /* L1 */
+    { 0x0000ffd1, 19167 }, /* L10 */
+    { 0x0000ffc9, 19171 }, /* L2 */
+    { 0x0000ffca, 19174 }, /* L3 */
+    { 0x0000ffcb, 19177 }, /* L4 */
+    { 0x0000ffcc, 19180 }, /* L5 */
+    { 0x0000ffcd, 19183 }, /* L6 */
+    { 0x0000ffce, 19186 }, /* L7 */
+    { 0x0000ffcf, 19189 }, /* L8 */
+    { 0x0000ffd0, 19192 }, /* L9 */
+    { 0x000001c5, 19195 }, /* Lacute */
+    { 0x000001e5, 19202 }, /* lacute */
+    { 0x0000fed4, 19209 }, /* Last_Virtual_Screen */
+    { 0x00000ad9, 19229 }, /* latincross */
+    { 0x01001e36, 19240 }, /* Lbelowdot */
+    { 0x01001e37, 19250 }, /* lbelowdot */
+    { 0x000001a5, 19260 }, /* Lcaron */
+    { 0x000001b5, 19267 }, /* lcaron */
+    { 0x000003a6, 19274 }, /* Lcedilla */
+    { 0x000003b6, 19283 }, /* lcedilla */
+    { 0x0000ff51, 19292 }, /* Left */
+    { 0x00000abc, 19297 }, /* leftanglebracket */
+    { 0x000008fb, 19314 }, /* leftarrow */
+    { 0x00000ba3, 19324 }, /* leftcaret */
+    { 0x00000ad2, 19334 }, /* leftdoublequotemark */
+    { 0x000008af, 19354 }, /* leftmiddlecurlybrace */
+    { 0x00000acc, 19375 }, /* leftopentriangle */
+    { 0x00000aea, 19392 }, /* leftpointer */
+    { 0x000008a1, 19404 }, /* leftradical */
+    { 0x00000bda, 19416 }, /* leftshoe */
+    { 0x00000ad0, 19425 }, /* leftsinglequotemark */
+    { 0x000009f4, 19445 }, /* leftt */
+    { 0x00000bdc, 19451 }, /* lefttack */
+    { 0x0000003c, 19460 }, /* less */
+    { 0x000008bc, 19465 }, /* lessthanequal */
+    { 0x000009e5, 19479 }, /* lf */
+    { 0x0000ff0a, 19482 }, /* Linefeed */
+    { 0x100000af, 19491 }, /* lira */
+    { 0x010020a4, 19496 }, /* LiraSign */
+    { 0x000008de, 19505 }, /* logicaland */
+    { 0x000008df, 19516 }, /* logicalor */
+    { 0x100000f6, 19526 }, /* longminus */
+    { 0x000009ed, 19536 }, /* lowleftcorner */
+    { 0x000009ea, 19550 }, /* lowrightcorner */
+    { 0x000001a3, 19565 }, /* Lstroke */
+    { 0x000001b3, 19573 }, /* lstroke */
+    { 0x0000004d, 19581 }, /* M */
+    { 0x0000006d, 19583 }, /* m */
+    { 0x01001e40, 19585 }, /* Mabovedot */
+    { 0x01001e41, 19595 }, /* mabovedot */
+    { 0x000006a5, 19605 }, /* Macedonia_dse */
+    { 0x000006b5, 19619 }, /* Macedonia_DSE */
+    { 0x000006a2, 19633 }, /* Macedonia_gje */
+    { 0x000006b2, 19647 }, /* Macedonia_GJE */
+    { 0x000006ac, 19661 }, /* Macedonia_kje */
+    { 0x000006bc, 19675 }, /* Macedonia_KJE */
+    { 0x000000af, 19689 }, /* macron */
+    { 0x0000ff3e, 19696 }, /* Mae_Koho */
+    { 0x00000af7, 19705 }, /* malesymbol */
+    { 0x00000af0, 19716 }, /* maltesecross */
+    { 0x00000abf, 19729 }, /* marker */
+    { 0x000000ba, 19736 }, /* masculine */
+    { 0x0000ff2c, 19746 }, /* Massyo */
+    { 0x0000ff67, 19753 }, /* Menu */
+    { 0x0000ffe7, 19758 }, /* Meta_L */
+    { 0x0000ffe8, 19765 }, /* Meta_R */
+    { 0x010020a5, 19772 }, /* MillSign */
+    { 0x0000002d, 19781 }, /* minus */
+    { 0x00000ad6, 19787 }, /* minutes */
+    { 0x0000ff7e, 19795 }, /* Mode_switch */
+    { 0x0000fe77, 19807 }, /* MouseKeys_Accel_Enable */
+    { 0x0000fe76, 19830 }, /* MouseKeys_Enable */
+    { 0x000000b5, 19847 }, /* mu */
+    { 0x0000ff22, 19850 }, /* Muhenkan */
+    { 0x0000ff20, 19859 }, /* Multi_key */
+    { 0x0000ff3d, 19869 }, /* MultipleCandidate */
+    { 0x000000d7, 19887 }, /* multiply */
+    { 0x00000af6, 19896 }, /* musicalflat */
+    { 0x00000af5, 19908 }, /* musicalsharp */
+    { 0x100000a8, 19921 }, /* mute_acute */
+    { 0x100000aa, 19932 }, /* mute_asciicircum */
+    { 0x100000ac, 19949 }, /* mute_asciitilde */
+    { 0x100000ab, 19965 }, /* mute_diaeresis */
+    { 0x100000a9, 19980 }, /* mute_grave */
+    { 0x0000004e, 19991 }, /* N */
+    { 0x0000006e, 19993 }, /* n */
+    { 0x000008c5, 19995 }, /* nabla */
+    { 0x000001d1, 20001 }, /* Nacute */
+    { 0x000001f1, 20008 }, /* nacute */
+    { 0x010020a6, 20015 }, /* NairaSign */
+    { 0x000001d2, 20025 }, /* Ncaron */
+    { 0x000001f2, 20032 }, /* ncaron */
+    { 0x000003d1, 20039 }, /* Ncedilla */
+    { 0x000003f1, 20048 }, /* ncedilla */
+    { 0x010020aa, 20057 }, /* NewSheqelSign */
+    { 0x0000ff56, 20071 }, /* Next */
+    { 0x0000fed2, 20076 }, /* Next_Virtual_Screen */
+    { 0x01002089, 20096 }, /* ninesubscript */
+    { 0x01002079, 20110 }, /* ninesuperior */
+    { 0x000009e8, 20123 }, /* nl */
+    { 0x000000a0, 20126 }, /* nobreakspace */
+    { 0x00000000, 20139 }, /* NoSymbol */
+    { 0x01002247, 20148 }, /* notapproxeq */
+    { 0x01002209, 20160 }, /* notelementof */
+    { 0x000008bd, 20173 }, /* notequal */
+    { 0x01002262, 20182 }, /* notidentical */
+    { 0x000000ac, 20195 }, /* notsign */
+    { 0x000000d1, 20203 }, /* Ntilde */
+    { 0x000000f1, 20210 }, /* ntilde */
+    { 0x0000ff7f, 20217 }, /* Num_Lock */
+    { 0x00000023, 20226 }, /* numbersign */
+    { 0x000006b0, 20237 }, /* numerosign */
+    { 0x0000004f, 20248 }, /* O */
+    { 0x0000006f, 20250 }, /* o */
+    { 0x000000d3, 20252 }, /* Oacute */
+    { 0x000000f3, 20259 }, /* oacute */
+    { 0x0100019f, 20266 }, /* Obarred */
+    { 0x01000275, 20274 }, /* obarred */
+    { 0x01001ecc, 20282 }, /* Obelowdot */
+    { 0x01001ecd, 20292 }, /* obelowdot */
+    { 0x010001d1, 20302 }, /* Ocaron */
+    { 0x010001d2, 20309 }, /* ocaron */
+    { 0x000000d4, 20316 }, /* Ocircumflex */
+    { 0x000000f4, 20328 }, /* ocircumflex */
+    { 0x01001ed0, 20340 }, /* Ocircumflexacute */
+    { 0x01001ed1, 20357 }, /* ocircumflexacute */
+    { 0x01001ed8, 20374 }, /* Ocircumflexbelowdot */
+    { 0x01001ed9, 20394 }, /* ocircumflexbelowdot */
+    { 0x01001ed2, 20414 }, /* Ocircumflexgrave */
+    { 0x01001ed3, 20431 }, /* ocircumflexgrave */
+    { 0x01001ed4, 20448 }, /* Ocircumflexhook */
+    { 0x01001ed5, 20464 }, /* ocircumflexhook */
+    { 0x01001ed6, 20480 }, /* Ocircumflextilde */
+    { 0x01001ed7, 20497 }, /* ocircumflextilde */
+    { 0x000000d6, 20514 }, /* Odiaeresis */
+    { 0x000000f6, 20525 }, /* odiaeresis */
+    { 0x000001d5, 20536 }, /* Odoubleacute */
+    { 0x000001f5, 20549 }, /* odoubleacute */
+    { 0x000013bc, 20562 }, /* OE */
+    { 0x000013bd, 20565 }, /* oe */
+    { 0x000001b2, 20568 }, /* ogonek */
+    { 0x000000d2, 20575 }, /* Ograve */
+    { 0x000000f2, 20582 }, /* ograve */
+    { 0x01001ece, 20589 }, /* Ohook */
+    { 0x01001ecf, 20595 }, /* ohook */
+    { 0x010001a0, 20601 }, /* Ohorn */
+    { 0x010001a1, 20607 }, /* ohorn */
+    { 0x01001eda, 20613 }, /* Ohornacute */
+    { 0x01001edb, 20624 }, /* ohornacute */
+    { 0x01001ee2, 20635 }, /* Ohornbelowdot */
+    { 0x01001ee3, 20649 }, /* ohornbelowdot */
+    { 0x01001edc, 20663 }, /* Ohorngrave */
+    { 0x01001edd, 20674 }, /* ohorngrave */
+    { 0x01001ede, 20685 }, /* Ohornhook */
+    { 0x01001edf, 20695 }, /* ohornhook */
+    { 0x01001ee0, 20705 }, /* Ohorntilde */
+    { 0x01001ee1, 20716 }, /* ohorntilde */
+    { 0x000003d2, 20727 }, /* Omacron */
+    { 0x000003f2, 20735 }, /* omacron */
+    { 0x00000ac3, 20743 }, /* oneeighth */
+    { 0x00000ab2, 20753 }, /* onefifth */
+    { 0x000000bd, 20762 }, /* onehalf */
+    { 0x000000bc, 20770 }, /* onequarter */
+    { 0x00000ab6, 20781 }, /* onesixth */
+    { 0x01002081, 20790 }, /* onesubscript */
+    { 0x000000b9, 20803 }, /* onesuperior */
+    { 0x00000ab0, 20815 }, /* onethird */
+    { 0x000000d8, 20824 }, /* Ooblique */
+    { 0x000000f8, 20833 }, /* ooblique */
+    { 0x00000ae2, 20842 }, /* openrectbullet */
+    { 0x00000ae5, 20857 }, /* openstar */
+    { 0x00000ae4, 20866 }, /* opentribulletdown */
+    { 0x00000ae3, 20884 }, /* opentribulletup */
+    { 0x000000aa, 20900 }, /* ordfeminine */
+    { 0x000000ba, 20912 }, /* ordmasculine */
+    { 0x1004ff44, 20925 }, /* osfActivate */
+    { 0x1004ff31, 20937 }, /* osfAddMode */
+    { 0x1004ff08, 20948 }, /* osfBackSpace */
+    { 0x1004ff07, 20961 }, /* osfBackTab */
+    { 0x1004ff5a, 20972 }, /* osfBeginData */
+    { 0x1004ff58, 20985 }, /* osfBeginLine */
+    { 0x1004ff69, 20998 }, /* osfCancel */
+    { 0x1004ff0b, 21008 }, /* osfClear */
+    { 0x1004ff02, 21017 }, /* osfCopy */
+    { 0x1004ff03, 21025 }, /* osfCut */
+    { 0x1004ffff, 21032 }, /* osfDelete */
+    { 0x1004ff72, 21042 }, /* osfDeselectAll */
+    { 0x1004ff54, 21057 }, /* osfDown */
+    { 0x1004ff59, 21065 }, /* osfEndData */
+    { 0x1004ff57, 21076 }, /* osfEndLine */
+    { 0x1004ff1b, 21087 }, /* osfEscape */
+    { 0x1004ff74, 21097 }, /* osfExtend */
+    { 0x1004ff6a, 21107 }, /* osfHelp */
+    { 0x1004ff63, 21115 }, /* osfInsert */
+    { 0x1004ff51, 21125 }, /* osfLeft */
+    { 0x1004ff67, 21133 }, /* osfMenu */
+    { 0x1004ff45, 21141 }, /* osfMenuBar */
+    { 0x1004ff5e, 21152 }, /* osfNextField */
+    { 0x1004ff5c, 21165 }, /* osfNextMenu */
+    { 0x1004ff42, 21177 }, /* osfPageDown */
+    { 0x1004ff40, 21189 }, /* osfPageLeft */
+    { 0x1004ff43, 21201 }, /* osfPageRight */
+    { 0x1004ff41, 21214 }, /* osfPageUp */
+    { 0x1004ff04, 21224 }, /* osfPaste */
+    { 0x1004ff5d, 21233 }, /* osfPrevField */
+    { 0x1004ff5b, 21246 }, /* osfPrevMenu */
+    { 0x1004ff32, 21258 }, /* osfPrimaryPaste */
+    { 0x1004ff33, 21274 }, /* osfQuickPaste */
+    { 0x1004ff73, 21288 }, /* osfReselect */
+    { 0x1004ff78, 21300 }, /* osfRestore */
+    { 0x1004ff53, 21311 }, /* osfRight */
+    { 0x1004ff60, 21320 }, /* osfSelect */
+    { 0x1004ff71, 21330 }, /* osfSelectAll */
+    { 0x1004ff65, 21343 }, /* osfUndo */
+    { 0x1004ff52, 21351 }, /* osfUp */
+    { 0x000000d8, 21357 }, /* Oslash */
+    { 0x000000f8, 21364 }, /* oslash */
+    { 0x000000d5, 21371 }, /* Otilde */
+    { 0x000000f5, 21378 }, /* otilde */
+    { 0x00000bc0, 21385 }, /* overbar */
+    { 0x0000fe78, 21393 }, /* Overlay1_Enable */
+    { 0x0000fe79, 21409 }, /* Overlay2_Enable */
+    { 0x0000047e, 21425 }, /* overline */
+    { 0x00000050, 21434 }, /* P */
+    { 0x00000070, 21436 }, /* p */
+    { 0x01001e56, 21438 }, /* Pabovedot */
+    { 0x01001e57, 21448 }, /* pabovedot */
+    { 0x0000ff56, 21458 }, /* Page_Down */
+    { 0x0000ff55, 21468 }, /* Page_Up */
+    { 0x000000b6, 21476 }, /* paragraph */
+    { 0x00000028, 21486 }, /* parenleft */
+    { 0x00000029, 21496 }, /* parenright */
+    { 0x01002202, 21507 }, /* partdifferential */
+    { 0x000008ef, 21524 }, /* partialderivative */
+    { 0x0000ff13, 21542 }, /* Pause */
+    { 0x00000025, 21548 }, /* percent */
+    { 0x0000002e, 21556 }, /* period */
+    { 0x000000b7, 21563 }, /* periodcentered */
+    { 0x00000ad5, 21578 }, /* permille */
+    { 0x010020a7, 21587 }, /* PesetaSign */
+    { 0x00000afb, 21598 }, /* phonographcopyright */
+    { 0x0000002b, 21618 }, /* plus */
+    { 0x000000b1, 21623 }, /* plusminus */
+    { 0x0000fefa, 21633 }, /* Pointer_Accelerate */
+    { 0x0000fee9, 21652 }, /* Pointer_Button1 */
+    { 0x0000feea, 21668 }, /* Pointer_Button2 */
+    { 0x0000feeb, 21684 }, /* Pointer_Button3 */
+    { 0x0000feec, 21700 }, /* Pointer_Button4 */
+    { 0x0000feed, 21716 }, /* Pointer_Button5 */
+    { 0x0000fee8, 21732 }, /* Pointer_Button_Dflt */
+    { 0x0000feef, 21752 }, /* Pointer_DblClick1 */
+    { 0x0000fef0, 21770 }, /* Pointer_DblClick2 */
+    { 0x0000fef1, 21788 }, /* Pointer_DblClick3 */
+    { 0x0000fef2, 21806 }, /* Pointer_DblClick4 */
+    { 0x0000fef3, 21824 }, /* Pointer_DblClick5 */
+    { 0x0000feee, 21842 }, /* Pointer_DblClick_Dflt */
+    { 0x0000fefb, 21864 }, /* Pointer_DfltBtnNext */
+    { 0x0000fefc, 21884 }, /* Pointer_DfltBtnPrev */
+    { 0x0000fee3, 21904 }, /* Pointer_Down */
+    { 0x0000fee6, 21917 }, /* Pointer_DownLeft */
+    { 0x0000fee7, 21934 }, /* Pointer_DownRight */
+    { 0x0000fef5, 21952 }, /* Pointer_Drag1 */
+    { 0x0000fef6, 21966 }, /* Pointer_Drag2 */
+    { 0x0000fef7, 21980 }, /* Pointer_Drag3 */
+    { 0x0000fef8, 21994 }, /* Pointer_Drag4 */
+    { 0x0000fefd, 22008 }, /* Pointer_Drag5 */
+    { 0x0000fef4, 22022 }, /* Pointer_Drag_Dflt */
+    { 0x0000fef9, 22040 }, /* Pointer_EnableKeys */
+    { 0x0000fee0, 22059 }, /* Pointer_Left */
+    { 0x0000fee1, 22072 }, /* Pointer_Right */
+    { 0x0000fee2, 22086 }, /* Pointer_Up */
+    { 0x0000fee4, 22097 }, /* Pointer_UpLeft */
+    { 0x0000fee5, 22112 }, /* Pointer_UpRight */
+    { 0x00000ad4, 22128 }, /* prescription */
+    { 0x0000fed1, 22141 }, /* Prev_Virtual_Screen */
+    { 0x0000ff3e, 22161 }, /* PreviousCandidate */
+    { 0x0000ff61, 22179 }, /* Print */
+    { 0x0000ff55, 22185 }, /* Prior */
+    { 0x000004b0, 22191 }, /* prolongedsound */
+    { 0x00000aa6, 22206 }, /* punctspace */
+    { 0x00000051, 22217 }, /* Q */
+    { 0x00000071, 22219 }, /* q */
+    { 0x00000bcc, 22221 }, /* quad */
+    { 0x0000003f, 22226 }, /* question */
+    { 0x000000bf, 22235 }, /* questiondown */
+    { 0x00000022, 22248 }, /* quotedbl */
+    { 0x00000060, 22257 }, /* quoteleft */
+    { 0x00000027, 22267 }, /* quoteright */
+    { 0x00000052, 22278 }, /* R */
+    { 0x00000072, 22280 }, /* r */
+    { 0x0000ffd2, 22282 }, /* R1 */
+    { 0x0000ffdb, 22285 }, /* R10 */
+    { 0x0000ffdc, 22289 }, /* R11 */
+    { 0x0000ffdd, 22293 }, /* R12 */
+    { 0x0000ffde, 22297 }, /* R13 */
+    { 0x0000ffdf, 22301 }, /* R14 */
+    { 0x0000ffe0, 22305 }, /* R15 */
+    { 0x0000ffd3, 22309 }, /* R2 */
+    { 0x0000ffd4, 22312 }, /* R3 */
+    { 0x0000ffd5, 22315 }, /* R4 */
+    { 0x0000ffd6, 22318 }, /* R5 */
+    { 0x0000ffd7, 22321 }, /* R6 */
+    { 0x0000ffd8, 22324 }, /* R7 */
+    { 0x0000ffd9, 22327 }, /* R8 */
+    { 0x0000ffda, 22330 }, /* R9 */
+    { 0x000001c0, 22333 }, /* Racute */
+    { 0x000001e0, 22340 }, /* racute */
+    { 0x000008d6, 22347 }, /* radical */
+    { 0x000001d8, 22355 }, /* Rcaron */
+    { 0x000001f8, 22362 }, /* rcaron */
+    { 0x000003a3, 22369 }, /* Rcedilla */
+    { 0x000003b3, 22378 }, /* rcedilla */
+    { 0x0000ff66, 22387 }, /* Redo */
+    { 0x000000ae, 22392 }, /* registered */
+    { 0x0000fe72, 22403 }, /* RepeatKeys_Enable */
+    { 0x1000ff6c, 22421 }, /* Reset */
+    { 0x0000ff0d, 22427 }, /* Return */
+    { 0x0000ff53, 22434 }, /* Right */
+    { 0x00000abe, 22440 }, /* rightanglebracket */
+    { 0x000008fd, 22458 }, /* rightarrow */
+    { 0x00000ba6, 22469 }, /* rightcaret */
+    { 0x00000ad3, 22480 }, /* rightdoublequotemark */
+    { 0x000008b0, 22501 }, /* rightmiddlecurlybrace */
+    { 0x000008b7, 22523 }, /* rightmiddlesummation */
+    { 0x00000acd, 22544 }, /* rightopentriangle */
+    { 0x00000aeb, 22562 }, /* rightpointer */
+    { 0x00000bd8, 22575 }, /* rightshoe */
+    { 0x00000ad1, 22585 }, /* rightsinglequotemark */
+    { 0x000009f5, 22606 }, /* rightt */
+    { 0x00000bfc, 22613 }, /* righttack */
+    { 0x0000ff24, 22623 }, /* Romaji */
+    { 0x010020a8, 22630 }, /* RupeeSign */
+    { 0x00000053, 22640 }, /* S */
+    { 0x00000073, 22642 }, /* s */
+    { 0x01001e60, 22644 }, /* Sabovedot */
+    { 0x01001e61, 22654 }, /* sabovedot */
+    { 0x000001a6, 22664 }, /* Sacute */
+    { 0x000001b6, 22671 }, /* sacute */
+    { 0x000001a9, 22678 }, /* Scaron */
+    { 0x000001b9, 22685 }, /* scaron */
+    { 0x000001aa, 22692 }, /* Scedilla */
+    { 0x000001ba, 22701 }, /* scedilla */
+    { 0x0100018f, 22710 }, /* SCHWA */
+    { 0x01000259, 22716 }, /* schwa */
+    { 0x000002de, 22722 }, /* Scircumflex */
+    { 0x000002fe, 22734 }, /* scircumflex */
+    { 0x0000ff7e, 22746 }, /* script_switch */
+    { 0x0000ff14, 22760 }, /* Scroll_Lock */
+    { 0x00000ad7, 22772 }, /* seconds */
+    { 0x000000a7, 22780 }, /* section */
+    { 0x0000ff60, 22788 }, /* Select */
+    { 0x0000003b, 22795 }, /* semicolon */
+    { 0x000004df, 22805 }, /* semivoicedsound */
+    { 0x000006a1, 22821 }, /* Serbian_dje */
+    { 0x000006b1, 22833 }, /* Serbian_DJE */
+    { 0x000006af, 22845 }, /* Serbian_dze */
+    { 0x000006bf, 22857 }, /* Serbian_DZE */
+    { 0x000006a8, 22869 }, /* Serbian_je */
+    { 0x000006b8, 22880 }, /* Serbian_JE */
+    { 0x000006a9, 22891 }, /* Serbian_lje */
+    { 0x000006b9, 22903 }, /* Serbian_LJE */
+    { 0x000006aa, 22915 }, /* Serbian_nje */
+    { 0x000006ba, 22927 }, /* Serbian_NJE */
+    { 0x000006ab, 22939 }, /* Serbian_tshe */
+    { 0x000006bb, 22952 }, /* Serbian_TSHE */
+    { 0x00000ac6, 22965 }, /* seveneighths */
+    { 0x01002087, 22978 }, /* sevensubscript */
+    { 0x01002077, 22993 }, /* sevensuperior */
+    { 0x0000ffe1, 23007 }, /* Shift_L */
+    { 0x0000ffe6, 23015 }, /* Shift_Lock */
+    { 0x0000ffe2, 23026 }, /* Shift_R */
+    { 0x00000aca, 23034 }, /* signaturemark */
+    { 0x00000aac, 23048 }, /* signifblank */
+    { 0x000008c9, 23060 }, /* similarequal */
+    { 0x0000ff3c, 23073 }, /* SingleCandidate */
+    { 0x00000afd, 23089 }, /* singlelowquotemark */
+    { 0x01000d85, 23108 }, /* Sinh_a */
+    { 0x01000d86, 23115 }, /* Sinh_aa */
+    { 0x01000dcf, 23123 }, /* Sinh_aa2 */
+    { 0x01000d87, 23132 }, /* Sinh_ae */
+    { 0x01000dd0, 23140 }, /* Sinh_ae2 */
+    { 0x01000d88, 23149 }, /* Sinh_aee */
+    { 0x01000dd1, 23158 }, /* Sinh_aee2 */
+    { 0x01000d93, 23168 }, /* Sinh_ai */
+    { 0x01000ddb, 23176 }, /* Sinh_ai2 */
+    { 0x01000dca, 23185 }, /* Sinh_al */
+    { 0x01000d96, 23193 }, /* Sinh_au */
+    { 0x01000dde, 23201 }, /* Sinh_au2 */
+    { 0x01000db6, 23210 }, /* Sinh_ba */
+    { 0x01000db7, 23218 }, /* Sinh_bha */
+    { 0x01000da0, 23227 }, /* Sinh_ca */
+    { 0x01000da1, 23235 }, /* Sinh_cha */
+    { 0x01000da9, 23244 }, /* Sinh_dda */
+    { 0x01000daa, 23253 }, /* Sinh_ddha */
+    { 0x01000daf, 23263 }, /* Sinh_dha */
+    { 0x01000db0, 23272 }, /* Sinh_dhha */
+    { 0x01000d91, 23282 }, /* Sinh_e */
+    { 0x01000dd9, 23289 }, /* Sinh_e2 */
+    { 0x01000d92, 23297 }, /* Sinh_ee */
+    { 0x01000dda, 23305 }, /* Sinh_ee2 */
+    { 0x01000dc6, 23314 }, /* Sinh_fa */
+    { 0x01000d9c, 23322 }, /* Sinh_ga */
+    { 0x01000d9d, 23330 }, /* Sinh_gha */
+    { 0x01000d83, 23339 }, /* Sinh_h2 */
+    { 0x01000dc4, 23347 }, /* Sinh_ha */
+    { 0x01000d89, 23355 }, /* Sinh_i */
+    { 0x01000dd2, 23362 }, /* Sinh_i2 */
+    { 0x01000d8a, 23370 }, /* Sinh_ii */
+    { 0x01000dd3, 23378 }, /* Sinh_ii2 */
+    { 0x01000da2, 23387 }, /* Sinh_ja */
+    { 0x01000da3, 23395 }, /* Sinh_jha */
+    { 0x01000da5, 23404 }, /* Sinh_jnya */
+    { 0x01000d9a, 23414 }, /* Sinh_ka */
+    { 0x01000d9b, 23422 }, /* Sinh_kha */
+    { 0x01000df4, 23431 }, /* Sinh_kunddaliya */
+    { 0x01000dbd, 23447 }, /* Sinh_la */
+    { 0x01000dc5, 23455 }, /* Sinh_lla */
+    { 0x01000d8f, 23464 }, /* Sinh_lu */
+    { 0x01000ddf, 23472 }, /* Sinh_lu2 */
+    { 0x01000d90, 23481 }, /* Sinh_luu */
+    { 0x01000df3, 23490 }, /* Sinh_luu2 */
+    { 0x01000db8, 23500 }, /* Sinh_ma */
+    { 0x01000db9, 23508 }, /* Sinh_mba */
+    { 0x01000db1, 23517 }, /* Sinh_na */
+    { 0x01000dac, 23525 }, /* Sinh_ndda */
+    { 0x01000db3, 23535 }, /* Sinh_ndha */
+    { 0x01000d82, 23545 }, /* Sinh_ng */
+    { 0x01000d9e, 23553 }, /* Sinh_ng2 */
+    { 0x01000d9f, 23562 }, /* Sinh_nga */
+    { 0x01000da6, 23571 }, /* Sinh_nja */
+    { 0x01000dab, 23580 }, /* Sinh_nna */
+    { 0x01000da4, 23589 }, /* Sinh_nya */
+    { 0x01000d94, 23598 }, /* Sinh_o */
+    { 0x01000ddc, 23605 }, /* Sinh_o2 */
+    { 0x01000d95, 23613 }, /* Sinh_oo */
+    { 0x01000ddd, 23621 }, /* Sinh_oo2 */
+    { 0x01000db4, 23630 }, /* Sinh_pa */
+    { 0x01000db5, 23638 }, /* Sinh_pha */
+    { 0x01000dbb, 23647 }, /* Sinh_ra */
+    { 0x01000d8d, 23655 }, /* Sinh_ri */
+    { 0x01000d8e, 23663 }, /* Sinh_rii */
+    { 0x01000dd8, 23672 }, /* Sinh_ru2 */
+    { 0x01000df2, 23681 }, /* Sinh_ruu2 */
+    { 0x01000dc3, 23691 }, /* Sinh_sa */
+    { 0x01000dc1, 23699 }, /* Sinh_sha */
+    { 0x01000dc2, 23708 }, /* Sinh_ssha */
+    { 0x01000dad, 23718 }, /* Sinh_tha */
+    { 0x01000dae, 23727 }, /* Sinh_thha */
+    { 0x01000da7, 23737 }, /* Sinh_tta */
+    { 0x01000da8, 23746 }, /* Sinh_ttha */
+    { 0x01000d8b, 23756 }, /* Sinh_u */
+    { 0x01000dd4, 23763 }, /* Sinh_u2 */
+    { 0x01000d8c, 23771 }, /* Sinh_uu */
+    { 0x01000dd6, 23779 }, /* Sinh_uu2 */
+    { 0x01000dc0, 23788 }, /* Sinh_va */
+    { 0x01000dba, 23796 }, /* Sinh_ya */
+    { 0x01002086, 23804 }, /* sixsubscript */
+    { 0x01002076, 23817 }, /* sixsuperior */
+    { 0x0000002f, 23829 }, /* slash */
+    { 0x0000fe73, 23835 }, /* SlowKeys_Enable */
+    { 0x000009e0, 23851 }, /* soliddiamond */
+    { 0x00000020, 23864 }, /* space */
+    { 0x0100221a, 23870 }, /* squareroot */
+    { 0x000000df, 23881 }, /* ssharp */
+    { 0x000000a3, 23888 }, /* sterling */
+    { 0x0000fe75, 23897 }, /* StickyKeys_Enable */
+    { 0x01002263, 23915 }, /* stricteq */
+    { 0x0000ff66, 23924 }, /* SunAgain */
+    { 0x0000ff7e, 23933 }, /* SunAltGraph */
+    { 0x1005ff77, 23945 }, /* SunAudioLowerVolume */
+    { 0x1005ff78, 23965 }, /* SunAudioMute */
+    { 0x1005ff79, 23978 }, /* SunAudioRaiseVolume */
+    { 0x0000ff20, 23998 }, /* SunCompose */
+    { 0x1005ff72, 24009 }, /* SunCopy */
+    { 0x1005ff75, 24017 }, /* SunCut */
+    { 0x1005ff10, 24024 }, /* SunF36 */
+    { 0x1005ff11, 24031 }, /* SunF37 */
+    { 0x1005ff03, 24038 }, /* SunFA_Acute */
+    { 0x1005ff05, 24050 }, /* SunFA_Cedilla */
+    { 0x1005ff01, 24064 }, /* SunFA_Circum */
+    { 0x1005ff04, 24077 }, /* SunFA_Diaeresis */
+    { 0x1005ff00, 24093 }, /* SunFA_Grave */
+    { 0x1005ff02, 24105 }, /* SunFA_Tilde */
+    { 0x0000ff68, 24117 }, /* SunFind */
+    { 0x1005ff71, 24125 }, /* SunFront */
+    { 0x1005ff73, 24134 }, /* SunOpen */
+    { 0x0000ff56, 24142 }, /* SunPageDown */
+    { 0x0000ff55, 24154 }, /* SunPageUp */
+    { 0x1005ff74, 24164 }, /* SunPaste */
+    { 0x1005ff76, 24173 }, /* SunPowerSwitch */
+    { 0x1005ff7d, 24188 }, /* SunPowerSwitchShift */
+    { 0x0000ff61, 24208 }, /* SunPrint_Screen */
+    { 0x1005ff70, 24224 }, /* SunProps */
+    { 0x0000ff69, 24233 }, /* SunStop */
+    { 0x1005ff60, 24241 }, /* SunSys_Req */
+    { 0x0000ff65, 24252 }, /* SunUndo */
+    { 0x1005ff7a, 24260 }, /* SunVideoDegauss */
+    { 0x1005ff7b, 24276 }, /* SunVideoLowerBrightness */
+    { 0x1005ff7c, 24300 }, /* SunVideoRaiseBrightness */
+    { 0x0000ffeb, 24324 }, /* Super_L */
+    { 0x0000ffec, 24332 }, /* Super_R */
+    { 0x0000ff15, 24340 }, /* Sys_Req */
+    { 0x1000ff6d, 24348 }, /* System */
+    { 0x00000054, 24355 }, /* T */
+    { 0x00000074, 24357 }, /* t */
+    { 0x0000ff09, 24359 }, /* Tab */
+    { 0x01001e6a, 24363 }, /* Tabovedot */
+    { 0x01001e6b, 24373 }, /* tabovedot */
+    { 0x000001ab, 24383 }, /* Tcaron */
+    { 0x000001bb, 24390 }, /* tcaron */
+    { 0x000001de, 24397 }, /* Tcedilla */
+    { 0x000001fe, 24406 }, /* tcedilla */
+    { 0x00000af9, 24415 }, /* telephone */
+    { 0x00000afa, 24425 }, /* telephonerecorder */
+    { 0x0000fed5, 24443 }, /* Terminate_Server */
+    { 0x00000ddf, 24460 }, /* Thai_baht */
+    { 0x00000dba, 24470 }, /* Thai_bobaimai */
+    { 0x00000da8, 24484 }, /* Thai_chochan */
+    { 0x00000daa, 24497 }, /* Thai_chochang */
+    { 0x00000da9, 24511 }, /* Thai_choching */
+    { 0x00000dac, 24525 }, /* Thai_chochoe */
+    { 0x00000dae, 24538 }, /* Thai_dochada */
+    { 0x00000db4, 24551 }, /* Thai_dodek */
+    { 0x00000dbd, 24562 }, /* Thai_fofa */
+    { 0x00000dbf, 24572 }, /* Thai_fofan */
+    { 0x00000dcb, 24583 }, /* Thai_hohip */
+    { 0x00000dce, 24594 }, /* Thai_honokhuk */
+    { 0x00000da2, 24608 }, /* Thai_khokhai */
+    { 0x00000da5, 24621 }, /* Thai_khokhon */
+    { 0x00000da3, 24634 }, /* Thai_khokhuat */
+    { 0x00000da4, 24648 }, /* Thai_khokhwai */
+    { 0x00000da6, 24662 }, /* Thai_khorakhang */
+    { 0x00000da1, 24678 }, /* Thai_kokai */
+    { 0x00000de5, 24689 }, /* Thai_lakkhangyao */
+    { 0x00000df7, 24706 }, /* Thai_lekchet */
+    { 0x00000df5, 24719 }, /* Thai_lekha */
+    { 0x00000df6, 24730 }, /* Thai_lekhok */
+    { 0x00000df9, 24742 }, /* Thai_lekkao */
+    { 0x00000df1, 24754 }, /* Thai_leknung */
+    { 0x00000df8, 24767 }, /* Thai_lekpaet */
+    { 0x00000df3, 24780 }, /* Thai_leksam */
+    { 0x00000df4, 24792 }, /* Thai_leksi */
+    { 0x00000df2, 24803 }, /* Thai_leksong */
+    { 0x00000df0, 24816 }, /* Thai_leksun */
+    { 0x00000dcc, 24828 }, /* Thai_lochula */
+    { 0x00000dc5, 24841 }, /* Thai_loling */
+    { 0x00000dc6, 24853 }, /* Thai_lu */
+    { 0x00000deb, 24861 }, /* Thai_maichattawa */
+    { 0x00000de8, 24878 }, /* Thai_maiek */
+    { 0x00000dd1, 24889 }, /* Thai_maihanakat */
+    { 0x00000dde, 24905 }, /* Thai_maihanakat_maitho */
+    { 0x00000de7, 24928 }, /* Thai_maitaikhu */
+    { 0x00000de9, 24943 }, /* Thai_maitho */
+    { 0x00000dea, 24955 }, /* Thai_maitri */
+    { 0x00000de6, 24967 }, /* Thai_maiyamok */
+    { 0x00000dc1, 24981 }, /* Thai_moma */
+    { 0x00000da7, 24991 }, /* Thai_ngongu */
+    { 0x00000ded, 25003 }, /* Thai_nikhahit */
+    { 0x00000db3, 25017 }, /* Thai_nonen */
+    { 0x00000db9, 25028 }, /* Thai_nonu */
+    { 0x00000dcd, 25038 }, /* Thai_oang */
+    { 0x00000dcf, 25048 }, /* Thai_paiyannoi */
+    { 0x00000dda, 25063 }, /* Thai_phinthu */
+    { 0x00000dbe, 25076 }, /* Thai_phophan */
+    { 0x00000dbc, 25089 }, /* Thai_phophung */
+    { 0x00000dc0, 25103 }, /* Thai_phosamphao */
+    { 0x00000dbb, 25119 }, /* Thai_popla */
+    { 0x00000dc3, 25130 }, /* Thai_rorua */
+    { 0x00000dc4, 25141 }, /* Thai_ru */
+    { 0x00000dd0, 25149 }, /* Thai_saraa */
+    { 0x00000dd2, 25160 }, /* Thai_saraaa */
+    { 0x00000de1, 25172 }, /* Thai_saraae */
+    { 0x00000de4, 25184 }, /* Thai_saraaimaimalai */
+    { 0x00000de3, 25204 }, /* Thai_saraaimaimuan */
+    { 0x00000dd3, 25223 }, /* Thai_saraam */
+    { 0x00000de0, 25235 }, /* Thai_sarae */
+    { 0x00000dd4, 25246 }, /* Thai_sarai */
+    { 0x00000dd5, 25257 }, /* Thai_saraii */
+    { 0x00000de2, 25269 }, /* Thai_sarao */
+    { 0x00000dd8, 25280 }, /* Thai_sarau */
+    { 0x00000dd6, 25291 }, /* Thai_saraue */
+    { 0x00000dd7, 25303 }, /* Thai_sarauee */
+    { 0x00000dd9, 25316 }, /* Thai_sarauu */
+    { 0x00000dc9, 25328 }, /* Thai_sorusi */
+    { 0x00000dc8, 25340 }, /* Thai_sosala */
+    { 0x00000dab, 25352 }, /* Thai_soso */
+    { 0x00000dca, 25362 }, /* Thai_sosua */
+    { 0x00000dec, 25373 }, /* Thai_thanthakhat */
+    { 0x00000db1, 25390 }, /* Thai_thonangmontho */
+    { 0x00000db2, 25409 }, /* Thai_thophuthao */
+    { 0x00000db7, 25425 }, /* Thai_thothahan */
+    { 0x00000db0, 25440 }, /* Thai_thothan */
+    { 0x00000db8, 25453 }, /* Thai_thothong */
+    { 0x00000db6, 25467 }, /* Thai_thothung */
+    { 0x00000daf, 25481 }, /* Thai_topatak */
+    { 0x00000db5, 25494 }, /* Thai_totao */
+    { 0x00000dc7, 25505 }, /* Thai_wowaen */
+    { 0x00000dc2, 25517 }, /* Thai_yoyak */
+    { 0x00000dad, 25528 }, /* Thai_yoying */
+    { 0x000008c0, 25540 }, /* therefore */
+    { 0x00000aa7, 25550 }, /* thinspace */
+    { 0x000000de, 25560 }, /* THORN */
+    { 0x000000de, 25566 }, /* Thorn */
+    { 0x000000fe, 25572 }, /* thorn */
+    { 0x00000ac4, 25578 }, /* threeeighths */
+    { 0x00000ab4, 25591 }, /* threefifths */
+    { 0x000000be, 25603 }, /* threequarters */
+    { 0x01002083, 25617 }, /* threesubscript */
+    { 0x000000b3, 25632 }, /* threesuperior */
+    { 0x0100222d, 25646 }, /* tintegral */
+    { 0x000008a4, 25656 }, /* topintegral */
+    { 0x000008ab, 25668 }, /* topleftparens */
+    { 0x000008a2, 25682 }, /* topleftradical */
+    { 0x000008a7, 25697 }, /* topleftsqbracket */
+    { 0x000008b1, 25714 }, /* topleftsummation */
+    { 0x000008ad, 25731 }, /* toprightparens */
+    { 0x000008a9, 25746 }, /* toprightsqbracket */
+    { 0x000008b5, 25764 }, /* toprightsummation */
+    { 0x000009f7, 25782 }, /* topt */
+    { 0x000008b3, 25787 }, /* topvertsummationconnector */
+    { 0x0000ff2b, 25813 }, /* Touroku */
+    { 0x00000ac9, 25821 }, /* trademark */
+    { 0x00000acb, 25831 }, /* trademarkincircle */
+    { 0x000003ac, 25849 }, /* Tslash */
+    { 0x000003bc, 25856 }, /* tslash */
+    { 0x00000ab3, 25863 }, /* twofifths */
+    { 0x01002082, 25873 }, /* twosubscript */
+    { 0x000000b2, 25886 }, /* twosuperior */
+    { 0x00000ab1, 25898 }, /* twothirds */
+    { 0x00000055, 25908 }, /* U */
+    { 0x00000075, 25910 }, /* u */
+    { 0x000000da, 25912 }, /* Uacute */
+    { 0x000000fa, 25919 }, /* uacute */
+    { 0x01001ee4, 25926 }, /* Ubelowdot */
+    { 0x01001ee5, 25936 }, /* ubelowdot */
+    { 0x000002dd, 25946 }, /* Ubreve */
+    { 0x000002fd, 25953 }, /* ubreve */
+    { 0x000000db, 25960 }, /* Ucircumflex */
+    { 0x000000fb, 25972 }, /* ucircumflex */
+    { 0x000000dc, 25984 }, /* Udiaeresis */
+    { 0x000000fc, 25995 }, /* udiaeresis */
+    { 0x000001db, 26006 }, /* Udoubleacute */
+    { 0x000001fb, 26019 }, /* udoubleacute */
+    { 0x000000d9, 26032 }, /* Ugrave */
+    { 0x000000f9, 26039 }, /* ugrave */
+    { 0x01001ee6, 26046 }, /* Uhook */
+    { 0x01001ee7, 26052 }, /* uhook */
+    { 0x010001af, 26058 }, /* Uhorn */
+    { 0x010001b0, 26064 }, /* uhorn */
+    { 0x01001ee8, 26070 }, /* Uhornacute */
+    { 0x01001ee9, 26081 }, /* uhornacute */
+    { 0x01001ef0, 26092 }, /* Uhornbelowdot */
+    { 0x01001ef1, 26106 }, /* uhornbelowdot */
+    { 0x01001eea, 26120 }, /* Uhorngrave */
+    { 0x01001eeb, 26131 }, /* uhorngrave */
+    { 0x01001eec, 26142 }, /* Uhornhook */
+    { 0x01001eed, 26152 }, /* uhornhook */
+    { 0x01001eee, 26162 }, /* Uhorntilde */
+    { 0x01001eef, 26173 }, /* uhorntilde */
+    { 0x000006ad, 26184 }, /* Ukrainian_ghe_with_upturn */
+    { 0x000006bd, 26210 }, /* Ukrainian_GHE_WITH_UPTURN */
+    { 0x000006a6, 26236 }, /* Ukrainian_i */
+    { 0x000006b6, 26248 }, /* Ukrainian_I */
+    { 0x000006a4, 26260 }, /* Ukrainian_ie */
+    { 0x000006b4, 26273 }, /* Ukrainian_IE */
+    { 0x000006a7, 26286 }, /* Ukrainian_yi */
+    { 0x000006b7, 26299 }, /* Ukrainian_YI */
+    { 0x000006a6, 26312 }, /* Ukranian_i */
+    { 0x000006b6, 26323 }, /* Ukranian_I */
+    { 0x000006a4, 26334 }, /* Ukranian_je */
+    { 0x000006b4, 26346 }, /* Ukranian_JE */
+    { 0x000006a7, 26358 }, /* Ukranian_yi */
+    { 0x000006b7, 26370 }, /* Ukranian_YI */
+    { 0x000003de, 26382 }, /* Umacron */
+    { 0x000003fe, 26390 }, /* umacron */
+    { 0x00000bc6, 26398 }, /* underbar */
+    { 0x0000005f, 26407 }, /* underscore */
+    { 0x0000ff65, 26418 }, /* Undo */
+    { 0x000008dd, 26423 }, /* union */
+    { 0x000003d9, 26429 }, /* Uogonek */
+    { 0x000003f9, 26437 }, /* uogonek */
+    { 0x0000ff52, 26445 }, /* Up */
+    { 0x000008fc, 26448 }, /* uparrow */
+    { 0x00000ba9, 26456 }, /* upcaret */
+    { 0x000009ec, 26464 }, /* upleftcorner */
+    { 0x000009eb, 26477 }, /* uprightcorner */
+    { 0x00000bc3, 26491 }, /* upshoe */
+    { 0x00000bd3, 26498 }, /* upstile */
+    { 0x00000bce, 26506 }, /* uptack */
+    { 0x000001d9, 26513 }, /* Uring */
+    { 0x000001f9, 26519 }, /* uring */
+    { 0x1000ff6e, 26525 }, /* User */
+    { 0x000003dd, 26530 }, /* Utilde */
+    { 0x000003fd, 26537 }, /* utilde */
+    { 0x00000056, 26544 }, /* V */
+    { 0x00000076, 26546 }, /* v */
+    { 0x000008c1, 26548 }, /* variation */
+    { 0x000009f8, 26558 }, /* vertbar */
+    { 0x000008a6, 26566 }, /* vertconnector */
+    { 0x000004de, 26580 }, /* voicedsound */
+    { 0x00ffffff, 26592 }, /* VoidSymbol */
+    { 0x000009e9, 26603 }, /* vt */
+    { 0x00000057, 26606 }, /* W */
+    { 0x00000077, 26608 }, /* w */
+    { 0x01001e82, 26610 }, /* Wacute */
+    { 0x01001e83, 26617 }, /* wacute */
+    { 0x01000174, 26624 }, /* Wcircumflex */
+    { 0x01000175, 26636 }, /* wcircumflex */
+    { 0x01001e84, 26648 }, /* Wdiaeresis */
+    { 0x01001e85, 26659 }, /* wdiaeresis */
+    { 0x01001e80, 26670 }, /* Wgrave */
+    { 0x01001e81, 26677 }, /* wgrave */
+    { 0x010020a9, 26684 }, /* WonSign */
+    { 0x00000058, 26692 }, /* X */
+    { 0x00000078, 26694 }, /* x */
+    { 0x01001e8a, 26696 }, /* Xabovedot */
+    { 0x01001e8b, 26706 }, /* xabovedot */
+    { 0x100811b9, 26716 }, /* XF8610ChannelsDown */
+    { 0x100811b8, 26735 }, /* XF8610ChannelsUp */
+    { 0x1008126f, 26752 }, /* XF863DMode */
+    { 0x1008ff39, 26763 }, /* XF86AddFavorite */
+    { 0x100811ad, 26779 }, /* XF86Addressbook */
+    { 0x10081230, 26795 }, /* XF86ALSToggle */
+    { 0x1008ff50, 26809 }, /* XF86ApplicationLeft */
+    { 0x1008ff51, 26829 }, /* XF86ApplicationRight */
+    { 0x10081244, 26850 }, /* XF86AppSelect */
+    { 0x10081177, 26864 }, /* XF86AspectRatio */
+    { 0x10081247, 26880 }, /* XF86Assistant */
+    { 0x1008121c, 26894 }, /* XF86AttendantOff */
+    { 0x1008121b, 26911 }, /* XF86AttendantOn */
+    { 0x1008121d, 26927 }, /* XF86AttendantToggle */
+    { 0x10081188, 26947 }, /* XF86Audio */
+    { 0x1008ff9b, 26957 }, /* XF86AudioCycleTrack */
+    { 0x1008126e, 26977 }, /* XF86AudioDesc */
+    { 0x1008ff97, 26991 }, /* XF86AudioForward */
+    { 0x1008ff11, 27008 }, /* XF86AudioLowerVolume */
+    { 0x1008ff32, 27029 }, /* XF86AudioMedia */
+    { 0x1008ffb2, 27044 }, /* XF86AudioMicMute */
+    { 0x1008ff12, 27061 }, /* XF86AudioMute */
+    { 0x1008ff17, 27075 }, /* XF86AudioNext */
+    { 0x1008ff31, 27089 }, /* XF86AudioPause */
+    { 0x1008ff14, 27104 }, /* XF86AudioPlay */
+    { 0x1008ffb6, 27118 }, /* XF86AudioPreset */
+    { 0x1008ff16, 27134 }, /* XF86AudioPrev */
+    { 0x1008ff13, 27148 }, /* XF86AudioRaiseVolume */
+    { 0x1008ff99, 27169 }, /* XF86AudioRandomPlay */
+    { 0x1008ff1c, 27189 }, /* XF86AudioRecord */
+    { 0x1008ff98, 27205 }, /* XF86AudioRepeat */
+    { 0x1008ff3e, 27221 }, /* XF86AudioRewind */
+    { 0x1008ff15, 27237 }, /* XF86AudioStop */
+    { 0x1008127d, 27251 }, /* XF86AutopilotEngageToggle */
+    { 0x1008ff8d, 27277 }, /* XF86Away */
+    { 0x1008ff26, 27286 }, /* XF86Back */
+    { 0x1008ff3f, 27295 }, /* XF86BackForward */
+    { 0x1008ff93, 27311 }, /* XF86Battery */
+    { 0x1008ffa6, 27323 }, /* XF86Blue */
+    { 0x1008ff94, 27332 }, /* XF86Bluetooth */
+    { 0x1008ff52, 27346 }, /* XF86Book */
+    { 0x1008119b, 27355 }, /* XF86Break */
+    { 0x1008ff3b, 27365 }, /* XF86BrightnessAdjust */
+    { 0x100810f4, 27386 }, /* XF86BrightnessAuto */
+    { 0x10081251, 27405 }, /* XF86BrightnessMax */
+    { 0x10081250, 27423 }, /* XF86BrightnessMin */
+    { 0x10081240, 27441 }, /* XF86Buttonconfig */
+    { 0x1008ff54, 27458 }, /* XF86Calculater */
+    { 0x1008ff1d, 27473 }, /* XF86Calculator */
+    { 0x1008ff20, 27488 }, /* XF86Calendar */
+    { 0x1008124c, 27501 }, /* XF86CameraAccessDisable */
+    { 0x1008124b, 27525 }, /* XF86CameraAccessEnable */
+    { 0x1008124d, 27548 }, /* XF86CameraAccessToggle */
+    { 0x10081218, 27571 }, /* XF86CameraDown */
+    { 0x10081210, 27586 }, /* XF86CameraFocus */
+    { 0x10081219, 27602 }, /* XF86CameraLeft */
+    { 0x1008121a, 27617 }, /* XF86CameraRight */
+    { 0x10081217, 27633 }, /* XF86CameraUp */
+    { 0x10081215, 27646 }, /* XF86CameraZoomIn */
+    { 0x10081216, 27663 }, /* XF86CameraZoomOut */
+    { 0x1008ff53, 27681 }, /* XF86CD */
+    { 0x10081193, 27688 }, /* XF86ChannelDown */
+    { 0x10081192, 27704 }, /* XF86ChannelUp */
+    { 0x1008ff55, 27718 }, /* XF86Clear */
+    { 0x1008fe21, 27728 }, /* XF86ClearGrab */
+    { 0x10081286, 27742 }, /* XF86ClearvuSonar */
+    { 0x1008ff56, 27759 }, /* XF86Close */
+    { 0x1008ff3d, 27769 }, /* XF86Community */
+    { 0x100811b6, 27783 }, /* XF86ContextMenu */
+    { 0x1008ff22, 27799 }, /* XF86ContrastAdjust */
+    { 0x10081243, 27818 }, /* XF86ControlPanel */
+    { 0x1008ff57, 27835 }, /* XF86Copy */
+    { 0x1008ff58, 27844 }, /* XF86Cut */
+    { 0x1008ff9c, 27852 }, /* XF86CycleAngle */
+    { 0x10081277, 27867 }, /* XF86Data */
+    { 0x100811aa, 27876 }, /* XF86Database */
+    { 0x1008124a, 27889 }, /* XF86Dictate */
+    { 0x1008ff59, 27901 }, /* XF86Display */
+    { 0x100810f5, 27913 }, /* XF86DisplayOff */
+    { 0x100811af, 27928 }, /* XF86DisplayToggle */
+    { 0x1008ff5b, 27946 }, /* XF86Documents */
+    { 0x1008ff5a, 27960 }, /* XF86DOS */
+    { 0x10081283, 27968 }, /* XF86DualRangeRadar */
+    { 0x10081185, 27987 }, /* XF86DVD */
+    { 0x100811a6, 27995 }, /* XF86Editor */
+    { 0x1008ff2c, 28006 }, /* XF86Eject */
+    { 0x10081249, 28016 }, /* XF86EmojiPicker */
+    { 0x1008ff5c, 28032 }, /* XF86Excel */
+    { 0x1008ff5d, 28042 }, /* XF86Explorer */
+    { 0x10081275, 28055 }, /* XF86FastReverse */
+    { 0x1008ff30, 28071 }, /* XF86Favorites */
+    { 0x1008ff3c, 28085 }, /* XF86Finance */
+    { 0x10081281, 28097 }, /* XF86FishingChart */
+    { 0x100811d0, 28114 }, /* XF86Fn */
+    { 0x100811d1, 28121 }, /* XF86Fn_Esc */
+    { 0x100811e5, 28132 }, /* XF86FnRightShift */
+    { 0x1008ff27, 28149 }, /* XF86Forward */
+    { 0x1008ff9d, 28161 }, /* XF86FrameBack */
+    { 0x1008ff9e, 28175 }, /* XF86FrameForward */
+    { 0x1008ffb8, 28192 }, /* XF86FullScreen */
+    { 0x1008ff5e, 28207 }, /* XF86Game */
+    { 0x1008ff5f, 28216 }, /* XF86Go */
+    { 0x100811a8, 28223 }, /* XF86GraphicsEditor */
+    { 0x1008ffa4, 28242 }, /* XF86Green */
+    { 0x100811be, 28252 }, /* XF86HangupPhone */
+    { 0x1008ffa8, 28268 }, /* XF86Hibernate */
+    { 0x1008ff37, 28282 }, /* XF86History */
+    { 0x1008ff18, 28294 }, /* XF86HomePage */
+    { 0x1008ff3a, 28307 }, /* XF86HotLinks */
+    { 0x100811ba, 28320 }, /* XF86Images */
+    { 0x10081166, 28331 }, /* XF86Info */
+    { 0x1008ff60, 28340 }, /* XF86iTouch */
+    { 0x10081242, 28351 }, /* XF86Journal */
+    { 0x1008ff06, 28363 }, /* XF86KbdBrightnessDown */
+    { 0x1008ff05, 28385 }, /* XF86KbdBrightnessUp */
+    { 0x10081264, 28405 }, /* XF86KbdInputAssistAccept */
+    { 0x10081265, 28430 }, /* XF86KbdInputAssistCancel */
+    { 0x10081261, 28455 }, /* XF86KbdInputAssistNext */
+    { 0x10081263, 28478 }, /* XF86KbdInputAssistNextgroup */
+    { 0x10081260, 28506 }, /* XF86KbdInputAssistPrev */
+    { 0x10081262, 28529 }, /* XF86KbdInputAssistPrevgroup */
+    { 0x100812b8, 28557 }, /* XF86KbdLcdMenu1 */
+    { 0x100812b9, 28573 }, /* XF86KbdLcdMenu2 */
+    { 0x100812ba, 28589 }, /* XF86KbdLcdMenu3 */
+    { 0x100812bb, 28605 }, /* XF86KbdLcdMenu4 */
+    { 0x100812bc, 28621 }, /* XF86KbdLcdMenu5 */
+    { 0x1008ff04, 28637 }, /* XF86KbdLightOnOff */
+    { 0x1008ffb3, 28655 }, /* XF86Keyboard */
+    { 0x1008ff40, 28668 }, /* XF86Launch0 */
+    { 0x1008ff41, 28680 }, /* XF86Launch1 */
+    { 0x1008ff42, 28692 }, /* XF86Launch2 */
+    { 0x1008ff43, 28704 }, /* XF86Launch3 */
+    { 0x1008ff44, 28716 }, /* XF86Launch4 */
+    { 0x1008ff45, 28728 }, /* XF86Launch5 */
+    { 0x1008ff46, 28740 }, /* XF86Launch6 */
+    { 0x1008ff47, 28752 }, /* XF86Launch7 */
+    { 0x1008ff48, 28764 }, /* XF86Launch8 */
+    { 0x1008ff49, 28776 }, /* XF86Launch9 */
+    { 0x1008ff4a, 28788 }, /* XF86LaunchA */
+    { 0x1008ff4b, 28800 }, /* XF86LaunchB */
+    { 0x1008ff4c, 28812 }, /* XF86LaunchC */
+    { 0x1008ff4d, 28824 }, /* XF86LaunchD */
+    { 0x1008ff4e, 28836 }, /* XF86LaunchE */
+    { 0x1008ff4f, 28848 }, /* XF86LaunchF */
+    { 0x10081269, 28860 }, /* XF86LeftDown */
+    { 0x10081268, 28873 }, /* XF86LeftUp */
+    { 0x1008ff35, 28884 }, /* XF86LightBulb */
+    { 0x1008121e, 28898 }, /* XF86LightsToggle */
+    { 0x1008fe25, 28915 }, /* XF86LogGrabInfo */
+    { 0x1008ff61, 28931 }, /* XF86LogOff */
+    { 0x1008fe24, 28942 }, /* XF86LogWindowTree */
+    { 0x10081290, 28960 }, /* XF86Macro1 */
+    { 0x10081299, 28971 }, /* XF86Macro10 */
+    { 0x1008129a, 28983 }, /* XF86Macro11 */
+    { 0x1008129b, 28995 }, /* XF86Macro12 */
+    { 0x1008129c, 29007 }, /* XF86Macro13 */
+    { 0x1008129d, 29019 }, /* XF86Macro14 */
+    { 0x1008129e, 29031 }, /* XF86Macro15 */
+    { 0x1008129f, 29043 }, /* XF86Macro16 */
+    { 0x100812a0, 29055 }, /* XF86Macro17 */
+    { 0x100812a1, 29067 }, /* XF86Macro18 */
+    { 0x100812a2, 29079 }, /* XF86Macro19 */
+    { 0x10081291, 29091 }, /* XF86Macro2 */
+    { 0x100812a3, 29102 }, /* XF86Macro20 */
+    { 0x100812a4, 29114 }, /* XF86Macro21 */
+    { 0x100812a5, 29126 }, /* XF86Macro22 */
+    { 0x100812a6, 29138 }, /* XF86Macro23 */
+    { 0x100812a7, 29150 }, /* XF86Macro24 */
+    { 0x100812a8, 29162 }, /* XF86Macro25 */
+    { 0x100812a9, 29174 }, /* XF86Macro26 */
+    { 0x100812aa, 29186 }, /* XF86Macro27 */
+    { 0x100812ab, 29198 }, /* XF86Macro28 */
+    { 0x100812ac, 29210 }, /* XF86Macro29 */
+    { 0x10081292, 29222 }, /* XF86Macro3 */
+    { 0x100812ad, 29233 }, /* XF86Macro30 */
+    { 0x10081293, 29245 }, /* XF86Macro4 */
+    { 0x10081294, 29256 }, /* XF86Macro5 */
+    { 0x10081295, 29267 }, /* XF86Macro6 */
+    { 0x10081296, 29278 }, /* XF86Macro7 */
+    { 0x10081297, 29289 }, /* XF86Macro8 */
+    { 0x10081298, 29300 }, /* XF86Macro9 */
+    { 0x100812b3, 29311 }, /* XF86MacroPreset1 */
+    { 0x100812b4, 29328 }, /* XF86MacroPreset2 */
+    { 0x100812b5, 29345 }, /* XF86MacroPreset3 */
+    { 0x100812b2, 29362 }, /* XF86MacroPresetCycle */
+    { 0x100812b0, 29383 }, /* XF86MacroRecordStart */
+    { 0x100812b1, 29404 }, /* XF86MacroRecordStop */
+    { 0x1008ff19, 29424 }, /* XF86Mail */
+    { 0x1008ff90, 29433 }, /* XF86MailForward */
+    { 0x1008ff62, 29449 }, /* XF86Market */
+    { 0x1008127e, 29460 }, /* XF86MarkWaypoint */
+    { 0x100811b7, 29477 }, /* XF86MediaRepeat */
+    { 0x1008126b, 29493 }, /* XF86MediaTopMenu */
+    { 0x1008ff63, 29510 }, /* XF86Meeting */
+    { 0x1008ff1e, 29522 }, /* XF86Memo */
+    { 0x1008ff65, 29531 }, /* XF86MenuKB */
+    { 0x1008ff66, 29542 }, /* XF86MenuPB */
+    { 0x1008ff8e, 29553 }, /* XF86Messenger */
+    { 0x1008ff01, 29567 }, /* XF86ModeLock */
+    { 0x1008ff07, 29580 }, /* XF86MonBrightnessCycle */
+    { 0x1008ff03, 29603 }, /* XF86MonBrightnessDown */
+    { 0x1008ff02, 29625 }, /* XF86MonBrightnessUp */
+    { 0x1008ff92, 29645 }, /* XF86Music */
+    { 0x1008ff33, 29655 }, /* XF86MyComputer */
+    { 0x1008ff67, 29670 }, /* XF86MySites */
+    { 0x10081280, 29682 }, /* XF86NavChart */
+    { 0x10081288, 29695 }, /* XF86NavInfo */
+    { 0x1008ff68, 29707 }, /* XF86New */
+    { 0x1008ff69, 29715 }, /* XF86News */
+    { 0x1008fe22, 29724 }, /* XF86Next_VMode */
+    { 0x1008127b, 29739 }, /* XF86NextElement */
+    { 0x10081270, 29755 }, /* XF86NextFavorite */
+    { 0x100811bc, 29772 }, /* XF86NotificationCenter */
+    { 0x10081200, 29795 }, /* XF86Numeric0 */
+    { 0x10081201, 29808 }, /* XF86Numeric1 */
+    { 0x1008126c, 29821 }, /* XF86Numeric11 */
+    { 0x1008126d, 29835 }, /* XF86Numeric12 */
+    { 0x10081202, 29849 }, /* XF86Numeric2 */
+    { 0x10081203, 29862 }, /* XF86Numeric3 */
+    { 0x10081204, 29875 }, /* XF86Numeric4 */
+    { 0x10081205, 29888 }, /* XF86Numeric5 */
+    { 0x10081206, 29901 }, /* XF86Numeric6 */
+    { 0x10081207, 29914 }, /* XF86Numeric7 */
+    { 0x10081208, 29927 }, /* XF86Numeric8 */
+    { 0x10081209, 29940 }, /* XF86Numeric9 */
+    { 0x1008120c, 29953 }, /* XF86NumericA */
+    { 0x1008120d, 29966 }, /* XF86NumericB */
+    { 0x1008120e, 29979 }, /* XF86NumericC */
+    { 0x1008120f, 29992 }, /* XF86NumericD */
+    { 0x1008120b, 30005 }, /* XF86NumericPound */
+    { 0x1008120a, 30022 }, /* XF86NumericStar */
+    { 0x1008ff6a, 30038 }, /* XF86OfficeHome */
+    { 0x10081278, 30053 }, /* XF86OnScreenKeyboard */
+    { 0x1008ff6b, 30074 }, /* XF86Open */
+    { 0x1008ff38, 30083 }, /* XF86OpenURL */
+    { 0x1008ff6c, 30095 }, /* XF86Option */
+    { 0x1008ff6d, 30106 }, /* XF86Paste */
+    { 0x10081272, 30116 }, /* XF86PauseRecord */
+    { 0x1008ff6e, 30132 }, /* XF86Phone */
+    { 0x100811bd, 30142 }, /* XF86PickupPhone */
+    { 0x1008ff91, 30158 }, /* XF86Pictures */
+    { 0x1008ff21, 30171 }, /* XF86PowerDown */
+    { 0x1008ff2a, 30185 }, /* XF86PowerOff */
+    { 0x100811a9, 30198 }, /* XF86Presentation */
+    { 0x1008fe23, 30215 }, /* XF86Prev_VMode */
+    { 0x1008127c, 30230 }, /* XF86PreviousElement */
+    { 0x10081279, 30250 }, /* XF86PrivacyScreenToggle */
+    { 0x1008ff70, 30274 }, /* XF86Q */
+    { 0x10081284, 30280 }, /* XF86RadarOverlay */
+    { 0x1008ffa3, 30297 }, /* XF86Red */
+    { 0x1008ff29, 30305 }, /* XF86Refresh */
+    { 0x1008ff73, 30317 }, /* XF86Reload */
+    { 0x1008ff72, 30328 }, /* XF86Reply */
+    { 0x1008ffb5, 30338 }, /* XF86RFKill */
+    { 0x10081267, 30349 }, /* XF86RightDown */
+    { 0x10081266, 30363 }, /* XF86RightUp */
+    { 0x1008ff24, 30375 }, /* XF86RockerDown */
+    { 0x1008ff25, 30390 }, /* XF86RockerEnter */
+    { 0x1008ff23, 30406 }, /* XF86RockerUp */
+    { 0x1008126a, 30419 }, /* XF86RootMenu */
+    { 0x1008ff74, 30432 }, /* XF86RotateWindows */
+    { 0x1008ff76, 30450 }, /* XF86RotationKB */
+    { 0x1008ffb7, 30465 }, /* XF86RotationLockToggle */
+    { 0x1008ff75, 30488 }, /* XF86RotationPB */
+    { 0x1008ff77, 30503 }, /* XF86Save */
+    { 0x1008ff2d, 30512 }, /* XF86ScreenSaver */
+    { 0x10081245, 30528 }, /* XF86Screensaver */
+    { 0x1008ff7a, 30544 }, /* XF86ScrollClick */
+    { 0x1008ff79, 30560 }, /* XF86ScrollDown */
+    { 0x1008ff78, 30575 }, /* XF86ScrollUp */
+    { 0x1008ff1b, 30588 }, /* XF86Search */
+    { 0x1008ffa0, 30599 }, /* XF86Select */
+    { 0x1008127a, 30610 }, /* XF86SelectiveScreenshot */
+    { 0x1008ff7b, 30634 }, /* XF86Send */
+    { 0x1008ff36, 30643 }, /* XF86Shop */
+    { 0x10081287, 30652 }, /* XF86SidevuSonar */
+    { 0x10081282, 30668 }, /* XF86SingleRangeRadar */
+    { 0x1008ff2f, 30689 }, /* XF86Sleep */
+    { 0x10081276, 30699 }, /* XF86SlowReverse */
+    { 0x1008127f, 30715 }, /* XF86Sos */
+    { 0x1008ff7c, 30723 }, /* XF86Spell */
+    { 0x100811b0, 30733 }, /* XF86SpellCheck */
+    { 0x1008ff7d, 30748 }, /* XF86SplitScreen */
+    { 0x1008ff10, 30764 }, /* XF86Standby */
+    { 0x1008ff1a, 30776 }, /* XF86Start */
+    { 0x1008ff28, 30786 }, /* XF86Stop */
+    { 0x10081271, 30795 }, /* XF86StopRecord */
+    { 0x1008ff9a, 30810 }, /* XF86Subtitle */
+    { 0x1008ff7e, 30823 }, /* XF86Support */
+    { 0x1008ffa7, 30835 }, /* XF86Suspend */
+    { 0x1008fe01, 30847 }, /* XF86Switch_VT_1 */
+    { 0x1008fe0a, 30863 }, /* XF86Switch_VT_10 */
+    { 0x1008fe0b, 30880 }, /* XF86Switch_VT_11 */
+    { 0x1008fe0c, 30897 }, /* XF86Switch_VT_12 */
+    { 0x1008fe02, 30914 }, /* XF86Switch_VT_2 */
+    { 0x1008fe03, 30930 }, /* XF86Switch_VT_3 */
+    { 0x1008fe04, 30946 }, /* XF86Switch_VT_4 */
+    { 0x1008fe05, 30962 }, /* XF86Switch_VT_5 */
+    { 0x1008fe06, 30978 }, /* XF86Switch_VT_6 */
+    { 0x1008fe07, 30994 }, /* XF86Switch_VT_7 */
+    { 0x1008fe08, 31010 }, /* XF86Switch_VT_8 */
+    { 0x1008fe09, 31026 }, /* XF86Switch_VT_9 */
+    { 0x10081241, 31042 }, /* XF86Taskmanager */
+    { 0x1008ff7f, 31058 }, /* XF86TaskPane */
+    { 0x1008ff80, 31071 }, /* XF86Terminal */
+    { 0x1008ff9f, 31084 }, /* XF86Time */
+    { 0x1008ff1f, 31093 }, /* XF86ToDoList */
+    { 0x1008ff81, 31106 }, /* XF86Tools */
+    { 0x1008ffa2, 31116 }, /* XF86TopMenu */
+    { 0x1008ffb1, 31128 }, /* XF86TouchpadOff */
+    { 0x1008ffb0, 31144 }, /* XF86TouchpadOn */
+    { 0x1008ffa9, 31159 }, /* XF86TouchpadToggle */
+    { 0x10081285, 31178 }, /* XF86TraditionalSonar */
+    { 0x1008ff82, 31199 }, /* XF86Travel */
+    { 0x1008fe20, 31210 }, /* XF86Ungrab */
+    { 0x10081274, 31221 }, /* XF86Unmute */
+    { 0x1008ff85, 31232 }, /* XF86User1KB */
+    { 0x1008ff86, 31244 }, /* XF86User2KB */
+    { 0x1008ff84, 31256 }, /* XF86UserPB */
+    { 0x1008ff96, 31267 }, /* XF86UWB */
+    { 0x1008ff34, 31275 }, /* XF86VendorHome */
+    { 0x1008ff87, 31290 }, /* XF86Video */
+    { 0x100811a0, 31300 }, /* XF86VideoPhone */
+    { 0x1008ffa1, 31315 }, /* XF86View */
+    { 0x10081273, 31324 }, /* XF86VOD */
+    { 0x10081246, 31332 }, /* XF86VoiceCommand */
+    { 0x100811ac, 31349 }, /* XF86Voicemail */
+    { 0x1008ff2b, 31363 }, /* XF86WakeUp */
+    { 0x1008ff8f, 31374 }, /* XF86WebCam */
+    { 0x1008ff88, 31385 }, /* XF86WheelButton */
+    { 0x1008ff95, 31401 }, /* XF86WLAN */
+    { 0x1008ff89, 31410 }, /* XF86Word */
+    { 0x10081211, 31419 }, /* XF86WPSButton */
+    { 0x1008ffb4, 31433 }, /* XF86WWAN */
+    { 0x1008ff2e, 31442 }, /* XF86WWW */
+    { 0x1008ff8a, 31450 }, /* XF86Xfer */
+    { 0x1008ffa5, 31459 }, /* XF86Yellow */
+    { 0x1008ff8b, 31470 }, /* XF86ZoomIn */
+    { 0x1008ff8c, 31481 }, /* XF86ZoomOut */
+    { 0x100811a4, 31493 }, /* XF86ZoomReset */
+    { 0x00000059, 31507 }, /* Y */
+    { 0x00000079, 31509 }, /* y */
+    { 0x000000dd, 31511 }, /* Yacute */
+    { 0x000000fd, 31518 }, /* yacute */
+    { 0x01001ef4, 31525 }, /* Ybelowdot */
+    { 0x01001ef5, 31535 }, /* ybelowdot */
+    { 0x01000176, 31545 }, /* Ycircumflex */
+    { 0x01000177, 31557 }, /* ycircumflex */
+    { 0x000000ff, 31569 }, /* ydiaeresis */
+    { 0x000013be, 31580 }, /* Ydiaeresis */
+    { 0x000000a5, 31591 }, /* yen */
+    { 0x01001ef2, 31595 }, /* Ygrave */
+    { 0x01001ef3, 31602 }, /* ygrave */
+    { 0x01001ef6, 31609 }, /* Yhook */
+    { 0x01001ef7, 31615 }, /* yhook */
+    { 0x01001ef8, 31621 }, /* Ytilde */
+    { 0x01001ef9, 31628 }, /* ytilde */
+    { 0x0000005a, 31635 }, /* Z */
+    { 0x0000007a, 31637 }, /* z */
+    { 0x000001af, 31639 }, /* Zabovedot */
+    { 0x000001bf, 31649 }, /* zabovedot */
+    { 0x000001ac, 31659 }, /* Zacute */
+    { 0x000001bc, 31666 }, /* zacute */
+    { 0x000001ae, 31673 }, /* Zcaron */
+    { 0x000001be, 31680 }, /* zcaron */
+    { 0x0000ff3d, 31687 }, /* Zen_Koho */
+    { 0x0000ff28, 31696 }, /* Zenkaku */
+    { 0x0000ff2a, 31704 }, /* Zenkaku_Hankaku */
+    { 0x01002080, 31720 }, /* zerosubscript */
+    { 0x01002070, 31734 }, /* zerosuperior */
+    { 0x010001b5, 31747 }, /* Zstroke */
+    { 0x010001b6, 31755 }, /* 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, 20139 }, /* NoSymbol */
+    { 0x00000020, 23864 }, /* space */
+    { 0x00000021, 12131 }, /* exclam */
+    { 0x00000022, 22248 }, /* quotedbl */
+    { 0x00000023, 20226 }, /* numbersign */
+    { 0x00000024, 11283 }, /* dollar */
+    { 0x00000025, 21548 }, /* percent */
     { 0x00000026, 908 }, /* ampersand */
     { 0x00000027, 934 }, /* apostrophe */
-    { 0x00000028, 21507 }, /* parenleft */
-    { 0x00000029, 21517 }, /* parenright */
+    { 0x00000028, 21486 }, /* parenleft */
+    { 0x00000029, 21496 }, /* parenright */
     { 0x0000002a, 3283 }, /* asterisk */
-    { 0x0000002b, 21639 }, /* plus */
+    { 0x0000002b, 21618 }, /* plus */
     { 0x0000002c, 8762 }, /* comma */
-    { 0x0000002d, 19815 }, /* minus */
-    { 0x0000002e, 21577 }, /* period */
-    { 0x0000002f, 23850 }, /* slash */
+    { 0x0000002d, 19781 }, /* minus */
+    { 0x0000002e, 21556 }, /* period */
+    { 0x0000002f, 23829 }, /* slash */
     { 0x00000030, 0 }, /* 0 */
     { 0x00000031, 2 }, /* 1 */
     { 0x00000032, 4 }, /* 2 */
@@ -5471,106 +5513,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, 22795 }, /* semicolon */
+    { 0x0000003c, 19460 }, /* less */
+    { 0x0000003d, 12083 }, /* equal */
+    { 0x0000003e, 13304 }, /* greater */
+    { 0x0000003f, 22226 }, /* 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, 17117 }, /* I */
+    { 0x0000004a, 18162 }, /* J */
+    { 0x0000004b, 18194 }, /* K */
+    { 0x0000004c, 19160 }, /* L */
+    { 0x0000004d, 19581 }, /* M */
+    { 0x0000004e, 19991 }, /* N */
+    { 0x0000004f, 20248 }, /* O */
+    { 0x00000050, 21434 }, /* P */
+    { 0x00000051, 22217 }, /* Q */
+    { 0x00000052, 22278 }, /* R */
+    { 0x00000053, 22640 }, /* S */
+    { 0x00000054, 24355 }, /* T */
+    { 0x00000055, 25908 }, /* U */
+    { 0x00000056, 26544 }, /* V */
+    { 0x00000057, 26606 }, /* W */
+    { 0x00000058, 26692 }, /* X */
+    { 0x00000059, 31507 }, /* Y */
+    { 0x0000005a, 31635 }, /* Z */
     { 0x0000005b, 3603 }, /* bracketleft */
     { 0x0000005c, 3352 }, /* backslash */
     { 0x0000005d, 3615 }, /* bracketright */
     { 0x0000005e, 3260 }, /* asciicircum */
-    { 0x0000005f, 26428 }, /* underscore */
-    { 0x00000060, 13348 }, /* grave */
+    { 0x0000005f, 26407 }, /* 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, 17119 }, /* i */
+    { 0x0000006a, 18164 }, /* j */
+    { 0x0000006b, 18196 }, /* k */
+    { 0x0000006c, 19162 }, /* l */
+    { 0x0000006d, 19583 }, /* m */
+    { 0x0000006e, 19993 }, /* n */
+    { 0x0000006f, 20250 }, /* o */
+    { 0x00000070, 21436 }, /* p */
+    { 0x00000071, 22219 }, /* q */
+    { 0x00000072, 22280 }, /* r */
+    { 0x00000073, 22642 }, /* s */
+    { 0x00000074, 24357 }, /* t */
+    { 0x00000075, 25910 }, /* u */
+    { 0x00000076, 26546 }, /* v */
+    { 0x00000077, 26608 }, /* w */
+    { 0x00000078, 26694 }, /* x */
+    { 0x00000079, 31509 }, /* y */
+    { 0x0000007a, 31637 }, /* z */
     { 0x0000007b, 3582 }, /* braceleft */
     { 0x0000007c, 3392 }, /* bar */
     { 0x0000007d, 3592 }, /* braceright */
     { 0x0000007e, 3272 }, /* asciitilde */
-    { 0x000000a0, 20160 }, /* nobreakspace */
-    { 0x000000a1, 12188 }, /* exclamdown */
+    { 0x000000a0, 20126 }, /* nobreakspace */
+    { 0x000000a1, 12138 }, /* exclamdown */
     { 0x000000a2, 8589 }, /* cent */
-    { 0x000000a3, 23909 }, /* sterling */
+    { 0x000000a3, 23888 }, /* sterling */
     { 0x000000a4, 8848 }, /* currency */
-    { 0x000000a5, 31274 }, /* yen */
+    { 0x000000a5, 31591 }, /* yen */
     { 0x000000a6, 8389 }, /* brokenbar */
-    { 0x000000a7, 22801 }, /* section */
-    { 0x000000a8, 11285 }, /* diaeresis */
+    { 0x000000a7, 22780 }, /* 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, 20900 }, /* ordfeminine */
+    { 0x000000ab, 14381 }, /* guillemetleft */
+    { 0x000000ac, 20195 }, /* notsign */
+    { 0x000000ad, 17110 }, /* hyphen */
+    { 0x000000ae, 22392 }, /* registered */
+    { 0x000000af, 19689 }, /* macron */
+    { 0x000000b0, 11185 }, /* degree */
+    { 0x000000b1, 21623 }, /* plusminus */
+    { 0x000000b2, 25886 }, /* twosuperior */
+    { 0x000000b3, 25632 }, /* threesuperior */
     { 0x000000b4, 820 }, /* acute */
-    { 0x000000b5, 19881 }, /* mu */
-    { 0x000000b6, 21497 }, /* paragraph */
-    { 0x000000b7, 21584 }, /* periodcentered */
+    { 0x000000b5, 19847 }, /* mu */
+    { 0x000000b6, 21476 }, /* paragraph */
+    { 0x000000b7, 21563 }, /* 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, 20803 }, /* onesuperior */
+    { 0x000000ba, 20912 }, /* ordmasculine */
+    { 0x000000bb, 14395 }, /* guillemetright */
+    { 0x000000bc, 20770 }, /* onequarter */
+    { 0x000000bd, 20762 }, /* onehalf */
+    { 0x000000be, 25603 }, /* threequarters */
+    { 0x000000bf, 22235 }, /* questiondown */
     { 0x000000c0, 854 }, /* Agrave */
     { 0x000000c1, 402 }, /* Aacute */
     { 0x000000c2, 622 }, /* Acircumflex */
@@ -5579,30 +5621,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, 17253 }, /* Igrave */
+    { 0x000000cd, 17131 }, /* Iacute */
+    { 0x000000ce, 17179 }, /* Icircumflex */
+    { 0x000000cf, 17213 }, /* Idiaeresis */
+    { 0x000000d0, 12096 }, /* ETH */
+    { 0x000000d1, 20203 }, /* Ntilde */
+    { 0x000000d2, 20575 }, /* Ograve */
+    { 0x000000d3, 20252 }, /* Oacute */
+    { 0x000000d4, 20316 }, /* Ocircumflex */
+    { 0x000000d5, 21371 }, /* Otilde */
+    { 0x000000d6, 20514 }, /* Odiaeresis */
+    { 0x000000d7, 19887 }, /* multiply */
+    { 0x000000d8, 21357 }, /* Oslash */
+    { 0x000000d9, 26032 }, /* Ugrave */
+    { 0x000000da, 25912 }, /* Uacute */
+    { 0x000000db, 25960 }, /* Ucircumflex */
+    { 0x000000dc, 25984 }, /* Udiaeresis */
+    { 0x000000dd, 31511 }, /* Yacute */
+    { 0x000000de, 25560 }, /* THORN */
+    { 0x000000df, 23881 }, /* ssharp */
     { 0x000000e0, 861 }, /* agrave */
     { 0x000000e1, 409 }, /* aacute */
     { 0x000000e2, 634 }, /* acircumflex */
@@ -5611,208 +5653,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, 17260 }, /* igrave */
+    { 0x000000ed, 17138 }, /* iacute */
+    { 0x000000ee, 17191 }, /* icircumflex */
+    { 0x000000ef, 17224 }, /* idiaeresis */
+    { 0x000000f0, 12104 }, /* eth */
+    { 0x000000f1, 20210 }, /* ntilde */
+    { 0x000000f2, 20582 }, /* ograve */
+    { 0x000000f3, 20259 }, /* oacute */
+    { 0x000000f4, 20328 }, /* ocircumflex */
+    { 0x000000f5, 21378 }, /* otilde */
+    { 0x000000f6, 20525 }, /* odiaeresis */
+    { 0x000000f7, 11274 }, /* division */
+    { 0x000000f8, 21364 }, /* oslash */
+    { 0x000000f9, 26039 }, /* ugrave */
+    { 0x000000fa, 25919 }, /* uacute */
+    { 0x000000fb, 25972 }, /* ucircumflex */
+    { 0x000000fc, 25995 }, /* udiaeresis */
+    { 0x000000fd, 31518 }, /* yacute */
+    { 0x000000fe, 25572 }, /* thorn */
+    { 0x000000ff, 31569 }, /* 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, 19565 }, /* Lstroke */
+    { 0x000001a5, 19260 }, /* Lcaron */
+    { 0x000001a6, 22664 }, /* Sacute */
+    { 0x000001a9, 22678 }, /* Scaron */
+    { 0x000001aa, 22692 }, /* Scedilla */
+    { 0x000001ab, 24383 }, /* Tcaron */
+    { 0x000001ac, 31659 }, /* Zacute */
+    { 0x000001ae, 31673 }, /* Zcaron */
+    { 0x000001af, 31639 }, /* Zabovedot */
     { 0x000001b1, 926 }, /* aogonek */
-    { 0x000001b2, 20602 }, /* ogonek */
-    { 0x000001b3, 19607 }, /* lstroke */
-    { 0x000001b5, 19301 }, /* lcaron */
-    { 0x000001b6, 22692 }, /* sacute */
+    { 0x000001b2, 20568 }, /* ogonek */
+    { 0x000001b3, 19573 }, /* lstroke */
+    { 0x000001b5, 19267 }, /* lcaron */
+    { 0x000001b6, 22671 }, /* 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, 22685 }, /* scaron */
+    { 0x000001ba, 22701 }, /* scedilla */
+    { 0x000001bb, 24390 }, /* tcaron */
+    { 0x000001bc, 31666 }, /* zacute */
+    { 0x000001bd, 11315 }, /* doubleacute */
+    { 0x000001be, 31680 }, /* zcaron */
+    { 0x000001bf, 31649 }, /* zabovedot */
+    { 0x000001c0, 22333 }, /* Racute */
     { 0x000001c3, 445 }, /* Abreve */
-    { 0x000001c5, 19229 }, /* Lacute */
+    { 0x000001c5, 19195 }, /* 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, 20001 }, /* Nacute */
+    { 0x000001d2, 20025 }, /* Ncaron */
+    { 0x000001d5, 20536 }, /* Odoubleacute */
+    { 0x000001d8, 22355 }, /* Rcaron */
+    { 0x000001d9, 26513 }, /* Uring */
+    { 0x000001db, 26006 }, /* Udoubleacute */
+    { 0x000001de, 24397 }, /* Tcedilla */
+    { 0x000001e0, 22340 }, /* racute */
     { 0x000001e3, 452 }, /* abreve */
-    { 0x000001e5, 19236 }, /* lacute */
+    { 0x000001e5, 19202 }, /* 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, 20008 }, /* nacute */
+    { 0x000001f2, 20032 }, /* ncaron */
+    { 0x000001f5, 20549 }, /* odoubleacute */
+    { 0x000001f8, 22362 }, /* rcaron */
+    { 0x000001f9, 26519 }, /* uring */
+    { 0x000001fb, 26019 }, /* udoubleacute */
+    { 0x000001fe, 24406 }, /* 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, 17075 }, /* Hstroke */
+    { 0x000002a6, 16117 }, /* Hcircumflex */
+    { 0x000002a9, 17121 }, /* Iabovedot */
+    { 0x000002ab, 12721 }, /* Gbreve */
+    { 0x000002ac, 18166 }, /* Jcircumflex */
+    { 0x000002b1, 17083 }, /* hstroke */
+    { 0x000002b6, 16129 }, /* hcircumflex */
+    { 0x000002b9, 17235 }, /* idotless */
+    { 0x000002bb, 12728 }, /* gbreve */
+    { 0x000002bc, 18178 }, /* 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, 25946 }, /* Ubreve */
+    { 0x000002de, 22722 }, /* 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, 25953 }, /* ubreve */
+    { 0x000002fe, 22734 }, /* scircumflex */
+    { 0x000003a2, 19156 }, /* kra */
+    { 0x000003a3, 22369 }, /* Rcedilla */
+    { 0x000003a5, 18148 }, /* Itilde */
+    { 0x000003a6, 19274 }, /* Lcedilla */
+    { 0x000003aa, 11871 }, /* Emacron */
+    { 0x000003ab, 12749 }, /* Gcedilla */
+    { 0x000003ac, 25849 }, /* Tslash */
+    { 0x000003b3, 22378 }, /* rcedilla */
+    { 0x000003b5, 18155 }, /* itilde */
+    { 0x000003b6, 19283 }, /* lcedilla */
+    { 0x000003ba, 11879 }, /* emacron */
+    { 0x000003bb, 12758 }, /* gcedilla */
+    { 0x000003bc, 25856 }, /* 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, 17386 }, /* Iogonek */
+    { 0x000003cc, 11460 }, /* Eabovedot */
+    { 0x000003cf, 17279 }, /* Imacron */
+    { 0x000003d1, 20039 }, /* Ncedilla */
+    { 0x000003d2, 20727 }, /* Omacron */
+    { 0x000003d3, 18827 }, /* Kcedilla */
+    { 0x000003d9, 26429 }, /* Uogonek */
+    { 0x000003dd, 26530 }, /* Utilde */
+    { 0x000003de, 26382 }, /* 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, 17394 }, /* iogonek */
+    { 0x000003ec, 11470 }, /* eabovedot */
+    { 0x000003ef, 17287 }, /* imacron */
+    { 0x000003f1, 20048 }, /* ncedilla */
+    { 0x000003f2, 20735 }, /* omacron */
+    { 0x000003f3, 18836 }, /* kcedilla */
+    { 0x000003f9, 26437 }, /* uogonek */
+    { 0x000003fd, 26537 }, /* utilde */
+    { 0x000003fe, 26390 }, /* umacron */
+    { 0x0000047e, 21425 }, /* overline */
+    { 0x000004a1, 18291 }, /* kana_fullstop */
+    { 0x000004a2, 18525 }, /* kana_openingbracket */
+    { 0x000004a3, 18221 }, /* kana_closingbracket */
+    { 0x000004a4, 18241 }, /* kana_comma */
+    { 0x000004a5, 18252 }, /* kana_conjunctive */
+    { 0x000004a6, 18737 }, /* kana_WO */
+    { 0x000004a7, 18198 }, /* kana_a */
+    { 0x000004a8, 18345 }, /* kana_i */
+    { 0x000004a9, 18715 }, /* kana_u */
+    { 0x000004aa, 18269 }, /* kana_e */
+    { 0x000004ab, 18511 }, /* kana_o */
+    { 0x000004ac, 18745 }, /* kana_ya */
+    { 0x000004ad, 18777 }, /* kana_yu */
+    { 0x000004ae, 18761 }, /* kana_yo */
+    { 0x000004af, 18681 }, /* kana_tsu */
+    { 0x000004b0, 22191 }, /* prolongedsound */
+    { 0x000004b1, 18205 }, /* kana_A */
+    { 0x000004b2, 18352 }, /* kana_I */
+    { 0x000004b3, 18722 }, /* kana_U */
+    { 0x000004b4, 18276 }, /* kana_E */
+    { 0x000004b5, 18518 }, /* kana_O */
+    { 0x000004b6, 18359 }, /* kana_KA */
+    { 0x000004b7, 18375 }, /* kana_KI */
+    { 0x000004b8, 18391 }, /* kana_KU */
+    { 0x000004b9, 18367 }, /* kana_KE */
+    { 0x000004ba, 18383 }, /* kana_KO */
+    { 0x000004bb, 18585 }, /* kana_SA */
+    { 0x000004bc, 18601 }, /* kana_SHI */
+    { 0x000004bd, 18629 }, /* kana_SU */
+    { 0x000004be, 18593 }, /* kana_SE */
+    { 0x000004bf, 18621 }, /* kana_SO */
+    { 0x000004c0, 18649 }, /* kana_TA */
+    { 0x000004c1, 18212 }, /* kana_CHI */
+    { 0x000004c2, 18690 }, /* kana_TSU */
+    { 0x000004c3, 18657 }, /* kana_TE */
+    { 0x000004c4, 18673 }, /* kana_TO */
+    { 0x000004c5, 18471 }, /* kana_NA */
+    { 0x000004c6, 18487 }, /* kana_NI */
+    { 0x000004c7, 18503 }, /* kana_NU */
+    { 0x000004c8, 18479 }, /* kana_NE */
+    { 0x000004c9, 18495 }, /* kana_NO */
+    { 0x000004ca, 18305 }, /* kana_HA */
+    { 0x000004cb, 18321 }, /* kana_HI */
+    { 0x000004cc, 18283 }, /* kana_FU */
+    { 0x000004cd, 18313 }, /* kana_HE */
+    { 0x000004ce, 18329 }, /* kana_HO */
+    { 0x000004cf, 18409 }, /* kana_MA */
+    { 0x000004d0, 18425 }, /* kana_MI */
+    { 0x000004d1, 18456 }, /* kana_MU */
+    { 0x000004d2, 18417 }, /* kana_ME */
+    { 0x000004d3, 18448 }, /* kana_MO */
+    { 0x000004d4, 18753 }, /* kana_YA */
+    { 0x000004d5, 18785 }, /* kana_YU */
+    { 0x000004d6, 18769 }, /* kana_YO */
+    { 0x000004d7, 18545 }, /* kana_RA */
+    { 0x000004d8, 18561 }, /* kana_RI */
+    { 0x000004d9, 18577 }, /* kana_RU */
+    { 0x000004da, 18553 }, /* kana_RE */
+    { 0x000004db, 18569 }, /* kana_RO */
+    { 0x000004dc, 18729 }, /* kana_WA */
+    { 0x000004dd, 18464 }, /* kana_N */
+    { 0x000004de, 26580 }, /* voicedsound */
+    { 0x000004df, 22805 }, /* semivoicedsound */
     { 0x000005ac, 1109 }, /* Arabic_comma */
     { 0x000005bb, 1764 }, /* Arabic_semicolon */
     { 0x000005bf, 1698 }, /* Arabic_question_mark */
@@ -5861,35 +5903,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, 22821 }, /* Serbian_dje */
+    { 0x000006a2, 19633 }, /* Macedonia_gje */
     { 0x000006a3, 9538 }, /* Cyrillic_io */
-    { 0x000006a4, 26281 }, /* Ukrainian_ie */
-    { 0x000006a5, 19639 }, /* Macedonia_dse */
-    { 0x000006a6, 26257 }, /* Ukrainian_i */
-    { 0x000006a7, 26307 }, /* Ukrainian_yi */
+    { 0x000006a4, 26260 }, /* Ukrainian_ie */
+    { 0x000006a5, 19605 }, /* Macedonia_dse */
+    { 0x000006a6, 26236 }, /* Ukrainian_i */
+    { 0x000006a7, 26286 }, /* 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, 22939 }, /* Serbian_tshe */
+    { 0x000006ac, 19661 }, /* Macedonia_kje */
+    { 0x000006ad, 26184 }, /* Ukrainian_ghe_with_upturn */
     { 0x000006ae, 8399 }, /* Byelorussian_shortu */
     { 0x000006af, 9054 }, /* Cyrillic_dzhe */
-    { 0x000006b0, 20271 }, /* numerosign */
-    { 0x000006b1, 22854 }, /* Serbian_DJE */
-    { 0x000006b2, 19681 }, /* Macedonia_GJE */
+    { 0x000006b0, 20237 }, /* numerosign */
+    { 0x000006b1, 22833 }, /* Serbian_DJE */
+    { 0x000006b2, 19647 }, /* Macedonia_GJE */
     { 0x000006b3, 9550 }, /* Cyrillic_IO */
-    { 0x000006b4, 26294 }, /* Ukrainian_IE */
-    { 0x000006b5, 19653 }, /* Macedonia_DSE */
-    { 0x000006b6, 26269 }, /* Ukrainian_I */
-    { 0x000006b7, 26320 }, /* Ukrainian_YI */
+    { 0x000006b4, 26273 }, /* Ukrainian_IE */
+    { 0x000006b5, 19619 }, /* Macedonia_DSE */
+    { 0x000006b6, 26248 }, /* Ukrainian_I */
+    { 0x000006b7, 26299 }, /* 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, 22952 }, /* Serbian_TSHE */
+    { 0x000006bc, 19675 }, /* Macedonia_KJE */
+    { 0x000006bd, 26210 }, /* Ukrainian_GHE_WITH_UPTURN */
     { 0x000006be, 8419 }, /* Byelorussian_SHORTU */
     { 0x000006bf, 9068 }, /* Cyrillic_DZHE */
     { 0x000006c0, 10282 }, /* Cyrillic_yu */
@@ -5956,460 +5998,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, 19404 }, /* leftradical */
+    { 0x000008a2, 25682 }, /* topleftradical */
+    { 0x000008a3, 16728 }, /* horizconnector */
+    { 0x000008a4, 25656 }, /* topintegral */
     { 0x000008a5, 3422 }, /* botintegral */
-    { 0x000008a6, 26587 }, /* vertconnector */
-    { 0x000008a7, 25718 }, /* topleftsqbracket */
+    { 0x000008a6, 26566 }, /* vertconnector */
+    { 0x000008a7, 25697 }, /* topleftsqbracket */
     { 0x000008a8, 3448 }, /* botleftsqbracket */
-    { 0x000008a9, 25767 }, /* toprightsqbracket */
+    { 0x000008a9, 25746 }, /* toprightsqbracket */
     { 0x000008aa, 3497 }, /* botrightsqbracket */
-    { 0x000008ab, 25689 }, /* topleftparens */
+    { 0x000008ab, 25668 }, /* topleftparens */
     { 0x000008ac, 3434 }, /* botleftparens */
-    { 0x000008ad, 25752 }, /* toprightparens */
+    { 0x000008ad, 25731 }, /* toprightparens */
     { 0x000008ae, 3482 }, /* botrightparens */
-    { 0x000008af, 19388 }, /* leftmiddlecurlybrace */
-    { 0x000008b0, 22522 }, /* rightmiddlecurlybrace */
-    { 0x000008b1, 25735 }, /* topleftsummation */
+    { 0x000008af, 19354 }, /* leftmiddlecurlybrace */
+    { 0x000008b0, 22501 }, /* rightmiddlecurlybrace */
+    { 0x000008b1, 25714 }, /* topleftsummation */
     { 0x000008b2, 3465 }, /* botleftsummation */
-    { 0x000008b3, 25808 }, /* topvertsummationconnector */
+    { 0x000008b3, 25787 }, /* topvertsummationconnector */
     { 0x000008b4, 3538 }, /* botvertsummationconnector */
-    { 0x000008b5, 25785 }, /* toprightsummation */
+    { 0x000008b5, 25764 }, /* 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, 22523 }, /* rightmiddlesummation */
+    { 0x000008bc, 19465 }, /* lessthanequal */
+    { 0x000008bd, 20173 }, /* notequal */
+    { 0x000008be, 13312 }, /* greaterthanequal */
+    { 0x000008bf, 17361 }, /* integral */
+    { 0x000008c0, 25540 }, /* therefore */
+    { 0x000008c1, 26548 }, /* variation */
+    { 0x000008c2, 17323 }, /* infinity */
+    { 0x000008c5, 19995 }, /* 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, 23060 }, /* similarequal */
+    { 0x000008cd, 17244 }, /* ifonlyif */
+    { 0x000008ce, 17295 }, /* implies */
+    { 0x000008cf, 17203 }, /* identical */
+    { 0x000008d6, 22347 }, /* radical */
+    { 0x000008da, 17303 }, /* includedin */
+    { 0x000008db, 17314 }, /* includes */
+    { 0x000008dc, 17370 }, /* intersection */
+    { 0x000008dd, 26423 }, /* union */
+    { 0x000008de, 19505 }, /* logicaland */
+    { 0x000008df, 19516 }, /* logicalor */
+    { 0x000008ef, 21524 }, /* partialderivative */
+    { 0x000008f6, 12688 }, /* function */
+    { 0x000008fb, 19314 }, /* leftarrow */
+    { 0x000008fc, 26448 }, /* uparrow */
+    { 0x000008fd, 22458 }, /* rightarrow */
+    { 0x000008fe, 11364 }, /* downarrow */
     { 0x000009df, 3410 }, /* blank */
-    { 0x000009e0, 23872 }, /* soliddiamond */
+    { 0x000009e0, 23851 }, /* soliddiamond */
     { 0x000009e1, 8603 }, /* checkerboard */
-    { 0x000009e2, 17125 }, /* ht */
-    { 0x000009e3, 12495 }, /* ff */
+    { 0x000009e2, 17091 }, /* 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, 19479 }, /* lf */
+    { 0x000009e8, 20123 }, /* nl */
+    { 0x000009e9, 26603 }, /* vt */
+    { 0x000009ea, 19550 }, /* lowrightcorner */
+    { 0x000009eb, 26477 }, /* uprightcorner */
+    { 0x000009ec, 26464 }, /* upleftcorner */
+    { 0x000009ed, 19536 }, /* 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, 19445 }, /* leftt */
+    { 0x000009f5, 22606 }, /* 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, 25782 }, /* topt */
+    { 0x000009f8, 26558 }, /* vertbar */
+    { 0x00000aa1, 11960 }, /* emspace */
+    { 0x00000aa2, 12059 }, /* enspace */
+    { 0x00000aa3, 11853 }, /* em3space */
+    { 0x00000aa4, 11862 }, /* em4space */
+    { 0x00000aa5, 11253 }, /* digitspace */
+    { 0x00000aa6, 22206 }, /* punctspace */
+    { 0x00000aa7, 25550 }, /* thinspace */
+    { 0x00000aa8, 14443 }, /* hairspace */
+    { 0x00000aa9, 11887 }, /* emdash */
+    { 0x00000aaa, 11972 }, /* endash */
+    { 0x00000aac, 23048 }, /* signifblank */
+    { 0x00000aae, 11844 }, /* ellipsis */
+    { 0x00000aaf, 11299 }, /* doubbaselinedot */
+    { 0x00000ab0, 20815 }, /* onethird */
+    { 0x00000ab1, 25898 }, /* twothirds */
+    { 0x00000ab2, 20753 }, /* onefifth */
+    { 0x00000ab3, 25863 }, /* twofifths */
+    { 0x00000ab4, 25591 }, /* threefifths */
+    { 0x00000ab5, 12639 }, /* fourfifths */
+    { 0x00000ab6, 20781 }, /* 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, 19297 }, /* leftanglebracket */
+    { 0x00000abd, 11172 }, /* decimalpoint */
+    { 0x00000abe, 22440 }, /* rightanglebracket */
+    { 0x00000abf, 19729 }, /* marker */
+    { 0x00000ac3, 20743 }, /* oneeighth */
+    { 0x00000ac4, 25578 }, /* threeeighths */
+    { 0x00000ac5, 12589 }, /* fiveeighths */
+    { 0x00000ac6, 22965 }, /* seveneighths */
+    { 0x00000ac9, 25821 }, /* trademark */
+    { 0x00000aca, 23034 }, /* signaturemark */
+    { 0x00000acb, 25831 }, /* trademarkincircle */
+    { 0x00000acc, 19375 }, /* leftopentriangle */
+    { 0x00000acd, 22544 }, /* rightopentriangle */
+    { 0x00000ace, 11922 }, /* emopencircle */
+    { 0x00000acf, 11935 }, /* emopenrectangle */
+    { 0x00000ad0, 19425 }, /* leftsinglequotemark */
+    { 0x00000ad1, 22585 }, /* rightsinglequotemark */
+    { 0x00000ad2, 19334 }, /* leftdoublequotemark */
+    { 0x00000ad3, 22480 }, /* rightdoublequotemark */
+    { 0x00000ad4, 22128 }, /* prescription */
+    { 0x00000ad5, 21578 }, /* permille */
+    { 0x00000ad6, 19787 }, /* minutes */
+    { 0x00000ad7, 22772 }, /* seconds */
+    { 0x00000ad9, 19229 }, /* 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, 20842 }, /* openrectbullet */
+    { 0x00000ae3, 20884 }, /* opentribulletup */
+    { 0x00000ae4, 20866 }, /* opentribulletdown */
+    { 0x00000ae5, 20857 }, /* openstar */
+    { 0x00000ae6, 11979 }, /* enfilledcircbullet */
+    { 0x00000ae7, 11998 }, /* enfilledsqbullet */
+    { 0x00000ae8, 12545 }, /* filledtribulletup */
+    { 0x00000ae9, 12525 }, /* filledtribulletdown */
+    { 0x00000aea, 19392 }, /* leftpointer */
+    { 0x00000aeb, 22562 }, /* rightpointer */
     { 0x00000aec, 8649 }, /* club */
-    { 0x00000aed, 11295 }, /* diamond */
-    { 0x00000aee, 16162 }, /* heart */
-    { 0x00000af0, 19750 }, /* maltesecross */
+    { 0x00000aed, 11245 }, /* diamond */
+    { 0x00000aee, 16141 }, /* heart */
+    { 0x00000af0, 19716 }, /* 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, 19908 }, /* musicalsharp */
+    { 0x00000af6, 19896 }, /* musicalflat */
+    { 0x00000af7, 19705 }, /* malesymbol */
+    { 0x00000af8, 12432 }, /* femalesymbol */
+    { 0x00000af9, 24415 }, /* telephone */
+    { 0x00000afa, 24425 }, /* telephonerecorder */
+    { 0x00000afb, 21598 }, /* phonographcopyright */
     { 0x00000afc, 8513 }, /* caret */
-    { 0x00000afd, 23110 }, /* singlelowquotemark */
-    { 0x00000afe, 11390 }, /* doublelowquotemark */
+    { 0x00000afd, 23089 }, /* 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, 19324 }, /* leftcaret */
+    { 0x00000ba6, 22469 }, /* rightcaret */
+    { 0x00000ba8, 11374 }, /* downcaret */
+    { 0x00000ba9, 26456 }, /* upcaret */
+    { 0x00000bc0, 21385 }, /* overbar */
+    { 0x00000bc2, 11403 }, /* downtack */
+    { 0x00000bc3, 26491 }, /* upshoe */
+    { 0x00000bc4, 11393 }, /* downstile */
+    { 0x00000bc6, 26398 }, /* underbar */
+    { 0x00000bca, 18190 }, /* jot */
+    { 0x00000bcc, 22221 }, /* quad */
+    { 0x00000bce, 26506 }, /* 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, 26498 }, /* upstile */
+    { 0x00000bd6, 11384 }, /* downshoe */
+    { 0x00000bd8, 22575 }, /* rightshoe */
+    { 0x00000bda, 19416 }, /* leftshoe */
+    { 0x00000bdc, 19451 }, /* lefttack */
+    { 0x00000bfc, 22613 }, /* 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, 24678 }, /* Thai_kokai */
+    { 0x00000da2, 24608 }, /* Thai_khokhai */
+    { 0x00000da3, 24634 }, /* Thai_khokhuat */
+    { 0x00000da4, 24648 }, /* Thai_khokhwai */
+    { 0x00000da5, 24621 }, /* Thai_khokhon */
+    { 0x00000da6, 24662 }, /* Thai_khorakhang */
+    { 0x00000da7, 24991 }, /* Thai_ngongu */
+    { 0x00000da8, 24484 }, /* Thai_chochan */
+    { 0x00000da9, 24511 }, /* Thai_choching */
+    { 0x00000daa, 24497 }, /* Thai_chochang */
+    { 0x00000dab, 25352 }, /* Thai_soso */
+    { 0x00000dac, 24525 }, /* Thai_chochoe */
+    { 0x00000dad, 25528 }, /* Thai_yoying */
+    { 0x00000dae, 24538 }, /* Thai_dochada */
+    { 0x00000daf, 25481 }, /* Thai_topatak */
+    { 0x00000db0, 25440 }, /* Thai_thothan */
+    { 0x00000db1, 25390 }, /* Thai_thonangmontho */
+    { 0x00000db2, 25409 }, /* Thai_thophuthao */
+    { 0x00000db3, 25017 }, /* Thai_nonen */
+    { 0x00000db4, 24551 }, /* Thai_dodek */
+    { 0x00000db5, 25494 }, /* Thai_totao */
+    { 0x00000db6, 25467 }, /* Thai_thothung */
+    { 0x00000db7, 25425 }, /* Thai_thothahan */
+    { 0x00000db8, 25453 }, /* Thai_thothong */
+    { 0x00000db9, 25028 }, /* Thai_nonu */
+    { 0x00000dba, 24470 }, /* Thai_bobaimai */
+    { 0x00000dbb, 25119 }, /* Thai_popla */
+    { 0x00000dbc, 25089 }, /* Thai_phophung */
+    { 0x00000dbd, 24562 }, /* Thai_fofa */
+    { 0x00000dbe, 25076 }, /* Thai_phophan */
+    { 0x00000dbf, 24572 }, /* Thai_fofan */
+    { 0x00000dc0, 25103 }, /* Thai_phosamphao */
+    { 0x00000dc1, 24981 }, /* Thai_moma */
+    { 0x00000dc2, 25517 }, /* Thai_yoyak */
+    { 0x00000dc3, 25130 }, /* Thai_rorua */
+    { 0x00000dc4, 25141 }, /* Thai_ru */
+    { 0x00000dc5, 24841 }, /* Thai_loling */
+    { 0x00000dc6, 24853 }, /* Thai_lu */
+    { 0x00000dc7, 25505 }, /* Thai_wowaen */
+    { 0x00000dc8, 25340 }, /* Thai_sosala */
+    { 0x00000dc9, 25328 }, /* Thai_sorusi */
+    { 0x00000dca, 25362 }, /* Thai_sosua */
+    { 0x00000dcb, 24583 }, /* Thai_hohip */
+    { 0x00000dcc, 24828 }, /* Thai_lochula */
+    { 0x00000dcd, 25038 }, /* Thai_oang */
+    { 0x00000dce, 24594 }, /* Thai_honokhuk */
+    { 0x00000dcf, 25048 }, /* Thai_paiyannoi */
+    { 0x00000dd0, 25149 }, /* Thai_saraa */
+    { 0x00000dd1, 24889 }, /* Thai_maihanakat */
+    { 0x00000dd2, 25160 }, /* Thai_saraaa */
+    { 0x00000dd3, 25223 }, /* Thai_saraam */
+    { 0x00000dd4, 25246 }, /* Thai_sarai */
+    { 0x00000dd5, 25257 }, /* Thai_saraii */
+    { 0x00000dd6, 25291 }, /* Thai_saraue */
+    { 0x00000dd7, 25303 }, /* Thai_sarauee */
+    { 0x00000dd8, 25280 }, /* Thai_sarau */
+    { 0x00000dd9, 25316 }, /* Thai_sarauu */
+    { 0x00000dda, 25063 }, /* Thai_phinthu */
+    { 0x00000dde, 24905 }, /* Thai_maihanakat_maitho */
+    { 0x00000ddf, 24460 }, /* Thai_baht */
+    { 0x00000de0, 25235 }, /* Thai_sarae */
+    { 0x00000de1, 25172 }, /* Thai_saraae */
+    { 0x00000de2, 25269 }, /* Thai_sarao */
+    { 0x00000de3, 25204 }, /* Thai_saraaimaimuan */
+    { 0x00000de4, 25184 }, /* Thai_saraaimaimalai */
+    { 0x00000de5, 24689 }, /* Thai_lakkhangyao */
+    { 0x00000de6, 24967 }, /* Thai_maiyamok */
+    { 0x00000de7, 24928 }, /* Thai_maitaikhu */
+    { 0x00000de8, 24878 }, /* Thai_maiek */
+    { 0x00000de9, 24943 }, /* Thai_maitho */
+    { 0x00000dea, 24955 }, /* Thai_maitri */
+    { 0x00000deb, 24861 }, /* Thai_maichattawa */
+    { 0x00000dec, 25373 }, /* Thai_thanthakhat */
+    { 0x00000ded, 25003 }, /* Thai_nikhahit */
+    { 0x00000df0, 24816 }, /* Thai_leksun */
+    { 0x00000df1, 24754 }, /* Thai_leknung */
+    { 0x00000df2, 24803 }, /* Thai_leksong */
+    { 0x00000df3, 24780 }, /* Thai_leksam */
+    { 0x00000df4, 24792 }, /* Thai_leksi */
+    { 0x00000df5, 24719 }, /* Thai_lekha */
+    { 0x00000df6, 24730 }, /* Thai_lekhok */
+    { 0x00000df7, 24706 }, /* Thai_lekchet */
+    { 0x00000df8, 24767 }, /* Thai_lekpaet */
+    { 0x00000df9, 24742 }, /* 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, 18845 }, /* Korean_Won */
+    { 0x000013bc, 20562 }, /* OE */
+    { 0x000013bd, 20565 }, /* oe */
+    { 0x000013be, 31580 }, /* Ydiaeresis */
+    { 0x000020ac, 12122 }, /* EuroSign */
     { 0x0000fd01, 125 }, /* 3270_Duplicate */
     { 0x0000fd02, 195 }, /* 3270_FieldMark */
     { 0x0000fd03, 343 }, /* 3270_Right2 */
@@ -6440,293 +6482,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, 17829 }, /* ISO_Lock */
+    { 0x0000fe02, 17712 }, /* ISO_Level2_Latch */
+    { 0x0000fe03, 17762 }, /* ISO_Level3_Shift */
+    { 0x0000fe04, 17729 }, /* ISO_Level3_Latch */
+    { 0x0000fe05, 17746 }, /* ISO_Level3_Lock */
+    { 0x0000fe06, 17617 }, /* ISO_Group_Latch */
+    { 0x0000fe07, 17633 }, /* ISO_Group_Lock */
+    { 0x0000fe08, 17874 }, /* ISO_Next_Group */
+    { 0x0000fe09, 17889 }, /* ISO_Next_Group_Lock */
+    { 0x0000fe0a, 17998 }, /* ISO_Prev_Group */
+    { 0x0000fe0b, 18013 }, /* ISO_Prev_Group_Lock */
+    { 0x0000fe0c, 17580 }, /* ISO_First_Group */
+    { 0x0000fe0d, 17596 }, /* ISO_First_Group_Lock */
+    { 0x0000fe0e, 17664 }, /* ISO_Last_Group */
+    { 0x0000fe0f, 17679 }, /* ISO_Last_Group_Lock */
+    { 0x0000fe11, 17812 }, /* ISO_Level5_Shift */
+    { 0x0000fe12, 17779 }, /* ISO_Level5_Latch */
+    { 0x0000fe13, 17796 }, /* ISO_Level5_Lock */
+    { 0x0000fe20, 17699 }, /* ISO_Left_Tab */
+    { 0x0000fe21, 17857 }, /* ISO_Move_Line_Up */
+    { 0x0000fe22, 17838 }, /* ISO_Move_Line_Down */
+    { 0x0000fe23, 17931 }, /* ISO_Partial_Line_Up */
+    { 0x0000fe24, 17909 }, /* ISO_Partial_Line_Down */
+    { 0x0000fe25, 17951 }, /* ISO_Partial_Space_Left */
+    { 0x0000fe26, 17974 }, /* ISO_Partial_Space_Right */
+    { 0x0000fe27, 18107 }, /* ISO_Set_Margin_Left */
+    { 0x0000fe28, 18127 }, /* ISO_Set_Margin_Right */
+    { 0x0000fe29, 18058 }, /* ISO_Release_Margin_Left */
+    { 0x0000fe2a, 18082 }, /* ISO_Release_Margin_Right */
+    { 0x0000fe2b, 18033 }, /* ISO_Release_Both_Margins */
+    { 0x0000fe2c, 17518 }, /* ISO_Fast_Cursor_Left */
+    { 0x0000fe2d, 17539 }, /* ISO_Fast_Cursor_Right */
+    { 0x0000fe2e, 17561 }, /* ISO_Fast_Cursor_Up */
+    { 0x0000fe2f, 17497 }, /* ISO_Fast_Cursor_Down */
+    { 0x0000fe30, 17420 }, /* ISO_Continuous_Underline */
+    { 0x0000fe31, 17445 }, /* ISO_Discontinuous_Underline */
+    { 0x0000fe32, 17473 }, /* ISO_Emphasize */
+    { 0x0000fe33, 17402 }, /* ISO_Center_Object */
+    { 0x0000fe34, 17487 }, /* 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, 22403 }, /* RepeatKeys_Enable */
+    { 0x0000fe73, 23835 }, /* 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, 23897 }, /* StickyKeys_Enable */
+    { 0x0000fe76, 19830 }, /* MouseKeys_Enable */
+    { 0x0000fe77, 19807 }, /* MouseKeys_Accel_Enable */
+    { 0x0000fe78, 21393 }, /* Overlay1_Enable */
+    { 0x0000fe79, 21409 }, /* 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, 22141 }, /* Prev_Virtual_Screen */
+    { 0x0000fed2, 20076 }, /* Next_Virtual_Screen */
+    { 0x0000fed4, 19209 }, /* Last_Virtual_Screen */
+    { 0x0000fed5, 24443 }, /* Terminate_Server */
+    { 0x0000fee0, 22059 }, /* Pointer_Left */
+    { 0x0000fee1, 22072 }, /* Pointer_Right */
+    { 0x0000fee2, 22086 }, /* Pointer_Up */
+    { 0x0000fee3, 21904 }, /* Pointer_Down */
+    { 0x0000fee4, 22097 }, /* Pointer_UpLeft */
+    { 0x0000fee5, 22112 }, /* Pointer_UpRight */
+    { 0x0000fee6, 21917 }, /* Pointer_DownLeft */
+    { 0x0000fee7, 21934 }, /* Pointer_DownRight */
+    { 0x0000fee8, 21732 }, /* Pointer_Button_Dflt */
+    { 0x0000fee9, 21652 }, /* Pointer_Button1 */
+    { 0x0000feea, 21668 }, /* Pointer_Button2 */
+    { 0x0000feeb, 21684 }, /* Pointer_Button3 */
+    { 0x0000feec, 21700 }, /* Pointer_Button4 */
+    { 0x0000feed, 21716 }, /* Pointer_Button5 */
+    { 0x0000feee, 21842 }, /* Pointer_DblClick_Dflt */
+    { 0x0000feef, 21752 }, /* Pointer_DblClick1 */
+    { 0x0000fef0, 21770 }, /* Pointer_DblClick2 */
+    { 0x0000fef1, 21788 }, /* Pointer_DblClick3 */
+    { 0x0000fef2, 21806 }, /* Pointer_DblClick4 */
+    { 0x0000fef3, 21824 }, /* Pointer_DblClick5 */
+    { 0x0000fef4, 22022 }, /* Pointer_Drag_Dflt */
+    { 0x0000fef5, 21952 }, /* Pointer_Drag1 */
+    { 0x0000fef6, 21966 }, /* Pointer_Drag2 */
+    { 0x0000fef7, 21980 }, /* Pointer_Drag3 */
+    { 0x0000fef8, 21994 }, /* Pointer_Drag4 */
+    { 0x0000fef9, 22040 }, /* Pointer_EnableKeys */
+    { 0x0000fefa, 21633 }, /* Pointer_Accelerate */
+    { 0x0000fefb, 21864 }, /* Pointer_DfltBtnNext */
+    { 0x0000fefc, 21884 }, /* Pointer_DfltBtnPrev */
+    { 0x0000fefd, 22008 }, /* Pointer_Drag5 */
     { 0x0000ff08, 3362 }, /* BackSpace */
-    { 0x0000ff09, 24380 }, /* Tab */
-    { 0x0000ff0a, 19516 }, /* Linefeed */
+    { 0x0000ff09, 24359 }, /* Tab */
+    { 0x0000ff0a, 19482 }, /* 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, 22427 }, /* Return */
+    { 0x0000ff13, 21542 }, /* Pause */
+    { 0x0000ff14, 22760 }, /* Scroll_Lock */
+    { 0x0000ff15, 24340 }, /* Sys_Req */
+    { 0x0000ff1b, 12089 }, /* Escape */
+    { 0x0000ff20, 19859 }, /* Multi_key */
+    { 0x0000ff21, 18793 }, /* Kanji */
+    { 0x0000ff22, 19850 }, /* Muhenkan */
+    { 0x0000ff23, 16675 }, /* Henkan_Mode */
+    { 0x0000ff24, 22623 }, /* Romaji */
+    { 0x0000ff25, 16696 }, /* Hiragana */
+    { 0x0000ff26, 18818 }, /* Katakana */
+    { 0x0000ff27, 16705 }, /* Hiragana_Katakana */
+    { 0x0000ff28, 31696 }, /* Zenkaku */
+    { 0x0000ff29, 16109 }, /* Hankaku */
+    { 0x0000ff2a, 31704 }, /* Zenkaku_Hankaku */
+    { 0x0000ff2b, 25813 }, /* Touroku */
+    { 0x0000ff2c, 19746 }, /* Massyo */
+    { 0x0000ff2d, 18399 }, /* Kana_Lock */
+    { 0x0000ff2e, 18610 }, /* 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, 23073 }, /* SingleCandidate */
+    { 0x0000ff3d, 19869 }, /* MultipleCandidate */
+    { 0x0000ff3e, 22161 }, /* PreviousCandidate */
+    { 0x0000ff3f, 15735 }, /* Hangul_Special */
+    { 0x0000ff50, 16723 }, /* Home */
+    { 0x0000ff51, 19292 }, /* Left */
+    { 0x0000ff52, 26445 }, /* Up */
+    { 0x0000ff53, 22434 }, /* Right */
+    { 0x0000ff54, 11359 }, /* Down */
+    { 0x0000ff55, 22185 }, /* Prior */
+    { 0x0000ff56, 20071 }, /* 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, 22788 }, /* Select */
+    { 0x0000ff61, 22179 }, /* Print */
+    { 0x0000ff62, 12149 }, /* Execute */
+    { 0x0000ff63, 17332 }, /* Insert */
+    { 0x0000ff65, 26418 }, /* Undo */
+    { 0x0000ff66, 22387 }, /* Redo */
+    { 0x0000ff67, 19753 }, /* 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, 19795 }, /* Mode_switch */
+    { 0x0000ff7f, 20217 }, /* Num_Lock */
+    { 0x0000ff80, 19122 }, /* KP_Space */
+    { 0x0000ff89, 19143 }, /* KP_Tab */
+    { 0x0000ff8d, 18979 }, /* KP_Enter */
+    { 0x0000ff91, 18997 }, /* KP_F1 */
+    { 0x0000ff92, 19003 }, /* KP_F2 */
+    { 0x0000ff93, 19009 }, /* KP_F3 */
+    { 0x0000ff94, 19015 }, /* KP_F4 */
+    { 0x0000ff95, 19021 }, /* KP_Home */
+    { 0x0000ff96, 19039 }, /* KP_Left */
+    { 0x0000ff97, 19150 }, /* KP_Up */
+    { 0x0000ff98, 19100 }, /* KP_Right */
+    { 0x0000ff99, 18964 }, /* KP_Down */
+    { 0x0000ff9a, 19091 }, /* KP_Prior */
+    { 0x0000ff9b, 19059 }, /* KP_Next */
+    { 0x0000ff9c, 18972 }, /* KP_End */
+    { 0x0000ff9d, 18924 }, /* KP_Begin */
+    { 0x0000ff9e, 19029 }, /* KP_Insert */
+    { 0x0000ff9f, 18944 }, /* KP_Delete */
+    { 0x0000ffaa, 19047 }, /* KP_Multiply */
+    { 0x0000ffab, 18906 }, /* KP_Add */
+    { 0x0000ffac, 19109 }, /* KP_Separator */
+    { 0x0000ffad, 19131 }, /* KP_Subtract */
+    { 0x0000ffae, 18933 }, /* KP_Decimal */
+    { 0x0000ffaf, 18954 }, /* KP_Divide */
+    { 0x0000ffb0, 18856 }, /* KP_0 */
+    { 0x0000ffb1, 18861 }, /* KP_1 */
+    { 0x0000ffb2, 18866 }, /* KP_2 */
+    { 0x0000ffb3, 18871 }, /* KP_3 */
+    { 0x0000ffb4, 18876 }, /* KP_4 */
+    { 0x0000ffb5, 18881 }, /* KP_5 */
+    { 0x0000ffb6, 18886 }, /* KP_6 */
+    { 0x0000ffb7, 18891 }, /* KP_7 */
+    { 0x0000ffb8, 18896 }, /* KP_8 */
+    { 0x0000ffb9, 18901 }, /* KP_9 */
+    { 0x0000ffbd, 18988 }, /* 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, 23007 }, /* Shift_L */
+    { 0x0000ffe2, 23026 }, /* 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, 23015 }, /* Shift_Lock */
+    { 0x0000ffe7, 19758 }, /* Meta_L */
+    { 0x0000ffe8, 19765 }, /* 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, 24324 }, /* Super_L */
+    { 0x0000ffec, 24332 }, /* Super_R */
+    { 0x0000ffed, 17094 }, /* Hyper_L */
+    { 0x0000ffee, 17102 }, /* Hyper_R */
     { 0x0000fff1, 3642 }, /* braille_dot_1 */
     { 0x0000fff2, 3671 }, /* braille_dot_2 */
     { 0x0000fff3, 3685 }, /* braille_dot_3 */
@@ -6737,30 +6776,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, 26592 }, /* VoidSymbol */
+    { 0x0100012c, 17165 }, /* Ibreve */
+    { 0x0100012d, 17172 }, /* ibreve */
+    { 0x01000174, 26624 }, /* Wcircumflex */
+    { 0x01000175, 26636 }, /* wcircumflex */
+    { 0x01000176, 31545 }, /* Ycircumflex */
+    { 0x01000177, 31557 }, /* ycircumflex */
+    { 0x0100018f, 22710 }, /* SCHWA */
+    { 0x0100019f, 20266 }, /* Obarred */
+    { 0x010001a0, 20601 }, /* Ohorn */
+    { 0x010001a1, 20607 }, /* ohorn */
+    { 0x010001af, 26058 }, /* Uhorn */
+    { 0x010001b0, 26064 }, /* uhorn */
+    { 0x010001b5, 31747 }, /* Zstroke */
+    { 0x010001b6, 31755 }, /* zstroke */
+    { 0x010001b7, 12179 }, /* EZH */
+    { 0x010001d1, 20302 }, /* Ocaron */
+    { 0x010001d2, 20309 }, /* ocaron */
+    { 0x010001e6, 12735 }, /* Gcaron */
+    { 0x010001e7, 12742 }, /* gcaron */
+    { 0x01000259, 22716 }, /* schwa */
+    { 0x01000275, 20274 }, /* obarred */
+    { 0x01000292, 12183 }, /* ezh */
     { 0x01000300, 8715 }, /* combining_grave */
     { 0x01000301, 8680 }, /* combining_acute */
     { 0x01000303, 8746 }, /* combining_tilde */
@@ -6907,162 +6946,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, 23545 }, /* Sinh_ng */
+    { 0x01000d83, 23339 }, /* Sinh_h2 */
+    { 0x01000d85, 23108 }, /* Sinh_a */
+    { 0x01000d86, 23115 }, /* Sinh_aa */
+    { 0x01000d87, 23132 }, /* Sinh_ae */
+    { 0x01000d88, 23149 }, /* Sinh_aee */
+    { 0x01000d89, 23355 }, /* Sinh_i */
+    { 0x01000d8a, 23370 }, /* Sinh_ii */
+    { 0x01000d8b, 23756 }, /* Sinh_u */
+    { 0x01000d8c, 23771 }, /* Sinh_uu */
+    { 0x01000d8d, 23655 }, /* Sinh_ri */
+    { 0x01000d8e, 23663 }, /* Sinh_rii */
+    { 0x01000d8f, 23464 }, /* Sinh_lu */
+    { 0x01000d90, 23481 }, /* Sinh_luu */
+    { 0x01000d91, 23282 }, /* Sinh_e */
+    { 0x01000d92, 23297 }, /* Sinh_ee */
+    { 0x01000d93, 23168 }, /* Sinh_ai */
+    { 0x01000d94, 23598 }, /* Sinh_o */
+    { 0x01000d95, 23613 }, /* Sinh_oo */
+    { 0x01000d96, 23193 }, /* Sinh_au */
+    { 0x01000d9a, 23414 }, /* Sinh_ka */
+    { 0x01000d9b, 23422 }, /* Sinh_kha */
+    { 0x01000d9c, 23322 }, /* Sinh_ga */
+    { 0x01000d9d, 23330 }, /* Sinh_gha */
+    { 0x01000d9e, 23553 }, /* Sinh_ng2 */
+    { 0x01000d9f, 23562 }, /* Sinh_nga */
+    { 0x01000da0, 23227 }, /* Sinh_ca */
+    { 0x01000da1, 23235 }, /* Sinh_cha */
+    { 0x01000da2, 23387 }, /* Sinh_ja */
+    { 0x01000da3, 23395 }, /* Sinh_jha */
+    { 0x01000da4, 23589 }, /* Sinh_nya */
+    { 0x01000da5, 23404 }, /* Sinh_jnya */
+    { 0x01000da6, 23571 }, /* Sinh_nja */
+    { 0x01000da7, 23737 }, /* Sinh_tta */
+    { 0x01000da8, 23746 }, /* Sinh_ttha */
+    { 0x01000da9, 23244 }, /* Sinh_dda */
+    { 0x01000daa, 23253 }, /* Sinh_ddha */
+    { 0x01000dab, 23580 }, /* Sinh_nna */
+    { 0x01000dac, 23525 }, /* Sinh_ndda */
+    { 0x01000dad, 23718 }, /* Sinh_tha */
+    { 0x01000dae, 23727 }, /* Sinh_thha */
+    { 0x01000daf, 23263 }, /* Sinh_dha */
+    { 0x01000db0, 23272 }, /* Sinh_dhha */
+    { 0x01000db1, 23517 }, /* Sinh_na */
+    { 0x01000db3, 23535 }, /* Sinh_ndha */
+    { 0x01000db4, 23630 }, /* Sinh_pa */
+    { 0x01000db5, 23638 }, /* Sinh_pha */
+    { 0x01000db6, 23210 }, /* Sinh_ba */
+    { 0x01000db7, 23218 }, /* Sinh_bha */
+    { 0x01000db8, 23500 }, /* Sinh_ma */
+    { 0x01000db9, 23508 }, /* Sinh_mba */
+    { 0x01000dba, 23796 }, /* Sinh_ya */
+    { 0x01000dbb, 23647 }, /* Sinh_ra */
+    { 0x01000dbd, 23447 }, /* Sinh_la */
+    { 0x01000dc0, 23788 }, /* Sinh_va */
+    { 0x01000dc1, 23699 }, /* Sinh_sha */
+    { 0x01000dc2, 23708 }, /* Sinh_ssha */
+    { 0x01000dc3, 23691 }, /* Sinh_sa */
+    { 0x01000dc4, 23347 }, /* Sinh_ha */
+    { 0x01000dc5, 23455 }, /* Sinh_lla */
+    { 0x01000dc6, 23314 }, /* Sinh_fa */
+    { 0x01000dca, 23185 }, /* Sinh_al */
+    { 0x01000dcf, 23123 }, /* Sinh_aa2 */
+    { 0x01000dd0, 23140 }, /* Sinh_ae2 */
+    { 0x01000dd1, 23158 }, /* Sinh_aee2 */
+    { 0x01000dd2, 23362 }, /* Sinh_i2 */
+    { 0x01000dd3, 23378 }, /* Sinh_ii2 */
+    { 0x01000dd4, 23763 }, /* Sinh_u2 */
+    { 0x01000dd6, 23779 }, /* Sinh_uu2 */
+    { 0x01000dd8, 23672 }, /* Sinh_ru2 */
+    { 0x01000dd9, 23289 }, /* Sinh_e2 */
+    { 0x01000dda, 23305 }, /* Sinh_ee2 */
+    { 0x01000ddb, 23176 }, /* Sinh_ai2 */
+    { 0x01000ddc, 23605 }, /* Sinh_o2 */
+    { 0x01000ddd, 23621 }, /* Sinh_oo2 */
+    { 0x01000dde, 23201 }, /* Sinh_au2 */
+    { 0x01000ddf, 23472 }, /* Sinh_lu2 */
+    { 0x01000df2, 23681 }, /* Sinh_ruu2 */
+    { 0x01000df3, 23490 }, /* Sinh_luu2 */
+    { 0x01000df4, 23431 }, /* 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, 19240 }, /* Lbelowdot */
+    { 0x01001e37, 19250 }, /* lbelowdot */
+    { 0x01001e40, 19585 }, /* Mabovedot */
+    { 0x01001e41, 19595 }, /* mabovedot */
+    { 0x01001e56, 21438 }, /* Pabovedot */
+    { 0x01001e57, 21448 }, /* pabovedot */
+    { 0x01001e60, 22644 }, /* Sabovedot */
+    { 0x01001e61, 22654 }, /* sabovedot */
+    { 0x01001e6a, 24363 }, /* Tabovedot */
+    { 0x01001e6b, 24373 }, /* tabovedot */
+    { 0x01001e80, 26670 }, /* Wgrave */
+    { 0x01001e81, 26677 }, /* wgrave */
+    { 0x01001e82, 26610 }, /* Wacute */
+    { 0x01001e83, 26617 }, /* wacute */
+    { 0x01001e84, 26648 }, /* Wdiaeresis */
+    { 0x01001e85, 26659 }, /* wdiaeresis */
+    { 0x01001e8a, 26696 }, /* Xabovedot */
+    { 0x01001e8b, 26706 }, /* xabovedot */
     { 0x01001ea0, 416 }, /* Abelowdot */
     { 0x01001ea1, 426 }, /* abelowdot */
     { 0x01001ea2, 868 }, /* Ahook */
@@ -7087,116 +7126,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, 17267 }, /* Ihook */
+    { 0x01001ec9, 17273 }, /* ihook */
+    { 0x01001eca, 17145 }, /* Ibelowdot */
+    { 0x01001ecb, 17155 }, /* ibelowdot */
+    { 0x01001ecc, 20282 }, /* Obelowdot */
+    { 0x01001ecd, 20292 }, /* obelowdot */
+    { 0x01001ece, 20589 }, /* Ohook */
+    { 0x01001ecf, 20595 }, /* ohook */
+    { 0x01001ed0, 20340 }, /* Ocircumflexacute */
+    { 0x01001ed1, 20357 }, /* ocircumflexacute */
+    { 0x01001ed2, 20414 }, /* Ocircumflexgrave */
+    { 0x01001ed3, 20431 }, /* ocircumflexgrave */
+    { 0x01001ed4, 20448 }, /* Ocircumflexhook */
+    { 0x01001ed5, 20464 }, /* ocircumflexhook */
+    { 0x01001ed6, 20480 }, /* Ocircumflextilde */
+    { 0x01001ed7, 20497 }, /* ocircumflextilde */
+    { 0x01001ed8, 20374 }, /* Ocircumflexbelowdot */
+    { 0x01001ed9, 20394 }, /* ocircumflexbelowdot */
+    { 0x01001eda, 20613 }, /* Ohornacute */
+    { 0x01001edb, 20624 }, /* ohornacute */
+    { 0x01001edc, 20663 }, /* Ohorngrave */
+    { 0x01001edd, 20674 }, /* ohorngrave */
+    { 0x01001ede, 20685 }, /* Ohornhook */
+    { 0x01001edf, 20695 }, /* ohornhook */
+    { 0x01001ee0, 20705 }, /* Ohorntilde */
+    { 0x01001ee1, 20716 }, /* ohorntilde */
+    { 0x01001ee2, 20635 }, /* Ohornbelowdot */
+    { 0x01001ee3, 20649 }, /* ohornbelowdot */
+    { 0x01001ee4, 25926 }, /* Ubelowdot */
+    { 0x01001ee5, 25936 }, /* ubelowdot */
+    { 0x01001ee6, 26046 }, /* Uhook */
+    { 0x01001ee7, 26052 }, /* uhook */
+    { 0x01001ee8, 26070 }, /* Uhornacute */
+    { 0x01001ee9, 26081 }, /* uhornacute */
+    { 0x01001eea, 26120 }, /* Uhorngrave */
+    { 0x01001eeb, 26131 }, /* uhorngrave */
+    { 0x01001eec, 26142 }, /* Uhornhook */
+    { 0x01001eed, 26152 }, /* uhornhook */
+    { 0x01001eee, 26162 }, /* Uhorntilde */
+    { 0x01001eef, 26173 }, /* uhorntilde */
+    { 0x01001ef0, 26092 }, /* Uhornbelowdot */
+    { 0x01001ef1, 26106 }, /* uhornbelowdot */
+    { 0x01001ef2, 31595 }, /* Ygrave */
+    { 0x01001ef3, 31602 }, /* ygrave */
+    { 0x01001ef4, 31525 }, /* Ybelowdot */
+    { 0x01001ef5, 31535 }, /* ybelowdot */
+    { 0x01001ef6, 31609 }, /* Yhook */
+    { 0x01001ef7, 31615 }, /* yhook */
+    { 0x01001ef8, 31621 }, /* Ytilde */
+    { 0x01001ef9, 31628 }, /* ytilde */
+    { 0x01002070, 31734 }, /* zerosuperior */
+    { 0x01002074, 12664 }, /* foursuperior */
+    { 0x01002075, 12626 }, /* fivesuperior */
+    { 0x01002076, 23817 }, /* sixsuperior */
+    { 0x01002077, 22993 }, /* sevensuperior */
+    { 0x01002078, 11797 }, /* eightsuperior */
+    { 0x01002079, 20110 }, /* ninesuperior */
+    { 0x01002080, 31720 }, /* zerosubscript */
+    { 0x01002081, 20790 }, /* onesubscript */
+    { 0x01002082, 25873 }, /* twosubscript */
+    { 0x01002083, 25617 }, /* threesubscript */
+    { 0x01002084, 12650 }, /* foursubscript */
+    { 0x01002085, 12612 }, /* fivesubscript */
+    { 0x01002086, 23804 }, /* sixsubscript */
+    { 0x01002087, 22978 }, /* sevensubscript */
+    { 0x01002088, 11782 }, /* eightsubscript */
+    { 0x01002089, 20096 }, /* 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, 19496 }, /* LiraSign */
+    { 0x010020a5, 19772 }, /* MillSign */
+    { 0x010020a6, 20015 }, /* NairaSign */
+    { 0x010020a7, 21587 }, /* PesetaSign */
+    { 0x010020a8, 22630 }, /* RupeeSign */
+    { 0x010020a9, 26684 }, /* WonSign */
+    { 0x010020aa, 20057 }, /* NewSheqelSign */
+    { 0x010020ab, 11290 }, /* DongSign */
+    { 0x01002202, 21507 }, /* partdifferential */
+    { 0x01002205, 11951 }, /* emptyset */
+    { 0x01002208, 11834 }, /* elementof */
+    { 0x01002209, 20160 }, /* notelementof */
     { 0x0100220b, 8768 }, /* containsas */
-    { 0x0100221a, 23891 }, /* squareroot */
+    { 0x0100221a, 23870 }, /* squareroot */
     { 0x0100221b, 8839 }, /* cuberoot */
-    { 0x0100221c, 12727 }, /* fourthroot */
-    { 0x0100222c, 11314 }, /* dintegral */
-    { 0x0100222d, 25667 }, /* tintegral */
+    { 0x0100221c, 12677 }, /* fourthroot */
+    { 0x0100222c, 11264 }, /* dintegral */
+    { 0x0100222d, 25646 }, /* tintegral */
     { 0x01002235, 3396 }, /* because */
-    { 0x01002247, 20182 }, /* notapproxeq */
+    { 0x01002247, 20148 }, /* notapproxeq */
     { 0x01002248, 945 }, /* approxeq */
-    { 0x01002262, 20216 }, /* notidentical */
-    { 0x01002263, 23936 }, /* stricteq */
+    { 0x01002262, 20182 }, /* notidentical */
+    { 0x01002263, 23915 }, /* stricteq */
     { 0x01002800, 3628 }, /* braille_blank */
     { 0x01002801, 3783 }, /* braille_dots_1 */
     { 0x01002802, 6151 }, /* braille_dots_2 */
@@ -7453,420 +7492,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, 16910 }, /* hpIO */
+    { 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, 21017 }, /* osfCopy */
+    { 0x1004ff03, 21025 }, /* osfCut */
+    { 0x1004ff04, 21224 }, /* osfPaste */
+    { 0x1004ff07, 20961 }, /* osfBackTab */
+    { 0x1004ff08, 20948 }, /* osfBackSpace */
+    { 0x1004ff0b, 21008 }, /* osfClear */
+    { 0x1004ff1b, 21087 }, /* osfEscape */
+    { 0x1004ff31, 20937 }, /* osfAddMode */
+    { 0x1004ff32, 21258 }, /* osfPrimaryPaste */
+    { 0x1004ff33, 21274 }, /* osfQuickPaste */
+    { 0x1004ff40, 21189 }, /* osfPageLeft */
+    { 0x1004ff41, 21214 }, /* osfPageUp */
+    { 0x1004ff42, 21177 }, /* osfPageDown */
+    { 0x1004ff43, 21201 }, /* osfPageRight */
+    { 0x1004ff44, 20925 }, /* osfActivate */
+    { 0x1004ff45, 21141 }, /* osfMenuBar */
+    { 0x1004ff51, 21125 }, /* osfLeft */
+    { 0x1004ff52, 21351 }, /* osfUp */
+    { 0x1004ff53, 21311 }, /* osfRight */
+    { 0x1004ff54, 21057 }, /* osfDown */
+    { 0x1004ff57, 21076 }, /* osfEndLine */
+    { 0x1004ff58, 20985 }, /* osfBeginLine */
+    { 0x1004ff59, 21065 }, /* osfEndData */
+    { 0x1004ff5a, 20972 }, /* osfBeginData */
+    { 0x1004ff5b, 21246 }, /* osfPrevMenu */
+    { 0x1004ff5c, 21165 }, /* osfNextMenu */
+    { 0x1004ff5d, 21233 }, /* osfPrevField */
+    { 0x1004ff5e, 21152 }, /* osfNextField */
+    { 0x1004ff60, 21320 }, /* osfSelect */
+    { 0x1004ff63, 21115 }, /* osfInsert */
+    { 0x1004ff65, 21343 }, /* osfUndo */
+    { 0x1004ff67, 21133 }, /* osfMenu */
+    { 0x1004ff69, 20998 }, /* osfCancel */
+    { 0x1004ff6a, 21107 }, /* osfHelp */
+    { 0x1004ff71, 21330 }, /* osfSelectAll */
+    { 0x1004ff72, 21042 }, /* osfDeselectAll */
+    { 0x1004ff73, 21288 }, /* osfReselect */
+    { 0x1004ff74, 21097 }, /* osfExtend */
+    { 0x1004ff78, 21300 }, /* osfRestore */
+    { 0x1004ffff, 21032 }, /* osfDelete */
+    { 0x1005ff00, 24093 }, /* SunFA_Grave */
+    { 0x1005ff01, 24064 }, /* SunFA_Circum */
+    { 0x1005ff02, 24105 }, /* SunFA_Tilde */
+    { 0x1005ff03, 24038 }, /* SunFA_Acute */
+    { 0x1005ff04, 24077 }, /* SunFA_Diaeresis */
+    { 0x1005ff05, 24050 }, /* SunFA_Cedilla */
+    { 0x1005ff10, 24024 }, /* SunF36 */
+    { 0x1005ff11, 24031 }, /* SunF37 */
+    { 0x1005ff60, 24241 }, /* SunSys_Req */
+    { 0x1005ff70, 24224 }, /* SunProps */
+    { 0x1005ff71, 24125 }, /* SunFront */
+    { 0x1005ff72, 24009 }, /* SunCopy */
+    { 0x1005ff73, 24134 }, /* SunOpen */
+    { 0x1005ff74, 24164 }, /* SunPaste */
+    { 0x1005ff75, 24017 }, /* SunCut */
+    { 0x1005ff76, 24173 }, /* SunPowerSwitch */
+    { 0x1005ff77, 23945 }, /* SunAudioLowerVolume */
+    { 0x1005ff78, 23965 }, /* SunAudioMute */
+    { 0x1005ff79, 23978 }, /* SunAudioRaiseVolume */
+    { 0x1005ff7a, 24260 }, /* SunVideoDegauss */
+    { 0x1005ff7b, 24276 }, /* SunVideoLowerBrightness */
+    { 0x1005ff7c, 24300 }, /* SunVideoRaiseBrightness */
+    { 0x1005ff7d, 24188 }, /* SunPowerSwitchShift */
+    { 0x100810f4, 27386 }, /* XF86BrightnessAuto */
+    { 0x100810f5, 27913 }, /* XF86DisplayOff */
+    { 0x10081166, 28331 }, /* XF86Info */
+    { 0x10081177, 26864 }, /* XF86AspectRatio */
+    { 0x10081185, 27987 }, /* XF86DVD */
+    { 0x10081188, 26947 }, /* XF86Audio */
+    { 0x10081192, 27704 }, /* XF86ChannelUp */
+    { 0x10081193, 27688 }, /* XF86ChannelDown */
+    { 0x1008119b, 27355 }, /* XF86Break */
+    { 0x100811a0, 31300 }, /* XF86VideoPhone */
+    { 0x100811a4, 31493 }, /* XF86ZoomReset */
+    { 0x100811a6, 27995 }, /* XF86Editor */
+    { 0x100811a8, 28223 }, /* XF86GraphicsEditor */
+    { 0x100811a9, 30198 }, /* XF86Presentation */
+    { 0x100811aa, 27876 }, /* XF86Database */
+    { 0x100811ac, 31349 }, /* XF86Voicemail */
+    { 0x100811ad, 26779 }, /* XF86Addressbook */
+    { 0x100811af, 27928 }, /* XF86DisplayToggle */
+    { 0x100811b0, 30733 }, /* XF86SpellCheck */
+    { 0x100811b6, 27783 }, /* XF86ContextMenu */
+    { 0x100811b7, 29477 }, /* XF86MediaRepeat */
+    { 0x100811b8, 26735 }, /* XF8610ChannelsUp */
+    { 0x100811b9, 26716 }, /* XF8610ChannelsDown */
+    { 0x100811ba, 28320 }, /* XF86Images */
+    { 0x100811bc, 29772 }, /* XF86NotificationCenter */
+    { 0x100811bd, 30142 }, /* XF86PickupPhone */
+    { 0x100811be, 28252 }, /* XF86HangupPhone */
+    { 0x100811d0, 28114 }, /* XF86Fn */
+    { 0x100811d1, 28121 }, /* XF86Fn_Esc */
+    { 0x100811e5, 28132 }, /* XF86FnRightShift */
+    { 0x10081200, 29795 }, /* XF86Numeric0 */
+    { 0x10081201, 29808 }, /* XF86Numeric1 */
+    { 0x10081202, 29849 }, /* XF86Numeric2 */
+    { 0x10081203, 29862 }, /* XF86Numeric3 */
+    { 0x10081204, 29875 }, /* XF86Numeric4 */
+    { 0x10081205, 29888 }, /* XF86Numeric5 */
+    { 0x10081206, 29901 }, /* XF86Numeric6 */
+    { 0x10081207, 29914 }, /* XF86Numeric7 */
+    { 0x10081208, 29927 }, /* XF86Numeric8 */
+    { 0x10081209, 29940 }, /* XF86Numeric9 */
+    { 0x1008120a, 30022 }, /* XF86NumericStar */
+    { 0x1008120b, 30005 }, /* XF86NumericPound */
+    { 0x1008120c, 29953 }, /* XF86NumericA */
+    { 0x1008120d, 29966 }, /* XF86NumericB */
+    { 0x1008120e, 29979 }, /* XF86NumericC */
+    { 0x1008120f, 29992 }, /* XF86NumericD */
+    { 0x10081210, 27586 }, /* XF86CameraFocus */
+    { 0x10081211, 31419 }, /* XF86WPSButton */
+    { 0x10081215, 27646 }, /* XF86CameraZoomIn */
+    { 0x10081216, 27663 }, /* XF86CameraZoomOut */
+    { 0x10081217, 27633 }, /* XF86CameraUp */
+    { 0x10081218, 27571 }, /* XF86CameraDown */
+    { 0x10081219, 27602 }, /* XF86CameraLeft */
+    { 0x1008121a, 27617 }, /* XF86CameraRight */
+    { 0x1008121b, 26911 }, /* XF86AttendantOn */
+    { 0x1008121c, 26894 }, /* XF86AttendantOff */
+    { 0x1008121d, 26927 }, /* XF86AttendantToggle */
+    { 0x1008121e, 28898 }, /* XF86LightsToggle */
+    { 0x10081230, 26795 }, /* XF86ALSToggle */
+    { 0x10081240, 27441 }, /* XF86Buttonconfig */
+    { 0x10081241, 31042 }, /* XF86Taskmanager */
+    { 0x10081242, 28351 }, /* XF86Journal */
+    { 0x10081243, 27818 }, /* XF86ControlPanel */
+    { 0x10081244, 26850 }, /* XF86AppSelect */
+    { 0x10081245, 30528 }, /* XF86Screensaver */
+    { 0x10081246, 31332 }, /* XF86VoiceCommand */
+    { 0x10081247, 26880 }, /* XF86Assistant */
+    { 0x10081249, 28016 }, /* XF86EmojiPicker */
+    { 0x1008124a, 27889 }, /* XF86Dictate */
+    { 0x1008124b, 27525 }, /* XF86CameraAccessEnable */
+    { 0x1008124c, 27501 }, /* XF86CameraAccessDisable */
+    { 0x1008124d, 27548 }, /* XF86CameraAccessToggle */
+    { 0x10081250, 27423 }, /* XF86BrightnessMin */
+    { 0x10081251, 27405 }, /* XF86BrightnessMax */
+    { 0x10081260, 28506 }, /* XF86KbdInputAssistPrev */
+    { 0x10081261, 28455 }, /* XF86KbdInputAssistNext */
+    { 0x10081262, 28529 }, /* XF86KbdInputAssistPrevgroup */
+    { 0x10081263, 28478 }, /* XF86KbdInputAssistNextgroup */
+    { 0x10081264, 28405 }, /* XF86KbdInputAssistAccept */
+    { 0x10081265, 28430 }, /* XF86KbdInputAssistCancel */
+    { 0x10081266, 30363 }, /* XF86RightUp */
+    { 0x10081267, 30349 }, /* XF86RightDown */
+    { 0x10081268, 28873 }, /* XF86LeftUp */
+    { 0x10081269, 28860 }, /* XF86LeftDown */
+    { 0x1008126a, 30419 }, /* XF86RootMenu */
+    { 0x1008126b, 29493 }, /* XF86MediaTopMenu */
+    { 0x1008126c, 29821 }, /* XF86Numeric11 */
+    { 0x1008126d, 29835 }, /* XF86Numeric12 */
+    { 0x1008126e, 26977 }, /* XF86AudioDesc */
+    { 0x1008126f, 26752 }, /* XF863DMode */
+    { 0x10081270, 29755 }, /* XF86NextFavorite */
+    { 0x10081271, 30795 }, /* XF86StopRecord */
+    { 0x10081272, 30116 }, /* XF86PauseRecord */
+    { 0x10081273, 31324 }, /* XF86VOD */
+    { 0x10081274, 31221 }, /* XF86Unmute */
+    { 0x10081275, 28055 }, /* XF86FastReverse */
+    { 0x10081276, 30699 }, /* XF86SlowReverse */
+    { 0x10081277, 27867 }, /* XF86Data */
+    { 0x10081278, 30053 }, /* XF86OnScreenKeyboard */
+    { 0x10081279, 30250 }, /* XF86PrivacyScreenToggle */
+    { 0x1008127a, 30610 }, /* XF86SelectiveScreenshot */
+    { 0x1008127b, 29739 }, /* XF86NextElement */
+    { 0x1008127c, 30230 }, /* XF86PreviousElement */
+    { 0x1008127d, 27251 }, /* XF86AutopilotEngageToggle */
+    { 0x1008127e, 29460 }, /* XF86MarkWaypoint */
+    { 0x1008127f, 30715 }, /* XF86Sos */
+    { 0x10081280, 29682 }, /* XF86NavChart */
+    { 0x10081281, 28097 }, /* XF86FishingChart */
+    { 0x10081282, 30668 }, /* XF86SingleRangeRadar */
+    { 0x10081283, 27968 }, /* XF86DualRangeRadar */
+    { 0x10081284, 30280 }, /* XF86RadarOverlay */
+    { 0x10081285, 31178 }, /* XF86TraditionalSonar */
+    { 0x10081286, 27742 }, /* XF86ClearvuSonar */
+    { 0x10081287, 30652 }, /* XF86SidevuSonar */
+    { 0x10081288, 29695 }, /* XF86NavInfo */
+    { 0x10081290, 28960 }, /* XF86Macro1 */
+    { 0x10081291, 29091 }, /* XF86Macro2 */
+    { 0x10081292, 29222 }, /* XF86Macro3 */
+    { 0x10081293, 29245 }, /* XF86Macro4 */
+    { 0x10081294, 29256 }, /* XF86Macro5 */
+    { 0x10081295, 29267 }, /* XF86Macro6 */
+    { 0x10081296, 29278 }, /* XF86Macro7 */
+    { 0x10081297, 29289 }, /* XF86Macro8 */
+    { 0x10081298, 29300 }, /* XF86Macro9 */
+    { 0x10081299, 28971 }, /* XF86Macro10 */
+    { 0x1008129a, 28983 }, /* XF86Macro11 */
+    { 0x1008129b, 28995 }, /* XF86Macro12 */
+    { 0x1008129c, 29007 }, /* XF86Macro13 */
+    { 0x1008129d, 29019 }, /* XF86Macro14 */
+    { 0x1008129e, 29031 }, /* XF86Macro15 */
+    { 0x1008129f, 29043 }, /* XF86Macro16 */
+    { 0x100812a0, 29055 }, /* XF86Macro17 */
+    { 0x100812a1, 29067 }, /* XF86Macro18 */
+    { 0x100812a2, 29079 }, /* XF86Macro19 */
+    { 0x100812a3, 29102 }, /* XF86Macro20 */
+    { 0x100812a4, 29114 }, /* XF86Macro21 */
+    { 0x100812a5, 29126 }, /* XF86Macro22 */
+    { 0x100812a6, 29138 }, /* XF86Macro23 */
+    { 0x100812a7, 29150 }, /* XF86Macro24 */
+    { 0x100812a8, 29162 }, /* XF86Macro25 */
+    { 0x100812a9, 29174 }, /* XF86Macro26 */
+    { 0x100812aa, 29186 }, /* XF86Macro27 */
+    { 0x100812ab, 29198 }, /* XF86Macro28 */
+    { 0x100812ac, 29210 }, /* XF86Macro29 */
+    { 0x100812ad, 29233 }, /* XF86Macro30 */
+    { 0x100812b0, 29383 }, /* XF86MacroRecordStart */
+    { 0x100812b1, 29404 }, /* XF86MacroRecordStop */
+    { 0x100812b2, 29362 }, /* XF86MacroPresetCycle */
+    { 0x100812b3, 29311 }, /* XF86MacroPreset1 */
+    { 0x100812b4, 29328 }, /* XF86MacroPreset2 */
+    { 0x100812b5, 29345 }, /* XF86MacroPreset3 */
+    { 0x100812b8, 28557 }, /* XF86KbdLcdMenu1 */
+    { 0x100812b9, 28573 }, /* XF86KbdLcdMenu2 */
+    { 0x100812ba, 28589 }, /* XF86KbdLcdMenu3 */
+    { 0x100812bb, 28605 }, /* XF86KbdLcdMenu4 */
+    { 0x100812bc, 28621 }, /* XF86KbdLcdMenu5 */
+    { 0x1008fe01, 30847 }, /* XF86Switch_VT_1 */
+    { 0x1008fe02, 30914 }, /* XF86Switch_VT_2 */
+    { 0x1008fe03, 30930 }, /* XF86Switch_VT_3 */
+    { 0x1008fe04, 30946 }, /* XF86Switch_VT_4 */
+    { 0x1008fe05, 30962 }, /* XF86Switch_VT_5 */
+    { 0x1008fe06, 30978 }, /* XF86Switch_VT_6 */
+    { 0x1008fe07, 30994 }, /* XF86Switch_VT_7 */
+    { 0x1008fe08, 31010 }, /* XF86Switch_VT_8 */
+    { 0x1008fe09, 31026 }, /* XF86Switch_VT_9 */
+    { 0x1008fe0a, 30863 }, /* XF86Switch_VT_10 */
+    { 0x1008fe0b, 30880 }, /* XF86Switch_VT_11 */
+    { 0x1008fe0c, 30897 }, /* XF86Switch_VT_12 */
+    { 0x1008fe20, 31210 }, /* XF86Ungrab */
+    { 0x1008fe21, 27728 }, /* XF86ClearGrab */
+    { 0x1008fe22, 29724 }, /* XF86Next_VMode */
+    { 0x1008fe23, 30215 }, /* XF86Prev_VMode */
+    { 0x1008fe24, 28942 }, /* XF86LogWindowTree */
+    { 0x1008fe25, 28915 }, /* XF86LogGrabInfo */
+    { 0x1008ff01, 29567 }, /* XF86ModeLock */
+    { 0x1008ff02, 29625 }, /* XF86MonBrightnessUp */
+    { 0x1008ff03, 29603 }, /* XF86MonBrightnessDown */
+    { 0x1008ff04, 28637 }, /* XF86KbdLightOnOff */
+    { 0x1008ff05, 28385 }, /* XF86KbdBrightnessUp */
+    { 0x1008ff06, 28363 }, /* XF86KbdBrightnessDown */
+    { 0x1008ff07, 29580 }, /* XF86MonBrightnessCycle */
+    { 0x1008ff10, 30764 }, /* XF86Standby */
+    { 0x1008ff11, 27008 }, /* XF86AudioLowerVolume */
+    { 0x1008ff12, 27061 }, /* XF86AudioMute */
+    { 0x1008ff13, 27148 }, /* XF86AudioRaiseVolume */
+    { 0x1008ff14, 27104 }, /* XF86AudioPlay */
+    { 0x1008ff15, 27237 }, /* XF86AudioStop */
+    { 0x1008ff16, 27134 }, /* XF86AudioPrev */
+    { 0x1008ff17, 27075 }, /* XF86AudioNext */
+    { 0x1008ff18, 28294 }, /* XF86HomePage */
+    { 0x1008ff19, 29424 }, /* XF86Mail */
+    { 0x1008ff1a, 30776 }, /* XF86Start */
+    { 0x1008ff1b, 30588 }, /* XF86Search */
+    { 0x1008ff1c, 27189 }, /* XF86AudioRecord */
+    { 0x1008ff1d, 27473 }, /* XF86Calculator */
+    { 0x1008ff1e, 29522 }, /* XF86Memo */
+    { 0x1008ff1f, 31093 }, /* XF86ToDoList */
+    { 0x1008ff20, 27488 }, /* XF86Calendar */
+    { 0x1008ff21, 30171 }, /* XF86PowerDown */
+    { 0x1008ff22, 27799 }, /* XF86ContrastAdjust */
+    { 0x1008ff23, 30406 }, /* XF86RockerUp */
+    { 0x1008ff24, 30375 }, /* XF86RockerDown */
+    { 0x1008ff25, 30390 }, /* XF86RockerEnter */
+    { 0x1008ff26, 27286 }, /* XF86Back */
+    { 0x1008ff27, 28149 }, /* XF86Forward */
+    { 0x1008ff28, 30786 }, /* XF86Stop */
+    { 0x1008ff29, 30305 }, /* XF86Refresh */
+    { 0x1008ff2a, 30185 }, /* XF86PowerOff */
+    { 0x1008ff2b, 31363 }, /* XF86WakeUp */
+    { 0x1008ff2c, 28006 }, /* XF86Eject */
+    { 0x1008ff2d, 30512 }, /* XF86ScreenSaver */
+    { 0x1008ff2e, 31442 }, /* XF86WWW */
+    { 0x1008ff2f, 30689 }, /* XF86Sleep */
+    { 0x1008ff30, 28071 }, /* XF86Favorites */
+    { 0x1008ff31, 27089 }, /* XF86AudioPause */
+    { 0x1008ff32, 27029 }, /* XF86AudioMedia */
+    { 0x1008ff33, 29655 }, /* XF86MyComputer */
+    { 0x1008ff34, 31275 }, /* XF86VendorHome */
+    { 0x1008ff35, 28884 }, /* XF86LightBulb */
+    { 0x1008ff36, 30643 }, /* XF86Shop */
+    { 0x1008ff37, 28282 }, /* XF86History */
+    { 0x1008ff38, 30083 }, /* XF86OpenURL */
+    { 0x1008ff39, 26763 }, /* XF86AddFavorite */
+    { 0x1008ff3a, 28307 }, /* XF86HotLinks */
+    { 0x1008ff3b, 27365 }, /* XF86BrightnessAdjust */
+    { 0x1008ff3c, 28085 }, /* XF86Finance */
+    { 0x1008ff3d, 27769 }, /* XF86Community */
+    { 0x1008ff3e, 27221 }, /* XF86AudioRewind */
+    { 0x1008ff3f, 27295 }, /* XF86BackForward */
+    { 0x1008ff40, 28668 }, /* XF86Launch0 */
+    { 0x1008ff41, 28680 }, /* XF86Launch1 */
+    { 0x1008ff42, 28692 }, /* XF86Launch2 */
+    { 0x1008ff43, 28704 }, /* XF86Launch3 */
+    { 0x1008ff44, 28716 }, /* XF86Launch4 */
+    { 0x1008ff45, 28728 }, /* XF86Launch5 */
+    { 0x1008ff46, 28740 }, /* XF86Launch6 */
+    { 0x1008ff47, 28752 }, /* XF86Launch7 */
+    { 0x1008ff48, 28764 }, /* XF86Launch8 */
+    { 0x1008ff49, 28776 }, /* XF86Launch9 */
+    { 0x1008ff4a, 28788 }, /* XF86LaunchA */
+    { 0x1008ff4b, 28800 }, /* XF86LaunchB */
+    { 0x1008ff4c, 28812 }, /* XF86LaunchC */
+    { 0x1008ff4d, 28824 }, /* XF86LaunchD */
+    { 0x1008ff4e, 28836 }, /* XF86LaunchE */
+    { 0x1008ff4f, 28848 }, /* XF86LaunchF */
+    { 0x1008ff50, 26809 }, /* XF86ApplicationLeft */
+    { 0x1008ff51, 26829 }, /* XF86ApplicationRight */
+    { 0x1008ff52, 27346 }, /* XF86Book */
+    { 0x1008ff53, 27681 }, /* XF86CD */
+    { 0x1008ff54, 27458 }, /* XF86Calculater */
+    { 0x1008ff55, 27718 }, /* XF86Clear */
+    { 0x1008ff56, 27759 }, /* XF86Close */
+    { 0x1008ff57, 27835 }, /* XF86Copy */
+    { 0x1008ff58, 27844 }, /* XF86Cut */
+    { 0x1008ff59, 27901 }, /* XF86Display */
+    { 0x1008ff5a, 27960 }, /* XF86DOS */
+    { 0x1008ff5b, 27946 }, /* XF86Documents */
+    { 0x1008ff5c, 28032 }, /* XF86Excel */
+    { 0x1008ff5d, 28042 }, /* XF86Explorer */
+    { 0x1008ff5e, 28207 }, /* XF86Game */
+    { 0x1008ff5f, 28216 }, /* XF86Go */
+    { 0x1008ff60, 28340 }, /* XF86iTouch */
+    { 0x1008ff61, 28931 }, /* XF86LogOff */
+    { 0x1008ff62, 29449 }, /* XF86Market */
+    { 0x1008ff63, 29510 }, /* XF86Meeting */
+    { 0x1008ff65, 29531 }, /* XF86MenuKB */
+    { 0x1008ff66, 29542 }, /* XF86MenuPB */
+    { 0x1008ff67, 29670 }, /* XF86MySites */
+    { 0x1008ff68, 29707 }, /* XF86New */
+    { 0x1008ff69, 29715 }, /* XF86News */
+    { 0x1008ff6a, 30038 }, /* XF86OfficeHome */
+    { 0x1008ff6b, 30074 }, /* XF86Open */
+    { 0x1008ff6c, 30095 }, /* XF86Option */
+    { 0x1008ff6d, 30106 }, /* XF86Paste */
+    { 0x1008ff6e, 30132 }, /* XF86Phone */
+    { 0x1008ff70, 30274 }, /* XF86Q */
+    { 0x1008ff72, 30328 }, /* XF86Reply */
+    { 0x1008ff73, 30317 }, /* XF86Reload */
+    { 0x1008ff74, 30432 }, /* XF86RotateWindows */
+    { 0x1008ff75, 30488 }, /* XF86RotationPB */
+    { 0x1008ff76, 30450 }, /* XF86RotationKB */
+    { 0x1008ff77, 30503 }, /* XF86Save */
+    { 0x1008ff78, 30575 }, /* XF86ScrollUp */
+    { 0x1008ff79, 30560 }, /* XF86ScrollDown */
+    { 0x1008ff7a, 30544 }, /* XF86ScrollClick */
+    { 0x1008ff7b, 30634 }, /* XF86Send */
+    { 0x1008ff7c, 30723 }, /* XF86Spell */
+    { 0x1008ff7d, 30748 }, /* XF86SplitScreen */
+    { 0x1008ff7e, 30823 }, /* XF86Support */
+    { 0x1008ff7f, 31058 }, /* XF86TaskPane */
+    { 0x1008ff80, 31071 }, /* XF86Terminal */
+    { 0x1008ff81, 31106 }, /* XF86Tools */
+    { 0x1008ff82, 31199 }, /* XF86Travel */
+    { 0x1008ff84, 31256 }, /* XF86UserPB */
+    { 0x1008ff85, 31232 }, /* XF86User1KB */
+    { 0x1008ff86, 31244 }, /* XF86User2KB */
+    { 0x1008ff87, 31290 }, /* XF86Video */
+    { 0x1008ff88, 31385 }, /* XF86WheelButton */
+    { 0x1008ff89, 31410 }, /* XF86Word */
+    { 0x1008ff8a, 31450 }, /* XF86Xfer */
+    { 0x1008ff8b, 31470 }, /* XF86ZoomIn */
+    { 0x1008ff8c, 31481 }, /* XF86ZoomOut */
+    { 0x1008ff8d, 27277 }, /* XF86Away */
+    { 0x1008ff8e, 29553 }, /* XF86Messenger */
+    { 0x1008ff8f, 31374 }, /* XF86WebCam */
+    { 0x1008ff90, 29433 }, /* XF86MailForward */
+    { 0x1008ff91, 30158 }, /* XF86Pictures */
+    { 0x1008ff92, 29645 }, /* XF86Music */
+    { 0x1008ff93, 27311 }, /* XF86Battery */
+    { 0x1008ff94, 27332 }, /* XF86Bluetooth */
+    { 0x1008ff95, 31401 }, /* XF86WLAN */
+    { 0x1008ff96, 31267 }, /* XF86UWB */
+    { 0x1008ff97, 26991 }, /* XF86AudioForward */
+    { 0x1008ff98, 27205 }, /* XF86AudioRepeat */
+    { 0x1008ff99, 27169 }, /* XF86AudioRandomPlay */
+    { 0x1008ff9a, 30810 }, /* XF86Subtitle */
+    { 0x1008ff9b, 26957 }, /* XF86AudioCycleTrack */
+    { 0x1008ff9c, 27852 }, /* XF86CycleAngle */
+    { 0x1008ff9d, 28161 }, /* XF86FrameBack */
+    { 0x1008ff9e, 28175 }, /* XF86FrameForward */
+    { 0x1008ff9f, 31084 }, /* XF86Time */
+    { 0x1008ffa0, 30599 }, /* XF86Select */
+    { 0x1008ffa1, 31315 }, /* XF86View */
+    { 0x1008ffa2, 31116 }, /* XF86TopMenu */
+    { 0x1008ffa3, 30297 }, /* XF86Red */
+    { 0x1008ffa4, 28242 }, /* XF86Green */
+    { 0x1008ffa5, 31459 }, /* XF86Yellow */
+    { 0x1008ffa6, 27323 }, /* XF86Blue */
+    { 0x1008ffa7, 30835 }, /* XF86Suspend */
+    { 0x1008ffa8, 28268 }, /* XF86Hibernate */
+    { 0x1008ffa9, 31159 }, /* XF86TouchpadToggle */
+    { 0x1008ffb0, 31144 }, /* XF86TouchpadOn */
+    { 0x1008ffb1, 31128 }, /* XF86TouchpadOff */
+    { 0x1008ffb2, 27044 }, /* XF86AudioMicMute */
+    { 0x1008ffb3, 28655 }, /* XF86Keyboard */
+    { 0x1008ffb4, 31433 }, /* XF86WWAN */
+    { 0x1008ffb5, 30338 }, /* XF86RFKill */
+    { 0x1008ffb6, 27118 }, /* XF86AudioPreset */
+    { 0x1008ffb7, 30465 }, /* XF86RotationLockToggle */
+    { 0x1008ffb8, 28192 }, /* XF86FullScreen */
 };