OLD | NEW |
1 | 1 |
2 #line 1 "hb-ot-shape-complex-indic-machine.rl" | 2 #line 1 "hb-ot-shape-complex-indic-machine.rl" |
3 /* | 3 /* |
4 * Copyright © 2011,2012 Google, Inc. | 4 * Copyright © 2011,2012 Google, Inc. |
5 * | 5 * |
6 * This is part of HarfBuzz, a text shaping library. | 6 * This is part of HarfBuzz, a text shaping library. |
7 * | 7 * |
8 * Permission is hereby granted, without written agreement and without | 8 * Permission is hereby granted, without written agreement and without |
9 * license or royalty fees, to use, copy, modify, and distribute this | 9 * license or royalty fees, to use, copy, modify, and distribute this |
10 * software and its documentation for any purpose, provided that the | 10 * software and its documentation for any purpose, provided that the |
(...skipping 13 matching lines...) Expand all Loading... |
24 * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. | 24 * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. |
25 * | 25 * |
26 * Google Author(s): Behdad Esfahbod | 26 * Google Author(s): Behdad Esfahbod |
27 */ | 27 */ |
28 | 28 |
29 #ifndef HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH | 29 #ifndef HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH |
30 #define HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH | 30 #define HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH |
31 | 31 |
32 #include "hb-private.hh" | 32 #include "hb-private.hh" |
33 | 33 |
34 HB_BEGIN_DECLS | 34 |
35 | 35 #line 36 "hb-ot-shape-complex-indic-machine.hh.tmp" |
36 | |
37 #line 38 "hb-ot-shape-complex-indic-machine.hh.tmp" | |
38 static const unsigned char _indic_syllable_machine_trans_keys[] = { | 36 static const unsigned char _indic_syllable_machine_trans_keys[] = { |
39 » 5u, 5u, 1u, 2u, 1u, 2u, 5u, 5u, 1u, 5u, 1u, 2u, 5u, 5u, 1u, 13u, | 37 » 1u, 16u, 13u, 13u, 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, |
40 » 4u, 11u, 4u, 11u, 5u, 11u, 1u, 10u, 1u, 10u, 10u, 10u, 10u, 10u, 4u, 10u
, | 38 » 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, 4u, 4u, 6u, 6u, |
41 » 5u, 10u, 8u, 10u, 5u, 10u, 6u, 10u, 9u, 10u, 4u, 11u, 1u, 13u, 4u, 10u, | 39 » 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u, |
42 » 4u, 10u, 5u, 10u, 4u, 10u, 5u, 10u, 8u, 10u, 10u, 10u, 10u, 10u, 4u, 10u
, | 40 » 6u, 6u, 16u, 16u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, |
43 » 4u, 10u, 5u, 10u, 4u, 10u, 5u, 10u, 8u, 10u, 10u, 10u, 10u, 10u, 0 | 41 » 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 1u, 16u, 13u, 13u, 5u, 7u, 5u, 7u, |
| 42 » 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, |
| 43 » 5u, 7u, 7u, 7u, 4u, 4u, 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, |
| 44 » 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 14u, 4u, 14u, |
| 45 » 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, |
| 46 » 1u, 16u, 13u, 13u, 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, |
| 47 » 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, 4u, 4u, 6u, 6u, |
| 48 » 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u, |
| 49 » 6u, 6u, 16u, 16u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, |
| 50 » 4u, 14u, 4u, 14u, 4u, 14u, 1u, 16u, 13u, 13u, 5u, 7u, 5u, 7u, 7u, 7u, |
| 51 » 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, |
| 52 » 7u, 7u, 4u, 4u, 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u, |
| 53 » 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 14u, 4u, 14u, 4u, 14u, |
| 54 » 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 1u, 16u, |
| 55 » 3u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, |
| 56 » 3u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, |
| 57 » 3u, 14u, 3u, 14u, 4u, 14u, 5u, 14u, 8u, 14u, 5u, 9u, 9u, 9u, 9u, 9u, |
| 58 » 3u, 13u, 3u, 9u, 8u, 9u, 3u, 9u, 3u, 13u, 3u, 14u, 3u, 14u, 4u, 14u, |
| 59 » 5u, 14u, 3u, 14u, 4u, 14u, 5u, 14u, 3u, 14u, 4u, 14u, 5u, 14u, 3u, 14u, |
| 60 » 4u, 14u, 6u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, 3u, 14u, 1u, 16u, |
| 61 » 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 14u, 3u, 14u, 1u, 16u, 1u, 16u, |
| 62 » 1u, 16u, 1u, 16u, 1u, 16u, 3u, 14u, 3u, 14u, 1u, 16u, 1u, 16u, 1u, 16u, |
| 63 » 1u, 16u, 1u, 16u, 3u, 14u, 3u, 14u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, |
| 64 » 1u, 16u, 3u, 14u, 3u, 14u, 3u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, |
| 65 » 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, |
| 66 » 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, 3u, 14u, 4u, 14u, 5u, 14u, 8u, 14u, |
| 67 » 5u, 9u, 9u, 9u, 9u, 9u, 3u, 13u, 3u, 9u, 8u, 9u, 3u, 9u, 3u, 13u, |
| 68 » 3u, 14u, 3u, 14u, 4u, 14u, 5u, 14u, 3u, 14u, 4u, 14u, 5u, 14u, 3u, 14u, |
| 69 » 4u, 14u, 5u, 14u, 3u, 14u, 4u, 14u, 6u, 14u, 3u, 14u, 1u, 16u, 3u, 14u, |
| 70 » 3u, 14u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 14u, 3u, 14u, |
| 71 » 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 14u, 3u, 14u, 1u, 16u, |
| 72 » 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 14u, 3u, 14u, 1u, 16u, 1u, 16u, |
| 73 » 1u, 16u, 1u, 16u, 4u, 14u, 1u, 16u, 3u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, |
| 74 » 3u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, |
| 75 » 3u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, 3u, 14u, 4u, 14u, 5u, 14u, |
| 76 » 8u, 14u, 5u, 9u, 9u, 9u, 9u, 9u, 3u, 13u, 3u, 9u, 8u, 9u, 3u, 9u, |
| 77 » 3u, 13u, 3u, 14u, 3u, 14u, 4u, 14u, 5u, 14u, 3u, 14u, 4u, 14u, 5u, 14u, |
| 78 » 3u, 14u, 4u, 14u, 5u, 14u, 3u, 14u, 4u, 14u, 6u, 14u, 3u, 14u, 1u, 16u, |
| 79 » 3u, 14u, 3u, 14u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 14u, |
| 80 » 3u, 14u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 14u, 3u, 14u, |
| 81 » 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 14u, 3u, 14u, 1u, 16u, |
| 82 » 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 4u, 14u, 3u, 14u, 4u, 14u, 3u, 14u, |
| 83 » 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, |
| 84 » 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, 3u, 14u, 4u, 14u, 1u, 16u, 3u, 14u, |
| 85 » 3u, 14u, 4u, 14u, 5u, 14u, 8u, 14u, 5u, 9u, 9u, 9u, 9u, 9u, 3u, 13u, |
| 86 » 3u, 9u, 8u, 9u, 3u, 9u, 3u, 13u, 3u, 14u, 3u, 14u, 4u, 14u, 5u, 14u, |
| 87 » 3u, 14u, 4u, 14u, 5u, 14u, 3u, 14u, 4u, 14u, 5u, 14u, 3u, 14u, 4u, 14u, |
| 88 » 6u, 14u, 3u, 14u, 1u, 16u, 3u, 14u, 3u, 14u, 1u, 16u, 1u, 16u, 1u, 16u, |
| 89 » 1u, 16u, 1u, 16u, 3u, 14u, 3u, 14u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, |
| 90 » 1u, 16u, 3u, 14u, 3u, 14u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, |
| 91 » 3u, 14u, 3u, 14u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 14u, |
| 92 » 1u, 16u, 3u, 14u, 1u, 16u, 0 |
44 }; | 93 }; |
45 | 94 |
46 static const char _indic_syllable_machine_key_spans[] = { | 95 static const char _indic_syllable_machine_key_spans[] = { |
47 » 1, 2, 2, 1, 5, 2, 1, 13, | 96 » 16, 1, 3, 3, 1, 3, 3, 1, |
48 » 8, 8, 7, 10, 10, 1, 1, 7, | 97 » 3, 3, 1, 3, 3, 1, 1, 1, |
49 » 6, 3, 6, 5, 2, 8, 13, 7, | 98 » 1, 4, 1, 1, 4, 1, 1, 4, |
50 » 7, 6, 7, 6, 3, 1, 1, 7, | 99 » 1, 1, 11, 11, 11, 11, 11, 11, |
51 » 7, 6, 7, 6, 3, 1, 1 | 100 » 11, 11, 11, 11, 16, 1, 3, 3, |
| 101 » 1, 3, 3, 1, 3, 3, 1, 3, |
| 102 » 3, 1, 1, 1, 1, 4, 1, 1, |
| 103 » 4, 1, 1, 4, 1, 1, 11, 11, |
| 104 » 11, 11, 11, 11, 11, 11, 11, 11, |
| 105 » 16, 1, 3, 3, 1, 3, 3, 1, |
| 106 » 3, 3, 1, 3, 3, 1, 1, 1, |
| 107 » 1, 4, 1, 1, 4, 1, 1, 4, |
| 108 » 1, 1, 11, 11, 11, 11, 11, 11, |
| 109 » 11, 11, 11, 16, 1, 3, 3, 1, |
| 110 » 3, 3, 1, 3, 3, 1, 3, 3, |
| 111 » 1, 1, 1, 1, 4, 1, 1, 4, |
| 112 » 1, 1, 4, 1, 1, 11, 11, 11, |
| 113 » 11, 11, 11, 11, 11, 11, 11, 16, |
| 114 » 12, 12, 11, 16, 12, 12, 11, 16, |
| 115 » 12, 12, 11, 16, 12, 12, 11, 16, |
| 116 » 12, 12, 11, 10, 7, 5, 1, 1, |
| 117 » 11, 7, 2, 7, 11, 12, 12, 11, |
| 118 » 10, 12, 11, 10, 12, 11, 10, 12, |
| 119 » 11, 9, 12, 11, 16, 12, 12, 16, |
| 120 » 16, 16, 16, 16, 12, 12, 16, 16, |
| 121 » 16, 16, 16, 12, 12, 16, 16, 16, |
| 122 » 16, 16, 12, 12, 16, 16, 16, 16, |
| 123 » 16, 12, 12, 12, 12, 11, 16, 12, |
| 124 » 12, 11, 16, 12, 12, 11, 16, 12, |
| 125 » 12, 11, 16, 12, 12, 11, 10, 7, |
| 126 » 5, 1, 1, 11, 7, 2, 7, 11, |
| 127 » 12, 12, 11, 10, 12, 11, 10, 12, |
| 128 » 11, 10, 12, 11, 9, 12, 16, 12, |
| 129 » 12, 16, 16, 16, 16, 16, 12, 12, |
| 130 » 16, 16, 16, 16, 16, 12, 12, 16, |
| 131 » 16, 16, 16, 16, 12, 12, 16, 16, |
| 132 » 16, 16, 11, 16, 12, 12, 11, 16, |
| 133 » 12, 12, 11, 16, 12, 12, 11, 16, |
| 134 » 12, 12, 11, 16, 12, 12, 11, 10, |
| 135 » 7, 5, 1, 1, 11, 7, 2, 7, |
| 136 » 11, 12, 12, 11, 10, 12, 11, 10, |
| 137 » 12, 11, 10, 12, 11, 9, 12, 16, |
| 138 » 12, 12, 16, 16, 16, 16, 16, 12, |
| 139 » 12, 16, 16, 16, 16, 16, 12, 12, |
| 140 » 16, 16, 16, 16, 16, 12, 12, 16, |
| 141 » 16, 16, 16, 16, 11, 12, 11, 12, |
| 142 » 12, 11, 16, 12, 12, 11, 16, 12, |
| 143 » 12, 11, 16, 12, 12, 11, 16, 12, |
| 144 » 12, 11, 10, 7, 5, 1, 1, 11, |
| 145 » 7, 2, 7, 11, 12, 12, 11, 10, |
| 146 » 12, 11, 10, 12, 11, 10, 12, 11, |
| 147 » 9, 12, 16, 12, 12, 16, 16, 16, |
| 148 » 16, 16, 12, 12, 16, 16, 16, 16, |
| 149 » 16, 12, 12, 16, 16, 16, 16, 16, |
| 150 » 12, 12, 16, 16, 16, 16, 16, 12, |
| 151 » 16, 12, 16 |
52 }; | 152 }; |
53 | 153 |
54 static const unsigned char _indic_syllable_machine_index_offsets[] = { | 154 static const short _indic_syllable_machine_index_offsets[] = { |
55 » 0, 2, 5, 8, 10, 16, 19, 21, | 155 » 0, 17, 19, 23, 27, 29, 33, 37, |
56 » 35, 44, 53, 61, 72, 83, 85, 87, | 156 » 39, 43, 47, 49, 53, 57, 59, 61, |
57 » 95, 102, 106, 113, 119, 122, 131, 145, | 157 » 63, 65, 70, 72, 74, 79, 81, 83, |
58 » 153, 161, 168, 176, 183, 187, 189, 191, | 158 » 88, 90, 92, 104, 116, 128, 140, 152, |
59 » 199, 207, 214, 222, 229, 233, 235 | 159 » 164, 176, 188, 200, 212, 229, 231, 235, |
| 160 » 239, 241, 245, 249, 251, 255, 259, 261, |
| 161 » 265, 269, 271, 273, 275, 277, 282, 284, |
| 162 » 286, 291, 293, 295, 300, 302, 304, 316, |
| 163 » 328, 340, 352, 364, 376, 388, 400, 412, |
| 164 » 424, 441, 443, 447, 451, 453, 457, 461, |
| 165 » 463, 467, 471, 473, 477, 481, 483, 485, |
| 166 » 487, 489, 494, 496, 498, 503, 505, 507, |
| 167 » 512, 514, 516, 528, 540, 552, 564, 576, |
| 168 » 588, 600, 612, 624, 641, 643, 647, 651, |
| 169 » 653, 657, 661, 663, 667, 671, 673, 677, |
| 170 » 681, 683, 685, 687, 689, 694, 696, 698, |
| 171 » 703, 705, 707, 712, 714, 716, 728, 740, |
| 172 » 752, 764, 776, 788, 800, 812, 824, 836, |
| 173 » 853, 866, 879, 891, 908, 921, 934, 946, |
| 174 » 963, 976, 989, 1001, 1018, 1031, 1044, 1056, |
| 175 » 1073, 1086, 1099, 1111, 1122, 1130, 1136, 1138, |
| 176 » 1140, 1152, 1160, 1163, 1171, 1183, 1196, 1209, |
| 177 » 1221, 1232, 1245, 1257, 1268, 1281, 1293, 1304, |
| 178 » 1317, 1329, 1339, 1352, 1364, 1381, 1394, 1407, |
| 179 » 1424, 1441, 1458, 1475, 1492, 1505, 1518, 1535, |
| 180 » 1552, 1569, 1586, 1603, 1616, 1629, 1646, 1663, |
| 181 » 1680, 1697, 1714, 1727, 1740, 1757, 1774, 1791, |
| 182 » 1808, 1825, 1838, 1851, 1864, 1877, 1889, 1906, |
| 183 » 1919, 1932, 1944, 1961, 1974, 1987, 1999, 2016, |
| 184 » 2029, 2042, 2054, 2071, 2084, 2097, 2109, 2120, |
| 185 » 2128, 2134, 2136, 2138, 2150, 2158, 2161, 2169, |
| 186 » 2181, 2194, 2207, 2219, 2230, 2243, 2255, 2266, |
| 187 » 2279, 2291, 2302, 2315, 2327, 2337, 2350, 2367, |
| 188 » 2380, 2393, 2410, 2427, 2444, 2461, 2478, 2491, |
| 189 » 2504, 2521, 2538, 2555, 2572, 2589, 2602, 2615, |
| 190 » 2632, 2649, 2666, 2683, 2700, 2713, 2726, 2743, |
| 191 » 2760, 2777, 2794, 2806, 2823, 2836, 2849, 2861, |
| 192 » 2878, 2891, 2904, 2916, 2933, 2946, 2959, 2971, |
| 193 » 2988, 3001, 3014, 3026, 3043, 3056, 3069, 3081, |
| 194 » 3092, 3100, 3106, 3108, 3110, 3122, 3130, 3133, |
| 195 » 3141, 3153, 3166, 3179, 3191, 3202, 3215, 3227, |
| 196 » 3238, 3251, 3263, 3274, 3287, 3299, 3309, 3322, |
| 197 » 3339, 3352, 3365, 3382, 3399, 3416, 3433, 3450, |
| 198 » 3463, 3476, 3493, 3510, 3527, 3544, 3561, 3574, |
| 199 » 3587, 3604, 3621, 3638, 3655, 3672, 3685, 3698, |
| 200 » 3715, 3732, 3749, 3766, 3783, 3795, 3808, 3820, |
| 201 » 3833, 3846, 3858, 3875, 3888, 3901, 3913, 3930, |
| 202 » 3943, 3956, 3968, 3985, 3998, 4011, 4023, 4040, |
| 203 » 4053, 4066, 4078, 4089, 4097, 4103, 4105, 4107, |
| 204 » 4119, 4127, 4130, 4138, 4150, 4163, 4176, 4188, |
| 205 » 4199, 4212, 4224, 4235, 4248, 4260, 4271, 4284, |
| 206 » 4296, 4306, 4319, 4336, 4349, 4362, 4379, 4396, |
| 207 » 4413, 4430, 4447, 4460, 4473, 4490, 4507, 4524, |
| 208 » 4541, 4558, 4571, 4584, 4601, 4618, 4635, 4652, |
| 209 » 4669, 4682, 4695, 4712, 4729, 4746, 4763, 4780, |
| 210 » 4793, 4810, 4823 |
60 }; | 211 }; |
61 | 212 |
62 static const char _indic_syllable_machine_indicies[] = { | 213 static const short _indic_syllable_machine_indicies[] = { |
63 1, 0, 2, 2, 0, 4, 4, 3, | 214 1, 2, 0, 0, 0, 0, 0, 0, |
64 5, 3, 4, 4, 3, 3, 5, 3, | 215 0, 0, 0, 0, 0, 0, 0, 1, |
65 7, 7, 6, 8, 6, 2, 10, 11, | 216 0, 3, 0, 4, 4, 5, 0, 6, |
66 9, 9, 9, 9, 9, 9, 9, 9, | 217 6, 5, 0, 5, 0, 7, 7, 8, |
67 12, 12, 9, 14, 15, 16, 16, 17, | 218 0, 9, 9, 8, 0, 8, 0, 10, |
68 18, 19, 20, 13, 21, 15, 16, 16, | 219 10, 11, 0, 12, 12, 11, 0, 11, |
69 17, 18, 19, 20, 13, 15, 16, 16, | 220 0, 13, 13, 14, 0, 15, 15, 14, |
70 17, 18, 19, 20, 13, 2, 2, 13, | 221 0, 14, 0, 16, 0, 17, 0, 18, |
71 13, 13, 22, 22, 13, 18, 19, 13, | 222 0, 19, 13, 13, 14, 0, 20, 0, |
72 2, 2, 13, 13, 13, 13, 13, 13, | 223 21, 0, 22, 10, 10, 11, 0, 23, |
73 18, 19, 13, 19, 13, 23, 13, 24, | 224 0, 24, 0, 25, 7, 7, 8, 0, |
74 25, 13, 13, 17, 18, 19, 13, 25, | 225 26, 0, 27, 0, 28, 4, 4, 5, |
75 13, 13, 17, 18, 19, 13, 17, 18, | 226 0, 0, 0, 0, 0, 0, 28, 0, |
76 19, 13, 26, 13, 13, 17, 18, 19, | 227 28, 4, 4, 5, 0, 0, 0, 0, |
77 13, 27, 27, 13, 18, 19, 13, 18, | 228 0, 29, 28, 0, 30, 4, 4, 5, |
78 19, 13, 14, 28, 16, 16, 17, 18, | 229 0, 0, 0, 0, 0, 0, 30, 0, |
79 19, 20, 13, 2, 2, 11, 13, 13, | 230 30, 4, 4, 5, 0, 0, 0, 0, |
80 22, 22, 13, 18, 19, 13, 12, 12, | 231 0, 31, 30, 0, 32, 4, 4, 5, |
81 13, 30, 5, 31, 32, 33, 34, 35, | 232 0, 0, 0, 0, 0, 0, 32, 0, |
82 29, 4, 5, 31, 32, 33, 34, 35, | 233 32, 4, 4, 5, 0, 0, 0, 0, |
83 29, 5, 31, 32, 33, 34, 35, 29, | 234 0, 33, 32, 0, 34, 4, 4, 5, |
84 36, 37, 29, 29, 33, 34, 35, 29, | 235 0, 0, 0, 0, 0, 0, 34, 0, |
85 37, 29, 29, 33, 34, 35, 29, 33, | 236 34, 4, 4, 5, 0, 0, 0, 0, |
86 34, 35, 29, 35, 29, 38, 29, 40, | 237 0, 35, 34, 0, 36, 4, 4, 5, |
87 8, 41, 41, 42, 43, 44, 39, 7, | 238 0, 0, 0, 0, 0, 0, 36, 0, |
88 8, 41, 41, 42, 43, 44, 39, 8, | 239 36, 4, 4, 5, 0, 0, 0, 0, |
89 41, 41, 42, 43, 44, 39, 45, 46, | 240 0, 37, 36, 0, 39, 40, 38, 38, |
90 39, 39, 42, 43, 44, 39, 46, 39, | 241 38, 38, 38, 38, 38, 38, 38, 38, |
91 39, 42, 43, 44, 39, 42, 43, 44, | 242 38, 38, 38, 39, 38, 41, 38, 42, |
92 39, 44, 39, 47, 39, 0 | 243 42, 43, 38, 44, 44, 43, 38, 43, |
| 244 38, 45, 45, 46, 38, 47, 47, 46, |
| 245 38, 46, 38, 48, 48, 49, 38, 50, |
| 246 50, 49, 38, 49, 38, 51, 51, 52, |
| 247 38, 53, 53, 52, 38, 52, 38, 54, |
| 248 38, 55, 38, 56, 38, 57, 51, 51, |
| 249 52, 38, 58, 38, 59, 38, 60, 48, |
| 250 48, 49, 38, 61, 38, 62, 38, 63, |
| 251 45, 45, 46, 38, 64, 38, 65, 38, |
| 252 66, 42, 42, 43, 38, 38, 38, 38, |
| 253 38, 38, 66, 38, 66, 42, 42, 43, |
| 254 38, 38, 38, 38, 38, 67, 66, 38, |
| 255 68, 42, 42, 43, 38, 38, 38, 38, |
| 256 38, 38, 68, 38, 68, 42, 42, 43, |
| 257 38, 38, 38, 38, 38, 69, 68, 38, |
| 258 70, 42, 42, 43, 38, 38, 38, 38, |
| 259 38, 38, 70, 38, 70, 42, 42, 43, |
| 260 38, 38, 38, 38, 38, 71, 70, 38, |
| 261 72, 42, 42, 43, 38, 38, 38, 38, |
| 262 38, 38, 72, 38, 72, 42, 42, 43, |
| 263 38, 38, 38, 38, 38, 73, 72, 38, |
| 264 74, 42, 42, 43, 38, 38, 38, 38, |
| 265 38, 38, 74, 38, 74, 42, 42, 43, |
| 266 38, 38, 38, 38, 38, 75, 74, 38, |
| 267 77, 78, 76, 76, 76, 76, 76, 76, |
| 268 76, 76, 76, 76, 76, 76, 76, 77, |
| 269 76, 79, 76, 80, 80, 81, 76, 83, |
| 270 83, 81, 82, 81, 82, 84, 84, 85, |
| 271 76, 86, 86, 85, 76, 85, 76, 87, |
| 272 87, 88, 76, 89, 89, 88, 76, 88, |
| 273 76, 90, 90, 91, 76, 92, 92, 91, |
| 274 76, 91, 76, 93, 76, 94, 76, 95, |
| 275 76, 96, 90, 90, 91, 76, 97, 76, |
| 276 98, 76, 99, 87, 87, 88, 76, 100, |
| 277 76, 101, 76, 102, 84, 84, 85, 76, |
| 278 103, 76, 104, 76, 105, 80, 80, 81, |
| 279 76, 76, 76, 76, 76, 76, 105, 76, |
| 280 105, 80, 80, 81, 76, 76, 76, 76, |
| 281 76, 106, 105, 76, 107, 80, 80, 81, |
| 282 76, 76, 76, 76, 76, 76, 107, 76, |
| 283 107, 80, 80, 81, 76, 76, 76, 76, |
| 284 76, 108, 107, 76, 109, 80, 80, 81, |
| 285 76, 76, 76, 76, 76, 76, 109, 76, |
| 286 109, 80, 80, 81, 76, 76, 76, 76, |
| 287 76, 110, 109, 76, 111, 80, 80, 81, |
| 288 76, 76, 76, 76, 76, 76, 111, 76, |
| 289 111, 80, 80, 81, 76, 76, 76, 76, |
| 290 76, 112, 111, 76, 113, 80, 80, 81, |
| 291 76, 76, 76, 76, 76, 76, 113, 76, |
| 292 115, 116, 114, 114, 114, 114, 114, 114, |
| 293 114, 114, 114, 114, 114, 114, 114, 115, |
| 294 114, 117, 114, 118, 118, 119, 114, 120, |
| 295 120, 119, 114, 119, 114, 121, 121, 122, |
| 296 114, 123, 123, 122, 114, 122, 114, 124, |
| 297 124, 125, 114, 126, 126, 125, 114, 125, |
| 298 114, 127, 127, 128, 114, 129, 129, 128, |
| 299 114, 128, 114, 130, 114, 131, 114, 132, |
| 300 114, 133, 127, 127, 128, 114, 134, 114, |
| 301 135, 114, 136, 124, 124, 125, 114, 137, |
| 302 114, 138, 114, 139, 121, 121, 122, 114, |
| 303 140, 114, 141, 114, 142, 118, 118, 119, |
| 304 114, 114, 114, 114, 114, 114, 142, 114, |
| 305 142, 118, 118, 119, 114, 114, 114, 114, |
| 306 114, 143, 142, 114, 144, 118, 118, 119, |
| 307 114, 114, 114, 114, 114, 114, 144, 114, |
| 308 144, 118, 118, 119, 114, 114, 114, 114, |
| 309 114, 145, 144, 114, 146, 118, 118, 119, |
| 310 114, 114, 114, 114, 114, 114, 146, 114, |
| 311 146, 118, 118, 119, 114, 114, 114, 114, |
| 312 114, 147, 146, 114, 148, 118, 118, 119, |
| 313 114, 114, 114, 114, 114, 114, 148, 114, |
| 314 148, 118, 118, 119, 114, 114, 114, 114, |
| 315 114, 149, 148, 114, 150, 118, 118, 119, |
| 316 114, 114, 114, 114, 114, 114, 150, 114, |
| 317 150, 118, 118, 119, 114, 114, 114, 114, |
| 318 114, 151, 150, 114, 153, 154, 155, 156, |
| 319 157, 158, 81, 159, 160, 152, 161, 161, |
| 320 162, 163, 164, 165, 152, 167, 168, 169, |
| 321 170, 5, 171, 172, 173, 166, 166, 37, |
| 322 174, 166, 175, 168, 176, 176, 5, 171, |
| 323 172, 173, 166, 166, 166, 174, 166, 168, |
| 324 176, 176, 5, 171, 172, 173, 166, 166, |
| 325 166, 174, 166, 177, 166, 166, 166, 18, |
| 326 178, 166, 171, 172, 166, 166, 166, 166, |
| 327 179, 166, 177, 166, 180, 181, 182, 183, |
| 328 5, 171, 172, 173, 166, 166, 35, 184, |
| 329 166, 185, 181, 186, 186, 5, 171, 172, |
| 330 173, 166, 166, 166, 184, 166, 181, 186, |
| 331 186, 5, 171, 172, 173, 166, 166, 166, |
| 332 184, 166, 187, 166, 166, 166, 18, 188, |
| 333 166, 171, 172, 166, 166, 166, 166, 179, |
| 334 166, 187, 166, 189, 190, 191, 192, 5, |
| 335 171, 172, 173, 166, 166, 33, 193, 166, |
| 336 194, 190, 195, 195, 5, 171, 172, 173, |
| 337 166, 166, 166, 193, 166, 190, 195, 195, |
| 338 5, 171, 172, 173, 166, 166, 166, 193, |
| 339 166, 196, 166, 166, 166, 18, 197, 166, |
| 340 171, 172, 166, 166, 166, 166, 179, 166, |
| 341 196, 166, 198, 199, 200, 201, 5, 171, |
| 342 172, 173, 166, 166, 31, 202, 166, 203, |
| 343 199, 204, 204, 5, 171, 172, 173, 166, |
| 344 166, 166, 202, 166, 199, 204, 204, 5, |
| 345 171, 172, 173, 166, 166, 166, 202, 166, |
| 346 205, 166, 166, 166, 18, 206, 166, 171, |
| 347 172, 166, 166, 166, 166, 179, 166, 205, |
| 348 166, 207, 208, 209, 210, 5, 171, 172, |
| 349 173, 166, 166, 29, 211, 166, 212, 208, |
| 350 213, 213, 5, 171, 172, 173, 166, 166, |
| 351 166, 211, 166, 208, 213, 213, 5, 171, |
| 352 172, 173, 166, 166, 166, 211, 166, 18, |
| 353 214, 166, 171, 172, 166, 166, 166, 166, |
| 354 179, 166, 171, 172, 166, 166, 166, 166, |
| 355 179, 166, 215, 166, 166, 166, 172, 166, |
| 356 172, 166, 216, 166, 217, 166, 218, 219, |
| 357 166, 171, 172, 166, 166, 166, 3, 166, |
| 358 2, 166, 166, 166, 166, 171, 172, 166, |
| 359 171, 172, 166, 217, 166, 166, 166, 166, |
| 360 171, 172, 166, 217, 166, 218, 166, 166, |
| 361 171, 172, 166, 166, 166, 3, 166, 18, |
| 362 166, 220, 220, 5, 171, 172, 166, 166, |
| 363 166, 166, 179, 166, 221, 27, 222, 223, |
| 364 8, 171, 172, 166, 166, 166, 166, 179, |
| 365 166, 27, 222, 223, 8, 171, 172, 166, |
| 366 166, 166, 166, 179, 166, 222, 222, 8, |
| 367 171, 172, 166, 166, 166, 166, 179, 166, |
| 368 224, 24, 225, 226, 11, 171, 172, 166, |
| 369 166, 166, 166, 179, 166, 24, 225, 226, |
| 370 11, 171, 172, 166, 166, 166, 166, 179, |
| 371 166, 225, 225, 11, 171, 172, 166, 166, |
| 372 166, 166, 179, 166, 227, 21, 228, 229, |
| 373 14, 171, 172, 166, 166, 166, 166, 179, |
| 374 166, 21, 228, 229, 14, 171, 172, 166, |
| 375 166, 166, 166, 179, 166, 228, 228, 14, |
| 376 171, 172, 166, 166, 166, 166, 179, 166, |
| 377 230, 18, 166, 231, 166, 171, 172, 166, |
| 378 166, 166, 166, 179, 166, 18, 166, 231, |
| 379 166, 171, 172, 166, 166, 166, 166, 179, |
| 380 166, 232, 166, 171, 172, 166, 166, 166, |
| 381 166, 179, 166, 18, 166, 166, 166, 166, |
| 382 171, 172, 166, 166, 166, 166, 179, 166, |
| 383 208, 213, 213, 5, 171, 172, 166, 166, |
| 384 166, 166, 211, 166, 1, 2, 166, 166, |
| 385 18, 214, 166, 171, 172, 166, 166, 166, |
| 386 166, 179, 166, 1, 166, 207, 208, 213, |
| 387 213, 5, 171, 172, 173, 166, 166, 166, |
| 388 211, 166, 207, 208, 209, 213, 5, 171, |
| 389 172, 173, 166, 166, 29, 211, 166, 205, |
| 390 166, 233, 166, 220, 220, 5, 171, 172, |
| 391 166, 166, 166, 166, 179, 166, 205, 166, |
| 392 205, 166, 166, 166, 166, 166, 166, 171, |
| 393 172, 166, 166, 166, 166, 179, 166, 205, |
| 394 166, 205, 166, 166, 166, 166, 234, 166, |
| 395 171, 172, 166, 166, 166, 166, 179, 166, |
| 396 205, 166, 205, 166, 233, 166, 166, 166, |
| 397 166, 171, 172, 166, 166, 166, 166, 179, |
| 398 166, 205, 166, 205, 2, 166, 166, 18, |
| 399 206, 166, 171, 172, 166, 166, 166, 166, |
| 400 179, 166, 205, 166, 198, 199, 204, 204, |
| 401 5, 171, 172, 173, 166, 166, 166, 202, |
| 402 166, 198, 199, 200, 204, 5, 171, 172, |
| 403 173, 166, 166, 31, 202, 166, 196, 166, |
| 404 235, 166, 220, 220, 5, 171, 172, 166, |
| 405 166, 166, 166, 179, 166, 196, 166, 196, |
| 406 166, 166, 166, 166, 166, 166, 171, 172, |
| 407 166, 166, 166, 166, 179, 166, 196, 166, |
| 408 196, 166, 166, 166, 166, 236, 166, 171, |
| 409 172, 166, 166, 166, 166, 179, 166, 196, |
| 410 166, 196, 166, 235, 166, 166, 166, 166, |
| 411 171, 172, 166, 166, 166, 166, 179, 166, |
| 412 196, 166, 196, 2, 166, 166, 18, 197, |
| 413 166, 171, 172, 166, 166, 166, 166, 179, |
| 414 166, 196, 166, 189, 190, 195, 195, 5, |
| 415 171, 172, 173, 166, 166, 166, 193, 166, |
| 416 189, 190, 191, 195, 5, 171, 172, 173, |
| 417 166, 166, 33, 193, 166, 187, 166, 237, |
| 418 166, 220, 220, 5, 171, 172, 166, 166, |
| 419 166, 166, 179, 166, 187, 166, 187, 166, |
| 420 166, 166, 166, 166, 166, 171, 172, 166, |
| 421 166, 166, 166, 179, 166, 187, 166, 187, |
| 422 166, 166, 166, 166, 238, 166, 171, 172, |
| 423 166, 166, 166, 166, 179, 166, 187, 166, |
| 424 187, 166, 237, 166, 166, 166, 166, 171, |
| 425 172, 166, 166, 166, 166, 179, 166, 187, |
| 426 166, 187, 2, 166, 166, 18, 188, 166, |
| 427 171, 172, 166, 166, 166, 166, 179, 166, |
| 428 187, 166, 180, 181, 186, 186, 5, 171, |
| 429 172, 173, 166, 166, 166, 184, 166, 180, |
| 430 181, 182, 186, 5, 171, 172, 173, 166, |
| 431 166, 35, 184, 166, 177, 166, 239, 166, |
| 432 220, 220, 5, 171, 172, 166, 166, 166, |
| 433 166, 179, 166, 177, 166, 177, 166, 166, |
| 434 166, 166, 166, 166, 171, 172, 166, 166, |
| 435 166, 166, 179, 166, 177, 166, 177, 166, |
| 436 166, 166, 166, 240, 166, 171, 172, 166, |
| 437 166, 166, 166, 179, 166, 177, 166, 177, |
| 438 166, 239, 166, 166, 166, 166, 171, 172, |
| 439 166, 166, 166, 166, 179, 166, 177, 166, |
| 440 177, 2, 166, 166, 18, 178, 166, 171, |
| 441 172, 166, 166, 166, 166, 179, 166, 177, |
| 442 166, 167, 168, 176, 176, 5, 171, 172, |
| 443 173, 166, 166, 166, 174, 166, 167, 168, |
| 444 169, 176, 5, 171, 172, 173, 166, 166, |
| 445 37, 174, 166, 242, 243, 244, 245, 43, |
| 446 246, 247, 241, 241, 241, 75, 248, 241, |
| 447 249, 243, 250, 245, 43, 246, 247, 241, |
| 448 241, 241, 241, 248, 241, 243, 250, 245, |
| 449 43, 246, 247, 241, 241, 241, 241, 248, |
| 450 241, 251, 241, 241, 241, 56, 252, 241, |
| 451 246, 247, 241, 241, 241, 241, 253, 241, |
| 452 251, 241, 254, 255, 256, 257, 43, 246, |
| 453 247, 241, 241, 241, 73, 258, 241, 259, |
| 454 255, 260, 260, 43, 246, 247, 241, 241, |
| 455 241, 241, 258, 241, 255, 260, 260, 43, |
| 456 246, 247, 241, 241, 241, 241, 258, 241, |
| 457 261, 241, 241, 241, 56, 262, 241, 246, |
| 458 247, 241, 241, 241, 241, 253, 241, 261, |
| 459 241, 263, 264, 265, 266, 43, 246, 247, |
| 460 241, 241, 241, 71, 267, 241, 268, 264, |
| 461 269, 269, 43, 246, 247, 241, 241, 241, |
| 462 241, 267, 241, 264, 269, 269, 43, 246, |
| 463 247, 241, 241, 241, 241, 267, 241, 270, |
| 464 241, 241, 241, 56, 271, 241, 246, 247, |
| 465 241, 241, 241, 241, 253, 241, 270, 241, |
| 466 272, 273, 274, 275, 43, 246, 247, 241, |
| 467 241, 241, 69, 276, 241, 277, 273, 278, |
| 468 278, 43, 246, 247, 241, 241, 241, 241, |
| 469 276, 241, 273, 278, 278, 43, 246, 247, |
| 470 241, 241, 241, 241, 276, 241, 279, 241, |
| 471 241, 241, 56, 280, 241, 246, 247, 241, |
| 472 241, 241, 241, 253, 241, 279, 241, 281, |
| 473 282, 283, 284, 43, 246, 247, 241, 241, |
| 474 241, 67, 285, 241, 286, 282, 287, 287, |
| 475 43, 246, 247, 241, 241, 241, 241, 285, |
| 476 241, 282, 287, 287, 43, 246, 247, 241, |
| 477 241, 241, 241, 285, 241, 56, 288, 241, |
| 478 246, 247, 241, 241, 241, 241, 253, 241, |
| 479 246, 247, 241, 241, 241, 241, 253, 241, |
| 480 289, 241, 241, 241, 247, 241, 247, 241, |
| 481 290, 241, 291, 241, 292, 293, 241, 246, |
| 482 247, 241, 241, 241, 41, 241, 40, 241, |
| 483 241, 241, 241, 246, 247, 241, 246, 247, |
| 484 241, 291, 241, 241, 241, 241, 246, 247, |
| 485 241, 291, 241, 292, 241, 241, 246, 247, |
| 486 241, 241, 241, 41, 241, 56, 241, 294, |
| 487 294, 43, 246, 247, 241, 241, 241, 241, |
| 488 253, 241, 295, 65, 296, 297, 46, 246, |
| 489 247, 241, 241, 241, 241, 253, 241, 65, |
| 490 296, 297, 46, 246, 247, 241, 241, 241, |
| 491 241, 253, 241, 296, 296, 46, 246, 247, |
| 492 241, 241, 241, 241, 253, 241, 298, 62, |
| 493 299, 300, 49, 246, 247, 241, 241, 241, |
| 494 241, 253, 241, 62, 299, 300, 49, 246, |
| 495 247, 241, 241, 241, 241, 253, 241, 299, |
| 496 299, 49, 246, 247, 241, 241, 241, 241, |
| 497 253, 241, 301, 59, 302, 303, 52, 246, |
| 498 247, 241, 241, 241, 241, 253, 241, 59, |
| 499 302, 303, 52, 246, 247, 241, 241, 241, |
| 500 241, 253, 241, 302, 302, 52, 246, 247, |
| 501 241, 241, 241, 241, 253, 241, 304, 56, |
| 502 241, 305, 241, 246, 247, 241, 241, 241, |
| 503 241, 253, 241, 56, 241, 305, 241, 246, |
| 504 247, 241, 241, 241, 241, 253, 241, 306, |
| 505 241, 246, 247, 241, 241, 241, 241, 253, |
| 506 241, 56, 241, 241, 241, 241, 246, 247, |
| 507 241, 241, 241, 241, 253, 241, 39, 40, |
| 508 241, 241, 56, 288, 241, 246, 247, 241, |
| 509 241, 241, 241, 253, 241, 39, 241, 281, |
| 510 282, 287, 287, 43, 246, 247, 241, 241, |
| 511 241, 241, 285, 241, 281, 282, 283, 287, |
| 512 43, 246, 247, 241, 241, 241, 67, 285, |
| 513 241, 279, 241, 307, 241, 294, 294, 43, |
| 514 246, 247, 241, 241, 241, 241, 253, 241, |
| 515 279, 241, 279, 241, 241, 241, 241, 241, |
| 516 241, 246, 247, 241, 241, 241, 241, 253, |
| 517 241, 279, 241, 279, 241, 241, 241, 241, |
| 518 308, 241, 246, 247, 241, 241, 241, 241, |
| 519 253, 241, 279, 241, 279, 241, 307, 241, |
| 520 241, 241, 241, 246, 247, 241, 241, 241, |
| 521 241, 253, 241, 279, 241, 279, 40, 241, |
| 522 241, 56, 280, 241, 246, 247, 241, 241, |
| 523 241, 241, 253, 241, 279, 241, 272, 273, |
| 524 278, 278, 43, 246, 247, 241, 241, 241, |
| 525 241, 276, 241, 272, 273, 274, 278, 43, |
| 526 246, 247, 241, 241, 241, 69, 276, 241, |
| 527 270, 241, 309, 241, 294, 294, 43, 246, |
| 528 247, 241, 241, 241, 241, 253, 241, 270, |
| 529 241, 270, 241, 241, 241, 241, 241, 241, |
| 530 246, 247, 241, 241, 241, 241, 253, 241, |
| 531 270, 241, 270, 241, 241, 241, 241, 310, |
| 532 241, 246, 247, 241, 241, 241, 241, 253, |
| 533 241, 270, 241, 270, 241, 309, 241, 241, |
| 534 241, 241, 246, 247, 241, 241, 241, 241, |
| 535 253, 241, 270, 241, 270, 40, 241, 241, |
| 536 56, 271, 241, 246, 247, 241, 241, 241, |
| 537 241, 253, 241, 270, 241, 263, 264, 269, |
| 538 269, 43, 246, 247, 241, 241, 241, 241, |
| 539 267, 241, 263, 264, 265, 269, 43, 246, |
| 540 247, 241, 241, 241, 71, 267, 241, 261, |
| 541 241, 311, 241, 294, 294, 43, 246, 247, |
| 542 241, 241, 241, 241, 253, 241, 261, 241, |
| 543 261, 241, 241, 241, 241, 241, 241, 246, |
| 544 247, 241, 241, 241, 241, 253, 241, 261, |
| 545 241, 261, 241, 241, 241, 241, 312, 241, |
| 546 246, 247, 241, 241, 241, 241, 253, 241, |
| 547 261, 241, 261, 241, 311, 241, 241, 241, |
| 548 241, 246, 247, 241, 241, 241, 241, 253, |
| 549 241, 261, 241, 261, 40, 241, 241, 56, |
| 550 262, 241, 246, 247, 241, 241, 241, 241, |
| 551 253, 241, 261, 241, 254, 255, 260, 260, |
| 552 43, 246, 247, 241, 241, 241, 241, 258, |
| 553 241, 254, 255, 256, 260, 43, 246, 247, |
| 554 241, 241, 241, 73, 258, 241, 251, 241, |
| 555 313, 241, 294, 294, 43, 246, 247, 241, |
| 556 241, 241, 241, 253, 241, 251, 241, 251, |
| 557 241, 241, 241, 241, 241, 241, 246, 247, |
| 558 241, 241, 241, 241, 253, 241, 251, 241, |
| 559 251, 241, 241, 241, 241, 314, 241, 246, |
| 560 247, 241, 241, 241, 241, 253, 241, 251, |
| 561 241, 251, 241, 313, 241, 241, 241, 241, |
| 562 246, 247, 241, 241, 241, 241, 253, 241, |
| 563 251, 241, 74, 42, 42, 43, 241, 241, |
| 564 241, 241, 241, 241, 74, 241, 251, 40, |
| 565 241, 241, 56, 252, 241, 246, 247, 241, |
| 566 241, 241, 241, 253, 241, 251, 241, 242, |
| 567 243, 250, 245, 43, 246, 247, 241, 241, |
| 568 241, 241, 248, 241, 316, 156, 317, 317, |
| 569 81, 159, 160, 315, 315, 315, 315, 163, |
| 570 315, 156, 317, 317, 81, 159, 160, 315, |
| 571 315, 315, 315, 163, 315, 318, 315, 315, |
| 572 315, 95, 319, 315, 159, 160, 315, 315, |
| 573 315, 315, 320, 315, 318, 315, 321, 322, |
| 574 323, 324, 81, 159, 160, 315, 315, 315, |
| 575 112, 325, 315, 326, 322, 327, 327, 81, |
| 576 159, 160, 315, 315, 315, 315, 325, 315, |
| 577 322, 327, 327, 81, 159, 160, 315, 315, |
| 578 315, 315, 325, 315, 328, 315, 315, 315, |
| 579 95, 329, 315, 159, 160, 315, 315, 315, |
| 580 315, 320, 315, 328, 315, 330, 331, 332, |
| 581 333, 81, 159, 160, 315, 315, 315, 110, |
| 582 334, 315, 335, 331, 336, 336, 81, 159, |
| 583 160, 315, 315, 315, 315, 334, 315, 331, |
| 584 336, 336, 81, 159, 160, 315, 315, 315, |
| 585 315, 334, 315, 337, 315, 315, 315, 95, |
| 586 338, 315, 159, 160, 315, 315, 315, 315, |
| 587 320, 315, 337, 315, 339, 340, 341, 342, |
| 588 81, 159, 160, 315, 315, 315, 108, 343, |
| 589 315, 344, 340, 345, 345, 81, 159, 160, |
| 590 315, 315, 315, 315, 343, 315, 340, 345, |
| 591 345, 81, 159, 160, 315, 315, 315, 315, |
| 592 343, 315, 346, 315, 315, 315, 95, 347, |
| 593 315, 159, 160, 315, 315, 315, 315, 320, |
| 594 315, 346, 315, 348, 349, 350, 351, 81, |
| 595 159, 160, 315, 315, 315, 106, 352, 315, |
| 596 353, 349, 354, 354, 81, 159, 160, 315, |
| 597 315, 315, 315, 352, 315, 349, 354, 354, |
| 598 81, 159, 160, 315, 315, 315, 315, 352, |
| 599 315, 95, 355, 315, 159, 160, 315, 315, |
| 600 315, 315, 320, 315, 159, 160, 315, 315, |
| 601 315, 315, 320, 315, 356, 315, 315, 315, |
| 602 160, 315, 160, 315, 357, 315, 358, 315, |
| 603 359, 360, 315, 159, 160, 315, 315, 315, |
| 604 79, 315, 78, 315, 315, 315, 315, 159, |
| 605 160, 315, 159, 160, 315, 358, 315, 315, |
| 606 315, 315, 159, 160, 315, 358, 315, 359, |
| 607 315, 315, 159, 160, 315, 315, 315, 79, |
| 608 315, 95, 315, 361, 361, 81, 159, 160, |
| 609 315, 315, 315, 315, 320, 315, 362, 104, |
| 610 363, 364, 85, 159, 160, 315, 315, 315, |
| 611 315, 320, 315, 104, 363, 364, 85, 159, |
| 612 160, 315, 315, 315, 315, 320, 315, 363, |
| 613 363, 85, 159, 160, 315, 315, 315, 315, |
| 614 320, 315, 365, 101, 366, 367, 88, 159, |
| 615 160, 315, 315, 315, 315, 320, 315, 101, |
| 616 366, 367, 88, 159, 160, 315, 315, 315, |
| 617 315, 320, 315, 366, 366, 88, 159, 160, |
| 618 315, 315, 315, 315, 320, 315, 368, 98, |
| 619 369, 370, 91, 159, 160, 315, 315, 315, |
| 620 315, 320, 315, 98, 369, 370, 91, 159, |
| 621 160, 315, 315, 315, 315, 320, 315, 369, |
| 622 369, 91, 159, 160, 315, 315, 315, 315, |
| 623 320, 315, 371, 95, 315, 372, 315, 159, |
| 624 160, 315, 315, 315, 315, 320, 315, 95, |
| 625 315, 372, 315, 159, 160, 315, 315, 315, |
| 626 315, 320, 315, 373, 315, 159, 160, 315, |
| 627 315, 315, 315, 320, 315, 95, 315, 315, |
| 628 315, 315, 159, 160, 315, 315, 315, 315, |
| 629 320, 315, 77, 78, 315, 315, 95, 355, |
| 630 315, 159, 160, 315, 315, 315, 315, 320, |
| 631 315, 77, 315, 348, 349, 354, 354, 81, |
| 632 159, 160, 315, 315, 315, 315, 352, 315, |
| 633 348, 349, 350, 354, 81, 159, 160, 315, |
| 634 315, 315, 106, 352, 315, 346, 315, 374, |
| 635 315, 361, 361, 81, 159, 160, 315, 315, |
| 636 315, 315, 320, 315, 346, 315, 346, 315, |
| 637 315, 315, 315, 315, 315, 159, 160, 315, |
| 638 315, 315, 315, 320, 315, 346, 315, 346, |
| 639 315, 315, 315, 315, 375, 315, 159, 160, |
| 640 315, 315, 315, 315, 320, 315, 346, 315, |
| 641 346, 315, 374, 315, 315, 315, 315, 159, |
| 642 160, 315, 315, 315, 315, 320, 315, 346, |
| 643 315, 346, 78, 315, 315, 95, 347, 315, |
| 644 159, 160, 315, 315, 315, 315, 320, 315, |
| 645 346, 315, 339, 340, 345, 345, 81, 159, |
| 646 160, 315, 315, 315, 315, 343, 315, 339, |
| 647 340, 341, 345, 81, 159, 160, 315, 315, |
| 648 315, 108, 343, 315, 337, 315, 376, 315, |
| 649 361, 361, 81, 159, 160, 315, 315, 315, |
| 650 315, 320, 315, 337, 315, 337, 315, 315, |
| 651 315, 315, 315, 315, 159, 160, 315, 315, |
| 652 315, 315, 320, 315, 337, 315, 337, 315, |
| 653 315, 315, 315, 377, 315, 159, 160, 315, |
| 654 315, 315, 315, 320, 315, 337, 315, 337, |
| 655 315, 376, 315, 315, 315, 315, 159, 160, |
| 656 315, 315, 315, 315, 320, 315, 337, 315, |
| 657 337, 78, 315, 315, 95, 338, 315, 159, |
| 658 160, 315, 315, 315, 315, 320, 315, 337, |
| 659 315, 330, 331, 336, 336, 81, 159, 160, |
| 660 315, 315, 315, 315, 334, 315, 330, 331, |
| 661 332, 336, 81, 159, 160, 315, 315, 315, |
| 662 110, 334, 315, 328, 315, 378, 315, 361, |
| 663 361, 81, 159, 160, 315, 315, 315, 315, |
| 664 320, 315, 328, 315, 328, 315, 315, 315, |
| 665 315, 315, 315, 159, 160, 315, 315, 315, |
| 666 315, 320, 315, 328, 315, 328, 315, 315, |
| 667 315, 315, 379, 315, 159, 160, 315, 315, |
| 668 315, 315, 320, 315, 328, 315, 328, 315, |
| 669 378, 315, 315, 315, 315, 159, 160, 315, |
| 670 315, 315, 315, 320, 315, 328, 315, 328, |
| 671 78, 315, 315, 95, 329, 315, 159, 160, |
| 672 315, 315, 315, 315, 320, 315, 328, 315, |
| 673 321, 322, 327, 327, 81, 159, 160, 315, |
| 674 315, 315, 315, 325, 315, 321, 322, 323, |
| 675 327, 81, 159, 160, 315, 315, 315, 112, |
| 676 325, 315, 318, 315, 380, 315, 361, 361, |
| 677 81, 159, 160, 315, 315, 315, 315, 320, |
| 678 315, 318, 315, 318, 315, 315, 315, 315, |
| 679 315, 315, 159, 160, 315, 315, 315, 315, |
| 680 320, 315, 318, 315, 318, 315, 315, 315, |
| 681 315, 381, 315, 159, 160, 315, 315, 315, |
| 682 315, 320, 315, 318, 315, 318, 315, 380, |
| 683 315, 315, 315, 315, 159, 160, 315, 315, |
| 684 315, 315, 320, 315, 318, 315, 318, 78, |
| 685 315, 315, 95, 319, 315, 159, 160, 315, |
| 686 315, 315, 315, 320, 315, 318, 315, 113, |
| 687 80, 80, 81, 382, 382, 382, 382, 382, |
| 688 162, 113, 382, 155, 156, 317, 317, 81, |
| 689 159, 160, 315, 315, 315, 315, 163, 315, |
| 690 113, 80, 80, 81, 382, 382, 382, 382, |
| 691 382, 382, 113, 382, 384, 385, 386, 387, |
| 692 119, 388, 389, 383, 383, 383, 151, 390, |
| 693 383, 391, 385, 387, 387, 119, 388, 389, |
| 694 383, 383, 383, 383, 390, 383, 385, 387, |
| 695 387, 119, 388, 389, 383, 383, 383, 383, |
| 696 390, 383, 392, 383, 383, 383, 132, 393, |
| 697 383, 388, 389, 383, 383, 383, 383, 394, |
| 698 383, 392, 383, 395, 396, 397, 398, 119, |
| 699 388, 389, 383, 383, 383, 149, 399, 383, |
| 700 400, 396, 401, 401, 119, 388, 389, 383, |
| 701 383, 383, 383, 399, 383, 396, 401, 401, |
| 702 119, 388, 389, 383, 383, 383, 383, 399, |
| 703 383, 402, 383, 383, 383, 132, 403, 383, |
| 704 388, 389, 383, 383, 383, 383, 394, 383, |
| 705 402, 383, 404, 405, 406, 407, 119, 388, |
| 706 389, 383, 383, 383, 147, 408, 383, 409, |
| 707 405, 410, 410, 119, 388, 389, 383, 383, |
| 708 383, 383, 408, 383, 405, 410, 410, 119, |
| 709 388, 389, 383, 383, 383, 383, 408, 383, |
| 710 411, 383, 383, 383, 132, 412, 383, 388, |
| 711 389, 383, 383, 383, 383, 394, 383, 411, |
| 712 383, 413, 414, 415, 416, 119, 388, 389, |
| 713 383, 383, 383, 145, 417, 383, 418, 414, |
| 714 419, 419, 119, 388, 389, 383, 383, 383, |
| 715 383, 417, 383, 414, 419, 419, 119, 388, |
| 716 389, 383, 383, 383, 383, 417, 383, 420, |
| 717 383, 383, 383, 132, 421, 383, 388, 389, |
| 718 383, 383, 383, 383, 394, 383, 420, 383, |
| 719 422, 423, 424, 425, 119, 388, 389, 383, |
| 720 383, 383, 143, 426, 383, 427, 423, 428, |
| 721 428, 119, 388, 389, 383, 383, 383, 383, |
| 722 426, 383, 423, 428, 428, 119, 388, 389, |
| 723 383, 383, 383, 383, 426, 383, 132, 429, |
| 724 383, 388, 389, 383, 383, 383, 383, 394, |
| 725 383, 388, 389, 383, 383, 383, 383, 394, |
| 726 383, 430, 383, 383, 383, 389, 383, 389, |
| 727 383, 431, 383, 432, 383, 433, 434, 383, |
| 728 388, 389, 383, 383, 383, 117, 383, 116, |
| 729 383, 383, 383, 383, 388, 389, 383, 388, |
| 730 389, 383, 432, 383, 383, 383, 383, 388, |
| 731 389, 383, 432, 383, 433, 383, 383, 388, |
| 732 389, 383, 383, 383, 117, 383, 132, 383, |
| 733 435, 435, 119, 388, 389, 383, 383, 383, |
| 734 383, 394, 383, 436, 141, 437, 438, 122, |
| 735 388, 389, 383, 383, 383, 383, 394, 383, |
| 736 141, 437, 438, 122, 388, 389, 383, 383, |
| 737 383, 383, 394, 383, 437, 437, 122, 388, |
| 738 389, 383, 383, 383, 383, 394, 383, 439, |
| 739 138, 440, 441, 125, 388, 389, 383, 383, |
| 740 383, 383, 394, 383, 138, 440, 441, 125, |
| 741 388, 389, 383, 383, 383, 383, 394, 383, |
| 742 440, 440, 125, 388, 389, 383, 383, 383, |
| 743 383, 394, 383, 442, 135, 443, 444, 128, |
| 744 388, 389, 383, 383, 383, 383, 394, 383, |
| 745 135, 443, 444, 128, 388, 389, 383, 383, |
| 746 383, 383, 394, 383, 443, 443, 128, 388, |
| 747 389, 383, 383, 383, 383, 394, 383, 445, |
| 748 132, 383, 446, 383, 388, 389, 383, 383, |
| 749 383, 383, 394, 383, 132, 383, 446, 383, |
| 750 388, 389, 383, 383, 383, 383, 394, 383, |
| 751 447, 383, 388, 389, 383, 383, 383, 383, |
| 752 394, 383, 132, 383, 383, 383, 383, 388, |
| 753 389, 383, 383, 383, 383, 394, 383, 115, |
| 754 116, 383, 383, 132, 429, 383, 388, 389, |
| 755 383, 383, 383, 383, 394, 383, 115, 383, |
| 756 422, 423, 428, 428, 119, 388, 389, 383, |
| 757 383, 383, 383, 426, 383, 422, 423, 424, |
| 758 428, 119, 388, 389, 383, 383, 383, 143, |
| 759 426, 383, 420, 383, 448, 383, 435, 435, |
| 760 119, 388, 389, 383, 383, 383, 383, 394, |
| 761 383, 420, 383, 420, 383, 383, 383, 383, |
| 762 383, 383, 388, 389, 383, 383, 383, 383, |
| 763 394, 383, 420, 383, 420, 383, 383, 383, |
| 764 383, 449, 383, 388, 389, 383, 383, 383, |
| 765 383, 394, 383, 420, 383, 420, 383, 448, |
| 766 383, 383, 383, 383, 388, 389, 383, 383, |
| 767 383, 383, 394, 383, 420, 383, 420, 116, |
| 768 383, 383, 132, 421, 383, 388, 389, 383, |
| 769 383, 383, 383, 394, 383, 420, 383, 413, |
| 770 414, 419, 419, 119, 388, 389, 383, 383, |
| 771 383, 383, 417, 383, 413, 414, 415, 419, |
| 772 119, 388, 389, 383, 383, 383, 145, 417, |
| 773 383, 411, 383, 450, 383, 435, 435, 119, |
| 774 388, 389, 383, 383, 383, 383, 394, 383, |
| 775 411, 383, 411, 383, 383, 383, 383, 383, |
| 776 383, 388, 389, 383, 383, 383, 383, 394, |
| 777 383, 411, 383, 411, 383, 383, 383, 383, |
| 778 451, 383, 388, 389, 383, 383, 383, 383, |
| 779 394, 383, 411, 383, 411, 383, 450, 383, |
| 780 383, 383, 383, 388, 389, 383, 383, 383, |
| 781 383, 394, 383, 411, 383, 411, 116, 383, |
| 782 383, 132, 412, 383, 388, 389, 383, 383, |
| 783 383, 383, 394, 383, 411, 383, 404, 405, |
| 784 410, 410, 119, 388, 389, 383, 383, 383, |
| 785 383, 408, 383, 404, 405, 406, 410, 119, |
| 786 388, 389, 383, 383, 383, 147, 408, 383, |
| 787 402, 383, 452, 383, 435, 435, 119, 388, |
| 788 389, 383, 383, 383, 383, 394, 383, 402, |
| 789 383, 402, 383, 383, 383, 383, 383, 383, |
| 790 388, 389, 383, 383, 383, 383, 394, 383, |
| 791 402, 383, 402, 383, 383, 383, 383, 453, |
| 792 383, 388, 389, 383, 383, 383, 383, 394, |
| 793 383, 402, 383, 402, 383, 452, 383, 383, |
| 794 383, 383, 388, 389, 383, 383, 383, 383, |
| 795 394, 383, 402, 383, 402, 116, 383, 383, |
| 796 132, 403, 383, 388, 389, 383, 383, 383, |
| 797 383, 394, 383, 402, 383, 395, 396, 401, |
| 798 401, 119, 388, 389, 383, 383, 383, 383, |
| 799 399, 383, 395, 396, 397, 401, 119, 388, |
| 800 389, 383, 383, 383, 149, 399, 383, 392, |
| 801 383, 454, 383, 435, 435, 119, 388, 389, |
| 802 383, 383, 383, 383, 394, 383, 392, 383, |
| 803 392, 383, 383, 383, 383, 383, 383, 388, |
| 804 389, 383, 383, 383, 383, 394, 383, 392, |
| 805 383, 392, 383, 383, 383, 383, 455, 383, |
| 806 388, 389, 383, 383, 383, 383, 394, 383, |
| 807 392, 383, 392, 383, 454, 383, 383, 383, |
| 808 383, 388, 389, 383, 383, 383, 383, 394, |
| 809 383, 392, 383, 392, 116, 383, 383, 132, |
| 810 393, 383, 388, 389, 383, 383, 383, 383, |
| 811 394, 383, 392, 383, 384, 385, 387, 387, |
| 812 119, 388, 389, 383, 383, 383, 383, 390, |
| 813 383, 153, 154, 382, 382, 382, 382, 382, |
| 814 382, 382, 382, 161, 161, 382, 382, 382, |
| 815 153, 382, 167, 456, 169, 170, 5, 171, |
| 816 172, 173, 166, 166, 37, 174, 166, 177, |
| 817 154, 166, 166, 18, 178, 166, 171, 172, |
| 818 166, 161, 161, 166, 179, 166, 177, 166, |
| 819 0 |
93 }; | 820 }; |
94 | 821 |
95 static const char _indic_syllable_machine_trans_targs[] = { | 822 static const short _indic_syllable_machine_trans_targs[] = { |
96 » 7, 1, 8, 7, 25, 2, 7, 33, | 823 » 143, 168, 170, 171, 3, 174, 4, 6, |
97 » 5, 7, 21, 23, 31, 7, 9, 11, | 824 » 177, 7, 9, 180, 10, 12, 183, 13, |
98 » 0, 15, 13, 14, 18, 10, 12, 7, | 825 » 15, 16, 164, 18, 19, 182, 21, 22, |
99 » 16, 17, 19, 20, 22, 7, 24, 3, | 826 » 179, 24, 25, 176, 185, 189, 193, 196, |
100 » 4, 26, 29, 30, 27, 28, 7, 7, | 827 » 200, 203, 207, 210, 214, 217, 143, 243, |
101 » 32, 6, 34, 37, 38, 35, 36, 7 | 828 » 245, 246, 39, 249, 40, 42, 252, 43, |
| 829 » 45, 255, 46, 48, 258, 49, 51, 52, |
| 830 » 239, 54, 55, 257, 57, 58, 254, 60, |
| 831 » 61, 251, 260, 263, 267, 270, 274, 277, |
| 832 » 281, 284, 288, 292, 143, 316, 318, 319, |
| 833 » 75, 322, 143, 76, 78, 325, 79, 81, |
| 834 » 328, 82, 84, 331, 85, 87, 88, 312, |
| 835 » 90, 91, 330, 93, 94, 327, 96, 97, |
| 836 » 324, 333, 336, 340, 343, 347, 350, 354, |
| 837 » 357, 361, 143, 391, 393, 394, 110, 397, |
| 838 » 111, 113, 400, 114, 116, 403, 117, 119, |
| 839 » 406, 120, 122, 123, 387, 125, 126, 405, |
| 840 » 128, 129, 402, 131, 132, 399, 408, 411, |
| 841 » 415, 418, 422, 425, 429, 432, 436, 439, |
| 842 » 143, 144, 219, 293, 295, 364, 366, 313, |
| 843 » 315, 367, 365, 363, 440, 441, 143, 145, |
| 844 » 147, 35, 218, 165, 167, 187, 216, 146, |
| 845 » 34, 148, 212, 0, 149, 151, 33, 211, |
| 846 » 209, 150, 32, 152, 205, 153, 155, 31, |
| 847 » 204, 202, 154, 30, 156, 198, 157, 159, |
| 848 » 29, 197, 195, 158, 28, 160, 191, 161, |
| 849 » 163, 27, 190, 188, 162, 26, 173, 166, |
| 850 » 143, 169, 1, 172, 2, 175, 5, 23, |
| 851 » 178, 8, 20, 181, 11, 17, 184, 14, |
| 852 » 186, 192, 194, 199, 201, 206, 208, 213, |
| 853 » 215, 143, 220, 222, 71, 290, 240, 242, |
| 854 » 291, 221, 70, 223, 286, 36, 224, 226, |
| 855 » 69, 285, 283, 225, 68, 227, 279, 228, |
| 856 » 230, 67, 278, 276, 229, 66, 231, 272, |
| 857 » 232, 234, 65, 271, 269, 233, 64, 235, |
| 858 » 265, 236, 238, 63, 264, 262, 237, 62, |
| 859 » 248, 241, 143, 244, 37, 247, 38, 250, |
| 860 » 41, 59, 253, 44, 56, 256, 47, 53, |
| 861 » 259, 50, 261, 266, 268, 273, 275, 280, |
| 862 » 282, 287, 289, 143, 294, 106, 296, 359, |
| 863 » 72, 297, 299, 105, 358, 356, 298, 104, |
| 864 » 300, 352, 301, 303, 103, 351, 349, 302, |
| 865 » 102, 304, 345, 305, 307, 101, 344, 342, |
| 866 » 306, 100, 308, 338, 309, 311, 99, 337, |
| 867 » 335, 310, 98, 321, 314, 143, 317, 73, |
| 868 » 320, 74, 323, 77, 95, 326, 80, 92, |
| 869 » 329, 83, 89, 332, 86, 334, 339, 341, |
| 870 » 346, 348, 353, 355, 360, 362, 143, 143, |
| 871 » 368, 370, 142, 141, 388, 390, 438, 369, |
| 872 » 371, 434, 107, 372, 374, 140, 433, 431, |
| 873 » 373, 139, 375, 427, 376, 378, 138, 426, |
| 874 » 424, 377, 137, 379, 420, 380, 382, 136, |
| 875 » 419, 417, 381, 135, 383, 413, 384, 386, |
| 876 » 134, 412, 410, 385, 133, 396, 389, 143, |
| 877 » 392, 108, 395, 109, 398, 112, 130, 401, |
| 878 » 115, 127, 404, 118, 124, 407, 121, 409, |
| 879 » 414, 416, 421, 423, 428, 430, 435, 437, |
| 880 » 442 |
102 }; | 881 }; |
103 | 882 |
104 static const char _indic_syllable_machine_trans_actions[] = { | 883 static const char _indic_syllable_machine_trans_actions[] = { |
105 » 1, 0, 2, 3, 2, 0, 4, 2, | 884 » 1, 2, 0, 0, 0, 2, 0, 0, |
106 » 0, 7, 2, 2, 2, 8, 2, 0, | 885 » 2, 0, 0, 2, 0, 0, 2, 0, |
107 » 0, 0, 0, 0, 0, 2, 0, 9, | 886 » 0, 0, 2, 0, 0, 2, 0, 0, |
108 » 0, 0, 0, 0, 0, 10, 2, 0, | 887 » 2, 0, 0, 2, 2, 2, 2, 2, |
109 » 0, 0, 0, 0, 0, 0, 11, 12, | 888 » 2, 2, 2, 2, 2, 2, 3, 2, |
110 » 2, 0, 0, 0, 0, 0, 0, 13 | 889 » 0, 0, 0, 2, 0, 0, 2, 0, |
| 890 » 0, 2, 0, 0, 2, 0, 0, 0, |
| 891 » 2, 0, 0, 2, 0, 0, 2, 0, |
| 892 » 0, 2, 2, 2, 2, 2, 2, 2, |
| 893 » 2, 2, 2, 2, 4, 2, 0, 0, |
| 894 » 0, 2, 5, 0, 0, 2, 0, 0, |
| 895 » 2, 0, 0, 2, 0, 0, 0, 2, |
| 896 » 0, 0, 2, 0, 0, 2, 0, 0, |
| 897 » 2, 2, 6, 2, 6, 2, 6, 2, |
| 898 » 6, 2, 7, 2, 0, 0, 0, 2, |
| 899 » 0, 0, 2, 0, 0, 2, 0, 0, |
| 900 » 2, 0, 0, 0, 2, 0, 0, 2, |
| 901 » 0, 0, 2, 0, 0, 2, 2, 2, |
| 902 » 2, 2, 2, 2, 2, 2, 2, 2, |
| 903 » 10, 2, 2, 6, 2, 11, 11, 0, |
| 904 » 0, 2, 6, 2, 0, 2, 12, 2, |
| 905 » 2, 0, 2, 0, 0, 2, 2, 2, |
| 906 » 0, 2, 2, 0, 2, 2, 0, 2, |
| 907 » 2, 2, 0, 2, 2, 2, 2, 0, |
| 908 » 2, 2, 2, 0, 2, 2, 2, 2, |
| 909 » 0, 2, 2, 2, 0, 2, 2, 2, |
| 910 » 2, 0, 2, 2, 2, 0, 2, 0, |
| 911 » 13, 0, 0, 2, 0, 2, 0, 0, |
| 912 » 2, 0, 0, 2, 0, 0, 2, 0, |
| 913 » 2, 2, 2, 2, 2, 2, 2, 2, |
| 914 » 2, 14, 2, 2, 0, 2, 0, 0, |
| 915 » 2, 2, 0, 2, 2, 0, 2, 2, |
| 916 » 0, 2, 2, 2, 0, 2, 2, 2, |
| 917 » 2, 0, 2, 2, 2, 0, 2, 2, |
| 918 » 2, 2, 0, 2, 2, 2, 0, 2, |
| 919 » 2, 2, 2, 0, 2, 2, 2, 0, |
| 920 » 2, 0, 15, 0, 0, 2, 0, 2, |
| 921 » 0, 0, 2, 0, 0, 2, 0, 0, |
| 922 » 2, 0, 2, 2, 2, 2, 2, 2, |
| 923 » 2, 2, 2, 16, 6, 0, 6, 6, |
| 924 » 0, 6, 2, 0, 6, 2, 6, 0, |
| 925 » 6, 6, 6, 2, 0, 6, 2, 6, |
| 926 » 0, 6, 6, 6, 2, 0, 6, 2, |
| 927 » 6, 0, 6, 6, 6, 2, 0, 6, |
| 928 » 2, 6, 0, 6, 0, 17, 0, 0, |
| 929 » 2, 0, 2, 0, 0, 2, 0, 0, |
| 930 » 2, 0, 0, 2, 0, 2, 2, 2, |
| 931 » 2, 2, 2, 2, 2, 2, 18, 19, |
| 932 » 2, 2, 0, 0, 0, 0, 2, 2, |
| 933 » 2, 2, 0, 2, 2, 0, 2, 2, |
| 934 » 2, 0, 2, 2, 2, 2, 0, 2, |
| 935 » 2, 2, 0, 2, 2, 2, 2, 0, |
| 936 » 2, 2, 2, 0, 2, 2, 2, 2, |
| 937 » 0, 2, 2, 2, 0, 2, 0, 20, |
| 938 » 0, 0, 2, 0, 2, 0, 0, 2, |
| 939 » 0, 0, 2, 0, 0, 2, 0, 2, |
| 940 » 2, 2, 2, 2, 2, 2, 2, 2, |
| 941 » 2 |
111 }; | 942 }; |
112 | 943 |
113 static const char _indic_syllable_machine_to_state_actions[] = { | 944 static const char _indic_syllable_machine_to_state_actions[] = { |
114 » 0, 0, 0, 0, 0, 0, 0, 5, | 945 » 0, 0, 0, 0, 0, 0, 0, 0, |
115 » 0, 0, 0, 0, 0, 0, 0, 0, | 946 » 0, 0, 0, 0, 0, 0, 0, 0, |
116 » 0, 0, 0, 0, 0, 0, 0, 0, | 947 » 0, 0, 0, 0, 0, 0, 0, 0, |
117 » 0, 0, 0, 0, 0, 0, 0, 0, | 948 » 0, 0, 0, 0, 0, 0, 0, 0, |
118 » 0, 0, 0, 0, 0, 0, 0 | 949 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 950 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 951 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 952 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 953 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 954 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 955 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 956 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 957 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 958 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 959 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 960 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 961 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 962 » 0, 0, 0, 0, 0, 0, 0, 8, |
| 963 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 964 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 965 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 966 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 967 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 968 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 969 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 970 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 971 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 972 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 973 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 974 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 975 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 976 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 977 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 978 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 979 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 980 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 981 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 982 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 983 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 984 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 985 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 986 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 987 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 988 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 989 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 990 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 991 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 992 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 993 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 994 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 995 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 996 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 997 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 998 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 999 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1000 » 0, 0, 0 |
119 }; | 1001 }; |
120 | 1002 |
121 static const char _indic_syllable_machine_from_state_actions[] = { | 1003 static const char _indic_syllable_machine_from_state_actions[] = { |
122 » 0, 0, 0, 0, 0, 0, 0, 6, | 1004 » 0, 0, 0, 0, 0, 0, 0, 0, |
123 » 0, 0, 0, 0, 0, 0, 0, 0, | 1005 » 0, 0, 0, 0, 0, 0, 0, 0, |
124 » 0, 0, 0, 0, 0, 0, 0, 0, | 1006 » 0, 0, 0, 0, 0, 0, 0, 0, |
125 » 0, 0, 0, 0, 0, 0, 0, 0, | 1007 » 0, 0, 0, 0, 0, 0, 0, 0, |
126 » 0, 0, 0, 0, 0, 0, 0 | 1008 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1009 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1010 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1011 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1012 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1013 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1014 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1015 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1016 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1017 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1018 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1019 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1020 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1021 » 0, 0, 0, 0, 0, 0, 0, 9, |
| 1022 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1023 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1024 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1025 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1026 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1027 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1028 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1029 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1030 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1031 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1032 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1033 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1034 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1035 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1036 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1037 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1038 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1039 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1040 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1041 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1042 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1043 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1044 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1045 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1046 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1047 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1048 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1049 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1050 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1051 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1052 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1053 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1054 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1055 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1056 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1057 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1058 » 0, 0, 0, 0, 0, 0, 0, 0, |
| 1059 » 0, 0, 0 |
127 }; | 1060 }; |
128 | 1061 |
129 static const unsigned char _indic_syllable_machine_eof_trans[] = { | 1062 static const short _indic_syllable_machine_eof_trans[] = { |
130 » 1, 1, 4, 4, 4, 7, 7, 0, | 1063 » 1, 1, 1, 1, 1, 1, 1, 1, |
131 » 14, 14, 14, 14, 14, 14, 14, 14, | 1064 » 1, 1, 1, 1, 1, 1, 1, 1, |
132 » 14, 14, 14, 14, 14, 14, 14, 30, | 1065 » 1, 1, 1, 1, 1, 1, 1, 1, |
133 » 30, 30, 30, 30, 30, 30, 30, 40, | 1066 » 1, 1, 1, 1, 1, 1, 1, 1, |
134 » 40, 40, 40, 40, 40, 40, 40 | 1067 » 1, 1, 1, 1, 39, 39, 39, 39, |
| 1068 » 39, 39, 39, 39, 39, 39, 39, 39, |
| 1069 » 39, 39, 39, 39, 39, 39, 39, 39, |
| 1070 » 39, 39, 39, 39, 39, 39, 39, 39, |
| 1071 » 39, 39, 39, 39, 39, 39, 39, 39, |
| 1072 » 77, 77, 77, 83, 83, 77, 77, 77, |
| 1073 » 77, 77, 77, 77, 77, 77, 77, 77, |
| 1074 » 77, 77, 77, 77, 77, 77, 77, 77, |
| 1075 » 77, 77, 77, 77, 77, 77, 77, 77, |
| 1076 » 77, 77, 77, 115, 115, 115, 115, 115, |
| 1077 » 115, 115, 115, 115, 115, 115, 115, 115, |
| 1078 » 115, 115, 115, 115, 115, 115, 115, 115, |
| 1079 » 115, 115, 115, 115, 115, 115, 115, 115, |
| 1080 » 115, 115, 115, 115, 115, 115, 115, 0, |
| 1081 » 167, 167, 167, 167, 167, 167, 167, 167, |
| 1082 » 167, 167, 167, 167, 167, 167, 167, 167, |
| 1083 » 167, 167, 167, 167, 167, 167, 167, 167, |
| 1084 » 167, 167, 167, 167, 167, 167, 167, 167, |
| 1085 » 167, 167, 167, 167, 167, 167, 167, 167, |
| 1086 » 167, 167, 167, 167, 167, 167, 167, 167, |
| 1087 » 167, 167, 167, 167, 167, 167, 167, 167, |
| 1088 » 167, 167, 167, 167, 167, 167, 167, 167, |
| 1089 » 167, 167, 167, 167, 167, 167, 167, 167, |
| 1090 » 167, 167, 167, 242, 242, 242, 242, 242, |
| 1091 » 242, 242, 242, 242, 242, 242, 242, 242, |
| 1092 » 242, 242, 242, 242, 242, 242, 242, 242, |
| 1093 » 242, 242, 242, 242, 242, 242, 242, 242, |
| 1094 » 242, 242, 242, 242, 242, 242, 242, 242, |
| 1095 » 242, 242, 242, 242, 242, 242, 242, 242, |
| 1096 » 242, 242, 242, 242, 242, 242, 242, 242, |
| 1097 » 242, 242, 242, 242, 242, 242, 242, 242, |
| 1098 » 242, 242, 242, 242, 242, 242, 242, 242, |
| 1099 » 242, 242, 242, 242, 242, 316, 316, 316, |
| 1100 » 316, 316, 316, 316, 316, 316, 316, 316, |
| 1101 » 316, 316, 316, 316, 316, 316, 316, 316, |
| 1102 » 316, 316, 316, 316, 316, 316, 316, 316, |
| 1103 » 316, 316, 316, 316, 316, 316, 316, 316, |
| 1104 » 316, 316, 316, 316, 316, 316, 316, 316, |
| 1105 » 316, 316, 316, 316, 316, 316, 316, 316, |
| 1106 » 316, 316, 316, 316, 316, 316, 316, 316, |
| 1107 » 316, 316, 316, 316, 316, 316, 316, 316, |
| 1108 » 316, 316, 316, 316, 383, 316, 383, 384, |
| 1109 » 384, 384, 384, 384, 384, 384, 384, 384, |
| 1110 » 384, 384, 384, 384, 384, 384, 384, 384, |
| 1111 » 384, 384, 384, 384, 384, 384, 384, 384, |
| 1112 » 384, 384, 384, 384, 384, 384, 384, 384, |
| 1113 » 384, 384, 384, 384, 384, 384, 384, 384, |
| 1114 » 384, 384, 384, 384, 384, 384, 384, 384, |
| 1115 » 384, 384, 384, 384, 384, 384, 384, 384, |
| 1116 » 384, 384, 384, 384, 384, 384, 384, 384, |
| 1117 » 384, 384, 384, 384, 384, 384, 384, 384, |
| 1118 » 383, 167, 167 |
135 }; | 1119 }; |
136 | 1120 |
137 static const int indic_syllable_machine_start = 7; | 1121 static const int indic_syllable_machine_start = 143; |
138 static const int indic_syllable_machine_first_final = 7; | 1122 static const int indic_syllable_machine_first_final = 143; |
139 static const int indic_syllable_machine_error = -1; | 1123 static const int indic_syllable_machine_error = -1; |
140 | 1124 |
141 static const int indic_syllable_machine_en_main = 7; | 1125 static const int indic_syllable_machine_en_main = 143; |
142 | 1126 |
143 | 1127 |
144 #line 38 "hb-ot-shape-complex-indic-machine.rl" | 1128 #line 36 "hb-ot-shape-complex-indic-machine.rl" |
145 | 1129 |
146 | 1130 |
147 | 1131 |
148 #line 79 "hb-ot-shape-complex-indic-machine.rl" | 1132 #line 90 "hb-ot-shape-complex-indic-machine.rl" |
149 | 1133 |
150 | 1134 |
151 #define process_syllable(func) \ | 1135 #define found_syllable(syllable_type) \ |
152 HB_STMT_START { \ | 1136 HB_STMT_START { \ |
153 /* fprintf (stderr, "syllable %d..%d %s\n", last, p+1, #func); */ \ | 1137 if (0) fprintf (stderr, "syllable %d..%d %s\n", last, p+1, #syllable_type);
\ |
154 for (unsigned int i = last; i < p+1; i++) \ | 1138 for (unsigned int i = last; i < p+1; i++) \ |
155 info[i].syllable() = syllable_serial; \ | 1139 info[i].syllable() = (syllable_serial << 4) | syllable_type; \ |
156 PASTE (initial_reordering_, func) (map, buffer, mask_array, last, p+1); \ | |
157 last = p+1; \ | 1140 last = p+1; \ |
158 syllable_serial++; \ | 1141 syllable_serial++; \ |
159 if (unlikely (!syllable_serial)) syllable_serial++; \ | 1142 if (unlikely (syllable_serial == 16)) syllable_serial = 1; \ |
160 } HB_STMT_END | 1143 } HB_STMT_END |
161 | 1144 |
162 static void | 1145 static void |
163 find_syllables (const hb_ot_map_t *map, hb_buffer_t *buffer, hb_mask_t *mask_arr
ay) | 1146 find_syllables (hb_buffer_t *buffer) |
164 { | 1147 { |
165 unsigned int p, pe, eof, ts, te, act; | 1148 unsigned int p, pe, eof, ts, te, act; |
166 int cs; | 1149 int cs; |
167 hb_glyph_info_t *info = buffer->info; | 1150 hb_glyph_info_t *info = buffer->info; |
168 | 1151 |
169 #line 170 "hb-ot-shape-complex-indic-machine.hh.tmp" | 1152 #line 1153 "hb-ot-shape-complex-indic-machine.hh.tmp" |
170 { | 1153 { |
171 cs = indic_syllable_machine_start; | 1154 cs = indic_syllable_machine_start; |
172 ts = 0; | 1155 ts = 0; |
173 te = 0; | 1156 te = 0; |
174 act = 0; | 1157 act = 0; |
175 } | 1158 } |
176 | 1159 |
177 #line 101 "hb-ot-shape-complex-indic-machine.rl" | 1160 #line 111 "hb-ot-shape-complex-indic-machine.rl" |
178 | 1161 |
179 | 1162 |
180 p = 0; | 1163 p = 0; |
181 pe = eof = buffer->len; | 1164 pe = eof = buffer->len; |
182 | 1165 |
183 unsigned int last = 0; | 1166 unsigned int last = 0; |
184 uint8_t syllable_serial = 1; | 1167 unsigned int syllable_serial = 1; |
185 | 1168 |
186 #line 187 "hb-ot-shape-complex-indic-machine.hh.tmp" | 1169 #line 1170 "hb-ot-shape-complex-indic-machine.hh.tmp" |
187 { | 1170 { |
188 int _slen; | 1171 int _slen; |
189 int _trans; | 1172 int _trans; |
190 const unsigned char *_keys; | 1173 const unsigned char *_keys; |
191 » const char *_inds; | 1174 » const short *_inds; |
192 if ( p == pe ) | 1175 if ( p == pe ) |
193 goto _test_eof; | 1176 goto _test_eof; |
194 _resume: | 1177 _resume: |
195 switch ( _indic_syllable_machine_from_state_actions[cs] ) { | 1178 switch ( _indic_syllable_machine_from_state_actions[cs] ) { |
196 » case 6: | 1179 » case 9: |
197 #line 1 "hb-ot-shape-complex-indic-machine.rl" | 1180 #line 1 "hb-ot-shape-complex-indic-machine.rl" |
198 {ts = p;} | 1181 {ts = p;} |
199 break; | 1182 break; |
200 #line 201 "hb-ot-shape-complex-indic-machine.hh.tmp" | 1183 #line 1184 "hb-ot-shape-complex-indic-machine.hh.tmp" |
201 } | 1184 } |
202 | 1185 |
203 _keys = _indic_syllable_machine_trans_keys + (cs<<1); | 1186 _keys = _indic_syllable_machine_trans_keys + (cs<<1); |
204 _inds = _indic_syllable_machine_indicies + _indic_syllable_machine_index
_offsets[cs]; | 1187 _inds = _indic_syllable_machine_indicies + _indic_syllable_machine_index
_offsets[cs]; |
205 | 1188 |
206 _slen = _indic_syllable_machine_key_spans[cs]; | 1189 _slen = _indic_syllable_machine_key_spans[cs]; |
207 _trans = _inds[ _slen > 0 && _keys[0] <=( info[p].indic_category()) && | 1190 _trans = _inds[ _slen > 0 && _keys[0] <=( info[p].indic_category()) && |
208 ( info[p].indic_category()) <= _keys[1] ? | 1191 ( info[p].indic_category()) <= _keys[1] ? |
209 ( info[p].indic_category()) - _keys[0] : _slen ]; | 1192 ( info[p].indic_category()) - _keys[0] : _slen ]; |
210 | 1193 |
211 _eof_trans: | 1194 _eof_trans: |
212 cs = _indic_syllable_machine_trans_targs[_trans]; | 1195 cs = _indic_syllable_machine_trans_targs[_trans]; |
213 | 1196 |
214 if ( _indic_syllable_machine_trans_actions[_trans] == 0 ) | 1197 if ( _indic_syllable_machine_trans_actions[_trans] == 0 ) |
215 goto _again; | 1198 goto _again; |
216 | 1199 |
217 switch ( _indic_syllable_machine_trans_actions[_trans] ) { | 1200 switch ( _indic_syllable_machine_trans_actions[_trans] ) { |
218 case 2: | 1201 case 2: |
219 #line 1 "hb-ot-shape-complex-indic-machine.rl" | 1202 #line 1 "hb-ot-shape-complex-indic-machine.rl" |
220 {te = p+1;} | 1203 {te = p+1;} |
221 break; | 1204 break; |
222 » case 9: | 1205 » case 13: |
223 #line 72 "hb-ot-shape-complex-indic-machine.rl" | 1206 #line 82 "hb-ot-shape-complex-indic-machine.rl" |
224 » {te = p+1;{ process_syllable (consonant_syllable); }} | 1207 » {te = p+1;{ found_syllable (consonant_syllable); }} |
| 1208 » break; |
| 1209 » case 15: |
| 1210 #line 83 "hb-ot-shape-complex-indic-machine.rl" |
| 1211 » {te = p+1;{ found_syllable (vowel_syllable); }} |
| 1212 » break; |
| 1213 » case 20: |
| 1214 #line 84 "hb-ot-shape-complex-indic-machine.rl" |
| 1215 » {te = p+1;{ found_syllable (standalone_cluster); }} |
| 1216 » break; |
| 1217 » case 17: |
| 1218 #line 85 "hb-ot-shape-complex-indic-machine.rl" |
| 1219 » {te = p+1;{ found_syllable (broken_cluster); }} |
| 1220 » break; |
| 1221 » case 10: |
| 1222 #line 86 "hb-ot-shape-complex-indic-machine.rl" |
| 1223 » {te = p+1;{ found_syllable (non_indic_cluster); }} |
| 1224 » break; |
| 1225 » case 12: |
| 1226 #line 82 "hb-ot-shape-complex-indic-machine.rl" |
| 1227 » {te = p;p--;{ found_syllable (consonant_syllable); }} |
| 1228 » break; |
| 1229 » case 14: |
| 1230 #line 83 "hb-ot-shape-complex-indic-machine.rl" |
| 1231 » {te = p;p--;{ found_syllable (vowel_syllable); }} |
| 1232 » break; |
| 1233 » case 19: |
| 1234 #line 84 "hb-ot-shape-complex-indic-machine.rl" |
| 1235 » {te = p;p--;{ found_syllable (standalone_cluster); }} |
| 1236 » break; |
| 1237 » case 16: |
| 1238 #line 85 "hb-ot-shape-complex-indic-machine.rl" |
| 1239 » {te = p;p--;{ found_syllable (broken_cluster); }} |
| 1240 » break; |
| 1241 » case 18: |
| 1242 #line 86 "hb-ot-shape-complex-indic-machine.rl" |
| 1243 » {te = p;p--;{ found_syllable (non_indic_cluster); }} |
| 1244 » break; |
| 1245 » case 1: |
| 1246 #line 82 "hb-ot-shape-complex-indic-machine.rl" |
| 1247 » {{p = ((te))-1;}{ found_syllable (consonant_syllable); }} |
| 1248 » break; |
| 1249 » case 3: |
| 1250 #line 83 "hb-ot-shape-complex-indic-machine.rl" |
| 1251 » {{p = ((te))-1;}{ found_syllable (vowel_syllable); }} |
| 1252 » break; |
| 1253 » case 7: |
| 1254 #line 84 "hb-ot-shape-complex-indic-machine.rl" |
| 1255 » {{p = ((te))-1;}{ found_syllable (standalone_cluster); }} |
| 1256 » break; |
| 1257 » case 4: |
| 1258 #line 85 "hb-ot-shape-complex-indic-machine.rl" |
| 1259 » {{p = ((te))-1;}{ found_syllable (broken_cluster); }} |
| 1260 » break; |
| 1261 » case 5: |
| 1262 #line 1 "hb-ot-shape-complex-indic-machine.rl" |
| 1263 » {» switch( act ) { |
| 1264 » case 4: |
| 1265 » {{p = ((te))-1;} found_syllable (broken_cluster); } |
| 1266 » break; |
| 1267 » case 5: |
| 1268 » {{p = ((te))-1;} found_syllable (non_indic_cluster); } |
| 1269 » break; |
| 1270 » } |
| 1271 » } |
| 1272 » break; |
| 1273 » case 6: |
| 1274 #line 1 "hb-ot-shape-complex-indic-machine.rl" |
| 1275 » {te = p+1;} |
| 1276 #line 85 "hb-ot-shape-complex-indic-machine.rl" |
| 1277 » {act = 4;} |
225 break; | 1278 break; |
226 case 11: | 1279 case 11: |
227 #line 73 "hb-ot-shape-complex-indic-machine.rl" | 1280 #line 1 "hb-ot-shape-complex-indic-machine.rl" |
228 » {te = p+1;{ process_syllable (vowel_syllable); }} | 1281 » {te = p+1;} |
| 1282 #line 86 "hb-ot-shape-complex-indic-machine.rl" |
| 1283 » {act = 5;} |
229 break; | 1284 break; |
230 » case 13: | 1285 #line 1286 "hb-ot-shape-complex-indic-machine.hh.tmp" |
231 #line 74 "hb-ot-shape-complex-indic-machine.rl" | |
232 » {te = p+1;{ process_syllable (standalone_cluster); }} | |
233 » break; | |
234 » case 7: | |
235 #line 75 "hb-ot-shape-complex-indic-machine.rl" | |
236 » {te = p+1;{ process_syllable (non_indic); }} | |
237 » break; | |
238 » case 8: | |
239 #line 72 "hb-ot-shape-complex-indic-machine.rl" | |
240 » {te = p;p--;{ process_syllable (consonant_syllable); }} | |
241 » break; | |
242 » case 10: | |
243 #line 73 "hb-ot-shape-complex-indic-machine.rl" | |
244 » {te = p;p--;{ process_syllable (vowel_syllable); }} | |
245 » break; | |
246 » case 12: | |
247 #line 74 "hb-ot-shape-complex-indic-machine.rl" | |
248 » {te = p;p--;{ process_syllable (standalone_cluster); }} | |
249 » break; | |
250 » case 1: | |
251 #line 72 "hb-ot-shape-complex-indic-machine.rl" | |
252 » {{p = ((te))-1;}{ process_syllable (consonant_syllable); }} | |
253 » break; | |
254 » case 3: | |
255 #line 73 "hb-ot-shape-complex-indic-machine.rl" | |
256 » {{p = ((te))-1;}{ process_syllable (vowel_syllable); }} | |
257 » break; | |
258 » case 4: | |
259 #line 74 "hb-ot-shape-complex-indic-machine.rl" | |
260 » {{p = ((te))-1;}{ process_syllable (standalone_cluster); }} | |
261 » break; | |
262 #line 263 "hb-ot-shape-complex-indic-machine.hh.tmp" | |
263 } | 1286 } |
264 | 1287 |
265 _again: | 1288 _again: |
266 switch ( _indic_syllable_machine_to_state_actions[cs] ) { | 1289 switch ( _indic_syllable_machine_to_state_actions[cs] ) { |
267 » case 5: | 1290 » case 8: |
268 #line 1 "hb-ot-shape-complex-indic-machine.rl" | 1291 #line 1 "hb-ot-shape-complex-indic-machine.rl" |
269 {ts = 0;} | 1292 {ts = 0;} |
270 break; | 1293 break; |
271 #line 272 "hb-ot-shape-complex-indic-machine.hh.tmp" | 1294 #line 1295 "hb-ot-shape-complex-indic-machine.hh.tmp" |
272 } | 1295 } |
273 | 1296 |
274 if ( ++p != pe ) | 1297 if ( ++p != pe ) |
275 goto _resume; | 1298 goto _resume; |
276 _test_eof: {} | 1299 _test_eof: {} |
277 if ( p == eof ) | 1300 if ( p == eof ) |
278 { | 1301 { |
279 if ( _indic_syllable_machine_eof_trans[cs] > 0 ) { | 1302 if ( _indic_syllable_machine_eof_trans[cs] > 0 ) { |
280 _trans = _indic_syllable_machine_eof_trans[cs] - 1; | 1303 _trans = _indic_syllable_machine_eof_trans[cs] - 1; |
281 goto _eof_trans; | 1304 goto _eof_trans; |
282 } | 1305 } |
283 } | 1306 } |
284 | 1307 |
285 } | 1308 } |
286 | 1309 |
287 #line 110 "hb-ot-shape-complex-indic-machine.rl" | 1310 #line 120 "hb-ot-shape-complex-indic-machine.rl" |
288 | 1311 |
289 } | 1312 } |
290 | 1313 |
291 HB_END_DECLS | |
292 | |
293 #endif /* HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH */ | 1314 #endif /* HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH */ |
OLD | NEW |