| /* | 
 | * Copyright © 2011,2012  Google, Inc. | 
 | * | 
 | *  This is part of HarfBuzz, a text shaping library. | 
 | * | 
 | * Permission is hereby granted, without written agreement and without | 
 | * license or royalty fees, to use, copy, modify, and distribute this | 
 | * software and its documentation for any purpose, provided that the | 
 | * above copyright notice and the following two paragraphs appear in | 
 | * all copies of this software. | 
 | * | 
 | * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR | 
 | * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES | 
 | * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN | 
 | * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH | 
 | * DAMAGE. | 
 | * | 
 | * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, | 
 | * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | 
 | * FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS | 
 | * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO | 
 | * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. | 
 | * | 
 | * Google Author(s): Behdad Esfahbod | 
 | */ | 
 |  | 
 | #ifndef HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH | 
 | #define HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH | 
 |  | 
 | #include "hb.hh" | 
 |  | 
 |  | 
 | static const unsigned char _indic_syllable_machine_trans_keys[] = { | 
 | 	7u, 7u, 3u, 7u, 4u, 6u, 6u, 6u, | 
 | 	4u, 7u, 4u, 6u, 6u, 6u, 4u, 7u, | 
 | 	4u, 6u, 6u, 6u, 4u, 7u, 4u, 6u, | 
 | 	6u, 6u, 3u, 7u, 5u, 5u, 14u, 14u, | 
 | 	3u, 7u, 5u, 5u, 14u, 14u, 3u, 7u, | 
 | 	5u, 5u, 14u, 14u, 3u, 7u, 5u, 5u, | 
 | 	14u, 14u, 3u, 12u, 3u, 7u, 3u, 12u, | 
 | 	3u, 7u, 3u, 12u, 3u, 7u, 3u, 12u, | 
 | 	3u, 7u, 3u, 12u, 7u, 7u, 3u, 7u, | 
 | 	4u, 6u, 6u, 6u, 4u, 7u, 4u, 6u, | 
 | 	6u, 6u, 4u, 7u, 4u, 6u, 6u, 6u, | 
 | 	4u, 7u, 4u, 6u, 6u, 6u, 3u, 7u, | 
 | 	5u, 5u, 14u, 14u, 3u, 7u, 5u, 5u, | 
 | 	14u, 14u, 3u, 7u, 5u, 5u, 14u, 14u, | 
 | 	3u, 7u, 5u, 5u, 14u, 14u, 3u, 12u, | 
 | 	3u, 7u, 3u, 12u, 3u, 7u, 3u, 12u, | 
 | 	3u, 7u, 3u, 12u, 3u, 7u, 3u, 12u, | 
 | 	7u, 7u, 3u, 7u, 4u, 6u, 6u, 6u, | 
 | 	4u, 7u, 4u, 6u, 6u, 6u, 4u, 7u, | 
 | 	4u, 6u, 6u, 6u, 4u, 7u, 4u, 6u, | 
 | 	6u, 6u, 3u, 7u, 5u, 5u, 14u, 14u, | 
 | 	3u, 7u, 5u, 5u, 14u, 14u, 3u, 7u, | 
 | 	5u, 5u, 14u, 14u, 3u, 7u, 5u, 5u, | 
 | 	14u, 14u, 3u, 12u, 3u, 7u, 3u, 12u, | 
 | 	3u, 7u, 3u, 12u, 3u, 7u, 3u, 12u, | 
 | 	3u, 7u, 7u, 7u, 3u, 7u, 4u, 6u, | 
 | 	6u, 6u, 4u, 7u, 4u, 6u, 6u, 6u, | 
 | 	4u, 7u, 4u, 6u, 6u, 6u, 4u, 7u, | 
 | 	4u, 6u, 6u, 6u, 3u, 7u, 5u, 5u, | 
 | 	14u, 14u, 3u, 7u, 5u, 5u, 14u, 14u, | 
 | 	3u, 7u, 5u, 5u, 14u, 14u, 3u, 7u, | 
 | 	5u, 5u, 14u, 14u, 3u, 12u, 3u, 7u, | 
 | 	3u, 12u, 3u, 7u, 3u, 12u, 3u, 7u, | 
 | 	3u, 12u, 3u, 7u, 3u, 12u, 3u, 12u, | 
 | 	4u, 7u, 7u, 7u, 0u, 17u, 2u, 15u, | 
 | 	2u, 15u, 3u, 15u, 0u, 14u, 2u, 15u, | 
 | 	2u, 15u, 3u, 15u, 0u, 14u, 2u, 15u, | 
 | 	2u, 15u, 3u, 15u, 0u, 14u, 2u, 15u, | 
 | 	2u, 15u, 3u, 15u, 0u, 14u, 2u, 15u, | 
 | 	2u, 15u, 3u, 15u, 4u, 9u, 4u, 9u, | 
 | 	4u, 9u, 9u, 9u, 9u, 9u, 9u, 9u, | 
 | 	4u, 9u, 2u, 9u, 4u, 9u, 2u, 9u, | 
 | 	3u, 9u, 4u, 9u, 2u, 9u, 3u, 9u, | 
 | 	4u, 9u, 2u, 9u, 3u, 9u, 4u, 9u, | 
 | 	2u, 9u, 3u, 9u, 3u, 9u, 2u, 15u, | 
 | 	2u, 15u, 0u, 14u, 0u, 14u, 0u, 14u, | 
 | 	2u, 15u, 2u, 15u, 0u, 14u, 0u, 14u, | 
 | 	0u, 14u, 2u, 15u, 2u, 15u, 0u, 14u, | 
 | 	0u, 14u, 0u, 14u, 2u, 15u, 2u, 15u, | 
 | 	0u, 14u, 0u, 14u, 0u, 14u, 2u, 15u, | 
 | 	2u, 15u, 2u, 15u, 2u, 15u, 3u, 15u, | 
 | 	0u, 14u, 2u, 15u, 2u, 15u, 3u, 15u, | 
 | 	0u, 14u, 2u, 15u, 2u, 15u, 3u, 15u, | 
 | 	0u, 14u, 2u, 15u, 2u, 15u, 3u, 15u, | 
 | 	0u, 14u, 2u, 15u, 2u, 15u, 3u, 15u, | 
 | 	4u, 9u, 4u, 9u, 4u, 9u, 9u, 9u, | 
 | 	9u, 9u, 9u, 9u, 4u, 9u, 2u, 9u, | 
 | 	4u, 9u, 2u, 9u, 3u, 9u, 4u, 9u, | 
 | 	2u, 9u, 3u, 9u, 4u, 9u, 2u, 9u, | 
 | 	3u, 9u, 4u, 9u, 2u, 9u, 3u, 9u, | 
 | 	3u, 9u, 2u, 15u, 2u, 15u, 0u, 14u, | 
 | 	0u, 14u, 0u, 14u, 2u, 15u, 2u, 15u, | 
 | 	0u, 14u, 0u, 14u, 0u, 14u, 2u, 15u, | 
 | 	2u, 15u, 0u, 14u, 0u, 14u, 0u, 14u, | 
 | 	2u, 15u, 2u, 15u, 0u, 14u, 0u, 14u, | 
 | 	0u, 14u, 3u, 7u, 2u, 15u, 2u, 15u, | 
 | 	3u, 15u, 0u, 14u, 2u, 15u, 2u, 15u, | 
 | 	3u, 15u, 0u, 14u, 2u, 15u, 2u, 15u, | 
 | 	3u, 15u, 0u, 14u, 2u, 15u, 2u, 15u, | 
 | 	3u, 15u, 0u, 14u, 2u, 15u, 2u, 15u, | 
 | 	3u, 15u, 4u, 9u, 4u, 9u, 4u, 9u, | 
 | 	9u, 9u, 9u, 9u, 9u, 9u, 4u, 9u, | 
 | 	2u, 9u, 4u, 9u, 2u, 9u, 3u, 9u, | 
 | 	4u, 9u, 2u, 9u, 3u, 9u, 4u, 9u, | 
 | 	2u, 9u, 3u, 9u, 4u, 9u, 2u, 9u, | 
 | 	3u, 9u, 3u, 9u, 2u, 15u, 2u, 15u, | 
 | 	0u, 14u, 0u, 14u, 0u, 14u, 2u, 15u, | 
 | 	2u, 15u, 0u, 14u, 0u, 14u, 0u, 14u, | 
 | 	2u, 15u, 2u, 15u, 0u, 14u, 0u, 14u, | 
 | 	0u, 14u, 2u, 15u, 2u, 15u, 0u, 14u, | 
 | 	0u, 14u, 0u, 14u, 3u, 12u, 2u, 15u, | 
 | 	3u, 7u, 2u, 15u, 2u, 15u, 3u, 15u, | 
 | 	0u, 14u, 2u, 15u, 2u, 15u, 3u, 15u, | 
 | 	0u, 14u, 2u, 15u, 2u, 15u, 3u, 15u, | 
 | 	0u, 14u, 2u, 15u, 2u, 15u, 3u, 15u, | 
 | 	0u, 14u, 2u, 15u, 2u, 15u, 3u, 15u, | 
 | 	4u, 9u, 4u, 9u, 4u, 9u, 9u, 9u, | 
 | 	9u, 9u, 9u, 9u, 4u, 9u, 2u, 9u, | 
 | 	4u, 9u, 2u, 9u, 3u, 9u, 4u, 9u, | 
 | 	2u, 9u, 3u, 9u, 4u, 9u, 2u, 9u, | 
 | 	3u, 9u, 4u, 9u, 2u, 9u, 3u, 9u, | 
 | 	3u, 9u, 2u, 15u, 2u, 15u, 0u, 14u, | 
 | 	0u, 14u, 0u, 14u, 2u, 15u, 2u, 15u, | 
 | 	0u, 14u, 0u, 14u, 0u, 14u, 2u, 15u, | 
 | 	2u, 15u, 0u, 14u, 0u, 14u, 0u, 14u, | 
 | 	2u, 15u, 2u, 15u, 0u, 14u, 0u, 14u, | 
 | 	0u, 14u, 2u, 15u, 0u, 15u, 2u, 15u, | 
 | 	0u, 15u, 3u, 12u, 4u, 9u, 9u, 9u, | 
 | 	9u, 9u, 9u, 9u, 4u, 9u, 0u, 14u, | 
 | 	2u, 9u, 4u, 9u, 4u, 9u, 9u, 9u, | 
 | 	9u, 9u, 9u, 9u, 4u, 9u, 0u, 14u, | 
 | 	0u | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_char_class[] = { | 
 | 	0, 1, 2, 3, 4, 5, 6, 7, | 
 | 	8, 9, 10, 11, 12, 8, 13, 14, | 
 | 	15, 16, 17, 0 | 
 | }; | 
 |  | 
 | static const short _indic_syllable_machine_index_offsets[] = { | 
 | 	0, 1, 6, 9, 10, 14, 17, 18, | 
 | 	22, 25, 26, 30, 33, 34, 39, 40, | 
 | 	41, 46, 47, 48, 53, 54, 55, 60, | 
 | 	61, 62, 72, 77, 87, 92, 102, 107, | 
 | 	117, 122, 132, 133, 138, 141, 142, 146, | 
 | 	149, 150, 154, 157, 158, 162, 165, 166, | 
 | 	171, 172, 173, 178, 179, 180, 185, 186, | 
 | 	187, 192, 193, 194, 204, 209, 219, 224, | 
 | 	234, 239, 249, 254, 264, 265, 270, 273, | 
 | 	274, 278, 281, 282, 286, 289, 290, 294, | 
 | 	297, 298, 303, 304, 305, 310, 311, 312, | 
 | 	317, 318, 319, 324, 325, 326, 336, 341, | 
 | 	351, 356, 366, 371, 381, 386, 387, 392, | 
 | 	395, 396, 400, 403, 404, 408, 411, 412, | 
 | 	416, 419, 420, 425, 426, 427, 432, 433, | 
 | 	434, 439, 440, 441, 446, 447, 448, 458, | 
 | 	463, 473, 478, 488, 493, 503, 508, 518, | 
 | 	528, 532, 533, 551, 565, 579, 592, 607, | 
 | 	621, 635, 648, 663, 677, 691, 704, 719, | 
 | 	733, 747, 760, 775, 789, 803, 816, 822, | 
 | 	828, 834, 835, 836, 837, 843, 851, 857, | 
 | 	865, 872, 878, 886, 893, 899, 907, 914, | 
 | 	920, 928, 935, 942, 956, 970, 985, 1000, | 
 | 	1015, 1029, 1043, 1058, 1073, 1088, 1102, 1116, | 
 | 	1131, 1146, 1161, 1175, 1189, 1204, 1219, 1234, | 
 | 	1248, 1262, 1276, 1290, 1303, 1318, 1332, 1346, | 
 | 	1359, 1374, 1388, 1402, 1415, 1430, 1444, 1458, | 
 | 	1471, 1486, 1500, 1514, 1527, 1533, 1539, 1545, | 
 | 	1546, 1547, 1548, 1554, 1562, 1568, 1576, 1583, | 
 | 	1589, 1597, 1604, 1610, 1618, 1625, 1631, 1639, | 
 | 	1646, 1653, 1667, 1681, 1696, 1711, 1726, 1740, | 
 | 	1754, 1769, 1784, 1799, 1813, 1827, 1842, 1857, | 
 | 	1872, 1886, 1900, 1915, 1930, 1945, 1950, 1964, | 
 | 	1978, 1991, 2006, 2020, 2034, 2047, 2062, 2076, | 
 | 	2090, 2103, 2118, 2132, 2146, 2159, 2174, 2188, | 
 | 	2202, 2215, 2221, 2227, 2233, 2234, 2235, 2236, | 
 | 	2242, 2250, 2256, 2264, 2271, 2277, 2285, 2292, | 
 | 	2298, 2306, 2313, 2319, 2327, 2334, 2341, 2355, | 
 | 	2369, 2384, 2399, 2414, 2428, 2442, 2457, 2472, | 
 | 	2487, 2501, 2515, 2530, 2545, 2560, 2574, 2588, | 
 | 	2603, 2618, 2633, 2643, 2657, 2662, 2676, 2690, | 
 | 	2703, 2718, 2732, 2746, 2759, 2774, 2788, 2802, | 
 | 	2815, 2830, 2844, 2858, 2871, 2886, 2900, 2914, | 
 | 	2927, 2933, 2939, 2945, 2946, 2947, 2948, 2954, | 
 | 	2962, 2968, 2976, 2983, 2989, 2997, 3004, 3010, | 
 | 	3018, 3025, 3031, 3039, 3046, 3053, 3067, 3081, | 
 | 	3096, 3111, 3126, 3140, 3154, 3169, 3184, 3199, | 
 | 	3213, 3227, 3242, 3257, 3272, 3286, 3300, 3315, | 
 | 	3330, 3345, 3359, 3375, 3389, 3405, 3415, 3421, | 
 | 	3422, 3423, 3424, 3430, 3445, 3453, 3459, 3465, | 
 | 	3466, 3467, 3468, 3474, 0 | 
 | }; | 
 |  | 
 | static const short _indic_syllable_machine_indicies[] = { | 
 | 	1, 2, 3, 3, 4, 1, 5, 5, | 
 | 	4, 4, 6, 6, 7, 1, 8, 8, | 
 | 	7, 7, 9, 9, 10, 1, 11, 11, | 
 | 	10, 10, 12, 12, 13, 1, 14, 14, | 
 | 	13, 13, 15, 0, 0, 0, 1, 16, | 
 | 	17, 18, 12, 12, 13, 1, 19, 20, | 
 | 	21, 9, 9, 10, 1, 22, 23, 24, | 
 | 	6, 6, 7, 1, 25, 26, 2, 3, | 
 | 	3, 4, 1, 0, 0, 0, 0, 27, | 
 | 	28, 3, 3, 4, 1, 28, 3, 3, | 
 | 	4, 1, 0, 0, 0, 0, 29, 30, | 
 | 	3, 3, 4, 1, 30, 3, 3, 4, | 
 | 	1, 0, 0, 0, 0, 31, 32, 3, | 
 | 	3, 4, 1, 32, 3, 3, 4, 1, | 
 | 	0, 0, 0, 0, 33, 34, 3, 3, | 
 | 	4, 1, 34, 3, 3, 4, 1, 0, | 
 | 	0, 0, 0, 35, 37, 38, 39, 39, | 
 | 	40, 37, 41, 41, 40, 40, 42, 42, | 
 | 	43, 37, 44, 44, 43, 43, 45, 45, | 
 | 	46, 37, 47, 47, 46, 46, 48, 48, | 
 | 	49, 37, 50, 50, 49, 49, 51, 36, | 
 | 	36, 36, 37, 52, 53, 54, 48, 48, | 
 | 	49, 37, 55, 56, 57, 45, 45, 46, | 
 | 	37, 58, 59, 60, 42, 42, 43, 37, | 
 | 	61, 62, 38, 39, 39, 40, 37, 36, | 
 | 	36, 36, 36, 63, 64, 39, 39, 40, | 
 | 	37, 64, 39, 39, 40, 37, 36, 36, | 
 | 	36, 36, 65, 66, 39, 39, 40, 37, | 
 | 	66, 39, 39, 40, 37, 36, 36, 36, | 
 | 	36, 67, 68, 39, 39, 40, 37, 68, | 
 | 	39, 39, 40, 37, 36, 36, 36, 36, | 
 | 	69, 70, 39, 39, 40, 37, 70, 39, | 
 | 	39, 40, 37, 36, 36, 36, 36, 71, | 
 | 	73, 74, 75, 75, 76, 73, 78, 78, | 
 | 	76, 76, 79, 79, 80, 73, 81, 81, | 
 | 	80, 80, 82, 82, 83, 73, 84, 84, | 
 | 	83, 83, 85, 85, 86, 73, 87, 87, | 
 | 	86, 86, 88, 72, 72, 72, 73, 89, | 
 | 	90, 91, 85, 85, 86, 73, 92, 93, | 
 | 	94, 82, 82, 83, 73, 95, 96, 97, | 
 | 	79, 79, 80, 73, 98, 99, 74, 75, | 
 | 	75, 76, 73, 72, 72, 72, 72, 100, | 
 | 	101, 75, 75, 76, 73, 101, 75, 75, | 
 | 	76, 73, 72, 72, 72, 72, 102, 103, | 
 | 	75, 75, 76, 73, 103, 75, 75, 76, | 
 | 	73, 72, 72, 72, 72, 104, 105, 75, | 
 | 	75, 76, 73, 105, 75, 75, 76, 73, | 
 | 	72, 72, 72, 72, 106, 107, 75, 75, | 
 | 	76, 73, 109, 110, 111, 111, 112, 109, | 
 | 	113, 113, 112, 112, 114, 114, 115, 109, | 
 | 	116, 116, 115, 115, 117, 117, 118, 109, | 
 | 	119, 119, 118, 118, 120, 120, 121, 109, | 
 | 	122, 122, 121, 121, 123, 108, 108, 108, | 
 | 	109, 124, 125, 126, 120, 120, 121, 109, | 
 | 	127, 128, 129, 117, 117, 118, 109, 130, | 
 | 	131, 132, 114, 114, 115, 109, 133, 134, | 
 | 	110, 111, 111, 112, 109, 108, 108, 108, | 
 | 	108, 135, 136, 111, 111, 112, 109, 136, | 
 | 	111, 111, 112, 109, 108, 108, 108, 108, | 
 | 	137, 138, 111, 111, 112, 109, 138, 111, | 
 | 	111, 112, 109, 108, 108, 108, 108, 139, | 
 | 	140, 111, 111, 112, 109, 140, 111, 111, | 
 | 	112, 109, 108, 108, 108, 108, 141, 142, | 
 | 	111, 111, 112, 109, 142, 111, 111, 112, | 
 | 	109, 108, 108, 108, 108, 143, 107, 75, | 
 | 	75, 76, 73, 72, 72, 72, 72, 144, | 
 | 	78, 78, 76, 1, 146, 148, 149, 150, | 
 | 	151, 152, 153, 76, 73, 147, 154, 155, | 
 | 	155, 144, 156, 157, 158, 159, 160, 162, | 
 | 	163, 164, 165, 4, 1, 161, 166, 161, | 
 | 	161, 35, 161, 161, 167, 168, 163, 169, | 
 | 	169, 4, 1, 161, 166, 161, 161, 161, | 
 | 	161, 161, 167, 163, 169, 169, 4, 1, | 
 | 	161, 166, 161, 161, 161, 161, 161, 167, | 
 | 	170, 161, 161, 161, 17, 171, 161, 1, | 
 | 	161, 166, 161, 161, 161, 161, 170, 172, | 
 | 	173, 174, 175, 4, 1, 161, 166, 161, | 
 | 	161, 33, 161, 161, 167, 176, 173, 177, | 
 | 	177, 4, 1, 161, 166, 161, 161, 161, | 
 | 	161, 161, 167, 173, 177, 177, 4, 1, | 
 | 	161, 166, 161, 161, 161, 161, 161, 167, | 
 | 	178, 161, 161, 161, 17, 179, 161, 1, | 
 | 	161, 166, 161, 161, 161, 161, 178, 180, | 
 | 	181, 182, 183, 4, 1, 161, 166, 161, | 
 | 	161, 31, 161, 161, 167, 184, 181, 185, | 
 | 	185, 4, 1, 161, 166, 161, 161, 161, | 
 | 	161, 161, 167, 181, 185, 185, 4, 1, | 
 | 	161, 166, 161, 161, 161, 161, 161, 167, | 
 | 	186, 161, 161, 161, 17, 187, 161, 1, | 
 | 	161, 166, 161, 161, 161, 161, 186, 188, | 
 | 	189, 190, 191, 4, 1, 161, 166, 161, | 
 | 	161, 29, 161, 161, 167, 192, 189, 193, | 
 | 	193, 4, 1, 161, 166, 161, 161, 161, | 
 | 	161, 161, 167, 189, 193, 193, 4, 1, | 
 | 	161, 166, 161, 161, 161, 161, 161, 167, | 
 | 	194, 161, 161, 161, 17, 195, 161, 1, | 
 | 	161, 166, 161, 161, 161, 161, 194, 196, | 
 | 	197, 198, 199, 4, 1, 161, 166, 161, | 
 | 	161, 27, 161, 161, 167, 200, 197, 201, | 
 | 	201, 4, 1, 161, 166, 161, 161, 161, | 
 | 	161, 161, 167, 197, 201, 201, 4, 1, | 
 | 	161, 166, 161, 161, 161, 161, 161, 167, | 
 | 	17, 202, 161, 1, 161, 166, 203, 203, | 
 | 	161, 1, 161, 166, 204, 161, 161, 205, | 
 | 	161, 166, 166, 206, 207, 204, 161, 161, | 
 | 	161, 161, 166, 17, 161, 203, 203, 161, | 
 | 	1, 161, 166, 203, 202, 161, 1, 161, | 
 | 	166, 208, 26, 209, 210, 7, 1, 161, | 
 | 	166, 26, 209, 210, 7, 1, 161, 166, | 
 | 	209, 209, 7, 1, 161, 166, 211, 23, | 
 | 	212, 213, 10, 1, 161, 166, 23, 212, | 
 | 	213, 10, 1, 161, 166, 212, 212, 10, | 
 | 	1, 161, 166, 214, 20, 215, 216, 13, | 
 | 	1, 161, 166, 20, 215, 216, 13, 1, | 
 | 	161, 166, 215, 215, 13, 1, 161, 166, | 
 | 	217, 17, 203, 218, 161, 1, 161, 166, | 
 | 	17, 203, 218, 161, 1, 161, 166, 197, | 
 | 	201, 201, 4, 1, 161, 166, 196, 197, | 
 | 	201, 201, 4, 1, 161, 166, 161, 161, | 
 | 	161, 161, 161, 167, 196, 197, 198, 201, | 
 | 	4, 1, 161, 166, 161, 161, 27, 161, | 
 | 	161, 167, 194, 161, 219, 161, 203, 203, | 
 | 	161, 1, 161, 166, 161, 161, 161, 161, | 
 | 	194, 194, 161, 161, 161, 203, 203, 161, | 
 | 	1, 161, 166, 161, 161, 161, 161, 194, | 
 | 	194, 161, 161, 161, 203, 195, 161, 1, | 
 | 	161, 166, 161, 161, 161, 161, 194, 188, | 
 | 	189, 193, 193, 4, 1, 161, 166, 161, | 
 | 	161, 161, 161, 161, 167, 188, 189, 190, | 
 | 	193, 4, 1, 161, 166, 161, 161, 29, | 
 | 	161, 161, 167, 186, 161, 220, 161, 203, | 
 | 	203, 161, 1, 161, 166, 161, 161, 161, | 
 | 	161, 186, 186, 161, 161, 161, 203, 203, | 
 | 	161, 1, 161, 166, 161, 161, 161, 161, | 
 | 	186, 186, 161, 161, 161, 203, 187, 161, | 
 | 	1, 161, 166, 161, 161, 161, 161, 186, | 
 | 	180, 181, 185, 185, 4, 1, 161, 166, | 
 | 	161, 161, 161, 161, 161, 167, 180, 181, | 
 | 	182, 185, 4, 1, 161, 166, 161, 161, | 
 | 	31, 161, 161, 167, 178, 161, 221, 161, | 
 | 	203, 203, 161, 1, 161, 166, 161, 161, | 
 | 	161, 161, 178, 178, 161, 161, 161, 203, | 
 | 	203, 161, 1, 161, 166, 161, 161, 161, | 
 | 	161, 178, 178, 161, 161, 161, 203, 179, | 
 | 	161, 1, 161, 166, 161, 161, 161, 161, | 
 | 	178, 172, 173, 177, 177, 4, 1, 161, | 
 | 	166, 161, 161, 161, 161, 161, 167, 172, | 
 | 	173, 174, 177, 4, 1, 161, 166, 161, | 
 | 	161, 33, 161, 161, 167, 170, 161, 222, | 
 | 	161, 203, 203, 161, 1, 161, 166, 161, | 
 | 	161, 161, 161, 170, 170, 161, 161, 161, | 
 | 	203, 203, 161, 1, 161, 166, 161, 161, | 
 | 	161, 161, 170, 170, 161, 161, 161, 203, | 
 | 	171, 161, 1, 161, 166, 161, 161, 161, | 
 | 	161, 170, 162, 163, 169, 169, 4, 1, | 
 | 	161, 166, 161, 161, 161, 161, 161, 167, | 
 | 	162, 163, 164, 169, 4, 1, 161, 166, | 
 | 	161, 161, 35, 161, 161, 167, 224, 225, | 
 | 	226, 227, 40, 37, 223, 228, 223, 223, | 
 | 	71, 223, 223, 229, 230, 225, 231, 227, | 
 | 	40, 37, 223, 228, 223, 223, 223, 223, | 
 | 	223, 229, 225, 231, 227, 40, 37, 223, | 
 | 	228, 223, 223, 223, 223, 223, 229, 232, | 
 | 	223, 223, 223, 53, 233, 223, 37, 223, | 
 | 	228, 223, 223, 223, 223, 232, 234, 235, | 
 | 	236, 237, 40, 37, 223, 228, 223, 223, | 
 | 	69, 223, 223, 229, 238, 235, 239, 239, | 
 | 	40, 37, 223, 228, 223, 223, 223, 223, | 
 | 	223, 229, 235, 239, 239, 40, 37, 223, | 
 | 	228, 223, 223, 223, 223, 223, 229, 240, | 
 | 	223, 223, 223, 53, 241, 223, 37, 223, | 
 | 	228, 223, 223, 223, 223, 240, 242, 243, | 
 | 	244, 245, 40, 37, 223, 228, 223, 223, | 
 | 	67, 223, 223, 229, 246, 243, 247, 247, | 
 | 	40, 37, 223, 228, 223, 223, 223, 223, | 
 | 	223, 229, 243, 247, 247, 40, 37, 223, | 
 | 	228, 223, 223, 223, 223, 223, 229, 248, | 
 | 	223, 223, 223, 53, 249, 223, 37, 223, | 
 | 	228, 223, 223, 223, 223, 248, 250, 251, | 
 | 	252, 253, 40, 37, 223, 228, 223, 223, | 
 | 	65, 223, 223, 229, 254, 251, 255, 255, | 
 | 	40, 37, 223, 228, 223, 223, 223, 223, | 
 | 	223, 229, 251, 255, 255, 40, 37, 223, | 
 | 	228, 223, 223, 223, 223, 223, 229, 256, | 
 | 	223, 223, 223, 53, 257, 223, 37, 223, | 
 | 	228, 223, 223, 223, 223, 256, 258, 259, | 
 | 	260, 261, 40, 37, 223, 228, 223, 223, | 
 | 	63, 223, 223, 229, 262, 259, 263, 263, | 
 | 	40, 37, 223, 228, 223, 223, 223, 223, | 
 | 	223, 229, 259, 263, 263, 40, 37, 223, | 
 | 	228, 223, 223, 223, 223, 223, 229, 53, | 
 | 	264, 223, 37, 223, 228, 265, 265, 223, | 
 | 	37, 223, 228, 266, 223, 223, 267, 223, | 
 | 	228, 228, 268, 269, 266, 223, 223, 223, | 
 | 	223, 228, 53, 223, 265, 265, 223, 37, | 
 | 	223, 228, 265, 264, 223, 37, 223, 228, | 
 | 	270, 62, 271, 272, 43, 37, 223, 228, | 
 | 	62, 271, 272, 43, 37, 223, 228, 271, | 
 | 	271, 43, 37, 223, 228, 273, 59, 274, | 
 | 	275, 46, 37, 223, 228, 59, 274, 275, | 
 | 	46, 37, 223, 228, 274, 274, 46, 37, | 
 | 	223, 228, 276, 56, 277, 278, 49, 37, | 
 | 	223, 228, 56, 277, 278, 49, 37, 223, | 
 | 	228, 277, 277, 49, 37, 223, 228, 279, | 
 | 	53, 265, 280, 223, 37, 223, 228, 53, | 
 | 	265, 280, 223, 37, 223, 228, 259, 263, | 
 | 	263, 40, 37, 223, 228, 258, 259, 263, | 
 | 	263, 40, 37, 223, 228, 223, 223, 223, | 
 | 	223, 223, 229, 258, 259, 260, 263, 40, | 
 | 	37, 223, 228, 223, 223, 63, 223, 223, | 
 | 	229, 256, 223, 281, 223, 265, 265, 223, | 
 | 	37, 223, 228, 223, 223, 223, 223, 256, | 
 | 	256, 223, 223, 223, 265, 265, 223, 37, | 
 | 	223, 228, 223, 223, 223, 223, 256, 256, | 
 | 	223, 223, 223, 265, 257, 223, 37, 223, | 
 | 	228, 223, 223, 223, 223, 256, 250, 251, | 
 | 	255, 255, 40, 37, 223, 228, 223, 223, | 
 | 	223, 223, 223, 229, 250, 251, 252, 255, | 
 | 	40, 37, 223, 228, 223, 223, 65, 223, | 
 | 	223, 229, 248, 223, 282, 223, 265, 265, | 
 | 	223, 37, 223, 228, 223, 223, 223, 223, | 
 | 	248, 248, 223, 223, 223, 265, 265, 223, | 
 | 	37, 223, 228, 223, 223, 223, 223, 248, | 
 | 	248, 223, 223, 223, 265, 249, 223, 37, | 
 | 	223, 228, 223, 223, 223, 223, 248, 242, | 
 | 	243, 247, 247, 40, 37, 223, 228, 223, | 
 | 	223, 223, 223, 223, 229, 242, 243, 244, | 
 | 	247, 40, 37, 223, 228, 223, 223, 67, | 
 | 	223, 223, 229, 240, 223, 283, 223, 265, | 
 | 	265, 223, 37, 223, 228, 223, 223, 223, | 
 | 	223, 240, 240, 223, 223, 223, 265, 265, | 
 | 	223, 37, 223, 228, 223, 223, 223, 223, | 
 | 	240, 240, 223, 223, 223, 265, 241, 223, | 
 | 	37, 223, 228, 223, 223, 223, 223, 240, | 
 | 	234, 235, 239, 239, 40, 37, 223, 228, | 
 | 	223, 223, 223, 223, 223, 229, 234, 235, | 
 | 	236, 239, 40, 37, 223, 228, 223, 223, | 
 | 	69, 223, 223, 229, 232, 223, 284, 223, | 
 | 	265, 265, 223, 37, 223, 228, 223, 223, | 
 | 	223, 223, 232, 232, 223, 223, 223, 265, | 
 | 	265, 223, 37, 223, 228, 223, 223, 223, | 
 | 	223, 232, 232, 223, 223, 223, 265, 233, | 
 | 	223, 37, 223, 228, 223, 223, 223, 223, | 
 | 	232, 70, 39, 39, 40, 37, 224, 225, | 
 | 	231, 227, 40, 37, 223, 228, 223, 223, | 
 | 	223, 223, 223, 229, 286, 151, 287, 287, | 
 | 	76, 73, 285, 154, 285, 285, 285, 285, | 
 | 	285, 158, 151, 287, 287, 76, 73, 285, | 
 | 	154, 285, 285, 285, 285, 285, 158, 288, | 
 | 	285, 285, 285, 90, 289, 285, 73, 285, | 
 | 	154, 285, 285, 285, 285, 288, 290, 291, | 
 | 	292, 293, 76, 73, 285, 154, 285, 285, | 
 | 	106, 285, 285, 158, 294, 291, 295, 295, | 
 | 	76, 73, 285, 154, 285, 285, 285, 285, | 
 | 	285, 158, 291, 295, 295, 76, 73, 285, | 
 | 	154, 285, 285, 285, 285, 285, 158, 296, | 
 | 	285, 285, 285, 90, 297, 285, 73, 285, | 
 | 	154, 285, 285, 285, 285, 296, 298, 299, | 
 | 	300, 301, 76, 73, 285, 154, 285, 285, | 
 | 	104, 285, 285, 158, 302, 299, 303, 303, | 
 | 	76, 73, 285, 154, 285, 285, 285, 285, | 
 | 	285, 158, 299, 303, 303, 76, 73, 285, | 
 | 	154, 285, 285, 285, 285, 285, 158, 304, | 
 | 	285, 285, 285, 90, 305, 285, 73, 285, | 
 | 	154, 285, 285, 285, 285, 304, 306, 307, | 
 | 	308, 309, 76, 73, 285, 154, 285, 285, | 
 | 	102, 285, 285, 158, 310, 307, 311, 311, | 
 | 	76, 73, 285, 154, 285, 285, 285, 285, | 
 | 	285, 158, 307, 311, 311, 76, 73, 285, | 
 | 	154, 285, 285, 285, 285, 285, 158, 312, | 
 | 	285, 285, 285, 90, 313, 285, 73, 285, | 
 | 	154, 285, 285, 285, 285, 312, 314, 315, | 
 | 	316, 317, 76, 73, 285, 154, 285, 285, | 
 | 	100, 285, 285, 158, 318, 315, 319, 319, | 
 | 	76, 73, 285, 154, 285, 285, 285, 285, | 
 | 	285, 158, 315, 319, 319, 76, 73, 285, | 
 | 	154, 285, 285, 285, 285, 285, 158, 90, | 
 | 	320, 285, 73, 285, 154, 321, 321, 285, | 
 | 	73, 285, 154, 322, 285, 285, 323, 285, | 
 | 	154, 154, 324, 325, 322, 285, 285, 285, | 
 | 	285, 154, 90, 285, 321, 321, 285, 73, | 
 | 	285, 154, 321, 320, 285, 73, 285, 154, | 
 | 	326, 99, 327, 328, 80, 73, 285, 154, | 
 | 	99, 327, 328, 80, 73, 285, 154, 327, | 
 | 	327, 80, 73, 285, 154, 329, 96, 330, | 
 | 	331, 83, 73, 285, 154, 96, 330, 331, | 
 | 	83, 73, 285, 154, 330, 330, 83, 73, | 
 | 	285, 154, 332, 93, 333, 334, 86, 73, | 
 | 	285, 154, 93, 333, 334, 86, 73, 285, | 
 | 	154, 333, 333, 86, 73, 285, 154, 335, | 
 | 	90, 321, 336, 285, 73, 285, 154, 90, | 
 | 	321, 336, 285, 73, 285, 154, 315, 319, | 
 | 	319, 76, 73, 285, 154, 314, 315, 319, | 
 | 	319, 76, 73, 285, 154, 285, 285, 285, | 
 | 	285, 285, 158, 314, 315, 316, 319, 76, | 
 | 	73, 285, 154, 285, 285, 100, 285, 285, | 
 | 	158, 312, 285, 337, 285, 321, 321, 285, | 
 | 	73, 285, 154, 285, 285, 285, 285, 312, | 
 | 	312, 285, 285, 285, 321, 321, 285, 73, | 
 | 	285, 154, 285, 285, 285, 285, 312, 312, | 
 | 	285, 285, 285, 321, 313, 285, 73, 285, | 
 | 	154, 285, 285, 285, 285, 312, 306, 307, | 
 | 	311, 311, 76, 73, 285, 154, 285, 285, | 
 | 	285, 285, 285, 158, 306, 307, 308, 311, | 
 | 	76, 73, 285, 154, 285, 285, 102, 285, | 
 | 	285, 158, 304, 285, 338, 285, 321, 321, | 
 | 	285, 73, 285, 154, 285, 285, 285, 285, | 
 | 	304, 304, 285, 285, 285, 321, 321, 285, | 
 | 	73, 285, 154, 285, 285, 285, 285, 304, | 
 | 	304, 285, 285, 285, 321, 305, 285, 73, | 
 | 	285, 154, 285, 285, 285, 285, 304, 298, | 
 | 	299, 303, 303, 76, 73, 285, 154, 285, | 
 | 	285, 285, 285, 285, 158, 298, 299, 300, | 
 | 	303, 76, 73, 285, 154, 285, 285, 104, | 
 | 	285, 285, 158, 296, 285, 339, 285, 321, | 
 | 	321, 285, 73, 285, 154, 285, 285, 285, | 
 | 	285, 296, 296, 285, 285, 285, 321, 321, | 
 | 	285, 73, 285, 154, 285, 285, 285, 285, | 
 | 	296, 296, 285, 285, 285, 321, 297, 285, | 
 | 	73, 285, 154, 285, 285, 285, 285, 296, | 
 | 	290, 291, 295, 295, 76, 73, 285, 154, | 
 | 	285, 285, 285, 285, 285, 158, 290, 291, | 
 | 	292, 295, 76, 73, 285, 154, 285, 285, | 
 | 	106, 285, 285, 158, 288, 285, 340, 285, | 
 | 	321, 321, 285, 73, 285, 154, 285, 285, | 
 | 	285, 285, 288, 288, 285, 285, 285, 321, | 
 | 	321, 285, 73, 285, 154, 285, 285, 285, | 
 | 	285, 288, 288, 285, 285, 285, 321, 289, | 
 | 	285, 73, 285, 154, 285, 285, 285, 285, | 
 | 	288, 107, 75, 75, 76, 73, 341, 341, | 
 | 	341, 341, 144, 150, 151, 287, 287, 76, | 
 | 	73, 285, 154, 285, 285, 285, 285, 285, | 
 | 	158, 107, 75, 75, 76, 73, 343, 344, | 
 | 	345, 346, 112, 109, 342, 347, 342, 342, | 
 | 	143, 342, 342, 348, 349, 344, 346, 346, | 
 | 	112, 109, 342, 347, 342, 342, 342, 342, | 
 | 	342, 348, 344, 346, 346, 112, 109, 342, | 
 | 	347, 342, 342, 342, 342, 342, 348, 350, | 
 | 	342, 342, 342, 125, 351, 342, 109, 342, | 
 | 	347, 342, 342, 342, 342, 350, 352, 353, | 
 | 	354, 355, 112, 109, 342, 347, 342, 342, | 
 | 	141, 342, 342, 348, 356, 353, 357, 357, | 
 | 	112, 109, 342, 347, 342, 342, 342, 342, | 
 | 	342, 348, 353, 357, 357, 112, 109, 342, | 
 | 	347, 342, 342, 342, 342, 342, 348, 358, | 
 | 	342, 342, 342, 125, 359, 342, 109, 342, | 
 | 	347, 342, 342, 342, 342, 358, 360, 361, | 
 | 	362, 363, 112, 109, 342, 347, 342, 342, | 
 | 	139, 342, 342, 348, 364, 361, 365, 365, | 
 | 	112, 109, 342, 347, 342, 342, 342, 342, | 
 | 	342, 348, 361, 365, 365, 112, 109, 342, | 
 | 	347, 342, 342, 342, 342, 342, 348, 366, | 
 | 	342, 342, 342, 125, 367, 342, 109, 342, | 
 | 	347, 342, 342, 342, 342, 366, 368, 369, | 
 | 	370, 371, 112, 109, 342, 347, 342, 342, | 
 | 	137, 342, 342, 348, 372, 369, 373, 373, | 
 | 	112, 109, 342, 347, 342, 342, 342, 342, | 
 | 	342, 348, 369, 373, 373, 112, 109, 342, | 
 | 	347, 342, 342, 342, 342, 342, 348, 374, | 
 | 	342, 342, 342, 125, 375, 342, 109, 342, | 
 | 	347, 342, 342, 342, 342, 374, 376, 377, | 
 | 	378, 379, 112, 109, 342, 347, 342, 342, | 
 | 	135, 342, 342, 348, 380, 377, 381, 381, | 
 | 	112, 109, 342, 347, 342, 342, 342, 342, | 
 | 	342, 348, 377, 381, 381, 112, 109, 342, | 
 | 	347, 342, 342, 342, 342, 342, 348, 125, | 
 | 	382, 342, 109, 342, 347, 383, 383, 342, | 
 | 	109, 342, 347, 384, 342, 342, 385, 342, | 
 | 	347, 347, 386, 387, 384, 342, 342, 342, | 
 | 	342, 347, 125, 342, 383, 383, 342, 109, | 
 | 	342, 347, 383, 382, 342, 109, 342, 347, | 
 | 	388, 134, 389, 390, 115, 109, 342, 347, | 
 | 	134, 389, 390, 115, 109, 342, 347, 389, | 
 | 	389, 115, 109, 342, 347, 391, 131, 392, | 
 | 	393, 118, 109, 342, 347, 131, 392, 393, | 
 | 	118, 109, 342, 347, 392, 392, 118, 109, | 
 | 	342, 347, 394, 128, 395, 396, 121, 109, | 
 | 	342, 347, 128, 395, 396, 121, 109, 342, | 
 | 	347, 395, 395, 121, 109, 342, 347, 397, | 
 | 	125, 383, 398, 342, 109, 342, 347, 125, | 
 | 	383, 398, 342, 109, 342, 347, 377, 381, | 
 | 	381, 112, 109, 342, 347, 376, 377, 381, | 
 | 	381, 112, 109, 342, 347, 342, 342, 342, | 
 | 	342, 342, 348, 376, 377, 378, 381, 112, | 
 | 	109, 342, 347, 342, 342, 135, 342, 342, | 
 | 	348, 374, 342, 399, 342, 383, 383, 342, | 
 | 	109, 342, 347, 342, 342, 342, 342, 374, | 
 | 	374, 342, 342, 342, 383, 383, 342, 109, | 
 | 	342, 347, 342, 342, 342, 342, 374, 374, | 
 | 	342, 342, 342, 383, 375, 342, 109, 342, | 
 | 	347, 342, 342, 342, 342, 374, 368, 369, | 
 | 	373, 373, 112, 109, 342, 347, 342, 342, | 
 | 	342, 342, 342, 348, 368, 369, 370, 373, | 
 | 	112, 109, 342, 347, 342, 342, 137, 342, | 
 | 	342, 348, 366, 342, 400, 342, 383, 383, | 
 | 	342, 109, 342, 347, 342, 342, 342, 342, | 
 | 	366, 366, 342, 342, 342, 383, 383, 342, | 
 | 	109, 342, 347, 342, 342, 342, 342, 366, | 
 | 	366, 342, 342, 342, 383, 367, 342, 109, | 
 | 	342, 347, 342, 342, 342, 342, 366, 360, | 
 | 	361, 365, 365, 112, 109, 342, 347, 342, | 
 | 	342, 342, 342, 342, 348, 360, 361, 362, | 
 | 	365, 112, 109, 342, 347, 342, 342, 139, | 
 | 	342, 342, 348, 358, 342, 401, 342, 383, | 
 | 	383, 342, 109, 342, 347, 342, 342, 342, | 
 | 	342, 358, 358, 342, 342, 342, 383, 383, | 
 | 	342, 109, 342, 347, 342, 342, 342, 342, | 
 | 	358, 358, 342, 342, 342, 383, 359, 342, | 
 | 	109, 342, 347, 342, 342, 342, 342, 358, | 
 | 	352, 353, 357, 357, 112, 109, 342, 347, | 
 | 	342, 342, 342, 342, 342, 348, 352, 353, | 
 | 	354, 357, 112, 109, 342, 347, 342, 342, | 
 | 	141, 342, 342, 348, 350, 342, 402, 342, | 
 | 	383, 383, 342, 109, 342, 347, 342, 342, | 
 | 	342, 342, 350, 350, 342, 342, 342, 383, | 
 | 	383, 342, 109, 342, 347, 342, 342, 342, | 
 | 	342, 350, 350, 342, 342, 342, 383, 351, | 
 | 	342, 109, 342, 347, 342, 342, 342, 342, | 
 | 	350, 343, 344, 346, 346, 112, 109, 342, | 
 | 	347, 342, 342, 342, 342, 342, 348, 148, | 
 | 	149, 150, 151, 403, 287, 76, 73, 285, | 
 | 	154, 155, 155, 144, 285, 148, 158, 162, | 
 | 	404, 164, 165, 4, 1, 161, 166, 161, | 
 | 	161, 35, 161, 161, 167, 170, 149, 150, | 
 | 	151, 405, 406, 76, 407, 161, 408, 161, | 
 | 	155, 144, 161, 170, 158, 107, 409, 409, | 
 | 	76, 407, 161, 166, 161, 161, 144, 410, | 
 | 	161, 161, 411, 161, 408, 408, 412, 207, | 
 | 	410, 161, 161, 161, 161, 408, 170, 161, | 
 | 	222, 107, 409, 409, 76, 407, 161, 166, | 
 | 	161, 161, 161, 161, 170, 414, 413, 415, | 
 | 	415, 413, 146, 413, 416, 415, 415, 413, | 
 | 	146, 413, 416, 417, 413, 413, 418, 413, | 
 | 	416, 416, 419, 420, 417, 413, 413, 413, | 
 | 	413, 416, 148, 341, 341, 341, 341, 341, | 
 | 	341, 341, 341, 341, 155, 341, 341, 341, | 
 | 	148, 0 | 
 | }; | 
 |  | 
 | static const short _indic_syllable_machine_index_defaults[] = { | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 36, 36, 36, 36, 36, 36, | 
 | 	36, 36, 36, 36, 36, 36, 36, 36, | 
 | 	36, 36, 36, 36, 36, 36, 36, 36, | 
 | 	36, 36, 36, 36, 36, 36, 36, 36, | 
 | 	36, 36, 36, 36, 72, 72, 77, 77, | 
 | 	72, 72, 72, 72, 72, 72, 72, 72, | 
 | 	72, 72, 72, 72, 72, 72, 72, 72, | 
 | 	72, 72, 72, 72, 72, 72, 72, 72, | 
 | 	72, 72, 72, 72, 72, 108, 108, 108, | 
 | 	108, 108, 108, 108, 108, 108, 108, 108, | 
 | 	108, 108, 108, 108, 108, 108, 108, 108, | 
 | 	108, 108, 108, 108, 108, 108, 108, 108, | 
 | 	108, 108, 108, 108, 108, 108, 108, 72, | 
 | 	0, 145, 147, 161, 161, 161, 161, 161, | 
 | 	161, 161, 161, 161, 161, 161, 161, 161, | 
 | 	161, 161, 161, 161, 161, 161, 161, 161, | 
 | 	161, 161, 161, 161, 161, 161, 161, 161, | 
 | 	161, 161, 161, 161, 161, 161, 161, 161, | 
 | 	161, 161, 161, 161, 161, 161, 161, 161, | 
 | 	161, 161, 161, 161, 161, 161, 161, 161, | 
 | 	161, 161, 161, 161, 161, 161, 161, 161, | 
 | 	161, 223, 223, 223, 223, 223, 223, 223, | 
 | 	223, 223, 223, 223, 223, 223, 223, 223, | 
 | 	223, 223, 223, 223, 223, 223, 223, 223, | 
 | 	223, 223, 223, 223, 223, 223, 223, 223, | 
 | 	223, 223, 223, 223, 223, 223, 223, 223, | 
 | 	223, 223, 223, 223, 223, 223, 223, 223, | 
 | 	223, 223, 223, 223, 223, 223, 223, 223, | 
 | 	223, 223, 223, 223, 223, 223, 223, 285, | 
 | 	285, 285, 285, 285, 285, 285, 285, 285, | 
 | 	285, 285, 285, 285, 285, 285, 285, 285, | 
 | 	285, 285, 285, 285, 285, 285, 285, 285, | 
 | 	285, 285, 285, 285, 285, 285, 285, 285, | 
 | 	285, 285, 285, 285, 285, 285, 285, 285, | 
 | 	285, 285, 285, 285, 285, 285, 285, 285, | 
 | 	285, 285, 285, 285, 285, 285, 285, 285, | 
 | 	285, 285, 341, 285, 341, 342, 342, 342, | 
 | 	342, 342, 342, 342, 342, 342, 342, 342, | 
 | 	342, 342, 342, 342, 342, 342, 342, 342, | 
 | 	342, 342, 342, 342, 342, 342, 342, 342, | 
 | 	342, 342, 342, 342, 342, 342, 342, 342, | 
 | 	342, 342, 342, 342, 342, 342, 342, 342, | 
 | 	342, 342, 342, 342, 342, 342, 342, 342, | 
 | 	342, 342, 342, 342, 342, 342, 342, 342, | 
 | 	342, 342, 285, 161, 161, 161, 161, 161, | 
 | 	161, 161, 161, 161, 413, 413, 413, 413, | 
 | 	413, 413, 413, 341, 0 | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_trans_cond_spaces[] = { | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, 0 | 
 | }; | 
 |  | 
 | static const short _indic_syllable_machine_cond_targs[] = { | 
 | 	138, 160, 166, 2, 167, 3, 5, 170, | 
 | 	6, 8, 173, 9, 11, 176, 12, 14, | 
 | 	15, 159, 17, 18, 175, 20, 21, 172, | 
 | 	23, 24, 169, 179, 183, 184, 188, 189, | 
 | 	193, 194, 198, 199, 138, 222, 228, 36, | 
 | 	229, 37, 39, 232, 40, 42, 235, 43, | 
 | 	45, 238, 46, 48, 49, 221, 51, 52, | 
 | 	237, 54, 55, 234, 57, 58, 231, 241, | 
 | 	245, 246, 250, 251, 255, 256, 260, 262, | 
 | 	138, 283, 289, 70, 290, 138, 71, 73, | 
 | 	293, 74, 76, 296, 77, 79, 299, 80, | 
 | 	82, 83, 282, 85, 86, 298, 88, 89, | 
 | 	295, 91, 92, 292, 302, 306, 307, 311, | 
 | 	312, 316, 317, 321, 138, 346, 352, 103, | 
 | 	353, 104, 106, 356, 107, 109, 359, 110, | 
 | 	112, 362, 113, 115, 116, 345, 118, 119, | 
 | 	361, 121, 122, 358, 124, 125, 355, 365, | 
 | 	369, 370, 374, 375, 379, 380, 384, 385, | 
 | 	323, 138, 398, 138, 139, 201, 263, 265, | 
 | 	322, 324, 285, 325, 386, 387, 301, 396, | 
 | 	403, 138, 140, 142, 33, 200, 162, 178, | 
 | 	141, 32, 143, 196, 144, 146, 31, 195, | 
 | 	145, 30, 147, 191, 148, 150, 29, 190, | 
 | 	149, 28, 151, 186, 152, 154, 27, 185, | 
 | 	153, 26, 155, 181, 156, 158, 25, 180, | 
 | 	157, 1, 165, 0, 161, 164, 163, 138, | 
 | 	168, 4, 22, 171, 7, 19, 174, 10, | 
 | 	16, 177, 13, 182, 187, 192, 197, 138, | 
 | 	202, 204, 67, 261, 224, 240, 203, 66, | 
 | 	205, 258, 206, 208, 65, 257, 207, 64, | 
 | 	209, 253, 210, 212, 63, 252, 211, 62, | 
 | 	213, 248, 214, 216, 61, 247, 215, 60, | 
 | 	217, 243, 218, 220, 59, 242, 219, 35, | 
 | 	227, 34, 223, 226, 225, 138, 230, 38, | 
 | 	56, 233, 41, 53, 236, 44, 50, 239, | 
 | 	47, 244, 249, 254, 259, 138, 264, 100, | 
 | 	266, 319, 267, 269, 99, 318, 268, 98, | 
 | 	270, 314, 271, 273, 97, 313, 272, 96, | 
 | 	274, 309, 275, 277, 95, 308, 276, 94, | 
 | 	278, 304, 279, 281, 93, 303, 280, 69, | 
 | 	288, 68, 284, 287, 286, 138, 291, 72, | 
 | 	90, 294, 75, 87, 297, 78, 84, 300, | 
 | 	81, 305, 310, 315, 320, 138, 138, 326, | 
 | 	328, 134, 133, 348, 364, 327, 329, 382, | 
 | 	330, 332, 132, 381, 331, 131, 333, 377, | 
 | 	334, 336, 130, 376, 335, 129, 337, 372, | 
 | 	338, 340, 128, 371, 339, 127, 341, 367, | 
 | 	342, 344, 126, 366, 343, 102, 351, 101, | 
 | 	347, 350, 349, 138, 354, 105, 123, 357, | 
 | 	108, 120, 360, 111, 117, 363, 114, 368, | 
 | 	373, 378, 383, 135, 388, 389, 395, 390, | 
 | 	392, 136, 391, 394, 393, 138, 397, 137, | 
 | 	400, 399, 402, 401, 138, 0 | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_cond_actions[] = { | 
 | 	1, 0, 2, 0, 2, 0, 0, 2, | 
 | 	0, 0, 2, 0, 0, 2, 0, 0, | 
 | 	0, 2, 0, 0, 2, 0, 0, 2, | 
 | 	0, 0, 2, 2, 2, 2, 2, 2, | 
 | 	2, 2, 2, 2, 3, 0, 2, 0, | 
 | 	2, 0, 0, 2, 0, 0, 2, 0, | 
 | 	0, 2, 0, 0, 0, 2, 0, 0, | 
 | 	2, 0, 0, 2, 0, 0, 2, 2, | 
 | 	2, 2, 2, 2, 2, 2, 2, 2, | 
 | 	4, 0, 2, 0, 2, 5, 0, 0, | 
 | 	2, 0, 0, 2, 0, 0, 2, 0, | 
 | 	0, 0, 2, 0, 0, 2, 0, 0, | 
 | 	2, 0, 0, 2, 6, 2, 6, 2, | 
 | 	6, 2, 6, 2, 7, 0, 2, 0, | 
 | 	2, 0, 0, 2, 0, 0, 2, 0, | 
 | 	0, 2, 0, 0, 0, 2, 0, 0, | 
 | 	2, 0, 0, 2, 0, 0, 2, 2, | 
 | 	2, 2, 2, 2, 2, 2, 2, 2, | 
 | 	6, 8, 0, 11, 2, 2, 6, 0, | 
 | 	12, 12, 0, 2, 6, 2, 6, 2, | 
 | 	0, 13, 2, 0, 0, 2, 0, 2, | 
 | 	2, 0, 2, 2, 2, 0, 0, 2, | 
 | 	2, 0, 2, 2, 2, 0, 0, 2, | 
 | 	2, 0, 2, 2, 2, 0, 0, 2, | 
 | 	2, 0, 2, 2, 2, 0, 0, 2, | 
 | 	2, 0, 2, 0, 0, 0, 0, 14, | 
 | 	2, 0, 0, 2, 0, 0, 2, 0, | 
 | 	0, 2, 0, 2, 2, 2, 2, 15, | 
 | 	2, 0, 0, 2, 0, 2, 2, 0, | 
 | 	2, 2, 2, 0, 0, 2, 2, 0, | 
 | 	2, 2, 2, 0, 0, 2, 2, 0, | 
 | 	2, 2, 2, 0, 0, 2, 2, 0, | 
 | 	2, 2, 2, 0, 0, 2, 2, 0, | 
 | 	2, 0, 0, 0, 0, 16, 2, 0, | 
 | 	0, 2, 0, 0, 2, 0, 0, 2, | 
 | 	0, 2, 2, 2, 2, 17, 6, 0, | 
 | 	6, 2, 6, 0, 0, 6, 6, 0, | 
 | 	6, 2, 6, 0, 0, 6, 6, 0, | 
 | 	6, 2, 6, 0, 0, 6, 6, 0, | 
 | 	6, 2, 6, 0, 0, 6, 6, 0, | 
 | 	2, 0, 0, 0, 0, 18, 2, 0, | 
 | 	0, 2, 0, 0, 2, 0, 0, 2, | 
 | 	0, 2, 2, 2, 2, 19, 20, 2, | 
 | 	0, 0, 0, 0, 2, 2, 2, 2, | 
 | 	2, 0, 0, 2, 2, 0, 2, 2, | 
 | 	2, 0, 0, 2, 2, 0, 2, 2, | 
 | 	2, 0, 0, 2, 2, 0, 2, 2, | 
 | 	2, 0, 0, 2, 2, 0, 2, 0, | 
 | 	0, 0, 0, 21, 2, 0, 0, 2, | 
 | 	0, 0, 2, 0, 0, 2, 0, 2, | 
 | 	2, 2, 2, 0, 0, 22, 22, 0, | 
 | 	0, 0, 0, 0, 0, 23, 2, 0, | 
 | 	0, 0, 0, 0, 24, 0 | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_to_state_actions[] = { | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 9, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0 | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_from_state_actions[] = { | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 10, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0 | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_eof_cond_spaces[] = { | 
 | 	-1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, -1, -1, -1, -1, -1, -1, -1, | 
 | 	-1, 0 | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_eof_cond_key_offs[] = { | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0 | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_eof_cond_key_lens[] = { | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0 | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_eof_cond_keys[] = { | 
 | 	0 | 
 | }; | 
 |  | 
 | static const short _indic_syllable_machine_eof_trans[] = { | 
 | 	1, 1, 1, 1, 1, 1, 1, 1, | 
 | 	1, 1, 1, 1, 1, 1, 1, 1, | 
 | 	1, 1, 1, 1, 1, 1, 1, 1, | 
 | 	1, 1, 1, 1, 1, 1, 1, 1, | 
 | 	1, 1, 37, 37, 37, 37, 37, 37, | 
 | 	37, 37, 37, 37, 37, 37, 37, 37, | 
 | 	37, 37, 37, 37, 37, 37, 37, 37, | 
 | 	37, 37, 37, 37, 37, 37, 37, 37, | 
 | 	37, 37, 37, 37, 73, 73, 78, 78, | 
 | 	73, 73, 73, 73, 73, 73, 73, 73, | 
 | 	73, 73, 73, 73, 73, 73, 73, 73, | 
 | 	73, 73, 73, 73, 73, 73, 73, 73, | 
 | 	73, 73, 73, 73, 73, 109, 109, 109, | 
 | 	109, 109, 109, 109, 109, 109, 109, 109, | 
 | 	109, 109, 109, 109, 109, 109, 109, 109, | 
 | 	109, 109, 109, 109, 109, 109, 109, 109, | 
 | 	109, 109, 109, 109, 109, 109, 109, 73, | 
 | 	1, 146, 0, 162, 162, 162, 162, 162, | 
 | 	162, 162, 162, 162, 162, 162, 162, 162, | 
 | 	162, 162, 162, 162, 162, 162, 162, 162, | 
 | 	162, 162, 162, 162, 162, 162, 162, 162, | 
 | 	162, 162, 162, 162, 162, 162, 162, 162, | 
 | 	162, 162, 162, 162, 162, 162, 162, 162, | 
 | 	162, 162, 162, 162, 162, 162, 162, 162, | 
 | 	162, 162, 162, 162, 162, 162, 162, 162, | 
 | 	162, 224, 224, 224, 224, 224, 224, 224, | 
 | 	224, 224, 224, 224, 224, 224, 224, 224, | 
 | 	224, 224, 224, 224, 224, 224, 224, 224, | 
 | 	224, 224, 224, 224, 224, 224, 224, 224, | 
 | 	224, 224, 224, 224, 224, 224, 224, 224, | 
 | 	224, 224, 224, 224, 224, 224, 224, 224, | 
 | 	224, 224, 224, 224, 224, 224, 224, 224, | 
 | 	224, 224, 224, 224, 224, 224, 224, 286, | 
 | 	286, 286, 286, 286, 286, 286, 286, 286, | 
 | 	286, 286, 286, 286, 286, 286, 286, 286, | 
 | 	286, 286, 286, 286, 286, 286, 286, 286, | 
 | 	286, 286, 286, 286, 286, 286, 286, 286, | 
 | 	286, 286, 286, 286, 286, 286, 286, 286, | 
 | 	286, 286, 286, 286, 286, 286, 286, 286, | 
 | 	286, 286, 286, 286, 286, 286, 286, 286, | 
 | 	286, 286, 342, 286, 342, 343, 343, 343, | 
 | 	343, 343, 343, 343, 343, 343, 343, 343, | 
 | 	343, 343, 343, 343, 343, 343, 343, 343, | 
 | 	343, 343, 343, 343, 343, 343, 343, 343, | 
 | 	343, 343, 343, 343, 343, 343, 343, 343, | 
 | 	343, 343, 343, 343, 343, 343, 343, 343, | 
 | 	343, 343, 343, 343, 343, 343, 343, 343, | 
 | 	343, 343, 343, 343, 343, 343, 343, 343, | 
 | 	343, 343, 286, 162, 162, 162, 162, 162, | 
 | 	162, 162, 162, 162, 414, 414, 414, 414, | 
 | 	414, 414, 414, 342, 0 | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_nfa_targs[] = { | 
 | 	0, 0 | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_nfa_offsets[] = { | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0, 0, 0, 0, | 
 | 	0, 0, 0, 0, 0 | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_nfa_push_actions[] = { | 
 | 	0, 0 | 
 | }; | 
 |  | 
 | static const char _indic_syllable_machine_nfa_pop_trans[] = { | 
 | 	0, 0 | 
 | }; | 
 |  | 
 | static const int indic_syllable_machine_start = 138; | 
 | static const int indic_syllable_machine_first_final = 138; | 
 | static const int indic_syllable_machine_error = -1; | 
 |  | 
 | static const int indic_syllable_machine_en_main = 138; | 
 |  | 
 |  | 
 |  | 
 |  | 
 |  | 
 | #define found_syllable(syllable_type) \ | 
 | HB_STMT_START { \ | 
 | 	if (0) fprintf (stderr, "syllable %d..%d %s\n", ts, te, #syllable_type); \ | 
 | 	for (unsigned int i = ts; i < te; i++) \ | 
 | 	info[i].syllable() = (syllable_serial << 4) | syllable_type; \ | 
 | 	syllable_serial++; \ | 
 | 	if (unlikely (syllable_serial == 16)) syllable_serial=1; \ | 
 | } HB_STMT_END | 
 |  | 
 | static void | 
 | find_syllables (hb_buffer_t *buffer) | 
 | { | 
 | 	unsigned int p, pe, eof, ts, te, act; | 
 | 	int cs; | 
 | 	hb_glyph_info_t *info = buffer->info; | 
 | 	 | 
 | 	{ | 
 | 		cs = (int)indic_syllable_machine_start; | 
 | 		ts = 0; | 
 | 		te = 0; | 
 | 		act = 0; | 
 | 	} | 
 | 	 | 
 | 	 | 
 | 	p=0; | 
 | 	pe = eof = buffer->len; | 
 | 	 | 
 | 	unsigned int syllable_serial=1; | 
 | 	 | 
 | 	{ | 
 | 		int _cpc; | 
 | 		int _klen;const char * _cekeys;unsigned int _trans = 0;const unsigned char * _keys;const short * _inds;	 { | 
 | 			if ( p == pe ) | 
 | 			goto _test_eof; | 
 | 			_resume:  { | 
 | 				switch ( _indic_syllable_machine_from_state_actions[cs] ) { | 
 | 					case 10:  { | 
 | 						{ | 
 | 							#line 1 "NONE" | 
 | 							{ts = p;}} | 
 | 						 | 
 | 						break; } | 
 | 				} | 
 | 				 | 
 | 				_keys = ( _indic_syllable_machine_trans_keys + ((cs<<1))); | 
 | 				_inds = ( _indic_syllable_machine_indicies + (_indic_syllable_machine_index_offsets[cs])); | 
 | 				 | 
 | 				if ( (info[p].indic_category()) <= 19 && (info[p].indic_category()) >= 1 ) | 
 | 				{ | 
 | 					int _ic = (int)_indic_syllable_machine_char_class[(int)(info[p].indic_category()) - 1]; | 
 | 					if ( _ic <= (int)(*( _keys+1)) && _ic >= (int)(*( _keys)) ) | 
 | 					_trans = (unsigned int)(*( _inds + (int)( _ic - (int)(*( _keys)) ) ));  | 
 | 					else | 
 | 					_trans = (unsigned int)_indic_syllable_machine_index_defaults[cs]; | 
 | 				} | 
 | 				else { | 
 | 					_trans = (unsigned int)_indic_syllable_machine_index_defaults[cs]; | 
 | 				} | 
 | 				 | 
 | 				goto _match_cond; | 
 | 			} | 
 | 			_match_cond:  { | 
 | 				cs = (int)_indic_syllable_machine_cond_targs[_trans]; | 
 | 				 | 
 | 				if ( _indic_syllable_machine_cond_actions[_trans] == 0 ) | 
 | 				goto _again; | 
 | 				 | 
 | 				switch ( _indic_syllable_machine_cond_actions[_trans] ) { | 
 | 					case 2:  { | 
 | 						{ | 
 | 							#line 1 "NONE" | 
 | 							{te = p+1;}} | 
 | 						 | 
 | 						break; } | 
 | 					case 14:  { | 
 | 						{ | 
 | 							#line 84 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{te = p+1;{ | 
 | 									#line 84 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (consonant_syllable); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 16:  { | 
 | 						{ | 
 | 							#line 85 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{te = p+1;{ | 
 | 									#line 85 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (vowel_syllable); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 21:  { | 
 | 						{ | 
 | 							#line 86 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{te = p+1;{ | 
 | 									#line 86 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (standalone_cluster); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 24:  { | 
 | 						{ | 
 | 							#line 87 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{te = p+1;{ | 
 | 									#line 87 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (symbol_cluster); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 18:  { | 
 | 						{ | 
 | 							#line 88 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{te = p+1;{ | 
 | 									#line 88 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (broken_cluster); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 11:  { | 
 | 						{ | 
 | 							#line 89 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{te = p+1;{ | 
 | 									#line 89 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (non_indic_cluster); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 13:  { | 
 | 						{ | 
 | 							#line 84 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{te = p;p = p - 1;{ | 
 | 									#line 84 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (consonant_syllable); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 15:  { | 
 | 						{ | 
 | 							#line 85 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{te = p;p = p - 1;{ | 
 | 									#line 85 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (vowel_syllable); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 20:  { | 
 | 						{ | 
 | 							#line 86 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{te = p;p = p - 1;{ | 
 | 									#line 86 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (standalone_cluster); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 23:  { | 
 | 						{ | 
 | 							#line 87 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{te = p;p = p - 1;{ | 
 | 									#line 87 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (symbol_cluster); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 17:  { | 
 | 						{ | 
 | 							#line 88 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{te = p;p = p - 1;{ | 
 | 									#line 88 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (broken_cluster); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 19:  { | 
 | 						{ | 
 | 							#line 89 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{te = p;p = p - 1;{ | 
 | 									#line 89 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (non_indic_cluster); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 1:  { | 
 | 						{ | 
 | 							#line 84 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{p = ((te))-1; | 
 | 								{ | 
 | 									#line 84 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (consonant_syllable); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 3:  { | 
 | 						{ | 
 | 							#line 85 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{p = ((te))-1; | 
 | 								{ | 
 | 									#line 85 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (vowel_syllable); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 7:  { | 
 | 						{ | 
 | 							#line 86 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{p = ((te))-1; | 
 | 								{ | 
 | 									#line 86 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (standalone_cluster); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 8:  { | 
 | 						{ | 
 | 							#line 87 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{p = ((te))-1; | 
 | 								{ | 
 | 									#line 87 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (symbol_cluster); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 4:  { | 
 | 						{ | 
 | 							#line 88 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{p = ((te))-1; | 
 | 								{ | 
 | 									#line 88 "hb-ot-shape-complex-indic-machine.rl" | 
 | 									found_syllable (broken_cluster); }}} | 
 | 						 | 
 | 						break; } | 
 | 					case 5:  { | 
 | 						{ | 
 | 							#line 1 "NONE" | 
 | 							{switch( act ) { | 
 | 									case 1:  { | 
 | 										p = ((te))-1; | 
 | 										{ | 
 | 											#line 84 "hb-ot-shape-complex-indic-machine.rl" | 
 | 											found_syllable (consonant_syllable); } break; } | 
 | 									case 5:  { | 
 | 										p = ((te))-1; | 
 | 										{ | 
 | 											#line 88 "hb-ot-shape-complex-indic-machine.rl" | 
 | 											found_syllable (broken_cluster); } break; } | 
 | 									case 6:  { | 
 | 										p = ((te))-1; | 
 | 										{ | 
 | 											#line 89 "hb-ot-shape-complex-indic-machine.rl" | 
 | 											found_syllable (non_indic_cluster); } break; } | 
 | 								}} | 
 | 						} | 
 | 						 | 
 | 						break; } | 
 | 					case 22:  { | 
 | 						{ | 
 | 							#line 1 "NONE" | 
 | 							{te = p+1;}} | 
 | 						{ | 
 | 							#line 84 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{act = 1;}} | 
 | 						 | 
 | 						break; } | 
 | 					case 6:  { | 
 | 						{ | 
 | 							#line 1 "NONE" | 
 | 							{te = p+1;}} | 
 | 						{ | 
 | 							#line 88 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{act = 5;}} | 
 | 						 | 
 | 						break; } | 
 | 					case 12:  { | 
 | 						{ | 
 | 							#line 1 "NONE" | 
 | 							{te = p+1;}} | 
 | 						{ | 
 | 							#line 89 "hb-ot-shape-complex-indic-machine.rl" | 
 | 							{act = 6;}} | 
 | 						 | 
 | 						break; } | 
 | 				} | 
 | 				 | 
 | 				 | 
 | 			} | 
 | 			_again:  { | 
 | 				switch ( _indic_syllable_machine_to_state_actions[cs] ) { | 
 | 					case 9:  { | 
 | 						{ | 
 | 							#line 1 "NONE" | 
 | 							{ts = 0;}} | 
 | 						 | 
 | 						break; } | 
 | 				} | 
 | 				 | 
 | 				p += 1; | 
 | 				if ( p != pe ) | 
 | 				goto _resume; | 
 | 			} | 
 | 			_test_eof:  { {} | 
 | 				if ( p == eof ) | 
 | 				{ | 
 | 					if ( _indic_syllable_machine_eof_cond_spaces[cs] != -1 ) { | 
 | 						_cekeys = ( _indic_syllable_machine_eof_cond_keys + (_indic_syllable_machine_eof_cond_key_offs[cs])); | 
 | 						_klen = (int)_indic_syllable_machine_eof_cond_key_lens[cs]; | 
 | 						_cpc = 0; | 
 | 						{ | 
 | 							const char *_lower = _cekeys; | 
 | 							const char *_upper = _cekeys + _klen - 1; | 
 | 							const char *_mid; | 
 | 							while ( 1 ) { | 
 | 								if ( _upper < _lower ) | 
 | 								break; | 
 | 								 | 
 | 								_mid = _lower + ((_upper-_lower) >> 1); | 
 | 								if ( _cpc < (int)(*( _mid)) ) | 
 | 								_upper = _mid - 1; | 
 | 								else if ( _cpc > (int)(*( _mid)) ) | 
 | 								_lower = _mid + 1; | 
 | 								else { | 
 | 									goto _ok; | 
 | 								} | 
 | 							} | 
 | 							cs = -1; | 
 | 							goto _out; | 
 | 						} | 
 | 						_ok: {} | 
 | 					} | 
 | 					if ( _indic_syllable_machine_eof_trans[cs] > 0 ) { | 
 | 						_trans = (unsigned int)_indic_syllable_machine_eof_trans[cs] - 1; | 
 | 						goto _match_cond; | 
 | 					} | 
 | 				} | 
 | 				 | 
 | 			} | 
 | 			_out:  { {} | 
 | 			} | 
 | 		} | 
 | 	} | 
 | 	 | 
 | } | 
 |  | 
 | #endif /* HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH */ |