summaryrefslogtreecommitdiff
path: root/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-machine.hh
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/harfbuzz/src/hb-ot-shape-complex-use-machine.hh')
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-complex-use-machine.hh891
1 files changed, 481 insertions, 410 deletions
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-machine.hh b/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-machine.hh
index 54f69c8284..468bd95c3f 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-machine.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-machine.hh
@@ -69,7 +69,7 @@ enum use_syllable_type_t {
#define use_syllable_machine_ex_GB 5u
#define use_syllable_machine_ex_H 12u
#define use_syllable_machine_ex_HN 13u
-#define use_syllable_machine_ex_HVM 44u
+#define use_syllable_machine_ex_IS 44u
#define use_syllable_machine_ex_J 50u
#define use_syllable_machine_ex_MAbv 27u
#define use_syllable_machine_ex_MBlw 28u
@@ -98,406 +98,443 @@ enum use_syllable_type_t {
#line 100 "hb-ot-shape-complex-use-machine.hh"
static const unsigned char _use_syllable_machine_trans_keys[] = {
- 0u, 51u, 11u, 48u, 11u, 48u, 1u, 1u, 22u, 48u, 23u, 48u, 24u, 47u, 25u, 47u,
- 26u, 47u, 45u, 46u, 46u, 46u, 24u, 48u, 24u, 48u, 24u, 48u, 1u, 1u, 24u, 48u,
- 23u, 48u, 23u, 48u, 23u, 48u, 22u, 48u, 22u, 48u, 22u, 48u, 11u, 48u, 1u, 48u,
- 11u, 48u, 41u, 42u, 42u, 42u, 11u, 48u, 11u, 48u, 1u, 1u, 22u, 48u, 23u, 48u,
+ 0u, 51u, 11u, 48u, 11u, 48u, 1u, 48u, 23u, 48u, 24u, 47u, 25u, 47u, 26u, 47u,
+ 45u, 46u, 46u, 46u, 24u, 48u, 24u, 48u, 24u, 48u, 1u, 1u, 24u, 48u, 22u, 48u,
+ 23u, 48u, 23u, 48u, 23u, 48u, 12u, 48u, 12u, 48u, 12u, 48u, 12u, 48u, 11u, 48u,
+ 1u, 1u, 11u, 48u, 41u, 42u, 42u, 42u, 11u, 48u, 11u, 48u, 1u, 48u, 23u, 48u,
24u, 47u, 25u, 47u, 26u, 47u, 45u, 46u, 46u, 46u, 24u, 48u, 24u, 48u, 24u, 48u,
- 1u, 1u, 24u, 48u, 23u, 48u, 23u, 48u, 23u, 48u, 22u, 48u, 22u, 48u, 22u, 48u,
- 11u, 48u, 1u, 48u, 13u, 13u, 4u, 4u, 11u, 48u, 11u, 48u, 1u, 1u, 22u, 48u,
- 23u, 48u, 24u, 47u, 25u, 47u, 26u, 47u, 45u, 46u, 46u, 46u, 24u, 48u, 24u, 48u,
- 24u, 48u, 1u, 1u, 24u, 48u, 23u, 48u, 23u, 48u, 23u, 48u, 22u, 48u, 22u, 48u,
- 22u, 48u, 11u, 48u, 1u, 48u, 11u, 48u, 11u, 48u, 1u, 1u, 22u, 48u, 23u, 48u,
- 24u, 47u, 25u, 47u, 26u, 47u, 45u, 46u, 46u, 46u, 24u, 48u, 24u, 48u, 24u, 48u,
- 1u, 1u, 24u, 48u, 23u, 48u, 23u, 48u, 23u, 48u, 22u, 48u, 22u, 48u, 22u, 48u,
- 11u, 48u, 1u, 48u, 4u, 4u, 13u, 13u, 1u, 48u, 11u, 48u, 41u, 42u, 42u, 42u,
- 1u, 5u, 50u, 52u, 49u, 52u, 49u, 51u, 0
+ 1u, 1u, 24u, 48u, 22u, 48u, 23u, 48u, 23u, 48u, 23u, 48u, 12u, 48u, 12u, 48u,
+ 12u, 48u, 12u, 48u, 11u, 48u, 1u, 1u, 13u, 13u, 4u, 4u, 11u, 48u, 11u, 48u,
+ 1u, 48u, 23u, 48u, 24u, 47u, 25u, 47u, 26u, 47u, 45u, 46u, 46u, 46u, 24u, 48u,
+ 24u, 48u, 24u, 48u, 1u, 1u, 24u, 48u, 22u, 48u, 23u, 48u, 23u, 48u, 23u, 48u,
+ 12u, 48u, 12u, 48u, 12u, 48u, 12u, 48u, 11u, 48u, 1u, 1u, 11u, 48u, 11u, 48u,
+ 1u, 48u, 23u, 48u, 24u, 47u, 25u, 47u, 26u, 47u, 45u, 46u, 46u, 46u, 24u, 48u,
+ 24u, 48u, 24u, 48u, 1u, 1u, 24u, 48u, 22u, 48u, 23u, 48u, 23u, 48u, 23u, 48u,
+ 12u, 48u, 12u, 48u, 12u, 48u, 12u, 48u, 11u, 48u, 1u, 1u, 4u, 4u, 13u, 13u,
+ 1u, 48u, 11u, 48u, 41u, 42u, 42u, 42u, 1u, 5u, 50u, 52u, 49u, 52u, 49u, 51u,
+ 0
};
static const char _use_syllable_machine_key_spans[] = {
- 52, 38, 38, 1, 27, 26, 24, 23,
- 22, 2, 1, 25, 25, 25, 1, 25,
- 26, 26, 26, 27, 27, 27, 38, 48,
- 38, 2, 1, 38, 38, 1, 27, 26,
- 24, 23, 22, 2, 1, 25, 25, 25,
- 1, 25, 26, 26, 26, 27, 27, 27,
- 38, 48, 1, 1, 38, 38, 1, 27,
- 26, 24, 23, 22, 2, 1, 25, 25,
- 25, 1, 25, 26, 26, 26, 27, 27,
- 27, 38, 48, 38, 38, 1, 27, 26,
+ 52, 38, 38, 48, 26, 24, 23, 22,
+ 2, 1, 25, 25, 25, 1, 25, 27,
+ 26, 26, 26, 37, 37, 37, 37, 38,
+ 1, 38, 2, 1, 38, 38, 48, 26,
24, 23, 22, 2, 1, 25, 25, 25,
- 1, 25, 26, 26, 26, 27, 27, 27,
- 38, 48, 1, 1, 48, 38, 2, 1,
- 5, 3, 4, 3
+ 1, 25, 27, 26, 26, 26, 37, 37,
+ 37, 37, 38, 1, 1, 1, 38, 38,
+ 48, 26, 24, 23, 22, 2, 1, 25,
+ 25, 25, 1, 25, 27, 26, 26, 26,
+ 37, 37, 37, 37, 38, 1, 38, 38,
+ 48, 26, 24, 23, 22, 2, 1, 25,
+ 25, 25, 1, 25, 27, 26, 26, 26,
+ 37, 37, 37, 37, 38, 1, 1, 1,
+ 48, 38, 2, 1, 5, 3, 4, 3
};
static const short _use_syllable_machine_index_offsets[] = {
- 0, 53, 92, 131, 133, 161, 188, 213,
- 237, 260, 263, 265, 291, 317, 343, 345,
- 371, 398, 425, 452, 480, 508, 536, 575,
- 624, 663, 666, 668, 707, 746, 748, 776,
- 803, 828, 852, 875, 878, 880, 906, 932,
- 958, 960, 986, 1013, 1040, 1067, 1095, 1123,
- 1151, 1190, 1239, 1241, 1243, 1282, 1321, 1323,
- 1351, 1378, 1403, 1427, 1450, 1453, 1455, 1481,
- 1507, 1533, 1535, 1561, 1588, 1615, 1642, 1670,
- 1698, 1726, 1765, 1814, 1853, 1892, 1894, 1922,
- 1949, 1974, 1998, 2021, 2024, 2026, 2052, 2078,
- 2104, 2106, 2132, 2159, 2186, 2213, 2241, 2269,
- 2297, 2336, 2385, 2387, 2389, 2438, 2477, 2480,
- 2482, 2488, 2492, 2497
+ 0, 53, 92, 131, 180, 207, 232, 256,
+ 279, 282, 284, 310, 336, 362, 364, 390,
+ 418, 445, 472, 499, 537, 575, 613, 651,
+ 690, 692, 731, 734, 736, 775, 814, 863,
+ 890, 915, 939, 962, 965, 967, 993, 1019,
+ 1045, 1047, 1073, 1101, 1128, 1155, 1182, 1220,
+ 1258, 1296, 1334, 1373, 1375, 1377, 1379, 1418,
+ 1457, 1506, 1533, 1558, 1582, 1605, 1608, 1610,
+ 1636, 1662, 1688, 1690, 1716, 1744, 1771, 1798,
+ 1825, 1863, 1901, 1939, 1977, 2016, 2018, 2057,
+ 2096, 2145, 2172, 2197, 2221, 2244, 2247, 2249,
+ 2275, 2301, 2327, 2329, 2355, 2383, 2410, 2437,
+ 2464, 2502, 2540, 2578, 2616, 2655, 2657, 2659,
+ 2661, 2710, 2749, 2752, 2754, 2760, 2764, 2769
};
static const char _use_syllable_machine_indicies[] = {
0, 1, 2, 2, 3, 4, 2, 2,
2, 2, 2, 5, 6, 7, 2, 2,
2, 2, 8, 2, 2, 2, 9, 10,
- 11, 12, 13, 14, 15, 9, 16, 17,
- 18, 19, 20, 21, 2, 22, 23, 24,
- 2, 25, 26, 27, 28, 29, 30, 31,
- 6, 32, 2, 33, 2, 35, 36, 34,
- 34, 34, 34, 34, 34, 34, 34, 34,
- 37, 38, 39, 40, 41, 42, 43, 37,
- 44, 45, 46, 47, 48, 49, 34, 50,
- 51, 52, 34, 53, 54, 34, 55, 56,
- 57, 58, 36, 34, 35, 36, 34, 34,
- 34, 34, 34, 34, 34, 34, 34, 37,
- 38, 39, 40, 41, 42, 43, 37, 44,
- 46, 46, 47, 48, 49, 34, 50, 51,
- 52, 34, 34, 34, 34, 55, 56, 57,
- 58, 36, 34, 35, 34, 37, 38, 39,
- 40, 41, 34, 34, 34, 34, 34, 34,
- 47, 48, 49, 34, 50, 51, 52, 34,
- 34, 34, 34, 38, 56, 57, 58, 59,
- 34, 38, 39, 40, 41, 34, 34, 34,
- 34, 34, 34, 34, 34, 34, 34, 50,
- 51, 52, 34, 34, 34, 34, 34, 56,
- 57, 58, 59, 34, 39, 40, 41, 34,
- 34, 34, 34, 34, 34, 34, 34, 34,
- 34, 34, 34, 34, 34, 34, 34, 34,
- 34, 56, 57, 58, 34, 40, 41, 34,
- 34, 34, 34, 34, 34, 34, 34, 34,
- 34, 34, 34, 34, 34, 34, 34, 34,
- 34, 56, 57, 58, 34, 41, 34, 34,
- 34, 34, 34, 34, 34, 34, 34, 34,
- 34, 34, 34, 34, 34, 34, 34, 34,
- 56, 57, 58, 34, 56, 57, 34, 57,
- 34, 39, 40, 41, 34, 34, 34, 34,
- 34, 34, 34, 34, 34, 34, 50, 51,
- 52, 34, 34, 34, 34, 34, 56, 57,
- 58, 59, 34, 39, 40, 41, 34, 34,
- 34, 34, 34, 34, 34, 34, 34, 34,
- 34, 51, 52, 34, 34, 34, 34, 34,
- 56, 57, 58, 59, 34, 39, 40, 41,
- 34, 34, 34, 34, 34, 34, 34, 34,
- 34, 34, 34, 34, 52, 34, 34, 34,
- 34, 34, 56, 57, 58, 59, 34, 60,
- 34, 39, 40, 41, 34, 34, 34, 34,
- 34, 34, 34, 34, 34, 34, 34, 34,
- 34, 34, 34, 34, 34, 34, 56, 57,
- 58, 59, 34, 38, 39, 40, 41, 34,
- 34, 34, 34, 34, 34, 47, 48, 49,
- 34, 50, 51, 52, 34, 34, 34, 34,
- 38, 56, 57, 58, 59, 34, 38, 39,
- 40, 41, 34, 34, 34, 34, 34, 34,
- 34, 48, 49, 34, 50, 51, 52, 34,
- 34, 34, 34, 38, 56, 57, 58, 59,
- 34, 38, 39, 40, 41, 34, 34, 34,
- 34, 34, 34, 34, 34, 49, 34, 50,
- 51, 52, 34, 34, 34, 34, 38, 56,
- 57, 58, 59, 34, 37, 38, 39, 40,
- 41, 34, 43, 37, 34, 34, 34, 47,
- 48, 49, 34, 50, 51, 52, 34, 34,
- 34, 34, 38, 56, 57, 58, 59, 34,
- 37, 38, 39, 40, 41, 34, 34, 37,
- 34, 34, 34, 47, 48, 49, 34, 50,
- 51, 52, 34, 34, 34, 34, 38, 56,
- 57, 58, 59, 34, 37, 38, 39, 40,
- 41, 42, 43, 37, 34, 34, 34, 47,
- 48, 49, 34, 50, 51, 52, 34, 34,
- 34, 34, 38, 56, 57, 58, 59, 34,
- 35, 36, 34, 34, 34, 34, 34, 34,
- 34, 34, 34, 37, 38, 39, 40, 41,
- 42, 43, 37, 44, 34, 46, 47, 48,
- 49, 34, 50, 51, 52, 34, 34, 34,
- 34, 55, 56, 57, 58, 36, 34, 35,
- 34, 34, 34, 34, 34, 34, 34, 34,
- 34, 34, 34, 34, 34, 34, 34, 34,
- 34, 34, 34, 34, 34, 38, 39, 40,
- 41, 34, 34, 34, 34, 34, 34, 34,
- 34, 34, 34, 50, 51, 52, 34, 34,
- 34, 34, 34, 56, 57, 58, 59, 34,
- 35, 36, 34, 34, 34, 34, 34, 34,
- 34, 34, 34, 37, 38, 39, 40, 41,
- 42, 43, 37, 44, 45, 46, 47, 48,
- 49, 34, 50, 51, 52, 34, 34, 34,
- 34, 55, 56, 57, 58, 36, 34, 53,
- 54, 34, 54, 34, 62, 63, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 64,
- 65, 66, 67, 68, 69, 70, 64, 71,
- 1, 72, 73, 74, 75, 61, 76, 77,
- 78, 61, 61, 61, 61, 79, 80, 81,
- 82, 63, 61, 62, 63, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 64, 65,
- 66, 67, 68, 69, 70, 64, 71, 72,
- 72, 73, 74, 75, 61, 76, 77, 78,
- 61, 61, 61, 61, 79, 80, 81, 82,
- 63, 61, 62, 83, 64, 65, 66, 67,
- 68, 61, 61, 61, 61, 61, 61, 73,
- 74, 75, 61, 76, 77, 78, 61, 61,
- 61, 61, 65, 80, 81, 82, 84, 61,
- 65, 66, 67, 68, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 76, 77,
- 78, 61, 61, 61, 61, 61, 80, 81,
- 82, 84, 61, 66, 67, 68, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 80, 81, 82, 61, 67, 68, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 80, 81, 82, 61, 68, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 80,
- 81, 82, 61, 80, 81, 61, 81, 61,
- 66, 67, 68, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 76, 77, 78,
- 61, 61, 61, 61, 61, 80, 81, 82,
- 84, 61, 66, 67, 68, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 77, 78, 61, 61, 61, 61, 61, 80,
- 81, 82, 84, 61, 66, 67, 68, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 78, 61, 61, 61, 61,
- 61, 80, 81, 82, 84, 61, 86, 85,
- 66, 67, 68, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 80, 81, 82,
- 84, 61, 65, 66, 67, 68, 61, 61,
- 61, 61, 61, 61, 73, 74, 75, 61,
- 76, 77, 78, 61, 61, 61, 61, 65,
- 80, 81, 82, 84, 61, 65, 66, 67,
- 68, 61, 61, 61, 61, 61, 61, 61,
- 74, 75, 61, 76, 77, 78, 61, 61,
- 61, 61, 65, 80, 81, 82, 84, 61,
- 65, 66, 67, 68, 61, 61, 61, 61,
- 61, 61, 61, 61, 75, 61, 76, 77,
- 78, 61, 61, 61, 61, 65, 80, 81,
- 82, 84, 61, 64, 65, 66, 67, 68,
- 61, 70, 64, 61, 61, 61, 73, 74,
- 75, 61, 76, 77, 78, 61, 61, 61,
- 61, 65, 80, 81, 82, 84, 61, 64,
- 65, 66, 67, 68, 61, 61, 64, 61,
- 61, 61, 73, 74, 75, 61, 76, 77,
- 78, 61, 61, 61, 61, 65, 80, 81,
- 82, 84, 61, 64, 65, 66, 67, 68,
- 69, 70, 64, 61, 61, 61, 73, 74,
- 75, 61, 76, 77, 78, 61, 61, 61,
- 61, 65, 80, 81, 82, 84, 61, 62,
- 63, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 64, 65, 66, 67, 68, 69,
- 70, 64, 71, 61, 72, 73, 74, 75,
- 61, 76, 77, 78, 61, 61, 61, 61,
- 79, 80, 81, 82, 63, 61, 62, 83,
- 83, 83, 83, 83, 83, 83, 83, 83,
- 83, 83, 83, 83, 83, 83, 83, 83,
- 83, 83, 83, 83, 65, 66, 67, 68,
- 83, 83, 83, 83, 83, 83, 83, 83,
- 83, 83, 76, 77, 78, 83, 83, 83,
- 83, 83, 80, 81, 82, 84, 83, 88,
- 87, 3, 89, 90, 91, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 92, 93,
- 94, 95, 96, 97, 98, 92, 99, 100,
- 101, 102, 103, 104, 61, 105, 106, 107,
- 61, 53, 54, 61, 108, 109, 110, 82,
- 91, 61, 90, 91, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 92, 93, 94,
- 95, 96, 97, 98, 92, 99, 101, 101,
- 102, 103, 104, 61, 105, 106, 107, 61,
- 61, 61, 61, 108, 109, 110, 82, 91,
- 61, 90, 83, 92, 93, 94, 95, 96,
- 61, 61, 61, 61, 61, 61, 102, 103,
- 104, 61, 105, 106, 107, 61, 61, 61,
- 61, 93, 109, 110, 82, 111, 61, 93,
- 94, 95, 96, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 105, 106, 107,
- 61, 61, 61, 61, 61, 109, 110, 82,
- 111, 61, 94, 95, 96, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 109,
- 110, 82, 61, 95, 96, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 109,
- 110, 82, 61, 96, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 109, 110,
- 82, 61, 109, 110, 61, 110, 61, 94,
- 95, 96, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 105, 106, 107, 61,
- 61, 61, 61, 61, 109, 110, 82, 111,
- 61, 94, 95, 96, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 106,
- 107, 61, 61, 61, 61, 61, 109, 110,
- 82, 111, 61, 94, 95, 96, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 107, 61, 61, 61, 61, 61,
- 109, 110, 82, 111, 61, 112, 85, 94,
- 95, 96, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 109, 110, 82, 111,
- 61, 93, 94, 95, 96, 61, 61, 61,
- 61, 61, 61, 102, 103, 104, 61, 105,
- 106, 107, 61, 61, 61, 61, 93, 109,
- 110, 82, 111, 61, 93, 94, 95, 96,
- 61, 61, 61, 61, 61, 61, 61, 103,
- 104, 61, 105, 106, 107, 61, 61, 61,
- 61, 93, 109, 110, 82, 111, 61, 93,
- 94, 95, 96, 61, 61, 61, 61, 61,
- 61, 61, 61, 104, 61, 105, 106, 107,
- 61, 61, 61, 61, 93, 109, 110, 82,
- 111, 61, 92, 93, 94, 95, 96, 61,
- 98, 92, 61, 61, 61, 102, 103, 104,
- 61, 105, 106, 107, 61, 61, 61, 61,
- 93, 109, 110, 82, 111, 61, 92, 93,
- 94, 95, 96, 61, 61, 92, 61, 61,
- 61, 102, 103, 104, 61, 105, 106, 107,
- 61, 61, 61, 61, 93, 109, 110, 82,
- 111, 61, 92, 93, 94, 95, 96, 97,
- 98, 92, 61, 61, 61, 102, 103, 104,
- 61, 105, 106, 107, 61, 61, 61, 61,
- 93, 109, 110, 82, 111, 61, 90, 91,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 92, 93, 94, 95, 96, 97, 98,
- 92, 99, 61, 101, 102, 103, 104, 61,
- 105, 106, 107, 61, 61, 61, 61, 108,
- 109, 110, 82, 91, 61, 90, 83, 83,
- 83, 83, 83, 83, 83, 83, 83, 83,
- 83, 83, 83, 83, 83, 83, 83, 83,
- 83, 83, 83, 93, 94, 95, 96, 83,
- 83, 83, 83, 83, 83, 83, 83, 83,
- 83, 105, 106, 107, 83, 83, 83, 83,
- 83, 109, 110, 82, 111, 83, 90, 91,
- 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 92, 93, 94, 95, 96, 97, 98,
- 92, 99, 100, 101, 102, 103, 104, 61,
- 105, 106, 107, 61, 61, 61, 61, 108,
- 109, 110, 82, 91, 61, 5, 6, 113,
- 113, 113, 113, 113, 113, 113, 113, 113,
- 9, 10, 11, 12, 13, 14, 15, 9,
- 16, 18, 18, 19, 20, 21, 113, 22,
- 23, 24, 113, 113, 113, 113, 28, 29,
- 30, 31, 6, 113, 5, 113, 9, 10,
- 11, 12, 13, 113, 113, 113, 113, 113,
- 113, 19, 20, 21, 113, 22, 23, 24,
- 113, 113, 113, 113, 10, 29, 30, 31,
- 114, 113, 10, 11, 12, 13, 113, 113,
- 113, 113, 113, 113, 113, 113, 113, 113,
- 22, 23, 24, 113, 113, 113, 113, 113,
- 29, 30, 31, 114, 113, 11, 12, 13,
- 113, 113, 113, 113, 113, 113, 113, 113,
- 113, 113, 113, 113, 113, 113, 113, 113,
- 113, 113, 29, 30, 31, 113, 12, 13,
- 113, 113, 113, 113, 113, 113, 113, 113,
- 113, 113, 113, 113, 113, 113, 113, 113,
- 113, 113, 29, 30, 31, 113, 13, 113,
- 113, 113, 113, 113, 113, 113, 113, 113,
- 113, 113, 113, 113, 113, 113, 113, 113,
- 113, 29, 30, 31, 113, 29, 30, 113,
- 30, 113, 11, 12, 13, 113, 113, 113,
- 113, 113, 113, 113, 113, 113, 113, 22,
- 23, 24, 113, 113, 113, 113, 113, 29,
- 30, 31, 114, 113, 11, 12, 13, 113,
- 113, 113, 113, 113, 113, 113, 113, 113,
- 113, 113, 23, 24, 113, 113, 113, 113,
- 113, 29, 30, 31, 114, 113, 11, 12,
- 13, 113, 113, 113, 113, 113, 113, 113,
- 113, 113, 113, 113, 113, 24, 113, 113,
- 113, 113, 113, 29, 30, 31, 114, 113,
- 115, 113, 11, 12, 13, 113, 113, 113,
- 113, 113, 113, 113, 113, 113, 113, 113,
- 113, 113, 113, 113, 113, 113, 113, 29,
- 30, 31, 114, 113, 10, 11, 12, 13,
- 113, 113, 113, 113, 113, 113, 19, 20,
- 21, 113, 22, 23, 24, 113, 113, 113,
- 113, 10, 29, 30, 31, 114, 113, 10,
- 11, 12, 13, 113, 113, 113, 113, 113,
- 113, 113, 20, 21, 113, 22, 23, 24,
- 113, 113, 113, 113, 10, 29, 30, 31,
- 114, 113, 10, 11, 12, 13, 113, 113,
- 113, 113, 113, 113, 113, 113, 21, 113,
- 22, 23, 24, 113, 113, 113, 113, 10,
- 29, 30, 31, 114, 113, 9, 10, 11,
- 12, 13, 113, 15, 9, 113, 113, 113,
- 19, 20, 21, 113, 22, 23, 24, 113,
- 113, 113, 113, 10, 29, 30, 31, 114,
- 113, 9, 10, 11, 12, 13, 113, 113,
- 9, 113, 113, 113, 19, 20, 21, 113,
- 22, 23, 24, 113, 113, 113, 113, 10,
- 29, 30, 31, 114, 113, 9, 10, 11,
- 12, 13, 14, 15, 9, 113, 113, 113,
- 19, 20, 21, 113, 22, 23, 24, 113,
- 113, 113, 113, 10, 29, 30, 31, 114,
- 113, 5, 6, 113, 113, 113, 113, 113,
- 113, 113, 113, 113, 9, 10, 11, 12,
- 13, 14, 15, 9, 16, 113, 18, 19,
- 20, 21, 113, 22, 23, 24, 113, 113,
- 113, 113, 28, 29, 30, 31, 6, 113,
- 5, 113, 113, 113, 113, 113, 113, 113,
- 113, 113, 113, 113, 113, 113, 113, 113,
- 113, 113, 113, 113, 113, 113, 10, 11,
- 12, 13, 113, 113, 113, 113, 113, 113,
- 113, 113, 113, 113, 22, 23, 24, 113,
- 113, 113, 113, 113, 29, 30, 31, 114,
- 113, 116, 113, 7, 113, 1, 113, 113,
- 113, 1, 113, 113, 113, 113, 113, 5,
- 6, 7, 113, 113, 113, 113, 113, 113,
- 113, 113, 9, 10, 11, 12, 13, 14,
- 15, 9, 16, 17, 18, 19, 20, 21,
- 113, 22, 23, 24, 113, 25, 26, 113,
- 28, 29, 30, 31, 6, 113, 5, 6,
- 113, 113, 113, 113, 113, 113, 113, 113,
- 113, 9, 10, 11, 12, 13, 14, 15,
- 9, 16, 17, 18, 19, 20, 21, 113,
- 22, 23, 24, 113, 113, 113, 113, 28,
- 29, 30, 31, 6, 113, 25, 26, 113,
- 26, 113, 1, 117, 117, 117, 1, 117,
- 119, 118, 32, 118, 32, 119, 118, 119,
- 118, 32, 118, 33, 118, 0
+ 11, 12, 13, 14, 15, 16, 17, 18,
+ 19, 20, 21, 22, 2, 23, 24, 25,
+ 2, 26, 27, 28, 29, 30, 31, 32,
+ 29, 33, 2, 34, 2, 36, 37, 35,
+ 35, 35, 35, 35, 35, 35, 35, 35,
+ 38, 39, 40, 41, 42, 43, 44, 45,
+ 46, 47, 48, 49, 50, 51, 35, 52,
+ 53, 54, 35, 55, 56, 35, 57, 58,
+ 59, 60, 57, 35, 36, 37, 35, 35,
+ 35, 35, 35, 35, 35, 35, 35, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46,
+ 48, 48, 49, 50, 51, 35, 52, 53,
+ 54, 35, 35, 35, 35, 57, 58, 59,
+ 60, 57, 35, 36, 35, 35, 35, 35,
+ 35, 35, 35, 35, 35, 35, 35, 35,
+ 35, 35, 35, 35, 35, 35, 35, 35,
+ 35, 39, 40, 41, 42, 35, 35, 35,
+ 35, 35, 35, 35, 35, 35, 35, 52,
+ 53, 54, 35, 35, 35, 35, 35, 58,
+ 59, 60, 61, 35, 39, 40, 41, 42,
+ 35, 35, 35, 35, 35, 35, 35, 35,
+ 35, 35, 52, 53, 54, 35, 35, 35,
+ 35, 35, 58, 59, 60, 61, 35, 40,
+ 41, 42, 35, 35, 35, 35, 35, 35,
+ 35, 35, 35, 35, 35, 35, 35, 35,
+ 35, 35, 35, 35, 58, 59, 60, 35,
+ 41, 42, 35, 35, 35, 35, 35, 35,
+ 35, 35, 35, 35, 35, 35, 35, 35,
+ 35, 35, 35, 35, 58, 59, 60, 35,
+ 42, 35, 35, 35, 35, 35, 35, 35,
+ 35, 35, 35, 35, 35, 35, 35, 35,
+ 35, 35, 35, 58, 59, 60, 35, 58,
+ 59, 35, 59, 35, 40, 41, 42, 35,
+ 35, 35, 35, 35, 35, 35, 35, 35,
+ 35, 52, 53, 54, 35, 35, 35, 35,
+ 35, 58, 59, 60, 61, 35, 40, 41,
+ 42, 35, 35, 35, 35, 35, 35, 35,
+ 35, 35, 35, 35, 53, 54, 35, 35,
+ 35, 35, 35, 58, 59, 60, 61, 35,
+ 40, 41, 42, 35, 35, 35, 35, 35,
+ 35, 35, 35, 35, 35, 35, 35, 54,
+ 35, 35, 35, 35, 35, 58, 59, 60,
+ 61, 35, 62, 35, 40, 41, 42, 35,
+ 35, 35, 35, 35, 35, 35, 35, 35,
+ 35, 35, 35, 35, 35, 35, 35, 35,
+ 35, 58, 59, 60, 61, 35, 38, 39,
+ 40, 41, 42, 35, 35, 35, 35, 35,
+ 35, 49, 50, 51, 35, 52, 53, 54,
+ 35, 35, 35, 35, 35, 58, 59, 60,
+ 61, 35, 39, 40, 41, 42, 35, 35,
+ 35, 35, 35, 35, 49, 50, 51, 35,
+ 52, 53, 54, 35, 35, 35, 35, 35,
+ 58, 59, 60, 61, 35, 39, 40, 41,
+ 42, 35, 35, 35, 35, 35, 35, 35,
+ 50, 51, 35, 52, 53, 54, 35, 35,
+ 35, 35, 35, 58, 59, 60, 61, 35,
+ 39, 40, 41, 42, 35, 35, 35, 35,
+ 35, 35, 35, 35, 51, 35, 52, 53,
+ 54, 35, 35, 35, 35, 35, 58, 59,
+ 60, 61, 35, 39, 35, 35, 35, 35,
+ 35, 35, 35, 35, 35, 38, 39, 40,
+ 41, 42, 35, 44, 45, 35, 35, 35,
+ 49, 50, 51, 35, 52, 53, 54, 35,
+ 35, 35, 35, 35, 58, 59, 60, 61,
+ 35, 39, 35, 35, 35, 35, 35, 35,
+ 35, 35, 35, 38, 39, 40, 41, 42,
+ 35, 35, 45, 35, 35, 35, 49, 50,
+ 51, 35, 52, 53, 54, 35, 35, 35,
+ 35, 35, 58, 59, 60, 61, 35, 39,
+ 35, 35, 35, 35, 35, 35, 35, 35,
+ 35, 38, 39, 40, 41, 42, 35, 35,
+ 35, 35, 35, 35, 49, 50, 51, 35,
+ 52, 53, 54, 35, 35, 35, 35, 35,
+ 58, 59, 60, 61, 35, 39, 35, 35,
+ 35, 35, 35, 35, 35, 35, 35, 38,
+ 39, 40, 41, 42, 43, 44, 45, 35,
+ 35, 35, 49, 50, 51, 35, 52, 53,
+ 54, 35, 35, 35, 35, 35, 58, 59,
+ 60, 61, 35, 36, 37, 35, 35, 35,
+ 35, 35, 35, 35, 35, 35, 38, 39,
+ 40, 41, 42, 43, 44, 45, 46, 35,
+ 48, 49, 50, 51, 35, 52, 53, 54,
+ 35, 35, 35, 35, 57, 58, 59, 60,
+ 57, 35, 36, 35, 36, 37, 35, 35,
+ 35, 35, 35, 35, 35, 35, 35, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46,
+ 47, 48, 49, 50, 51, 35, 52, 53,
+ 54, 35, 35, 35, 35, 57, 58, 59,
+ 60, 57, 35, 55, 56, 35, 56, 35,
+ 64, 65, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 66, 67, 68, 69, 70,
+ 71, 72, 73, 74, 1, 75, 76, 77,
+ 78, 63, 79, 80, 81, 63, 63, 63,
+ 63, 82, 83, 84, 85, 86, 63, 64,
+ 65, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 66, 67, 68, 69, 70, 71,
+ 72, 73, 74, 75, 75, 76, 77, 78,
+ 63, 79, 80, 81, 63, 63, 63, 63,
+ 82, 83, 84, 85, 86, 63, 64, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 67, 68, 69, 70,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 79, 80, 81, 63, 63, 63,
+ 63, 63, 83, 84, 85, 87, 63, 67,
+ 68, 69, 70, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 79, 80, 81,
+ 63, 63, 63, 63, 63, 83, 84, 85,
+ 87, 63, 68, 69, 70, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 83,
+ 84, 85, 63, 69, 70, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 83,
+ 84, 85, 63, 70, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 83, 84,
+ 85, 63, 83, 84, 63, 84, 63, 68,
+ 69, 70, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 79, 80, 81, 63,
+ 63, 63, 63, 63, 83, 84, 85, 87,
+ 63, 68, 69, 70, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 80,
+ 81, 63, 63, 63, 63, 63, 83, 84,
+ 85, 87, 63, 68, 69, 70, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 81, 63, 63, 63, 63, 63,
+ 83, 84, 85, 87, 63, 89, 88, 68,
+ 69, 70, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 83, 84, 85, 87,
+ 63, 66, 67, 68, 69, 70, 63, 63,
+ 63, 63, 63, 63, 76, 77, 78, 63,
+ 79, 80, 81, 63, 63, 63, 63, 63,
+ 83, 84, 85, 87, 63, 67, 68, 69,
+ 70, 63, 63, 63, 63, 63, 63, 76,
+ 77, 78, 63, 79, 80, 81, 63, 63,
+ 63, 63, 63, 83, 84, 85, 87, 63,
+ 67, 68, 69, 70, 63, 63, 63, 63,
+ 63, 63, 63, 77, 78, 63, 79, 80,
+ 81, 63, 63, 63, 63, 63, 83, 84,
+ 85, 87, 63, 67, 68, 69, 70, 63,
+ 63, 63, 63, 63, 63, 63, 63, 78,
+ 63, 79, 80, 81, 63, 63, 63, 63,
+ 63, 83, 84, 85, 87, 63, 67, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 66, 67, 68, 69, 70, 63, 72, 73,
+ 63, 63, 63, 76, 77, 78, 63, 79,
+ 80, 81, 63, 63, 63, 63, 63, 83,
+ 84, 85, 87, 63, 67, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 66, 67,
+ 68, 69, 70, 63, 63, 73, 63, 63,
+ 63, 76, 77, 78, 63, 79, 80, 81,
+ 63, 63, 63, 63, 63, 83, 84, 85,
+ 87, 63, 67, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 66, 67, 68, 69,
+ 70, 63, 63, 63, 63, 63, 63, 76,
+ 77, 78, 63, 79, 80, 81, 63, 63,
+ 63, 63, 63, 83, 84, 85, 87, 63,
+ 67, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 66, 67, 68, 69, 70, 71,
+ 72, 73, 63, 63, 63, 76, 77, 78,
+ 63, 79, 80, 81, 63, 63, 63, 63,
+ 63, 83, 84, 85, 87, 63, 64, 65,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 66, 67, 68, 69, 70, 71, 72,
+ 73, 74, 63, 75, 76, 77, 78, 63,
+ 79, 80, 81, 63, 63, 63, 63, 82,
+ 83, 84, 85, 86, 63, 64, 90, 92,
+ 91, 3, 93, 94, 95, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 96, 97,
+ 98, 99, 100, 101, 102, 103, 104, 105,
+ 106, 107, 108, 109, 63, 110, 111, 112,
+ 63, 55, 56, 63, 113, 114, 115, 85,
+ 116, 63, 94, 95, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 96, 97, 98,
+ 99, 100, 101, 102, 103, 104, 106, 106,
+ 107, 108, 109, 63, 110, 111, 112, 63,
+ 63, 63, 63, 113, 114, 115, 85, 116,
+ 63, 94, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 97,
+ 98, 99, 100, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 110, 111, 112,
+ 63, 63, 63, 63, 63, 114, 115, 85,
+ 117, 63, 97, 98, 99, 100, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 110, 111, 112, 63, 63, 63, 63, 63,
+ 114, 115, 85, 117, 63, 98, 99, 100,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 114, 115, 85, 63, 99, 100,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 114, 115, 85, 63, 100, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 114, 115, 85, 63, 114, 115, 63,
+ 115, 63, 98, 99, 100, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 110,
+ 111, 112, 63, 63, 63, 63, 63, 114,
+ 115, 85, 117, 63, 98, 99, 100, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 111, 112, 63, 63, 63, 63,
+ 63, 114, 115, 85, 117, 63, 98, 99,
+ 100, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 112, 63, 63,
+ 63, 63, 63, 114, 115, 85, 117, 63,
+ 118, 88, 98, 99, 100, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 114,
+ 115, 85, 117, 63, 96, 97, 98, 99,
+ 100, 63, 63, 63, 63, 63, 63, 107,
+ 108, 109, 63, 110, 111, 112, 63, 63,
+ 63, 63, 63, 114, 115, 85, 117, 63,
+ 97, 98, 99, 100, 63, 63, 63, 63,
+ 63, 63, 107, 108, 109, 63, 110, 111,
+ 112, 63, 63, 63, 63, 63, 114, 115,
+ 85, 117, 63, 97, 98, 99, 100, 63,
+ 63, 63, 63, 63, 63, 63, 108, 109,
+ 63, 110, 111, 112, 63, 63, 63, 63,
+ 63, 114, 115, 85, 117, 63, 97, 98,
+ 99, 100, 63, 63, 63, 63, 63, 63,
+ 63, 63, 109, 63, 110, 111, 112, 63,
+ 63, 63, 63, 63, 114, 115, 85, 117,
+ 63, 97, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 96, 97, 98, 99, 100,
+ 63, 102, 103, 63, 63, 63, 107, 108,
+ 109, 63, 110, 111, 112, 63, 63, 63,
+ 63, 63, 114, 115, 85, 117, 63, 97,
+ 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 96, 97, 98, 99, 100, 63, 63,
+ 103, 63, 63, 63, 107, 108, 109, 63,
+ 110, 111, 112, 63, 63, 63, 63, 63,
+ 114, 115, 85, 117, 63, 97, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 96,
+ 97, 98, 99, 100, 63, 63, 63, 63,
+ 63, 63, 107, 108, 109, 63, 110, 111,
+ 112, 63, 63, 63, 63, 63, 114, 115,
+ 85, 117, 63, 97, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 96, 97, 98,
+ 99, 100, 101, 102, 103, 63, 63, 63,
+ 107, 108, 109, 63, 110, 111, 112, 63,
+ 63, 63, 63, 63, 114, 115, 85, 117,
+ 63, 94, 95, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 96, 97, 98, 99,
+ 100, 101, 102, 103, 104, 63, 106, 107,
+ 108, 109, 63, 110, 111, 112, 63, 63,
+ 63, 63, 113, 114, 115, 85, 116, 63,
+ 94, 90, 94, 95, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 96, 97, 98,
+ 99, 100, 101, 102, 103, 104, 105, 106,
+ 107, 108, 109, 63, 110, 111, 112, 63,
+ 63, 63, 63, 113, 114, 115, 85, 116,
+ 63, 5, 6, 119, 119, 119, 119, 119,
+ 119, 119, 119, 119, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 19, 19, 20,
+ 21, 22, 119, 23, 24, 25, 119, 119,
+ 119, 119, 29, 30, 31, 32, 29, 119,
+ 5, 119, 119, 119, 119, 119, 119, 119,
+ 119, 119, 119, 119, 119, 119, 119, 119,
+ 119, 119, 119, 119, 119, 119, 10, 11,
+ 12, 13, 119, 119, 119, 119, 119, 119,
+ 119, 119, 119, 119, 23, 24, 25, 119,
+ 119, 119, 119, 119, 30, 31, 32, 120,
+ 119, 10, 11, 12, 13, 119, 119, 119,
+ 119, 119, 119, 119, 119, 119, 119, 23,
+ 24, 25, 119, 119, 119, 119, 119, 30,
+ 31, 32, 120, 119, 11, 12, 13, 119,
+ 119, 119, 119, 119, 119, 119, 119, 119,
+ 119, 119, 119, 119, 119, 119, 119, 119,
+ 119, 30, 31, 32, 119, 12, 13, 119,
+ 119, 119, 119, 119, 119, 119, 119, 119,
+ 119, 119, 119, 119, 119, 119, 119, 119,
+ 119, 30, 31, 32, 119, 13, 119, 119,
+ 119, 119, 119, 119, 119, 119, 119, 119,
+ 119, 119, 119, 119, 119, 119, 119, 119,
+ 30, 31, 32, 119, 30, 31, 119, 31,
+ 119, 11, 12, 13, 119, 119, 119, 119,
+ 119, 119, 119, 119, 119, 119, 23, 24,
+ 25, 119, 119, 119, 119, 119, 30, 31,
+ 32, 120, 119, 11, 12, 13, 119, 119,
+ 119, 119, 119, 119, 119, 119, 119, 119,
+ 119, 24, 25, 119, 119, 119, 119, 119,
+ 30, 31, 32, 120, 119, 11, 12, 13,
+ 119, 119, 119, 119, 119, 119, 119, 119,
+ 119, 119, 119, 119, 25, 119, 119, 119,
+ 119, 119, 30, 31, 32, 120, 119, 121,
+ 119, 11, 12, 13, 119, 119, 119, 119,
+ 119, 119, 119, 119, 119, 119, 119, 119,
+ 119, 119, 119, 119, 119, 119, 30, 31,
+ 32, 120, 119, 9, 10, 11, 12, 13,
+ 119, 119, 119, 119, 119, 119, 20, 21,
+ 22, 119, 23, 24, 25, 119, 119, 119,
+ 119, 119, 30, 31, 32, 120, 119, 10,
+ 11, 12, 13, 119, 119, 119, 119, 119,
+ 119, 20, 21, 22, 119, 23, 24, 25,
+ 119, 119, 119, 119, 119, 30, 31, 32,
+ 120, 119, 10, 11, 12, 13, 119, 119,
+ 119, 119, 119, 119, 119, 21, 22, 119,
+ 23, 24, 25, 119, 119, 119, 119, 119,
+ 30, 31, 32, 120, 119, 10, 11, 12,
+ 13, 119, 119, 119, 119, 119, 119, 119,
+ 119, 22, 119, 23, 24, 25, 119, 119,
+ 119, 119, 119, 30, 31, 32, 120, 119,
+ 10, 119, 119, 119, 119, 119, 119, 119,
+ 119, 119, 9, 10, 11, 12, 13, 119,
+ 15, 16, 119, 119, 119, 20, 21, 22,
+ 119, 23, 24, 25, 119, 119, 119, 119,
+ 119, 30, 31, 32, 120, 119, 10, 119,
+ 119, 119, 119, 119, 119, 119, 119, 119,
+ 9, 10, 11, 12, 13, 119, 119, 16,
+ 119, 119, 119, 20, 21, 22, 119, 23,
+ 24, 25, 119, 119, 119, 119, 119, 30,
+ 31, 32, 120, 119, 10, 119, 119, 119,
+ 119, 119, 119, 119, 119, 119, 9, 10,
+ 11, 12, 13, 119, 119, 119, 119, 119,
+ 119, 20, 21, 22, 119, 23, 24, 25,
+ 119, 119, 119, 119, 119, 30, 31, 32,
+ 120, 119, 10, 119, 119, 119, 119, 119,
+ 119, 119, 119, 119, 9, 10, 11, 12,
+ 13, 14, 15, 16, 119, 119, 119, 20,
+ 21, 22, 119, 23, 24, 25, 119, 119,
+ 119, 119, 119, 30, 31, 32, 120, 119,
+ 5, 6, 119, 119, 119, 119, 119, 119,
+ 119, 119, 119, 9, 10, 11, 12, 13,
+ 14, 15, 16, 17, 119, 19, 20, 21,
+ 22, 119, 23, 24, 25, 119, 119, 119,
+ 119, 29, 30, 31, 32, 29, 119, 5,
+ 119, 122, 119, 7, 119, 1, 119, 119,
+ 119, 1, 119, 119, 119, 119, 119, 5,
+ 6, 7, 119, 119, 119, 119, 119, 119,
+ 119, 119, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22,
+ 119, 23, 24, 25, 119, 26, 27, 119,
+ 29, 30, 31, 32, 29, 119, 5, 6,
+ 119, 119, 119, 119, 119, 119, 119, 119,
+ 119, 9, 10, 11, 12, 13, 14, 15,
+ 16, 17, 18, 19, 20, 21, 22, 119,
+ 23, 24, 25, 119, 119, 119, 119, 29,
+ 30, 31, 32, 29, 119, 26, 27, 119,
+ 27, 119, 1, 123, 123, 123, 1, 123,
+ 125, 124, 33, 124, 33, 125, 124, 125,
+ 124, 33, 124, 34, 124, 0
};
static const char _use_syllable_machine_trans_targs[] = {
- 1, 27, 0, 50, 52, 76, 77, 98,
- 100, 78, 79, 80, 81, 82, 93, 94,
- 95, 101, 96, 90, 91, 92, 85, 86,
- 87, 102, 103, 104, 97, 83, 84, 0,
- 105, 107, 0, 2, 3, 4, 5, 6,
- 7, 8, 19, 20, 21, 24, 22, 16,
- 17, 18, 11, 12, 13, 25, 26, 23,
- 9, 10, 0, 14, 15, 0, 28, 29,
- 30, 31, 32, 33, 34, 45, 46, 47,
- 48, 42, 43, 44, 37, 38, 39, 49,
- 35, 36, 0, 0, 40, 0, 41, 0,
- 51, 0, 53, 54, 55, 56, 57, 58,
- 59, 70, 71, 72, 75, 73, 67, 68,
- 69, 62, 63, 64, 74, 60, 61, 65,
- 66, 0, 88, 89, 99, 0, 0, 106
+ 1, 28, 0, 52, 54, 79, 80, 102,
+ 104, 92, 81, 82, 83, 84, 96, 97,
+ 98, 99, 105, 100, 93, 94, 95, 87,
+ 88, 89, 106, 107, 108, 101, 85, 86,
+ 0, 109, 111, 0, 2, 3, 15, 4,
+ 5, 6, 7, 19, 20, 21, 22, 25,
+ 23, 16, 17, 18, 10, 11, 12, 26,
+ 27, 24, 8, 9, 0, 13, 14, 0,
+ 29, 30, 42, 31, 32, 33, 34, 46,
+ 47, 48, 49, 50, 43, 44, 45, 37,
+ 38, 39, 51, 35, 36, 0, 51, 40,
+ 0, 41, 0, 0, 53, 0, 55, 56,
+ 68, 57, 58, 59, 60, 72, 73, 74,
+ 75, 78, 76, 69, 70, 71, 63, 64,
+ 65, 77, 61, 62, 77, 66, 67, 0,
+ 90, 91, 103, 0, 0, 110
};
static const char _use_syllable_machine_trans_actions[] = {
0, 0, 3, 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, 0, 0, 4,
- 0, 0, 5, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
+ 4, 0, 0, 5, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 6, 0, 0, 7, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 0, 0, 7,
0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 8, 9, 0, 10, 0, 11,
- 0, 12, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 8, 0, 0, 9, 10, 0,
+ 11, 0, 12, 13, 0, 14, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
- 0, 13, 0, 0, 0, 14, 15, 0
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 8, 0, 0, 10, 0, 0, 15,
+ 0, 0, 0, 16, 17, 0
};
static const char _use_syllable_machine_to_state_actions[] = {
@@ -514,7 +551,7 @@ static const char _use_syllable_machine_to_state_actions[] = {
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, 0, 0
+ 0, 0, 0, 0, 0, 0, 0, 0
};
static const char _use_syllable_machine_from_state_actions[] = {
@@ -531,24 +568,24 @@ static const char _use_syllable_machine_from_state_actions[] = {
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, 0, 0
+ 0, 0, 0, 0, 0, 0, 0, 0
};
static const short _use_syllable_machine_eof_trans[] = {
- 0, 35, 35, 35, 35, 35, 35, 35,
- 35, 35, 35, 35, 35, 35, 35, 35,
- 35, 35, 35, 35, 35, 35, 35, 35,
- 35, 35, 35, 62, 62, 84, 62, 62,
- 62, 62, 62, 62, 62, 62, 62, 62,
- 86, 62, 62, 62, 62, 62, 62, 62,
- 62, 84, 88, 90, 62, 62, 84, 62,
- 62, 62, 62, 62, 62, 62, 62, 62,
- 62, 86, 62, 62, 62, 62, 62, 62,
- 62, 62, 84, 62, 114, 114, 114, 114,
- 114, 114, 114, 114, 114, 114, 114, 114,
- 114, 114, 114, 114, 114, 114, 114, 114,
- 114, 114, 114, 114, 114, 114, 114, 114,
- 118, 119, 119, 119
+ 0, 36, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 89, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 91, 92, 94, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 89, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 91, 64, 120,
+ 120, 120, 120, 120, 120, 120, 120, 120,
+ 120, 120, 120, 120, 120, 120, 120, 120,
+ 120, 120, 120, 120, 120, 120, 120, 120,
+ 120, 120, 120, 120, 124, 125, 125, 125
};
static const int use_syllable_machine_start = 0;
@@ -583,7 +620,7 @@ struct machine_index_t :
machine_index_t (const Iter& it) : it (it) {}
machine_index_t (const machine_index_t& o) : hb_iter_with_fallback_t<machine_index_t<Iter>,
typename Iter::item_t> (),
- it (o.it) {}
+ it (o.it), is_null (o.is_null) {}
static constexpr bool is_random_access_iterator = Iter::is_random_access_iterator;
static constexpr bool is_sorted_iterator = Iter::is_sorted_iterator;
@@ -595,14 +632,28 @@ struct machine_index_t :
void __forward__ (unsigned n) { it += n; }
void __prev__ () { --it; }
void __rewind__ (unsigned n) { it -= n; }
+
void operator = (unsigned n)
- { unsigned index = (*it).first; if (index < n) it += n - index; else if (index > n) it -= index - n; }
- void operator = (const machine_index_t& o) { *this = (*o.it).first; }
- bool operator == (const machine_index_t& o) const { return (*it).first == (*o.it).first; }
+ {
+ assert (n == 0);
+ is_null = true;
+ }
+ explicit operator bool () { return !is_null; }
+
+ void operator = (const machine_index_t& o)
+ {
+ is_null = o.is_null;
+ unsigned index = (*it).first;
+ unsigned n = (*o.it).first;
+ if (index < n) it += n - index; else if (index > n) it -= index - n;
+ }
+ bool operator == (const machine_index_t& o) const
+ { return is_null ? o.is_null : !o.is_null && (*it).first == (*o.it).first; }
bool operator != (const machine_index_t& o) const { return !(*this == o); }
private:
Iter it;
+ bool is_null = false;
};
struct
{
@@ -647,7 +698,7 @@ find_syllables_use (hb_buffer_t *buffer)
unsigned int act HB_UNUSED;
int cs;
-#line 651 "hb-ot-shape-complex-use-machine.hh"
+#line 702 "hb-ot-shape-complex-use-machine.hh"
{
cs = use_syllable_machine_start;
ts = 0;
@@ -655,12 +706,12 @@ find_syllables_use (hb_buffer_t *buffer)
act = 0;
}
-#line 267 "hb-ot-shape-complex-use-machine.rl"
+#line 281 "hb-ot-shape-complex-use-machine.rl"
unsigned int syllable_serial = 1;
-#line 664 "hb-ot-shape-complex-use-machine.hh"
+#line 715 "hb-ot-shape-complex-use-machine.hh"
{
int _slen;
int _trans;
@@ -674,7 +725,7 @@ _resume:
#line 1 "NONE"
{ts = p;}
break;
-#line 678 "hb-ot-shape-complex-use-machine.hh"
+#line 729 "hb-ot-shape-complex-use-machine.hh"
}
_keys = _use_syllable_machine_trans_keys + (cs<<1);
@@ -692,7 +743,7 @@ _eof_trans:
goto _again;
switch ( _use_syllable_machine_trans_actions[_trans] ) {
- case 8:
+ case 9:
#line 171 "hb-ot-shape-complex-use-machine.rl"
{te = p+1;{ found_syllable (use_standard_cluster); }}
break;
@@ -708,11 +759,7 @@ _eof_trans:
#line 177 "hb-ot-shape-complex-use-machine.rl"
{te = p+1;{ found_syllable (use_non_cluster); }}
break;
- case 9:
-#line 169 "hb-ot-shape-complex-use-machine.rl"
- {te = p;p--;{ found_syllable (use_virama_terminated_cluster); }}
- break;
- case 10:
+ case 11:
#line 170 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_sakot_terminated_cluster); }}
break;
@@ -720,11 +767,11 @@ _eof_trans:
#line 171 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_standard_cluster); }}
break;
- case 12:
+ case 14:
#line 172 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_number_joiner_terminated_cluster); }}
break;
- case 11:
+ case 13:
#line 173 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_numeral_cluster); }}
break;
@@ -732,19 +779,43 @@ _eof_trans:
#line 174 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_symbol_cluster); }}
break;
- case 15:
+ case 17:
#line 175 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_hieroglyph_cluster); }}
break;
- case 13:
+ case 15:
#line 176 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_broken_cluster); }}
break;
- case 14:
+ case 16:
#line 177 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_non_cluster); }}
break;
-#line 748 "hb-ot-shape-complex-use-machine.hh"
+ case 12:
+#line 1 "NONE"
+ { switch( act ) {
+ case 1:
+ {{p = ((te))-1;} found_syllable (use_virama_terminated_cluster); }
+ break;
+ case 2:
+ {{p = ((te))-1;} found_syllable (use_sakot_terminated_cluster); }
+ break;
+ }
+ }
+ break;
+ case 8:
+#line 1 "NONE"
+ {te = p+1;}
+#line 169 "hb-ot-shape-complex-use-machine.rl"
+ {act = 1;}
+ break;
+ case 10:
+#line 1 "NONE"
+ {te = p+1;}
+#line 170 "hb-ot-shape-complex-use-machine.rl"
+ {act = 2;}
+ break;
+#line 819 "hb-ot-shape-complex-use-machine.hh"
}
_again:
@@ -753,7 +824,7 @@ _again:
#line 1 "NONE"
{ts = 0;}
break;
-#line 757 "hb-ot-shape-complex-use-machine.hh"
+#line 828 "hb-ot-shape-complex-use-machine.hh"
}
if ( ++p != pe )
@@ -769,7 +840,7 @@ _again:
}
-#line 272 "hb-ot-shape-complex-use-machine.rl"
+#line 286 "hb-ot-shape-complex-use-machine.rl"
}