1 | |
2 | #line 1 "hb-ot-shape-complex-indic-machine.rl" |
3 | /* |
4 | * Copyright © 2011,2012 Google, Inc. |
5 | * |
6 | * This is part of HarfBuzz, a text shaping library. |
7 | * |
8 | * Permission is hereby granted, without written agreement and without |
9 | * license or royalty fees, to use, copy, modify, and distribute this |
10 | * software and its documentation for any purpose, provided that the |
11 | * above copyright notice and the following two paragraphs appear in |
12 | * all copies of this software. |
13 | * |
14 | * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR |
15 | * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES |
16 | * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN |
17 | * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH |
18 | * DAMAGE. |
19 | * |
20 | * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, |
21 | * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND |
22 | * FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS |
23 | * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO |
24 | * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. |
25 | * |
26 | * Google Author(s): Behdad Esfahbod |
27 | */ |
28 | |
29 | #ifndef HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH |
30 | #define HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH |
31 | |
32 | #include "hb.hh" |
33 | |
34 | |
35 | #line 36 "hb-ot-shape-complex-indic-machine.hh" |
36 | static const unsigned char _indic_syllable_machine_trans_keys[] = { |
37 | 8u, 8u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, |
38 | 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 4u, 8u, 6u, 6u, 16u, 16u, |
39 | 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, |
40 | 16u, 16u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, |
41 | 4u, 13u, 4u, 8u, 4u, 13u, 8u, 8u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, |
42 | 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, |
43 | 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, |
44 | 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, |
45 | 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 8u, 8u, 5u, 8u, |
46 | 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, |
47 | 5u, 8u, 5u, 7u, 7u, 7u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, |
48 | 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, |
49 | 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, |
50 | 8u, 8u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, |
51 | 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 4u, 8u, 6u, 6u, 16u, 16u, |
52 | 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, |
53 | 16u, 16u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, |
54 | 4u, 13u, 4u, 8u, 4u, 13u, 4u, 13u, 5u, 8u, 5u, 8u, 5u, 7u, 5u, 8u, |
55 | 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, |
56 | 8u, 8u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, |
57 | 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 8u, 8u, 1u, 19u, 3u, 17u, |
58 | 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, |
59 | 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, |
60 | 3u, 17u, 4u, 17u, 5u, 10u, 5u, 10u, 5u, 10u, 10u, 10u, 10u, 10u, 10u, 10u, |
61 | 5u, 10u, 3u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, |
62 | 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, |
63 | 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, |
64 | 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, |
65 | 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, |
66 | 3u, 17u, 3u, 17u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, |
67 | 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, |
68 | 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 5u, 10u, 5u, 10u, 5u, 10u, |
69 | 10u, 10u, 10u, 10u, 10u, 10u, 5u, 10u, 3u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, |
70 | 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, |
71 | 5u, 10u, 3u, 10u, 4u, 10u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, |
72 | 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, |
73 | 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, |
74 | 1u, 16u, 1u, 16u, 1u, 16u, 4u, 8u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, |
75 | 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, |
76 | 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 5u, 10u, |
77 | 5u, 10u, 5u, 10u, 10u, 10u, 10u, 10u, 10u, 10u, 5u, 10u, 3u, 10u, 3u, 10u, |
78 | 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, |
79 | 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 3u, 17u, 3u, 17u, 1u, 16u, |
80 | 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, |
81 | 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, |
82 | 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 4u, 13u, 3u, 17u, 4u, 8u, |
83 | 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, |
84 | 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, |
85 | 3u, 17u, 3u, 17u, 4u, 17u, 5u, 10u, 5u, 10u, 5u, 10u, 10u, 10u, 10u, 10u, |
86 | 10u, 10u, 5u, 10u, 3u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, |
87 | 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, |
88 | 4u, 10u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, |
89 | 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, |
90 | 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, |
91 | 1u, 16u, 3u, 17u, 1u, 17u, 3u, 17u, 1u, 17u, 4u, 13u, 5u, 10u, 10u, 10u, |
92 | 10u, 10u, 10u, 10u, 5u, 10u, 1u, 16u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, |
93 | 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, |
94 | 3u, 10u, 5u, 10u, 5u, 10u, 10u, 10u, 10u, 10u, 10u, 10u, 5u, 10u, 1u, 16u, |
95 | 0 |
96 | }; |
97 | |
98 | static const char _indic_syllable_machine_key_spans[] = { |
99 | 1, 4, 3, 1, 4, 3, 1, 4, |
100 | 3, 1, 4, 3, 1, 5, 1, 1, |
101 | 5, 1, 1, 5, 1, 1, 5, 1, |
102 | 1, 5, 10, 5, 10, 5, 10, 5, |
103 | 10, 5, 10, 1, 4, 3, 1, 4, |
104 | 3, 1, 4, 3, 1, 4, 3, 1, |
105 | 5, 1, 1, 5, 1, 1, 5, 1, |
106 | 1, 5, 1, 1, 5, 10, 5, 10, |
107 | 5, 10, 5, 10, 5, 10, 1, 4, |
108 | 3, 1, 4, 3, 1, 4, 3, 1, |
109 | 4, 3, 1, 5, 1, 1, 5, 1, |
110 | 1, 5, 1, 1, 5, 1, 1, 5, |
111 | 10, 5, 10, 5, 10, 5, 10, 5, |
112 | 1, 4, 3, 1, 4, 3, 1, 4, |
113 | 3, 1, 4, 3, 1, 5, 1, 1, |
114 | 5, 1, 1, 5, 1, 1, 5, 1, |
115 | 1, 5, 10, 5, 10, 5, 10, 5, |
116 | 10, 5, 10, 10, 4, 4, 3, 4, |
117 | 3, 1, 4, 3, 1, 4, 3, 1, |
118 | 1, 5, 1, 1, 5, 1, 1, 5, |
119 | 1, 1, 5, 1, 1, 1, 19, 15, |
120 | 15, 14, 16, 15, 15, 14, 16, 15, |
121 | 15, 14, 16, 15, 15, 14, 16, 15, |
122 | 15, 14, 6, 6, 6, 1, 1, 1, |
123 | 6, 8, 8, 7, 6, 8, 7, 6, |
124 | 8, 7, 6, 8, 7, 6, 8, 7, |
125 | 15, 15, 16, 16, 16, 16, 15, 15, |
126 | 16, 16, 16, 16, 15, 15, 16, 16, |
127 | 16, 16, 15, 15, 16, 16, 16, 16, |
128 | 15, 15, 15, 15, 14, 16, 15, 15, |
129 | 14, 16, 15, 15, 14, 16, 15, 15, |
130 | 14, 16, 15, 15, 14, 6, 6, 6, |
131 | 1, 1, 1, 6, 8, 8, 7, 6, |
132 | 8, 7, 6, 8, 7, 6, 8, 7, |
133 | 6, 8, 7, 15, 15, 16, 16, 16, |
134 | 16, 15, 15, 16, 16, 16, 16, 15, |
135 | 15, 16, 16, 16, 16, 15, 15, 16, |
136 | 16, 16, 16, 5, 15, 15, 14, 16, |
137 | 15, 15, 14, 16, 15, 15, 14, 16, |
138 | 15, 15, 14, 16, 15, 15, 14, 6, |
139 | 6, 6, 1, 1, 1, 6, 8, 8, |
140 | 7, 6, 8, 7, 6, 8, 7, 6, |
141 | 8, 7, 6, 8, 7, 15, 15, 16, |
142 | 16, 16, 16, 15, 15, 16, 16, 16, |
143 | 16, 15, 15, 16, 16, 16, 16, 15, |
144 | 15, 16, 16, 16, 16, 10, 15, 5, |
145 | 15, 15, 14, 16, 15, 15, 14, 16, |
146 | 15, 15, 14, 16, 15, 15, 14, 16, |
147 | 15, 15, 14, 6, 6, 6, 1, 1, |
148 | 1, 6, 8, 8, 7, 6, 8, 7, |
149 | 6, 8, 7, 6, 8, 7, 6, 8, |
150 | 7, 15, 15, 16, 16, 16, 16, 15, |
151 | 15, 16, 16, 16, 16, 15, 15, 16, |
152 | 16, 16, 16, 15, 15, 16, 16, 16, |
153 | 16, 15, 17, 15, 17, 10, 6, 1, |
154 | 1, 1, 6, 16, 8, 7, 6, 8, |
155 | 7, 6, 8, 7, 6, 8, 7, 6, |
156 | 8, 6, 6, 1, 1, 1, 6, 16 |
157 | }; |
158 | |
159 | static const short _indic_syllable_machine_index_offsets[] = { |
160 | 0, 2, 7, 11, 13, 18, 22, 24, |
161 | 29, 33, 35, 40, 44, 46, 52, 54, |
162 | 56, 62, 64, 66, 72, 74, 76, 82, |
163 | 84, 86, 92, 103, 109, 120, 126, 137, |
164 | 143, 154, 160, 171, 173, 178, 182, 184, |
165 | 189, 193, 195, 200, 204, 206, 211, 215, |
166 | 217, 223, 225, 227, 233, 235, 237, 243, |
167 | 245, 247, 253, 255, 257, 263, 274, 280, |
168 | 291, 297, 308, 314, 325, 331, 342, 344, |
169 | 349, 353, 355, 360, 364, 366, 371, 375, |
170 | 377, 382, 386, 388, 394, 396, 398, 404, |
171 | 406, 408, 414, 416, 418, 424, 426, 428, |
172 | 434, 445, 451, 462, 468, 479, 485, 496, |
173 | 502, 504, 509, 513, 515, 520, 524, 526, |
174 | 531, 535, 537, 542, 546, 548, 554, 556, |
175 | 558, 564, 566, 568, 574, 576, 578, 584, |
176 | 586, 588, 594, 605, 611, 622, 628, 639, |
177 | 645, 656, 662, 673, 684, 689, 694, 698, |
178 | 703, 707, 709, 714, 718, 720, 725, 729, |
179 | 731, 733, 739, 741, 743, 749, 751, 753, |
180 | 759, 761, 763, 769, 771, 773, 775, 795, |
181 | 811, 827, 842, 859, 875, 891, 906, 923, |
182 | 939, 955, 970, 987, 1003, 1019, 1034, 1051, |
183 | 1067, 1083, 1098, 1105, 1112, 1119, 1121, 1123, |
184 | 1125, 1132, 1141, 1150, 1158, 1165, 1174, 1182, |
185 | 1189, 1198, 1206, 1213, 1222, 1230, 1237, 1246, |
186 | 1254, 1270, 1286, 1303, 1320, 1337, 1354, 1370, |
187 | 1386, 1403, 1420, 1437, 1454, 1470, 1486, 1503, |
188 | 1520, 1537, 1554, 1570, 1586, 1603, 1620, 1637, |
189 | 1654, 1670, 1686, 1702, 1718, 1733, 1750, 1766, |
190 | 1782, 1797, 1814, 1830, 1846, 1861, 1878, 1894, |
191 | 1910, 1925, 1942, 1958, 1974, 1989, 1996, 2003, |
192 | 2010, 2012, 2014, 2016, 2023, 2032, 2041, 2049, |
193 | 2056, 2065, 2073, 2080, 2089, 2097, 2104, 2113, |
194 | 2121, 2128, 2137, 2145, 2161, 2177, 2194, 2211, |
195 | 2228, 2245, 2261, 2277, 2294, 2311, 2328, 2345, |
196 | 2361, 2377, 2394, 2411, 2428, 2445, 2461, 2477, |
197 | 2494, 2511, 2528, 2545, 2551, 2567, 2583, 2598, |
198 | 2615, 2631, 2647, 2662, 2679, 2695, 2711, 2726, |
199 | 2743, 2759, 2775, 2790, 2807, 2823, 2839, 2854, |
200 | 2861, 2868, 2875, 2877, 2879, 2881, 2888, 2897, |
201 | 2906, 2914, 2921, 2930, 2938, 2945, 2954, 2962, |
202 | 2969, 2978, 2986, 2993, 3002, 3010, 3026, 3042, |
203 | 3059, 3076, 3093, 3110, 3126, 3142, 3159, 3176, |
204 | 3193, 3210, 3226, 3242, 3259, 3276, 3293, 3310, |
205 | 3326, 3342, 3359, 3376, 3393, 3410, 3421, 3437, |
206 | 3443, 3459, 3475, 3490, 3507, 3523, 3539, 3554, |
207 | 3571, 3587, 3603, 3618, 3635, 3651, 3667, 3682, |
208 | 3699, 3715, 3731, 3746, 3753, 3760, 3767, 3769, |
209 | 3771, 3773, 3780, 3789, 3798, 3806, 3813, 3822, |
210 | 3830, 3837, 3846, 3854, 3861, 3870, 3878, 3885, |
211 | 3894, 3902, 3918, 3934, 3951, 3968, 3985, 4002, |
212 | 4018, 4034, 4051, 4068, 4085, 4102, 4118, 4134, |
213 | 4151, 4168, 4185, 4202, 4218, 4234, 4251, 4268, |
214 | 4285, 4302, 4318, 4336, 4352, 4370, 4381, 4388, |
215 | 4390, 4392, 4394, 4401, 4418, 4427, 4435, 4442, |
216 | 4451, 4459, 4466, 4475, 4483, 4490, 4499, 4507, |
217 | 4514, 4523, 4530, 4537, 4539, 4541, 4543, 4550 |
218 | }; |
219 | |
220 | static const short _indic_syllable_machine_indicies[] = { |
221 | 1, 0, 2, 2, 3, 1, 0, 4, |
222 | 4, 3, 0, 3, 0, 5, 5, 6, |
223 | 1, 0, 7, 7, 6, 0, 6, 0, |
224 | 8, 8, 9, 1, 0, 10, 10, 9, |
225 | 0, 9, 0, 11, 11, 12, 1, 0, |
226 | 13, 13, 12, 0, 12, 0, 14, 0, |
227 | 0, 0, 1, 0, 15, 0, 16, 0, |
228 | 17, 11, 11, 12, 1, 0, 18, 0, |
229 | 19, 0, 20, 8, 8, 9, 1, 0, |
230 | 21, 0, 22, 0, 23, 5, 5, 6, |
231 | 1, 0, 24, 0, 25, 0, 26, 2, |
232 | 2, 3, 1, 0, 26, 2, 2, 3, |
233 | 1, 0, 0, 0, 0, 27, 0, 28, |
234 | 2, 2, 3, 1, 0, 28, 2, 2, |
235 | 3, 1, 0, 0, 0, 0, 29, 0, |
236 | 30, 2, 2, 3, 1, 0, 30, 2, |
237 | 2, 3, 1, 0, 0, 0, 0, 31, |
238 | 0, 32, 2, 2, 3, 1, 0, 32, |
239 | 2, 2, 3, 1, 0, 0, 0, 0, |
240 | 33, 0, 34, 2, 2, 3, 1, 0, |
241 | 34, 2, 2, 3, 1, 0, 0, 0, |
242 | 0, 35, 0, 37, 36, 38, 38, 39, |
243 | 37, 36, 40, 40, 39, 36, 39, 36, |
244 | 41, 41, 42, 37, 36, 43, 43, 42, |
245 | 36, 42, 36, 44, 44, 45, 37, 36, |
246 | 46, 46, 45, 36, 45, 36, 47, 47, |
247 | 48, 37, 36, 49, 49, 48, 36, 48, |
248 | 36, 50, 36, 36, 36, 37, 36, 51, |
249 | 36, 52, 36, 53, 47, 47, 48, 37, |
250 | 36, 54, 36, 55, 36, 56, 44, 44, |
251 | 45, 37, 36, 57, 36, 58, 36, 59, |
252 | 41, 41, 42, 37, 36, 60, 36, 61, |
253 | 36, 62, 38, 38, 39, 37, 36, 62, |
254 | 38, 38, 39, 37, 36, 36, 36, 36, |
255 | 63, 36, 64, 38, 38, 39, 37, 36, |
256 | 64, 38, 38, 39, 37, 36, 36, 36, |
257 | 36, 65, 36, 66, 38, 38, 39, 37, |
258 | 36, 66, 38, 38, 39, 37, 36, 36, |
259 | 36, 36, 67, 36, 68, 38, 38, 39, |
260 | 37, 36, 68, 38, 38, 39, 37, 36, |
261 | 36, 36, 36, 69, 36, 70, 38, 38, |
262 | 39, 37, 36, 70, 38, 38, 39, 37, |
263 | 36, 36, 36, 36, 71, 36, 73, 72, |
264 | 74, 74, 75, 73, 72, 77, 77, 75, |
265 | 76, 75, 76, 78, 78, 79, 73, 72, |
266 | 80, 80, 79, 72, 79, 72, 81, 81, |
267 | 82, 73, 72, 83, 83, 82, 72, 82, |
268 | 72, 84, 84, 85, 73, 72, 86, 86, |
269 | 85, 72, 85, 72, 87, 72, 72, 72, |
270 | 73, 72, 88, 72, 89, 72, 90, 84, |
271 | 84, 85, 73, 72, 91, 72, 92, 72, |
272 | 93, 81, 81, 82, 73, 72, 94, 72, |
273 | 95, 72, 96, 78, 78, 79, 73, 72, |
274 | 97, 72, 98, 72, 99, 74, 74, 75, |
275 | 73, 72, 99, 74, 74, 75, 73, 72, |
276 | 72, 72, 72, 100, 72, 101, 74, 74, |
277 | 75, 73, 72, 101, 74, 74, 75, 73, |
278 | 72, 72, 72, 72, 102, 72, 103, 74, |
279 | 74, 75, 73, 72, 103, 74, 74, 75, |
280 | 73, 72, 72, 72, 72, 104, 72, 105, |
281 | 74, 74, 75, 73, 72, 105, 74, 74, |
282 | 75, 73, 72, 72, 72, 72, 106, 72, |
283 | 107, 74, 74, 75, 73, 72, 109, 108, |
284 | 110, 110, 111, 109, 108, 112, 112, 111, |
285 | 108, 111, 108, 113, 113, 114, 109, 108, |
286 | 115, 115, 114, 108, 114, 108, 116, 116, |
287 | 117, 109, 108, 118, 118, 117, 108, 117, |
288 | 108, 119, 119, 120, 109, 108, 121, 121, |
289 | 120, 108, 120, 108, 122, 108, 108, 108, |
290 | 109, 108, 123, 108, 124, 108, 125, 119, |
291 | 119, 120, 109, 108, 126, 108, 127, 108, |
292 | 128, 116, 116, 117, 109, 108, 129, 108, |
293 | 130, 108, 131, 113, 113, 114, 109, 108, |
294 | 132, 108, 133, 108, 134, 110, 110, 111, |
295 | 109, 108, 134, 110, 110, 111, 109, 108, |
296 | 108, 108, 108, 135, 108, 136, 110, 110, |
297 | 111, 109, 108, 136, 110, 110, 111, 109, |
298 | 108, 108, 108, 108, 137, 108, 138, 110, |
299 | 110, 111, 109, 108, 138, 110, 110, 111, |
300 | 109, 108, 108, 108, 108, 139, 108, 140, |
301 | 110, 110, 111, 109, 108, 140, 110, 110, |
302 | 111, 109, 108, 108, 108, 108, 141, 108, |
303 | 142, 110, 110, 111, 109, 108, 142, 110, |
304 | 110, 111, 109, 108, 108, 108, 108, 143, |
305 | 108, 107, 74, 74, 75, 73, 72, 72, |
306 | 72, 72, 144, 72, 77, 77, 75, 1, |
307 | 0, 145, 145, 146, 1, 0, 4, 4, |
308 | 146, 0, 147, 147, 148, 149, 0, 150, |
309 | 150, 148, 0, 148, 0, 151, 151, 152, |
310 | 149, 0, 153, 153, 152, 0, 152, 0, |
311 | 154, 154, 155, 149, 0, 156, 156, 155, |
312 | 0, 155, 0, 149, 0, 157, 0, 0, |
313 | 0, 149, 0, 158, 0, 159, 0, 160, |
314 | 154, 154, 155, 149, 0, 161, 0, 162, |
315 | 0, 163, 151, 151, 152, 149, 0, 164, |
316 | 0, 165, 0, 166, 147, 147, 148, 149, |
317 | 0, 167, 0, 168, 0, 170, 169, 172, |
318 | 173, 174, 175, 176, 177, 75, 73, 171, |
319 | 178, 179, 179, 144, 171, 180, 181, 182, |
320 | 183, 184, 171, 186, 187, 188, 189, 3, |
321 | 1, 185, 190, 185, 185, 35, 185, 185, |
322 | 185, 191, 185, 192, 187, 193, 193, 3, |
323 | 1, 185, 190, 185, 185, 185, 185, 185, |
324 | 185, 191, 185, 187, 193, 193, 3, 1, |
325 | 185, 190, 185, 185, 185, 185, 185, 185, |
326 | 191, 185, 194, 185, 185, 185, 16, 195, |
327 | 185, 1, 185, 190, 185, 185, 185, 185, |
328 | 185, 194, 185, 196, 197, 198, 199, 3, |
329 | 1, 185, 190, 185, 185, 33, 185, 185, |
330 | 185, 191, 185, 200, 197, 201, 201, 3, |
331 | 1, 185, 190, 185, 185, 185, 185, 185, |
332 | 185, 191, 185, 197, 201, 201, 3, 1, |
333 | 185, 190, 185, 185, 185, 185, 185, 185, |
334 | 191, 185, 202, 185, 185, 185, 16, 203, |
335 | 185, 1, 185, 190, 185, 185, 185, 185, |
336 | 185, 202, 185, 204, 205, 206, 207, 3, |
337 | 1, 185, 190, 185, 185, 31, 185, 185, |
338 | 185, 191, 185, 208, 205, 209, 209, 3, |
339 | 1, 185, 190, 185, 185, 185, 185, 185, |
340 | 185, 191, 185, 205, 209, 209, 3, 1, |
341 | 185, 190, 185, 185, 185, 185, 185, 185, |
342 | 191, 185, 210, 185, 185, 185, 16, 211, |
343 | 185, 1, 185, 190, 185, 185, 185, 185, |
344 | 185, 210, 185, 212, 213, 214, 215, 3, |
345 | 1, 185, 190, 185, 185, 29, 185, 185, |
346 | 185, 191, 185, 216, 213, 217, 217, 3, |
347 | 1, 185, 190, 185, 185, 185, 185, 185, |
348 | 185, 191, 185, 213, 217, 217, 3, 1, |
349 | 185, 190, 185, 185, 185, 185, 185, 185, |
350 | 191, 185, 218, 185, 185, 185, 16, 219, |
351 | 185, 1, 185, 190, 185, 185, 185, 185, |
352 | 185, 218, 185, 220, 221, 222, 223, 3, |
353 | 1, 185, 190, 185, 185, 27, 185, 185, |
354 | 185, 191, 185, 224, 221, 225, 225, 3, |
355 | 1, 185, 190, 185, 185, 185, 185, 185, |
356 | 185, 191, 185, 221, 225, 225, 3, 1, |
357 | 185, 190, 185, 185, 185, 185, 185, 185, |
358 | 191, 185, 16, 226, 185, 1, 185, 190, |
359 | 185, 227, 227, 185, 1, 185, 190, 185, |
360 | 228, 185, 185, 229, 185, 190, 185, 190, |
361 | 185, 230, 185, 231, 185, 228, 185, 185, |
362 | 185, 185, 190, 185, 16, 185, 232, 232, |
363 | 3, 1, 185, 190, 185, 233, 25, 234, |
364 | 235, 6, 1, 185, 190, 185, 25, 234, |
365 | 235, 6, 1, 185, 190, 185, 234, 234, |
366 | 6, 1, 185, 190, 185, 236, 22, 237, |
367 | 238, 9, 1, 185, 190, 185, 22, 237, |
368 | 238, 9, 1, 185, 190, 185, 237, 237, |
369 | 9, 1, 185, 190, 185, 239, 19, 240, |
370 | 241, 12, 1, 185, 190, 185, 19, 240, |
371 | 241, 12, 1, 185, 190, 185, 240, 240, |
372 | 12, 1, 185, 190, 185, 242, 16, 227, |
373 | 243, 185, 1, 185, 190, 185, 16, 227, |
374 | 243, 185, 1, 185, 190, 185, 227, 244, |
375 | 185, 1, 185, 190, 185, 16, 185, 227, |
376 | 227, 185, 1, 185, 190, 185, 221, 225, |
377 | 225, 3, 1, 185, 190, 185, 220, 221, |
378 | 225, 225, 3, 1, 185, 190, 185, 185, |
379 | 185, 185, 185, 185, 191, 185, 220, 221, |
380 | 222, 225, 3, 1, 185, 190, 185, 185, |
381 | 27, 185, 185, 185, 191, 185, 218, 185, |
382 | 245, 185, 232, 232, 3, 1, 185, 190, |
383 | 185, 185, 185, 185, 185, 218, 185, 218, |
384 | 185, 185, 185, 227, 227, 185, 1, 185, |
385 | 190, 185, 185, 185, 185, 185, 218, 185, |
386 | 218, 185, 185, 185, 227, 246, 185, 1, |
387 | 185, 190, 185, 185, 185, 185, 185, 218, |
388 | 185, 218, 185, 245, 185, 227, 227, 185, |
389 | 1, 185, 190, 185, 185, 185, 185, 185, |
390 | 218, 185, 212, 213, 217, 217, 3, 1, |
391 | 185, 190, 185, 185, 185, 185, 185, 185, |
392 | 191, 185, 212, 213, 214, 217, 3, 1, |
393 | 185, 190, 185, 185, 29, 185, 185, 185, |
394 | 191, 185, 210, 185, 247, 185, 232, 232, |
395 | 3, 1, 185, 190, 185, 185, 185, 185, |
396 | 185, 210, 185, 210, 185, 185, 185, 227, |
397 | 227, 185, 1, 185, 190, 185, 185, 185, |
398 | 185, 185, 210, 185, 210, 185, 185, 185, |
399 | 227, 248, 185, 1, 185, 190, 185, 185, |
400 | 185, 185, 185, 210, 185, 210, 185, 247, |
401 | 185, 227, 227, 185, 1, 185, 190, 185, |
402 | 185, 185, 185, 185, 210, 185, 204, 205, |
403 | 209, 209, 3, 1, 185, 190, 185, 185, |
404 | 185, 185, 185, 185, 191, 185, 204, 205, |
405 | 206, 209, 3, 1, 185, 190, 185, 185, |
406 | 31, 185, 185, 185, 191, 185, 202, 185, |
407 | 249, 185, 232, 232, 3, 1, 185, 190, |
408 | 185, 185, 185, 185, 185, 202, 185, 202, |
409 | 185, 185, 185, 227, 227, 185, 1, 185, |
410 | 190, 185, 185, 185, 185, 185, 202, 185, |
411 | 202, 185, 185, 185, 227, 250, 185, 1, |
412 | 185, 190, 185, 185, 185, 185, 185, 202, |
413 | 185, 202, 185, 249, 185, 227, 227, 185, |
414 | 1, 185, 190, 185, 185, 185, 185, 185, |
415 | 202, 185, 196, 197, 201, 201, 3, 1, |
416 | 185, 190, 185, 185, 185, 185, 185, 185, |
417 | 191, 185, 196, 197, 198, 201, 3, 1, |
418 | 185, 190, 185, 185, 33, 185, 185, 185, |
419 | 191, 185, 194, 185, 251, 185, 232, 232, |
420 | 3, 1, 185, 190, 185, 185, 185, 185, |
421 | 185, 194, 185, 194, 185, 185, 185, 227, |
422 | 227, 185, 1, 185, 190, 185, 185, 185, |
423 | 185, 185, 194, 185, 194, 185, 185, 185, |
424 | 227, 252, 185, 1, 185, 190, 185, 185, |
425 | 185, 185, 185, 194, 185, 194, 185, 251, |
426 | 185, 227, 227, 185, 1, 185, 190, 185, |
427 | 185, 185, 185, 185, 194, 185, 186, 187, |
428 | 193, 193, 3, 1, 185, 190, 185, 185, |
429 | 185, 185, 185, 185, 191, 185, 186, 187, |
430 | 188, 193, 3, 1, 185, 190, 185, 185, |
431 | 35, 185, 185, 185, 191, 185, 254, 255, |
432 | 256, 257, 39, 37, 253, 258, 253, 253, |
433 | 71, 253, 253, 253, 259, 253, 260, 255, |
434 | 261, 257, 39, 37, 253, 258, 253, 253, |
435 | 253, 253, 253, 253, 259, 253, 255, 261, |
436 | 257, 39, 37, 253, 258, 253, 253, 253, |
437 | 253, 253, 253, 259, 253, 262, 253, 253, |
438 | 253, 52, 263, 253, 37, 253, 258, 253, |
439 | 253, 253, 253, 253, 262, 253, 264, 265, |
440 | 266, 267, 39, 37, 253, 258, 253, 253, |
441 | 69, 253, 253, 253, 259, 253, 268, 265, |
442 | 269, 269, 39, 37, 253, 258, 253, 253, |
443 | 253, 253, 253, 253, 259, 253, 265, 269, |
444 | 269, 39, 37, 253, 258, 253, 253, 253, |
445 | 253, 253, 253, 259, 253, 270, 253, 253, |
446 | 253, 52, 271, 253, 37, 253, 258, 253, |
447 | 253, 253, 253, 253, 270, 253, 272, 273, |
448 | 274, 275, 39, 37, 253, 258, 253, 253, |
449 | 67, 253, 253, 253, 259, 253, 276, 273, |
450 | 277, 277, 39, 37, 253, 258, 253, 253, |
451 | 253, 253, 253, 253, 259, 253, 273, 277, |
452 | 277, 39, 37, 253, 258, 253, 253, 253, |
453 | 253, 253, 253, 259, 253, 278, 253, 253, |
454 | 253, 52, 279, 253, 37, 253, 258, 253, |
455 | 253, 253, 253, 253, 278, 253, 280, 281, |
456 | 282, 283, 39, 37, 253, 258, 253, 253, |
457 | 65, 253, 253, 253, 259, 253, 284, 281, |
458 | 285, 285, 39, 37, 253, 258, 253, 253, |
459 | 253, 253, 253, 253, 259, 253, 281, 285, |
460 | 285, 39, 37, 253, 258, 253, 253, 253, |
461 | 253, 253, 253, 259, 253, 286, 253, 253, |
462 | 253, 52, 287, 253, 37, 253, 258, 253, |
463 | 253, 253, 253, 253, 286, 253, 288, 289, |
464 | 290, 291, 39, 37, 253, 258, 253, 253, |
465 | 63, 253, 253, 253, 259, 253, 292, 289, |
466 | 293, 293, 39, 37, 253, 258, 253, 253, |
467 | 253, 253, 253, 253, 259, 253, 289, 293, |
468 | 293, 39, 37, 253, 258, 253, 253, 253, |
469 | 253, 253, 253, 259, 253, 52, 294, 253, |
470 | 37, 253, 258, 253, 295, 295, 253, 37, |
471 | 253, 258, 253, 296, 253, 253, 297, 253, |
472 | 258, 253, 258, 253, 298, 253, 299, 253, |
473 | 296, 253, 253, 253, 253, 258, 253, 52, |
474 | 253, 300, 300, 39, 37, 253, 258, 253, |
475 | 301, 61, 302, 303, 42, 37, 253, 258, |
476 | 253, 61, 302, 303, 42, 37, 253, 258, |
477 | 253, 302, 302, 42, 37, 253, 258, 253, |
478 | 304, 58, 305, 306, 45, 37, 253, 258, |
479 | 253, 58, 305, 306, 45, 37, 253, 258, |
480 | 253, 305, 305, 45, 37, 253, 258, 253, |
481 | 307, 55, 308, 309, 48, 37, 253, 258, |
482 | 253, 55, 308, 309, 48, 37, 253, 258, |
483 | 253, 308, 308, 48, 37, 253, 258, 253, |
484 | 310, 52, 295, 311, 253, 37, 253, 258, |
485 | 253, 52, 295, 311, 253, 37, 253, 258, |
486 | 253, 295, 312, 253, 37, 253, 258, 253, |
487 | 52, 253, 295, 295, 253, 37, 253, 258, |
488 | 253, 289, 293, 293, 39, 37, 253, 258, |
489 | 253, 288, 289, 293, 293, 39, 37, 253, |
490 | 258, 253, 253, 253, 253, 253, 253, 259, |
491 | 253, 288, 289, 290, 293, 39, 37, 253, |
492 | 258, 253, 253, 63, 253, 253, 253, 259, |
493 | 253, 286, 253, 313, 253, 300, 300, 39, |
494 | 37, 253, 258, 253, 253, 253, 253, 253, |
495 | 286, 253, 286, 253, 253, 253, 295, 295, |
496 | 253, 37, 253, 258, 253, 253, 253, 253, |
497 | 253, 286, 253, 286, 253, 253, 253, 295, |
498 | 314, 253, 37, 253, 258, 253, 253, 253, |
499 | 253, 253, 286, 253, 286, 253, 313, 253, |
500 | 295, 295, 253, 37, 253, 258, 253, 253, |
501 | 253, 253, 253, 286, 253, 280, 281, 285, |
502 | 285, 39, 37, 253, 258, 253, 253, 253, |
503 | 253, 253, 253, 259, 253, 280, 281, 282, |
504 | 285, 39, 37, 253, 258, 253, 253, 65, |
505 | 253, 253, 253, 259, 253, 278, 253, 315, |
506 | 253, 300, 300, 39, 37, 253, 258, 253, |
507 | 253, 253, 253, 253, 278, 253, 278, 253, |
508 | 253, 253, 295, 295, 253, 37, 253, 258, |
509 | 253, 253, 253, 253, 253, 278, 253, 278, |
510 | 253, 253, 253, 295, 316, 253, 37, 253, |
511 | 258, 253, 253, 253, 253, 253, 278, 253, |
512 | 278, 253, 315, 253, 295, 295, 253, 37, |
513 | 253, 258, 253, 253, 253, 253, 253, 278, |
514 | 253, 272, 273, 277, 277, 39, 37, 253, |
515 | 258, 253, 253, 253, 253, 253, 253, 259, |
516 | 253, 272, 273, 274, 277, 39, 37, 253, |
517 | 258, 253, 253, 67, 253, 253, 253, 259, |
518 | 253, 270, 253, 317, 253, 300, 300, 39, |
519 | 37, 253, 258, 253, 253, 253, 253, 253, |
520 | 270, 253, 270, 253, 253, 253, 295, 295, |
521 | 253, 37, 253, 258, 253, 253, 253, 253, |
522 | 253, 270, 253, 270, 253, 253, 253, 295, |
523 | 318, 253, 37, 253, 258, 253, 253, 253, |
524 | 253, 253, 270, 253, 270, 253, 317, 253, |
525 | 295, 295, 253, 37, 253, 258, 253, 253, |
526 | 253, 253, 253, 270, 253, 264, 265, 269, |
527 | 269, 39, 37, 253, 258, 253, 253, 253, |
528 | 253, 253, 253, 259, 253, 264, 265, 266, |
529 | 269, 39, 37, 253, 258, 253, 253, 69, |
530 | 253, 253, 253, 259, 253, 262, 253, 319, |
531 | 253, 300, 300, 39, 37, 253, 258, 253, |
532 | 253, 253, 253, 253, 262, 253, 262, 253, |
533 | 253, 253, 295, 295, 253, 37, 253, 258, |
534 | 253, 253, 253, 253, 253, 262, 253, 262, |
535 | 253, 253, 253, 295, 320, 253, 37, 253, |
536 | 258, 253, 253, 253, 253, 253, 262, 253, |
537 | 262, 253, 319, 253, 295, 295, 253, 37, |
538 | 253, 258, 253, 253, 253, 253, 253, 262, |
539 | 253, 70, 38, 38, 39, 37, 253, 254, |
540 | 255, 261, 257, 39, 37, 253, 258, 253, |
541 | 253, 253, 253, 253, 253, 259, 253, 322, |
542 | 175, 323, 323, 75, 73, 321, 178, 321, |
543 | 321, 321, 321, 321, 321, 182, 321, 175, |
544 | 323, 323, 75, 73, 321, 178, 321, 321, |
545 | 321, 321, 321, 321, 182, 321, 324, 321, |
546 | 321, 321, 89, 325, 321, 73, 321, 178, |
547 | 321, 321, 321, 321, 321, 324, 321, 326, |
548 | 327, 328, 329, 75, 73, 321, 178, 321, |
549 | 321, 106, 321, 321, 321, 182, 321, 330, |
550 | 327, 331, 331, 75, 73, 321, 178, 321, |
551 | 321, 321, 321, 321, 321, 182, 321, 327, |
552 | 331, 331, 75, 73, 321, 178, 321, 321, |
553 | 321, 321, 321, 321, 182, 321, 332, 321, |
554 | 321, 321, 89, 333, 321, 73, 321, 178, |
555 | 321, 321, 321, 321, 321, 332, 321, 334, |
556 | 335, 336, 337, 75, 73, 321, 178, 321, |
557 | 321, 104, 321, 321, 321, 182, 321, 338, |
558 | 335, 339, 339, 75, 73, 321, 178, 321, |
559 | 321, 321, 321, 321, 321, 182, 321, 335, |
560 | 339, 339, 75, 73, 321, 178, 321, 321, |
561 | 321, 321, 321, 321, 182, 321, 340, 321, |
562 | 321, 321, 89, 341, 321, 73, 321, 178, |
563 | 321, 321, 321, 321, 321, 340, 321, 342, |
564 | 343, 344, 345, 75, 73, 321, 178, 321, |
565 | 321, 102, 321, 321, 321, 182, 321, 346, |
566 | 343, 347, 347, 75, 73, 321, 178, 321, |
567 | 321, 321, 321, 321, 321, 182, 321, 343, |
568 | 347, 347, 75, 73, 321, 178, 321, 321, |
569 | 321, 321, 321, 321, 182, 321, 348, 321, |
570 | 321, 321, 89, 349, 321, 73, 321, 178, |
571 | 321, 321, 321, 321, 321, 348, 321, 350, |
572 | 351, 352, 353, 75, 73, 321, 178, 321, |
573 | 321, 100, 321, 321, 321, 182, 321, 354, |
574 | 351, 355, 355, 75, 73, 321, 178, 321, |
575 | 321, 321, 321, 321, 321, 182, 321, 351, |
576 | 355, 355, 75, 73, 321, 178, 321, 321, |
577 | 321, 321, 321, 321, 182, 321, 89, 356, |
578 | 321, 73, 321, 178, 321, 357, 357, 321, |
579 | 73, 321, 178, 321, 358, 321, 321, 359, |
580 | 321, 178, 321, 178, 321, 360, 321, 361, |
581 | 321, 358, 321, 321, 321, 321, 178, 321, |
582 | 89, 321, 362, 362, 75, 73, 321, 178, |
583 | 321, 363, 98, 364, 365, 79, 73, 321, |
584 | 178, 321, 98, 364, 365, 79, 73, 321, |
585 | 178, 321, 364, 364, 79, 73, 321, 178, |
586 | 321, 366, 95, 367, 368, 82, 73, 321, |
587 | 178, 321, 95, 367, 368, 82, 73, 321, |
588 | 178, 321, 367, 367, 82, 73, 321, 178, |
589 | 321, 369, 92, 370, 371, 85, 73, 321, |
590 | 178, 321, 92, 370, 371, 85, 73, 321, |
591 | 178, 321, 370, 370, 85, 73, 321, 178, |
592 | 321, 372, 89, 357, 373, 321, 73, 321, |
593 | 178, 321, 89, 357, 373, 321, 73, 321, |
594 | 178, 321, 357, 374, 321, 73, 321, 178, |
595 | 321, 89, 321, 357, 357, 321, 73, 321, |
596 | 178, 321, 351, 355, 355, 75, 73, 321, |
597 | 178, 321, 350, 351, 355, 355, 75, 73, |
598 | 321, 178, 321, 321, 321, 321, 321, 321, |
599 | 182, 321, 350, 351, 352, 355, 75, 73, |
600 | 321, 178, 321, 321, 100, 321, 321, 321, |
601 | 182, 321, 348, 321, 375, 321, 362, 362, |
602 | 75, 73, 321, 178, 321, 321, 321, 321, |
603 | 321, 348, 321, 348, 321, 321, 321, 357, |
604 | 357, 321, 73, 321, 178, 321, 321, 321, |
605 | 321, 321, 348, 321, 348, 321, 321, 321, |
606 | 357, 376, 321, 73, 321, 178, 321, 321, |
607 | 321, 321, 321, 348, 321, 348, 321, 375, |
608 | 321, 357, 357, 321, 73, 321, 178, 321, |
609 | 321, 321, 321, 321, 348, 321, 342, 343, |
610 | 347, 347, 75, 73, 321, 178, 321, 321, |
611 | 321, 321, 321, 321, 182, 321, 342, 343, |
612 | 344, 347, 75, 73, 321, 178, 321, 321, |
613 | 102, 321, 321, 321, 182, 321, 340, 321, |
614 | 377, 321, 362, 362, 75, 73, 321, 178, |
615 | 321, 321, 321, 321, 321, 340, 321, 340, |
616 | 321, 321, 321, 357, 357, 321, 73, 321, |
617 | 178, 321, 321, 321, 321, 321, 340, 321, |
618 | 340, 321, 321, 321, 357, 378, 321, 73, |
619 | 321, 178, 321, 321, 321, 321, 321, 340, |
620 | 321, 340, 321, 377, 321, 357, 357, 321, |
621 | 73, 321, 178, 321, 321, 321, 321, 321, |
622 | 340, 321, 334, 335, 339, 339, 75, 73, |
623 | 321, 178, 321, 321, 321, 321, 321, 321, |
624 | 182, 321, 334, 335, 336, 339, 75, 73, |
625 | 321, 178, 321, 321, 104, 321, 321, 321, |
626 | 182, 321, 332, 321, 379, 321, 362, 362, |
627 | 75, 73, 321, 178, 321, 321, 321, 321, |
628 | 321, 332, 321, 332, 321, 321, 321, 357, |
629 | 357, 321, 73, 321, 178, 321, 321, 321, |
630 | 321, 321, 332, 321, 332, 321, 321, 321, |
631 | 357, 380, 321, 73, 321, 178, 321, 321, |
632 | 321, 321, 321, 332, 321, 332, 321, 379, |
633 | 321, 357, 357, 321, 73, 321, 178, 321, |
634 | 321, 321, 321, 321, 332, 321, 326, 327, |
635 | 331, 331, 75, 73, 321, 178, 321, 321, |
636 | 321, 321, 321, 321, 182, 321, 326, 327, |
637 | 328, 331, 75, 73, 321, 178, 321, 321, |
638 | 106, 321, 321, 321, 182, 321, 324, 321, |
639 | 381, 321, 362, 362, 75, 73, 321, 178, |
640 | 321, 321, 321, 321, 321, 324, 321, 324, |
641 | 321, 321, 321, 357, 357, 321, 73, 321, |
642 | 178, 321, 321, 321, 321, 321, 324, 321, |
643 | 324, 321, 321, 321, 357, 382, 321, 73, |
644 | 321, 178, 321, 321, 321, 321, 321, 324, |
645 | 321, 324, 321, 381, 321, 357, 357, 321, |
646 | 73, 321, 178, 321, 321, 321, 321, 321, |
647 | 324, 321, 107, 74, 74, 75, 73, 383, |
648 | 383, 383, 383, 144, 383, 174, 175, 323, |
649 | 323, 75, 73, 321, 178, 321, 321, 321, |
650 | 321, 321, 321, 182, 321, 107, 74, 74, |
651 | 75, 73, 383, 385, 386, 387, 388, 111, |
652 | 109, 384, 389, 384, 384, 143, 384, 384, |
653 | 384, 390, 384, 391, 386, 388, 388, 111, |
654 | 109, 384, 389, 384, 384, 384, 384, 384, |
655 | 384, 390, 384, 386, 388, 388, 111, 109, |
656 | 384, 389, 384, 384, 384, 384, 384, 384, |
657 | 390, 384, 392, 384, 384, 384, 124, 393, |
658 | 384, 109, 384, 389, 384, 384, 384, 384, |
659 | 384, 392, 384, 394, 395, 396, 397, 111, |
660 | 109, 384, 389, 384, 384, 141, 384, 384, |
661 | 384, 390, 384, 398, 395, 399, 399, 111, |
662 | 109, 384, 389, 384, 384, 384, 384, 384, |
663 | 384, 390, 384, 395, 399, 399, 111, 109, |
664 | 384, 389, 384, 384, 384, 384, 384, 384, |
665 | 390, 384, 400, 384, 384, 384, 124, 401, |
666 | 384, 109, 384, 389, 384, 384, 384, 384, |
667 | 384, 400, 384, 402, 403, 404, 405, 111, |
668 | 109, 384, 389, 384, 384, 139, 384, 384, |
669 | 384, 390, 384, 406, 403, 407, 407, 111, |
670 | 109, 384, 389, 384, 384, 384, 384, 384, |
671 | 384, 390, 384, 403, 407, 407, 111, 109, |
672 | 384, 389, 384, 384, 384, 384, 384, 384, |
673 | 390, 384, 408, 384, 384, 384, 124, 409, |
674 | 384, 109, 384, 389, 384, 384, 384, 384, |
675 | 384, 408, 384, 410, 411, 412, 413, 111, |
676 | 109, 384, 389, 384, 384, 137, 384, 384, |
677 | 384, 390, 384, 414, 411, 415, 415, 111, |
678 | 109, 384, 389, 384, 384, 384, 384, 384, |
679 | 384, 390, 384, 411, 415, 415, 111, 109, |
680 | 384, 389, 384, 384, 384, 384, 384, 384, |
681 | 390, 384, 416, 384, 384, 384, 124, 417, |
682 | 384, 109, 384, 389, 384, 384, 384, 384, |
683 | 384, 416, 384, 418, 419, 420, 421, 111, |
684 | 109, 384, 389, 384, 384, 135, 384, 384, |
685 | 384, 390, 384, 422, 419, 423, 423, 111, |
686 | 109, 384, 389, 384, 384, 384, 384, 384, |
687 | 384, 390, 384, 419, 423, 423, 111, 109, |
688 | 384, 389, 384, 384, 384, 384, 384, 384, |
689 | 390, 384, 124, 424, 384, 109, 384, 389, |
690 | 384, 425, 425, 384, 109, 384, 389, 384, |
691 | 426, 384, 384, 427, 384, 389, 384, 389, |
692 | 384, 428, 384, 429, 384, 426, 384, 384, |
693 | 384, 384, 389, 384, 124, 384, 430, 430, |
694 | 111, 109, 384, 389, 384, 431, 133, 432, |
695 | 433, 114, 109, 384, 389, 384, 133, 432, |
696 | 433, 114, 109, 384, 389, 384, 432, 432, |
697 | 114, 109, 384, 389, 384, 434, 130, 435, |
698 | 436, 117, 109, 384, 389, 384, 130, 435, |
699 | 436, 117, 109, 384, 389, 384, 435, 435, |
700 | 117, 109, 384, 389, 384, 437, 127, 438, |
701 | 439, 120, 109, 384, 389, 384, 127, 438, |
702 | 439, 120, 109, 384, 389, 384, 438, 438, |
703 | 120, 109, 384, 389, 384, 440, 124, 425, |
704 | 441, 384, 109, 384, 389, 384, 124, 425, |
705 | 441, 384, 109, 384, 389, 384, 425, 442, |
706 | 384, 109, 384, 389, 384, 124, 384, 425, |
707 | 425, 384, 109, 384, 389, 384, 419, 423, |
708 | 423, 111, 109, 384, 389, 384, 418, 419, |
709 | 423, 423, 111, 109, 384, 389, 384, 384, |
710 | 384, 384, 384, 384, 390, 384, 418, 419, |
711 | 420, 423, 111, 109, 384, 389, 384, 384, |
712 | 135, 384, 384, 384, 390, 384, 416, 384, |
713 | 443, 384, 430, 430, 111, 109, 384, 389, |
714 | 384, 384, 384, 384, 384, 416, 384, 416, |
715 | 384, 384, 384, 425, 425, 384, 109, 384, |
716 | 389, 384, 384, 384, 384, 384, 416, 384, |
717 | 416, 384, 384, 384, 425, 444, 384, 109, |
718 | 384, 389, 384, 384, 384, 384, 384, 416, |
719 | 384, 416, 384, 443, 384, 425, 425, 384, |
720 | 109, 384, 389, 384, 384, 384, 384, 384, |
721 | 416, 384, 410, 411, 415, 415, 111, 109, |
722 | 384, 389, 384, 384, 384, 384, 384, 384, |
723 | 390, 384, 410, 411, 412, 415, 111, 109, |
724 | 384, 389, 384, 384, 137, 384, 384, 384, |
725 | 390, 384, 408, 384, 445, 384, 430, 430, |
726 | 111, 109, 384, 389, 384, 384, 384, 384, |
727 | 384, 408, 384, 408, 384, 384, 384, 425, |
728 | 425, 384, 109, 384, 389, 384, 384, 384, |
729 | 384, 384, 408, 384, 408, 384, 384, 384, |
730 | 425, 446, 384, 109, 384, 389, 384, 384, |
731 | 384, 384, 384, 408, 384, 408, 384, 445, |
732 | 384, 425, 425, 384, 109, 384, 389, 384, |
733 | 384, 384, 384, 384, 408, 384, 402, 403, |
734 | 407, 407, 111, 109, 384, 389, 384, 384, |
735 | 384, 384, 384, 384, 390, 384, 402, 403, |
736 | 404, 407, 111, 109, 384, 389, 384, 384, |
737 | 139, 384, 384, 384, 390, 384, 400, 384, |
738 | 447, 384, 430, 430, 111, 109, 384, 389, |
739 | 384, 384, 384, 384, 384, 400, 384, 400, |
740 | 384, 384, 384, 425, 425, 384, 109, 384, |
741 | 389, 384, 384, 384, 384, 384, 400, 384, |
742 | 400, 384, 384, 384, 425, 448, 384, 109, |
743 | 384, 389, 384, 384, 384, 384, 384, 400, |
744 | 384, 400, 384, 447, 384, 425, 425, 384, |
745 | 109, 384, 389, 384, 384, 384, 384, 384, |
746 | 400, 384, 394, 395, 399, 399, 111, 109, |
747 | 384, 389, 384, 384, 384, 384, 384, 384, |
748 | 390, 384, 394, 395, 396, 399, 111, 109, |
749 | 384, 389, 384, 384, 141, 384, 384, 384, |
750 | 390, 384, 392, 384, 449, 384, 430, 430, |
751 | 111, 109, 384, 389, 384, 384, 384, 384, |
752 | 384, 392, 384, 392, 384, 384, 384, 425, |
753 | 425, 384, 109, 384, 389, 384, 384, 384, |
754 | 384, 384, 392, 384, 392, 384, 384, 384, |
755 | 425, 450, 384, 109, 384, 389, 384, 384, |
756 | 384, 384, 384, 392, 384, 392, 384, 449, |
757 | 384, 425, 425, 384, 109, 384, 389, 384, |
758 | 384, 384, 384, 384, 392, 384, 385, 386, |
759 | 388, 388, 111, 109, 384, 389, 384, 384, |
760 | 384, 384, 384, 384, 390, 384, 172, 173, |
761 | 174, 175, 451, 323, 75, 73, 321, 178, |
762 | 179, 179, 144, 321, 321, 172, 182, 321, |
763 | 186, 452, 188, 189, 3, 1, 185, 190, |
764 | 185, 185, 35, 185, 185, 185, 191, 185, |
765 | 194, 173, 174, 175, 453, 454, 75, 149, |
766 | 185, 455, 185, 179, 144, 185, 185, 194, |
767 | 182, 185, 107, 456, 456, 75, 149, 185, |
768 | 190, 185, 185, 144, 185, 457, 185, 185, |
769 | 458, 185, 455, 185, 455, 185, 459, 185, |
770 | 231, 185, 457, 185, 185, 185, 185, 455, |
771 | 185, 194, 185, 251, 107, 460, 460, 146, |
772 | 149, 185, 190, 185, 185, 185, 185, 185, |
773 | 194, 185, 461, 168, 462, 463, 148, 149, |
774 | 185, 455, 185, 168, 462, 463, 148, 149, |
775 | 185, 455, 185, 462, 462, 148, 149, 185, |
776 | 455, 185, 464, 165, 465, 466, 152, 149, |
777 | 185, 455, 185, 165, 465, 466, 152, 149, |
778 | 185, 455, 185, 465, 465, 152, 149, 185, |
779 | 455, 185, 467, 162, 468, 469, 155, 149, |
780 | 185, 455, 185, 162, 468, 469, 155, 149, |
781 | 185, 455, 185, 468, 468, 155, 149, 185, |
782 | 455, 185, 470, 159, 471, 472, 185, 149, |
783 | 185, 455, 185, 159, 471, 472, 185, 149, |
784 | 185, 455, 185, 471, 471, 185, 149, 185, |
785 | 455, 185, 474, 473, 475, 475, 473, 170, |
786 | 473, 476, 473, 475, 475, 473, 170, 473, |
787 | 476, 473, 477, 473, 473, 478, 473, 476, |
788 | 473, 476, 473, 479, 473, 480, 473, 477, |
789 | 473, 473, 473, 473, 476, 473, 172, 383, |
790 | 383, 383, 383, 383, 383, 383, 383, 383, |
791 | 179, 383, 383, 383, 383, 172, 383, 0 |
792 | }; |
793 | |
794 | static const short _indic_syllable_machine_trans_targs[] = { |
795 | 166, 188, 2, 194, 3, 5, 197, 6, |
796 | 8, 200, 9, 11, 203, 12, 14, 15, |
797 | 187, 17, 18, 202, 20, 21, 199, 23, |
798 | 24, 196, 205, 208, 212, 214, 218, 220, |
799 | 224, 226, 230, 232, 166, 255, 37, 261, |
800 | 38, 40, 264, 41, 43, 267, 44, 46, |
801 | 270, 47, 49, 50, 254, 52, 53, 269, |
802 | 55, 56, 266, 58, 59, 263, 272, 275, |
803 | 279, 281, 285, 287, 291, 293, 297, 300, |
804 | 166, 321, 72, 327, 166, 73, 75, 330, |
805 | 76, 78, 333, 79, 81, 336, 82, 84, |
806 | 85, 320, 87, 88, 335, 90, 91, 332, |
807 | 93, 94, 329, 338, 341, 345, 347, 351, |
808 | 353, 357, 359, 363, 166, 389, 106, 395, |
809 | 107, 109, 398, 110, 112, 401, 113, 115, |
810 | 404, 116, 118, 119, 388, 121, 122, 403, |
811 | 124, 125, 400, 127, 128, 397, 406, 409, |
812 | 413, 415, 419, 421, 425, 427, 431, 433, |
813 | 366, 142, 444, 144, 447, 438, 145, 147, |
814 | 450, 148, 150, 453, 151, 154, 155, 455, |
815 | 157, 158, 452, 160, 161, 449, 163, 164, |
816 | 446, 166, 458, 166, 167, 234, 301, 303, |
817 | 365, 367, 323, 368, 434, 435, 340, 456, |
818 | 463, 166, 168, 170, 34, 233, 190, 207, |
819 | 169, 33, 171, 228, 172, 174, 32, 227, |
820 | 173, 31, 175, 222, 176, 178, 30, 221, |
821 | 177, 29, 179, 216, 180, 182, 28, 215, |
822 | 181, 27, 183, 210, 184, 186, 26, 209, |
823 | 185, 25, 193, 0, 189, 192, 191, 166, |
824 | 1, 195, 4, 22, 198, 7, 19, 201, |
825 | 10, 16, 204, 13, 206, 211, 213, 217, |
826 | 219, 223, 225, 229, 231, 166, 235, 237, |
827 | 69, 299, 257, 274, 236, 68, 238, 295, |
828 | 239, 241, 67, 294, 240, 66, 242, 289, |
829 | 243, 245, 65, 288, 244, 64, 246, 283, |
830 | 247, 249, 63, 282, 248, 62, 250, 277, |
831 | 251, 253, 61, 276, 252, 60, 260, 35, |
832 | 256, 259, 258, 166, 36, 262, 39, 57, |
833 | 265, 42, 54, 268, 45, 51, 271, 48, |
834 | 273, 278, 280, 284, 286, 290, 292, 296, |
835 | 298, 166, 302, 103, 304, 361, 305, 307, |
836 | 102, 360, 306, 101, 308, 355, 309, 311, |
837 | 100, 354, 310, 99, 312, 349, 313, 315, |
838 | 98, 348, 314, 97, 316, 343, 317, 319, |
839 | 96, 342, 318, 95, 326, 70, 322, 325, |
840 | 324, 166, 71, 328, 74, 92, 331, 77, |
841 | 89, 334, 80, 86, 337, 83, 339, 344, |
842 | 346, 350, 352, 356, 358, 362, 364, 166, |
843 | 166, 369, 371, 138, 137, 391, 408, 370, |
844 | 372, 429, 373, 375, 136, 428, 374, 135, |
845 | 376, 423, 377, 379, 134, 422, 378, 133, |
846 | 380, 417, 381, 383, 132, 416, 382, 131, |
847 | 384, 411, 385, 387, 130, 410, 386, 129, |
848 | 394, 104, 390, 393, 392, 166, 105, 396, |
849 | 108, 126, 399, 111, 123, 402, 114, 120, |
850 | 405, 117, 407, 412, 414, 418, 420, 424, |
851 | 426, 430, 432, 139, 436, 437, 443, 440, |
852 | 140, 439, 442, 441, 141, 445, 143, 162, |
853 | 448, 146, 159, 451, 149, 156, 454, 152, |
854 | 153, 166, 457, 165, 460, 459, 462, 461, |
855 | 166 |
856 | }; |
857 | |
858 | static const char _indic_syllable_machine_trans_actions[] = { |
859 | 1, 0, 0, 2, 0, 0, 2, 0, |
860 | 0, 2, 0, 0, 2, 0, 0, 0, |
861 | 2, 0, 0, 2, 0, 0, 2, 0, |
862 | 0, 2, 2, 2, 2, 2, 2, 2, |
863 | 2, 2, 2, 2, 3, 0, 0, 2, |
864 | 0, 0, 2, 0, 0, 2, 0, 0, |
865 | 2, 0, 0, 0, 2, 0, 0, 2, |
866 | 0, 0, 2, 0, 0, 2, 2, 2, |
867 | 2, 2, 2, 2, 2, 2, 2, 2, |
868 | 4, 0, 0, 2, 5, 0, 0, 2, |
869 | 0, 0, 2, 0, 0, 2, 0, 0, |
870 | 0, 2, 0, 0, 2, 0, 0, 2, |
871 | 0, 0, 2, 2, 6, 2, 6, 2, |
872 | 6, 2, 6, 2, 7, 0, 0, 2, |
873 | 0, 0, 2, 0, 0, 2, 0, 0, |
874 | 2, 0, 0, 0, 2, 0, 0, 2, |
875 | 0, 0, 2, 0, 0, 2, 2, 2, |
876 | 2, 2, 2, 2, 2, 2, 2, 2, |
877 | 6, 0, 2, 0, 2, 0, 0, 0, |
878 | 2, 0, 0, 2, 0, 0, 0, 2, |
879 | 0, 0, 2, 0, 0, 2, 0, 0, |
880 | 2, 8, 0, 11, 2, 2, 6, 0, |
881 | 12, 12, 0, 2, 6, 2, 6, 2, |
882 | 0, 13, 2, 0, 0, 2, 0, 2, |
883 | 2, 0, 2, 2, 2, 0, 0, 2, |
884 | 2, 0, 2, 2, 2, 0, 0, 2, |
885 | 2, 0, 2, 2, 2, 0, 0, 2, |
886 | 2, 0, 2, 2, 2, 0, 0, 2, |
887 | 2, 0, 2, 0, 0, 0, 0, 14, |
888 | 0, 2, 0, 0, 2, 0, 0, 2, |
889 | 0, 0, 2, 0, 2, 2, 2, 2, |
890 | 2, 2, 2, 2, 2, 15, 2, 0, |
891 | 0, 2, 0, 2, 2, 0, 2, 2, |
892 | 2, 0, 0, 2, 2, 0, 2, 2, |
893 | 2, 0, 0, 2, 2, 0, 2, 2, |
894 | 2, 0, 0, 2, 2, 0, 2, 2, |
895 | 2, 0, 0, 2, 2, 0, 2, 0, |
896 | 0, 0, 0, 16, 0, 2, 0, 0, |
897 | 2, 0, 0, 2, 0, 0, 2, 0, |
898 | 2, 2, 2, 2, 2, 2, 2, 2, |
899 | 2, 17, 6, 0, 6, 6, 6, 0, |
900 | 0, 6, 6, 0, 6, 6, 6, 0, |
901 | 0, 6, 6, 0, 6, 6, 6, 0, |
902 | 0, 6, 6, 0, 6, 6, 6, 0, |
903 | 0, 6, 6, 0, 6, 0, 0, 0, |
904 | 0, 18, 0, 2, 0, 0, 2, 0, |
905 | 0, 2, 0, 0, 2, 0, 2, 2, |
906 | 2, 2, 2, 2, 2, 2, 2, 19, |
907 | 20, 2, 0, 0, 0, 0, 2, 2, |
908 | 2, 2, 2, 0, 0, 2, 2, 0, |
909 | 2, 2, 2, 0, 0, 2, 2, 0, |
910 | 2, 2, 2, 0, 0, 2, 2, 0, |
911 | 2, 2, 2, 0, 0, 2, 2, 0, |
912 | 2, 0, 0, 0, 0, 21, 0, 2, |
913 | 0, 0, 2, 0, 0, 2, 0, 0, |
914 | 2, 0, 2, 2, 2, 2, 2, 2, |
915 | 2, 2, 2, 0, 0, 22, 2, 0, |
916 | 0, 0, 0, 0, 0, 2, 0, 0, |
917 | 2, 0, 0, 2, 0, 0, 2, 0, |
918 | 0, 23, 2, 0, 0, 0, 0, 0, |
919 | 24 |
920 | }; |
921 | |
922 | static const char _indic_syllable_machine_to_state_actions[] = { |
923 | 0, 0, 0, 0, 0, 0, 0, 0, |
924 | 0, 0, 0, 0, 0, 0, 0, 0, |
925 | 0, 0, 0, 0, 0, 0, 0, 0, |
926 | 0, 0, 0, 0, 0, 0, 0, 0, |
927 | 0, 0, 0, 0, 0, 0, 0, 0, |
928 | 0, 0, 0, 0, 0, 0, 0, 0, |
929 | 0, 0, 0, 0, 0, 0, 0, 0, |
930 | 0, 0, 0, 0, 0, 0, 0, 0, |
931 | 0, 0, 0, 0, 0, 0, 0, 0, |
932 | 0, 0, 0, 0, 0, 0, 0, 0, |
933 | 0, 0, 0, 0, 0, 0, 0, 0, |
934 | 0, 0, 0, 0, 0, 0, 0, 0, |
935 | 0, 0, 0, 0, 0, 0, 0, 0, |
936 | 0, 0, 0, 0, 0, 0, 0, 0, |
937 | 0, 0, 0, 0, 0, 0, 0, 0, |
938 | 0, 0, 0, 0, 0, 0, 0, 0, |
939 | 0, 0, 0, 0, 0, 0, 0, 0, |
940 | 0, 0, 0, 0, 0, 0, 0, 0, |
941 | 0, 0, 0, 0, 0, 0, 0, 0, |
942 | 0, 0, 0, 0, 0, 0, 0, 0, |
943 | 0, 0, 0, 0, 0, 0, 9, 0, |
944 | 0, 0, 0, 0, 0, 0, 0, 0, |
945 | 0, 0, 0, 0, 0, 0, 0, 0, |
946 | 0, 0, 0, 0, 0, 0, 0, 0, |
947 | 0, 0, 0, 0, 0, 0, 0, 0, |
948 | 0, 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, 0, |
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 | }; |
982 | |
983 | static const char _indic_syllable_machine_from_state_actions[] = { |
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, 0, 0, 0, 0, 0, |
1001 | 0, 0, 0, 0, 0, 0, 0, 0, |
1002 | 0, 0, 0, 0, 0, 0, 0, 0, |
1003 | 0, 0, 0, 0, 0, 0, 0, 0, |
1004 | 0, 0, 0, 0, 0, 0, 10, 0, |
1005 | 0, 0, 0, 0, 0, 0, 0, 0, |
1006 | 0, 0, 0, 0, 0, 0, 0, 0, |
1007 | 0, 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, 0, |
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 | }; |
1043 | |
1044 | static const short _indic_syllable_machine_eof_trans[] = { |
1045 | 1, 1, 1, 1, 1, 1, 1, 1, |
1046 | 1, 1, 1, 1, 1, 1, 1, 1, |
1047 | 1, 1, 1, 1, 1, 1, 1, 1, |
1048 | 1, 1, 1, 1, 1, 1, 1, 1, |
1049 | 1, 1, 1, 37, 37, 37, 37, 37, |
1050 | 37, 37, 37, 37, 37, 37, 37, 37, |
1051 | 37, 37, 37, 37, 37, 37, 37, 37, |
1052 | 37, 37, 37, 37, 37, 37, 37, 37, |
1053 | 37, 37, 37, 37, 37, 37, 73, 73, |
1054 | 77, 77, 73, 73, 73, 73, 73, 73, |
1055 | 73, 73, 73, 73, 73, 73, 73, 73, |
1056 | 73, 73, 73, 73, 73, 73, 73, 73, |
1057 | 73, 73, 73, 73, 73, 73, 73, 73, |
1058 | 109, 109, 109, 109, 109, 109, 109, 109, |
1059 | 109, 109, 109, 109, 109, 109, 109, 109, |
1060 | 109, 109, 109, 109, 109, 109, 109, 109, |
1061 | 109, 109, 109, 109, 109, 109, 109, 109, |
1062 | 109, 109, 109, 73, 1, 1, 1, 1, |
1063 | 1, 1, 1, 1, 1, 1, 1, 1, |
1064 | 1, 1, 1, 1, 1, 1, 1, 1, |
1065 | 1, 1, 1, 1, 1, 170, 0, 186, |
1066 | 186, 186, 186, 186, 186, 186, 186, 186, |
1067 | 186, 186, 186, 186, 186, 186, 186, 186, |
1068 | 186, 186, 186, 186, 186, 186, 186, 186, |
1069 | 186, 186, 186, 186, 186, 186, 186, 186, |
1070 | 186, 186, 186, 186, 186, 186, 186, 186, |
1071 | 186, 186, 186, 186, 186, 186, 186, 186, |
1072 | 186, 186, 186, 186, 186, 186, 186, 186, |
1073 | 186, 186, 186, 186, 186, 186, 186, 186, |
1074 | 186, 186, 254, 254, 254, 254, 254, 254, |
1075 | 254, 254, 254, 254, 254, 254, 254, 254, |
1076 | 254, 254, 254, 254, 254, 254, 254, 254, |
1077 | 254, 254, 254, 254, 254, 254, 254, 254, |
1078 | 254, 254, 254, 254, 254, 254, 254, 254, |
1079 | 254, 254, 254, 254, 254, 254, 254, 254, |
1080 | 254, 254, 254, 254, 254, 254, 254, 254, |
1081 | 254, 254, 254, 254, 254, 254, 254, 254, |
1082 | 254, 254, 254, 254, 254, 322, 322, 322, |
1083 | 322, 322, 322, 322, 322, 322, 322, 322, |
1084 | 322, 322, 322, 322, 322, 322, 322, 322, |
1085 | 322, 322, 322, 322, 322, 322, 322, 322, |
1086 | 322, 322, 322, 322, 322, 322, 322, 322, |
1087 | 322, 322, 322, 322, 322, 322, 322, 322, |
1088 | 322, 322, 322, 322, 322, 322, 322, 322, |
1089 | 322, 322, 322, 322, 322, 322, 322, 322, |
1090 | 322, 322, 322, 322, 322, 384, 322, 384, |
1091 | 385, 385, 385, 385, 385, 385, 385, 385, |
1092 | 385, 385, 385, 385, 385, 385, 385, 385, |
1093 | 385, 385, 385, 385, 385, 385, 385, 385, |
1094 | 385, 385, 385, 385, 385, 385, 385, 385, |
1095 | 385, 385, 385, 385, 385, 385, 385, 385, |
1096 | 385, 385, 385, 385, 385, 385, 385, 385, |
1097 | 385, 385, 385, 385, 385, 385, 385, 385, |
1098 | 385, 385, 385, 385, 385, 385, 385, 385, |
1099 | 385, 385, 322, 186, 186, 186, 186, 186, |
1100 | 186, 186, 186, 186, 186, 186, 186, 186, |
1101 | 186, 186, 186, 186, 186, 186, 186, 186, |
1102 | 474, 474, 474, 474, 474, 474, 474, 384 |
1103 | }; |
1104 | |
1105 | static const int indic_syllable_machine_start = 166; |
1106 | static const int indic_syllable_machine_first_final = 166; |
1107 | static const int indic_syllable_machine_error = -1; |
1108 | |
1109 | static const int indic_syllable_machine_en_main = 166; |
1110 | |
1111 | |
1112 | #line 36 "hb-ot-shape-complex-indic-machine.rl" |
1113 | |
1114 | |
1115 | |
1116 | #line 92 "hb-ot-shape-complex-indic-machine.rl" |
1117 | |
1118 | |
1119 | #define found_syllable(syllable_type) \ |
1120 | HB_STMT_START { \ |
1121 | if (0) fprintf (stderr, "syllable %d..%d %s\n", last, p+1, #syllable_type); \ |
1122 | for (unsigned int i = last; i < p+1; i++) \ |
1123 | info[i].syllable() = (syllable_serial << 4) | syllable_type; \ |
1124 | last = p+1; \ |
1125 | syllable_serial++; \ |
1126 | if (unlikely (syllable_serial == 16)) syllable_serial = 1; \ |
1127 | } HB_STMT_END |
1128 | |
1129 | static void |
1130 | find_syllables (hb_buffer_t *buffer) |
1131 | { |
1132 | unsigned int p, pe, eof, ts HB_UNUSED, te, act; |
1133 | int cs; |
1134 | hb_glyph_info_t *info = buffer->info; |
1135 | |
1136 | #line 1137 "hb-ot-shape-complex-indic-machine.hh" |
1137 | { |
1138 | cs = indic_syllable_machine_start; |
1139 | ts = 0; |
1140 | te = 0; |
1141 | act = 0; |
1142 | } |
1143 | |
1144 | #line 113 "hb-ot-shape-complex-indic-machine.rl" |
1145 | |
1146 | |
1147 | p = 0; |
1148 | pe = eof = buffer->len; |
1149 | |
1150 | unsigned int last = 0; |
1151 | unsigned int syllable_serial = 1; |
1152 | |
1153 | #line 1154 "hb-ot-shape-complex-indic-machine.hh" |
1154 | { |
1155 | int _slen; |
1156 | int _trans; |
1157 | const unsigned char *_keys; |
1158 | const short *_inds; |
1159 | if ( p == pe ) |
1160 | goto _test_eof; |
1161 | _resume: |
1162 | switch ( _indic_syllable_machine_from_state_actions[cs] ) { |
1163 | case 10: |
1164 | #line 1 "NONE" |
1165 | {ts = p;} |
1166 | break; |
1167 | #line 1168 "hb-ot-shape-complex-indic-machine.hh" |
1168 | } |
1169 | |
1170 | _keys = _indic_syllable_machine_trans_keys + (cs<<1); |
1171 | _inds = _indic_syllable_machine_indicies + _indic_syllable_machine_index_offsets[cs]; |
1172 | |
1173 | _slen = _indic_syllable_machine_key_spans[cs]; |
1174 | _trans = _inds[ _slen > 0 && _keys[0] <=( info[p].indic_category()) && |
1175 | ( info[p].indic_category()) <= _keys[1] ? |
1176 | ( info[p].indic_category()) - _keys[0] : _slen ]; |
1177 | |
1178 | _eof_trans: |
1179 | cs = _indic_syllable_machine_trans_targs[_trans]; |
1180 | |
1181 | if ( _indic_syllable_machine_trans_actions[_trans] == 0 ) |
1182 | goto _again; |
1183 | |
1184 | switch ( _indic_syllable_machine_trans_actions[_trans] ) { |
1185 | case 2: |
1186 | #line 1 "NONE" |
1187 | {te = p+1;} |
1188 | break; |
1189 | case 14: |
1190 | #line 83 "hb-ot-shape-complex-indic-machine.rl" |
1191 | {te = p+1;{ found_syllable (consonant_syllable); }} |
1192 | break; |
1193 | case 16: |
1194 | #line 84 "hb-ot-shape-complex-indic-machine.rl" |
1195 | {te = p+1;{ found_syllable (vowel_syllable); }} |
1196 | break; |
1197 | case 21: |
1198 | #line 85 "hb-ot-shape-complex-indic-machine.rl" |
1199 | {te = p+1;{ found_syllable (standalone_cluster); }} |
1200 | break; |
1201 | case 24: |
1202 | #line 86 "hb-ot-shape-complex-indic-machine.rl" |
1203 | {te = p+1;{ found_syllable (symbol_cluster); }} |
1204 | break; |
1205 | case 18: |
1206 | #line 87 "hb-ot-shape-complex-indic-machine.rl" |
1207 | {te = p+1;{ found_syllable (broken_cluster); }} |
1208 | break; |
1209 | case 11: |
1210 | #line 88 "hb-ot-shape-complex-indic-machine.rl" |
1211 | {te = p+1;{ found_syllable (non_indic_cluster); }} |
1212 | break; |
1213 | case 13: |
1214 | #line 83 "hb-ot-shape-complex-indic-machine.rl" |
1215 | {te = p;p--;{ found_syllable (consonant_syllable); }} |
1216 | break; |
1217 | case 15: |
1218 | #line 84 "hb-ot-shape-complex-indic-machine.rl" |
1219 | {te = p;p--;{ found_syllable (vowel_syllable); }} |
1220 | break; |
1221 | case 20: |
1222 | #line 85 "hb-ot-shape-complex-indic-machine.rl" |
1223 | {te = p;p--;{ found_syllable (standalone_cluster); }} |
1224 | break; |
1225 | case 23: |
1226 | #line 86 "hb-ot-shape-complex-indic-machine.rl" |
1227 | {te = p;p--;{ found_syllable (symbol_cluster); }} |
1228 | break; |
1229 | case 17: |
1230 | #line 87 "hb-ot-shape-complex-indic-machine.rl" |
1231 | {te = p;p--;{ found_syllable (broken_cluster); }} |
1232 | break; |
1233 | case 19: |
1234 | #line 88 "hb-ot-shape-complex-indic-machine.rl" |
1235 | {te = p;p--;{ found_syllable (non_indic_cluster); }} |
1236 | break; |
1237 | case 1: |
1238 | #line 83 "hb-ot-shape-complex-indic-machine.rl" |
1239 | {{p = ((te))-1;}{ found_syllable (consonant_syllable); }} |
1240 | break; |
1241 | case 3: |
1242 | #line 84 "hb-ot-shape-complex-indic-machine.rl" |
1243 | {{p = ((te))-1;}{ found_syllable (vowel_syllable); }} |
1244 | break; |
1245 | case 7: |
1246 | #line 85 "hb-ot-shape-complex-indic-machine.rl" |
1247 | {{p = ((te))-1;}{ found_syllable (standalone_cluster); }} |
1248 | break; |
1249 | case 8: |
1250 | #line 86 "hb-ot-shape-complex-indic-machine.rl" |
1251 | {{p = ((te))-1;}{ found_syllable (symbol_cluster); }} |
1252 | break; |
1253 | case 4: |
1254 | #line 87 "hb-ot-shape-complex-indic-machine.rl" |
1255 | {{p = ((te))-1;}{ found_syllable (broken_cluster); }} |
1256 | break; |
1257 | case 5: |
1258 | #line 1 "NONE" |
1259 | { switch( act ) { |
1260 | case 1: |
1261 | {{p = ((te))-1;} found_syllable (consonant_syllable); } |
1262 | break; |
1263 | case 5: |
1264 | {{p = ((te))-1;} found_syllable (broken_cluster); } |
1265 | break; |
1266 | case 6: |
1267 | {{p = ((te))-1;} found_syllable (non_indic_cluster); } |
1268 | break; |
1269 | } |
1270 | } |
1271 | break; |
1272 | case 22: |
1273 | #line 1 "NONE" |
1274 | {te = p+1;} |
1275 | #line 83 "hb-ot-shape-complex-indic-machine.rl" |
1276 | {act = 1;} |
1277 | break; |
1278 | case 6: |
1279 | #line 1 "NONE" |
1280 | {te = p+1;} |
1281 | #line 87 "hb-ot-shape-complex-indic-machine.rl" |
1282 | {act = 5;} |
1283 | break; |
1284 | case 12: |
1285 | #line 1 "NONE" |
1286 | {te = p+1;} |
1287 | #line 88 "hb-ot-shape-complex-indic-machine.rl" |
1288 | {act = 6;} |
1289 | break; |
1290 | #line 1291 "hb-ot-shape-complex-indic-machine.hh" |
1291 | } |
1292 | |
1293 | _again: |
1294 | switch ( _indic_syllable_machine_to_state_actions[cs] ) { |
1295 | case 9: |
1296 | #line 1 "NONE" |
1297 | {ts = 0;} |
1298 | break; |
1299 | #line 1300 "hb-ot-shape-complex-indic-machine.hh" |
1300 | } |
1301 | |
1302 | if ( ++p != pe ) |
1303 | goto _resume; |
1304 | _test_eof: {} |
1305 | if ( p == eof ) |
1306 | { |
1307 | if ( _indic_syllable_machine_eof_trans[cs] > 0 ) { |
1308 | _trans = _indic_syllable_machine_eof_trans[cs] - 1; |
1309 | goto _eof_trans; |
1310 | } |
1311 | } |
1312 | |
1313 | } |
1314 | |
1315 | #line 122 "hb-ot-shape-complex-indic-machine.rl" |
1316 | |
1317 | } |
1318 | |
1319 | #endif /* HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH */ |
1320 | |