[indic] Do NOT allow matra after Halant,ZWJ
authorBehdad Esfahbod <behdad@behdad.org>
Mon, 10 Sep 2018 15:38:19 +0000 (17:38 +0200)
committerBehdad Esfahbod <behdad@behdad.org>
Mon, 10 Sep 2018 15:38:19 +0000 (17:38 +0200)
Fixes https://github.com/harfbuzz/harfbuzz/issues/556

Devanagari regresses 12 tests, and Gujarati 2.  See:

  https://github.com/harfbuzz/harfbuzz/issues/556#issuecomment-419957472

New numbers:

BENGALI: 353725 out of 354188 tests passed. 463 failed (0.130722%)
DEVANAGARI: 707299 out of 707394 tests passed. 95 failed (0.0134296%)
GUJARATI: 366353 out of 366457 tests passed. 104 failed (0.0283799%)
GURMUKHI: 60729 out of 60747 tests passed. 18 failed (0.0296311%)
KANNADA: 951300 out of 951913 tests passed. 613 failed (0.0643966%)
MALAYALAM: 1048136 out of 1048334 tests passed. 198 failed (0.0188871%)
ORIYA: 42327 out of 42329 tests passed. 2 failed (0.00472489%)
SINHALA: 271596 out of 271847 tests passed. 251 failed (0.0923313%)
TAMIL: 1091754 out of 1091754 tests passed. 0 failed (0%)
TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)

src/hb-ot-shape-complex-indic-machine.hh
src/hb-ot-shape-complex-indic-machine.rl

index f67a525..351d597 100644 (file)
 
 #line 36 "hb-ot-shape-complex-indic-machine.hh"
 static const unsigned char _indic_syllable_machine_trans_keys[] = {
-       8u, 8u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 
+       8u, 8u, 4u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 
        5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 4u, 8u, 6u, 6u, 16u, 16u, 
        4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 
-       16u, 16u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 
-       4u, 13u, 4u, 8u, 4u, 13u, 8u, 8u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 
-       5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 
-       4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 
-       16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 
-       4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 8u, 8u, 5u, 8u, 
-       5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 
-       5u, 8u, 5u, 7u, 7u, 7u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 
-       16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 
-       4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 
-       8u, 8u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 
-       5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 4u, 8u, 6u, 6u, 16u, 16u, 
-       4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 
-       16u, 16u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 
-       4u, 13u, 4u, 8u, 4u, 13u, 4u, 13u, 5u, 8u, 5u, 8u, 5u, 7u, 5u, 8u, 
-       5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 
-       8u, 8u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 
-       6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 8u, 8u, 1u, 19u, 3u, 17u, 
-       3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 
+       16u, 16u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 
+       4u, 8u, 4u, 13u, 8u, 8u, 4u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 
+       7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 4u, 8u, 
+       6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 
+       4u, 8u, 6u, 6u, 16u, 16u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 
+       4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 8u, 8u, 4u, 8u, 5u, 7u, 7u, 7u, 
+       5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 
+       7u, 7u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 
+       6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 13u, 4u, 8u, 4u, 13u, 
+       4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 8u, 8u, 4u, 8u, 5u, 7u, 
+       7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 5u, 7u, 7u, 7u, 5u, 8u, 
+       5u, 7u, 7u, 7u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 
+       4u, 8u, 6u, 6u, 16u, 16u, 4u, 8u, 6u, 6u, 16u, 16u, 4u, 13u, 4u, 8u, 
+       4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 8u, 4u, 13u, 4u, 13u, 
+       5u, 8u, 8u, 8u, 1u, 19u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 
        3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 
-       3u, 17u, 4u, 17u, 5u, 10u, 5u, 10u, 5u, 10u, 10u, 10u, 10u, 10u, 10u, 10u, 
-       5u, 10u, 3u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 
+       3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 5u, 10u, 5u, 10u, 
+       5u, 10u, 10u, 10u, 10u, 10u, 10u, 10u, 5u, 10u, 3u, 10u, 5u, 10u, 3u, 10u, 
+       4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 
+       3u, 10u, 4u, 10u, 4u, 10u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 
+       3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 
+       1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 
+       3u, 17u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 
+       1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 
+       1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 5u, 10u, 5u, 10u, 5u, 10u, 10u, 10u, 
+       10u, 10u, 10u, 10u, 5u, 10u, 3u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 
        3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 
-       3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 
-       1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 
-       1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 
-       3u, 17u, 3u, 17u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 
+       4u, 10u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 
+       1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 
+       3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 4u, 8u, 3u, 17u, 3u, 17u, 
        4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 
-       4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 5u, 10u, 5u, 10u, 5u, 10u, 
-       10u, 10u, 10u, 10u, 10u, 10u, 5u, 10u, 3u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 
-       3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 
-       5u, 10u, 3u, 10u, 4u, 10u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 
-       1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 
-       3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 
-       1u, 16u, 1u, 16u, 1u, 16u, 4u, 8u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 
-       3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 
-       3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 5u, 10u, 
-       5u, 10u, 5u, 10u, 10u, 10u, 10u, 10u, 10u, 10u, 5u, 10u, 3u, 10u, 3u, 10u, 
-       4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 
-       3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 3u, 17u, 3u, 17u, 1u, 16u, 
+       4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 
+       4u, 17u, 5u, 10u, 5u, 10u, 5u, 10u, 10u, 10u, 10u, 10u, 10u, 10u, 5u, 10u, 
+       3u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 
+       3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 4u, 10u, 3u, 17u, 3u, 17u, 
        1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 
-       1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 
-       3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 4u, 13u, 3u, 17u, 4u, 8u, 
-       3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 
-       3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 
-       3u, 17u, 3u, 17u, 4u, 17u, 5u, 10u, 5u, 10u, 5u, 10u, 10u, 10u, 10u, 10u, 
-       10u, 10u, 5u, 10u, 3u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 
+       3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 
+       1u, 16u, 1u, 16u, 4u, 13u, 3u, 17u, 4u, 8u, 3u, 17u, 3u, 17u, 4u, 17u, 
+       1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 
+       1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 1u, 16u, 3u, 17u, 3u, 17u, 4u, 17u, 
+       5u, 10u, 5u, 10u, 5u, 10u, 10u, 10u, 10u, 10u, 10u, 10u, 5u, 10u, 3u, 10u, 
        5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 
-       4u, 10u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 
-       3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 
-       1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 
+       4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 4u, 10u, 3u, 17u, 3u, 17u, 1u, 16u, 
+       1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 
+       3u, 17u, 1u, 16u, 1u, 16u, 1u, 16u, 3u, 17u, 3u, 17u, 1u, 16u, 1u, 16u, 
        1u, 16u, 3u, 17u, 1u, 17u, 3u, 17u, 1u, 17u, 4u, 13u, 5u, 10u, 10u, 10u, 
-       10u, 10u, 10u, 10u, 5u, 10u, 1u, 16u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 
-       4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 3u, 10u, 4u, 10u, 5u, 10u, 
-       3u, 10u, 5u, 10u, 5u, 10u, 10u, 10u, 10u, 10u, 10u, 10u, 5u, 10u, 1u, 16u, 
-       0
+       10u, 10u, 10u, 10u, 5u, 10u, 1u, 16u, 3u, 10u, 5u, 10u, 5u, 10u, 10u, 10u, 
+       10u, 10u, 10u, 10u, 5u, 10u, 1u, 16u, 0
 };
 
 static const char _indic_syllable_machine_key_spans[] = {
-       1, 4, 3, 1, 4, 3, 1, 4, 
+       1, 5, 3, 1, 4, 3, 1, 4, 
        3, 1, 4, 3, 1, 5, 1, 1, 
        5, 1, 1, 5, 1, 1, 5, 1, 
-       1, 5, 10, 5, 10, 5, 10, 5, 
-       10, 5, 10, 1, 4, 3, 1, 4, 
-       3, 1, 4, 3, 1, 4, 3, 1, 
-       5, 1, 1, 5, 1, 1, 5, 1, 
-       1, 5, 1, 1, 5, 10, 5, 10, 
-       5, 10, 5, 10, 5, 10, 1, 4, 
-       3, 1, 4, 3, 1, 4, 3, 1, 
-       4, 3, 1, 5, 1, 1, 5, 1, 
+       1, 10, 5, 10, 5, 10, 5, 10, 
+       5, 10, 1, 5, 3, 1, 4, 3, 
+       1, 4, 3, 1, 4, 3, 1, 5, 
+       1, 1, 5, 1, 1, 5, 1, 1, 
+       5, 1, 1, 10, 5, 10, 5, 10, 
+       5, 10, 5, 10, 1, 5, 3, 1, 
+       4, 3, 1, 4, 3, 1, 4, 3, 
        1, 5, 1, 1, 5, 1, 1, 5, 
-       10, 5, 10, 5, 10, 5, 10, 5, 
+       1, 1, 5, 1, 1, 10, 5, 10, 
+       5, 10, 5, 10, 5, 1, 5, 3, 
        1, 4, 3, 1, 4, 3, 1, 4, 
-       3, 1, 4, 3, 1, 5, 1, 1, 
-       5, 1, 1, 5, 1, 1, 5, 1, 
-       1, 5, 10, 5, 10, 5, 10, 5, 
-       10, 5, 10, 10, 4, 4, 3, 4, 
-       3, 1, 4, 3, 1, 4, 3, 1, 
-       1, 5, 1, 1, 5, 1, 1, 5, 
-       1, 1, 5, 1, 1, 1, 19, 15, 
+       3, 1, 5, 1, 1, 5, 1, 1, 
+       5, 1, 1, 5, 1, 1, 10, 5, 
+       10, 5, 10, 5, 10, 5, 10, 10, 
+       4, 1, 19, 15, 15, 14, 16, 15, 
        15, 14, 16, 15, 15, 14, 16, 15, 
-       15, 14, 16, 15, 15, 14, 16, 15, 
-       15, 14, 6, 6, 6, 1, 1, 1, 
-       6, 8, 8, 7, 6, 8, 7, 6, 
+       15, 14, 16, 15, 15, 14, 6, 6, 
+       6, 1, 1, 1, 6, 8, 6, 8, 
+       7, 6, 8, 7, 6, 8, 7, 6, 
+       8, 7, 7, 15, 15, 16, 16, 16, 
+       15, 15, 16, 16, 16, 15, 15, 16, 
+       16, 16, 15, 15, 16, 16, 16, 15, 
+       15, 15, 15, 14, 16, 15, 15, 14, 
+       16, 15, 15, 14, 16, 15, 15, 14, 
+       16, 15, 15, 14, 6, 6, 6, 1, 
+       1, 1, 6, 8, 6, 8, 7, 6, 
        8, 7, 6, 8, 7, 6, 8, 7, 
-       15, 15, 16, 16, 16, 16, 15, 15, 
-       16, 16, 16, 16, 15, 15, 16, 16, 
-       16, 16, 15, 15, 16, 16, 16, 16, 
-       15, 15, 15, 15, 14, 16, 15, 15, 
+       7, 15, 15, 16, 16, 16, 15, 15, 
+       16, 16, 16, 15, 15, 16, 16, 16, 
+       15, 15, 16, 16, 16, 5, 15, 15, 
        14, 16, 15, 15, 14, 16, 15, 15, 
-       14, 16, 15, 15, 14, 6, 6, 6, 
-       1, 1, 1, 6, 8, 8, 7, 6, 
-       8, 7, 6, 8, 7, 6, 8, 7, 
-       6, 8, 7, 15, 15, 16, 16, 16, 
-       16, 15, 15, 16, 16, 16, 16, 15, 
-       15, 16, 16, 16, 16, 15, 15, 16, 
-       16, 16, 16, 5, 15, 15, 14, 16, 
-       15, 15, 14, 16, 15, 15, 14, 16, 
-       15, 15, 14, 16, 15, 15, 14, 6, 
-       6, 6, 1, 1, 1, 6, 8, 8, 
-       7, 6, 8, 7, 6, 8, 7, 6, 
-       8, 7, 6, 8, 7, 15, 15, 16, 
+       14, 16, 15, 15, 14, 16, 15, 15, 
+       14, 6, 6, 6, 1, 1, 1, 6, 
+       8, 6, 8, 7, 6, 8, 7, 6, 
+       8, 7, 6, 8, 7, 7, 15, 15, 
        16, 16, 16, 15, 15, 16, 16, 16, 
-       16, 15, 15, 16, 16, 16, 16, 15, 
-       15, 16, 16, 16, 16, 10, 15, 5, 
-       15, 15, 14, 16, 15, 15, 14, 16, 
-       15, 15, 14, 16, 15, 15, 14, 16, 
-       15, 15, 14, 6, 6, 6, 1, 1, 
-       1, 6, 8, 8, 7, 6, 8, 7, 
+       15, 15, 16, 16, 16, 15, 15, 16, 
+       16, 16, 10, 15, 5, 15, 15, 14, 
+       16, 15, 15, 14, 16, 15, 15, 14, 
+       16, 15, 15, 14, 16, 15, 15, 14, 
+       6, 6, 6, 1, 1, 1, 6, 8, 
        6, 8, 7, 6, 8, 7, 6, 8, 
-       7, 15, 15, 16, 16, 16, 16, 15
-       15, 16, 16, 16, 16, 15, 15, 16
-       16, 16, 16, 15, 15, 16, 16, 16, 
+       7, 6, 8, 7, 7, 15, 15, 16
+       16, 16, 15, 15, 16, 16, 16, 15
+       15, 16, 16, 16, 15, 15, 16, 16, 
        16, 15, 17, 15, 17, 10, 6, 1, 
-       1, 1, 6, 16, 8, 7, 6, 8, 
-       7, 6, 8, 7, 6, 8, 7, 6, 
-       8, 6, 6, 1, 1, 1, 6, 16
+       1, 1, 6, 16, 8, 6, 6, 1, 
+       1, 1, 6, 16
 };
 
 static const short _indic_syllable_machine_index_offsets[] = {
-       0, 2, 7, 11, 13, 18, 22, 24, 
-       29, 33, 35, 40, 44, 46, 52, 54, 
-       56, 62, 64, 66, 72, 74, 76, 82, 
-       84, 86, 92, 103, 109, 120, 126, 137, 
-       143, 154, 160, 171, 173, 178, 182, 184, 
-       189, 193, 195, 200, 204, 206, 211, 215, 
-       217, 223, 225, 227, 233, 235, 237, 243, 
-       245, 247, 253, 255, 257, 263, 274, 280, 
-       291, 297, 308, 314, 325, 331, 342, 344, 
-       349, 353, 355, 360, 364, 366, 371, 375, 
-       377, 382, 386, 388, 394, 396, 398, 404, 
-       406, 408, 414, 416, 418, 424, 426, 428, 
-       434, 445, 451, 462, 468, 479, 485, 496, 
-       502, 504, 509, 513, 515, 520, 524, 526, 
-       531, 535, 537, 542, 546, 548, 554, 556, 
-       558, 564, 566, 568, 574, 576, 578, 584, 
-       586, 588, 594, 605, 611, 622, 628, 639, 
-       645, 656, 662, 673, 684, 689, 694, 698, 
-       703, 707, 709, 714, 718, 720, 725, 729, 
-       731, 733, 739, 741, 743, 749, 751, 753, 
-       759, 761, 763, 769, 771, 773, 775, 795, 
-       811, 827, 842, 859, 875, 891, 906, 923, 
-       939, 955, 970, 987, 1003, 1019, 1034, 1051, 
-       1067, 1083, 1098, 1105, 1112, 1119, 1121, 1123, 
-       1125, 1132, 1141, 1150, 1158, 1165, 1174, 1182, 
-       1189, 1198, 1206, 1213, 1222, 1230, 1237, 1246, 
-       1254, 1270, 1286, 1303, 1320, 1337, 1354, 1370, 
-       1386, 1403, 1420, 1437, 1454, 1470, 1486, 1503, 
-       1520, 1537, 1554, 1570, 1586, 1603, 1620, 1637, 
-       1654, 1670, 1686, 1702, 1718, 1733, 1750, 1766, 
-       1782, 1797, 1814, 1830, 1846, 1861, 1878, 1894, 
-       1910, 1925, 1942, 1958, 1974, 1989, 1996, 2003, 
-       2010, 2012, 2014, 2016, 2023, 2032, 2041, 2049, 
-       2056, 2065, 2073, 2080, 2089, 2097, 2104, 2113, 
-       2121, 2128, 2137, 2145, 2161, 2177, 2194, 2211, 
-       2228, 2245, 2261, 2277, 2294, 2311, 2328, 2345, 
-       2361, 2377, 2394, 2411, 2428, 2445, 2461, 2477, 
-       2494, 2511, 2528, 2545, 2551, 2567, 2583, 2598, 
-       2615, 2631, 2647, 2662, 2679, 2695, 2711, 2726, 
-       2743, 2759, 2775, 2790, 2807, 2823, 2839, 2854, 
-       2861, 2868, 2875, 2877, 2879, 2881, 2888, 2897, 
-       2906, 2914, 2921, 2930, 2938, 2945, 2954, 2962, 
-       2969, 2978, 2986, 2993, 3002, 3010, 3026, 3042, 
-       3059, 3076, 3093, 3110, 3126, 3142, 3159, 3176, 
-       3193, 3210, 3226, 3242, 3259, 3276, 3293, 3310, 
-       3326, 3342, 3359, 3376, 3393, 3410, 3421, 3437, 
-       3443, 3459, 3475, 3490, 3507, 3523, 3539, 3554, 
-       3571, 3587, 3603, 3618, 3635, 3651, 3667, 3682, 
-       3699, 3715, 3731, 3746, 3753, 3760, 3767, 3769, 
-       3771, 3773, 3780, 3789, 3798, 3806, 3813, 3822, 
-       3830, 3837, 3846, 3854, 3861, 3870, 3878, 3885, 
-       3894, 3902, 3918, 3934, 3951, 3968, 3985, 4002, 
-       4018, 4034, 4051, 4068, 4085, 4102, 4118, 4134, 
-       4151, 4168, 4185, 4202, 4218, 4234, 4251, 4268, 
-       4285, 4302, 4318, 4336, 4352, 4370, 4381, 4388, 
-       4390, 4392, 4394, 4401, 4418, 4427, 4435, 4442, 
-       4451, 4459, 4466, 4475, 4483, 4490, 4499, 4507, 
-       4514, 4523, 4530, 4537, 4539, 4541, 4543, 4550
+       0, 2, 8, 12, 14, 19, 23, 25, 
+       30, 34, 36, 41, 45, 47, 53, 55, 
+       57, 63, 65, 67, 73, 75, 77, 83, 
+       85, 87, 98, 104, 115, 121, 132, 138, 
+       149, 155, 166, 168, 174, 178, 180, 185, 
+       189, 191, 196, 200, 202, 207, 211, 213, 
+       219, 221, 223, 229, 231, 233, 239, 241, 
+       243, 249, 251, 253, 264, 270, 281, 287, 
+       298, 304, 315, 321, 332, 334, 340, 344, 
+       346, 351, 355, 357, 362, 366, 368, 373, 
+       377, 379, 385, 387, 389, 395, 397, 399, 
+       405, 407, 409, 415, 417, 419, 430, 436, 
+       447, 453, 464, 470, 481, 487, 489, 495, 
+       499, 501, 506, 510, 512, 517, 521, 523, 
+       528, 532, 534, 540, 542, 544, 550, 552, 
+       554, 560, 562, 564, 570, 572, 574, 585, 
+       591, 602, 608, 619, 625, 636, 642, 653, 
+       664, 669, 671, 691, 707, 723, 738, 755, 
+       771, 787, 802, 819, 835, 851, 866, 883, 
+       899, 915, 930, 947, 963, 979, 994, 1001, 
+       1008, 1015, 1017, 1019, 1021, 1028, 1037, 1044, 
+       1053, 1061, 1068, 1077, 1085, 1092, 1101, 1109, 
+       1116, 1125, 1133, 1141, 1157, 1173, 1190, 1207, 
+       1224, 1240, 1256, 1273, 1290, 1307, 1323, 1339, 
+       1356, 1373, 1390, 1406, 1422, 1439, 1456, 1473, 
+       1489, 1505, 1521, 1537, 1552, 1569, 1585, 1601, 
+       1616, 1633, 1649, 1665, 1680, 1697, 1713, 1729, 
+       1744, 1761, 1777, 1793, 1808, 1815, 1822, 1829, 
+       1831, 1833, 1835, 1842, 1851, 1858, 1867, 1875, 
+       1882, 1891, 1899, 1906, 1915, 1923, 1930, 1939, 
+       1947, 1955, 1971, 1987, 2004, 2021, 2038, 2054, 
+       2070, 2087, 2104, 2121, 2137, 2153, 2170, 2187, 
+       2204, 2220, 2236, 2253, 2270, 2287, 2293, 2309, 
+       2325, 2340, 2357, 2373, 2389, 2404, 2421, 2437, 
+       2453, 2468, 2485, 2501, 2517, 2532, 2549, 2565, 
+       2581, 2596, 2603, 2610, 2617, 2619, 2621, 2623, 
+       2630, 2639, 2646, 2655, 2663, 2670, 2679, 2687, 
+       2694, 2703, 2711, 2718, 2727, 2735, 2743, 2759, 
+       2775, 2792, 2809, 2826, 2842, 2858, 2875, 2892, 
+       2909, 2925, 2941, 2958, 2975, 2992, 3008, 3024, 
+       3041, 3058, 3075, 3086, 3102, 3108, 3124, 3140, 
+       3155, 3172, 3188, 3204, 3219, 3236, 3252, 3268, 
+       3283, 3300, 3316, 3332, 3347, 3364, 3380, 3396, 
+       3411, 3418, 3425, 3432, 3434, 3436, 3438, 3445, 
+       3454, 3461, 3470, 3478, 3485, 3494, 3502, 3509, 
+       3518, 3526, 3533, 3542, 3550, 3558, 3574, 3590, 
+       3607, 3624, 3641, 3657, 3673, 3690, 3707, 3724, 
+       3740, 3756, 3773, 3790, 3807, 3823, 3839, 3856, 
+       3873, 3890, 3906, 3924, 3940, 3958, 3969, 3976, 
+       3978, 3980, 3982, 3989, 4006, 4015, 4022, 4029, 
+       4031, 4033, 4035, 4042
 };
 
 static const short _indic_syllable_machine_indicies[] = {
-       1, 0, 2, 2, 3, 1, 0, 4, 
-       4, 3, 0, 3, 0, 5, 5, 6, 
-       1, 0, 7, 7, 6, 0, 6, 0, 
-       8, 8, 9, 1, 0, 10, 10, 9, 
-       0, 9, 0, 11, 11, 12, 1, 0, 
-       13, 13, 12, 0, 12, 0, 14, 0, 
-       0, 0, 1, 0, 15, 0, 16, 0, 
-       17, 11, 11, 12, 1, 0, 18, 0, 
-       19, 0, 20, 8, 8, 9, 1, 0, 
-       21, 0, 22, 0, 23, 5, 5, 6, 
-       1, 0, 24, 0, 25, 0, 26, 2, 
-       2, 3, 1, 0, 26, 2, 2, 3, 
-       1, 0, 0, 0, 0, 27, 0, 28, 
-       2, 2, 3, 1, 0, 28, 2, 2, 
-       3, 1, 0, 0, 0, 0, 29, 0, 
-       30, 2, 2, 3, 1, 0, 30, 2, 
-       2, 3, 1, 0, 0, 0, 0, 31, 
-       0, 32, 2, 2, 3, 1, 0, 32, 
-       2, 2, 3, 1, 0, 0, 0, 0, 
-       33, 0, 34, 2, 2, 3, 1, 0, 
-       34, 2, 2, 3, 1, 0, 0, 0, 
-       0, 35, 0, 37, 36, 38, 38, 39, 
-       37, 36, 40, 40, 39, 36, 39, 36, 
-       41, 41, 42, 37, 36, 43, 43, 42, 
-       36, 42, 36, 44, 44, 45, 37, 36, 
-       46, 46, 45, 36, 45, 36, 47, 47, 
-       48, 37, 36, 49, 49, 48, 36, 48, 
-       36, 50, 36, 36, 36, 37, 36, 51, 
-       36, 52, 36, 53, 47, 47, 48, 37, 
-       36, 54, 36, 55, 36, 56, 44, 44, 
-       45, 37, 36, 57, 36, 58, 36, 59, 
-       41, 41, 42, 37, 36, 60, 36, 61, 
-       36, 62, 38, 38, 39, 37, 36, 62, 
-       38, 38, 39, 37, 36, 36, 36, 36, 
-       63, 36, 64, 38, 38, 39, 37, 36, 
-       64, 38, 38, 39, 37, 36, 36, 36, 
-       36, 65, 36, 66, 38, 38, 39, 37, 
-       36, 66, 38, 38, 39, 37, 36, 36, 
-       36, 36, 67, 36, 68, 38, 38, 39, 
-       37, 36, 68, 38, 38, 39, 37, 36, 
-       36, 36, 36, 69, 36, 70, 38, 38, 
-       39, 37, 36, 70, 38, 38, 39, 37, 
-       36, 36, 36, 36, 71, 36, 73, 72, 
-       74, 74, 75, 73, 72, 77, 77, 75, 
-       76, 75, 76, 78, 78, 79, 73, 72, 
-       80, 80, 79, 72, 79, 72, 81, 81, 
-       82, 73, 72, 83, 83, 82, 72, 82, 
-       72, 84, 84, 85, 73, 72, 86, 86, 
-       85, 72, 85, 72, 87, 72, 72, 72, 
-       73, 72, 88, 72, 89, 72, 90, 84, 
-       84, 85, 73, 72, 91, 72, 92, 72, 
-       93, 81, 81, 82, 73, 72, 94, 72, 
-       95, 72, 96, 78, 78, 79, 73, 72, 
-       97, 72, 98, 72, 99, 74, 74, 75, 
-       73, 72, 99, 74, 74, 75, 73, 72, 
-       72, 72, 72, 100, 72, 101, 74, 74, 
-       75, 73, 72, 101, 74, 74, 75, 73, 
-       72, 72, 72, 72, 102, 72, 103, 74, 
-       74, 75, 73, 72, 103, 74, 74, 75, 
-       73, 72, 72, 72, 72, 104, 72, 105, 
-       74, 74, 75, 73, 72, 105, 74, 74, 
-       75, 73, 72, 72, 72, 72, 106, 72, 
-       107, 74, 74, 75, 73, 72, 109, 108, 
-       110, 110, 111, 109, 108, 112, 112, 111, 
-       108, 111, 108, 113, 113, 114, 109, 108, 
-       115, 115, 114, 108, 114, 108, 116, 116, 
-       117, 109, 108, 118, 118, 117, 108, 117, 
-       108, 119, 119, 120, 109, 108, 121, 121, 
-       120, 108, 120, 108, 122, 108, 108, 108, 
-       109, 108, 123, 108, 124, 108, 125, 119, 
-       119, 120, 109, 108, 126, 108, 127, 108, 
-       128, 116, 116, 117, 109, 108, 129, 108, 
-       130, 108, 131, 113, 113, 114, 109, 108, 
-       132, 108, 133, 108, 134, 110, 110, 111, 
-       109, 108, 134, 110, 110, 111, 109, 108, 
-       108, 108, 108, 135, 108, 136, 110, 110, 
-       111, 109, 108, 136, 110, 110, 111, 109, 
-       108, 108, 108, 108, 137, 108, 138, 110, 
-       110, 111, 109, 108, 138, 110, 110, 111, 
-       109, 108, 108, 108, 108, 139, 108, 140, 
-       110, 110, 111, 109, 108, 140, 110, 110, 
-       111, 109, 108, 108, 108, 108, 141, 108, 
-       142, 110, 110, 111, 109, 108, 142, 110, 
-       110, 111, 109, 108, 108, 108, 108, 143, 
-       108, 107, 74, 74, 75, 73, 72, 72, 
-       72, 72, 144, 72, 77, 77, 75, 1, 
-       0, 145, 145, 146, 1, 0, 4, 4, 
-       146, 0, 147, 147, 148, 149, 0, 150, 
-       150, 148, 0, 148, 0, 151, 151, 152, 
-       149, 0, 153, 153, 152, 0, 152, 0, 
-       154, 154, 155, 149, 0, 156, 156, 155, 
-       0, 155, 0, 149, 0, 157, 0, 0, 
-       0, 149, 0, 158, 0, 159, 0, 160, 
-       154, 154, 155, 149, 0, 161, 0, 162, 
-       0, 163, 151, 151, 152, 149, 0, 164, 
-       0, 165, 0, 166, 147, 147, 148, 149, 
-       0, 167, 0, 168, 0, 170, 169, 172, 
-       173, 174, 175, 176, 177, 75, 73, 171, 
-       178, 179, 179, 144, 171, 180, 181, 182, 
-       183, 184, 171, 186, 187, 188, 189, 3, 
-       1, 185, 190, 185, 185, 35, 185, 185, 
-       185, 191, 185, 192, 187, 193, 193, 3, 
-       1, 185, 190, 185, 185, 185, 185, 185, 
-       185, 191, 185, 187, 193, 193, 3, 1, 
-       185, 190, 185, 185, 185, 185, 185, 185, 
-       191, 185, 194, 185, 185, 185, 16, 195, 
-       185, 1, 185, 190, 185, 185, 185, 185, 
-       185, 194, 185, 196, 197, 198, 199, 3, 
-       1, 185, 190, 185, 185, 33, 185, 185, 
-       185, 191, 185, 200, 197, 201, 201, 3, 
-       1, 185, 190, 185, 185, 185, 185, 185, 
-       185, 191, 185, 197, 201, 201, 3, 1, 
-       185, 190, 185, 185, 185, 185, 185, 185, 
-       191, 185, 202, 185, 185, 185, 16, 203, 
-       185, 1, 185, 190, 185, 185, 185, 185, 
-       185, 202, 185, 204, 205, 206, 207, 3, 
-       1, 185, 190, 185, 185, 31, 185, 185, 
-       185, 191, 185, 208, 205, 209, 209, 3, 
-       1, 185, 190, 185, 185, 185, 185, 185, 
-       185, 191, 185, 205, 209, 209, 3, 1, 
-       185, 190, 185, 185, 185, 185, 185, 185, 
-       191, 185, 210, 185, 185, 185, 16, 211, 
-       185, 1, 185, 190, 185, 185, 185, 185, 
-       185, 210, 185, 212, 213, 214, 215, 3, 
-       1, 185, 190, 185, 185, 29, 185, 185, 
-       185, 191, 185, 216, 213, 217, 217, 3, 
-       1, 185, 190, 185, 185, 185, 185, 185, 
-       185, 191, 185, 213, 217, 217, 3, 1, 
-       185, 190, 185, 185, 185, 185, 185, 185, 
-       191, 185, 218, 185, 185, 185, 16, 219, 
-       185, 1, 185, 190, 185, 185, 185, 185, 
-       185, 218, 185, 220, 221, 222, 223, 3, 
-       1, 185, 190, 185, 185, 27, 185, 185, 
-       185, 191, 185, 224, 221, 225, 225, 3, 
-       1, 185, 190, 185, 185, 185, 185, 185, 
-       185, 191, 185, 221, 225, 225, 3, 1, 
-       185, 190, 185, 185, 185, 185, 185, 185, 
-       191, 185, 16, 226, 185, 1, 185, 190, 
-       185, 227, 227, 185, 1, 185, 190, 185, 
-       228, 185, 185, 229, 185, 190, 185, 190, 
-       185, 230, 185, 231, 185, 228, 185, 185, 
-       185, 185, 190, 185, 16, 185, 232, 232, 
-       3, 1, 185, 190, 185, 233, 25, 234, 
-       235, 6, 1, 185, 190, 185, 25, 234, 
-       235, 6, 1, 185, 190, 185, 234, 234, 
-       6, 1, 185, 190, 185, 236, 22, 237, 
-       238, 9, 1, 185, 190, 185, 22, 237, 
-       238, 9, 1, 185, 190, 185, 237, 237, 
-       9, 1, 185, 190, 185, 239, 19, 240, 
-       241, 12, 1, 185, 190, 185, 19, 240, 
-       241, 12, 1, 185, 190, 185, 240, 240, 
-       12, 1, 185, 190, 185, 242, 16, 227, 
-       243, 185, 1, 185, 190, 185, 16, 227, 
-       243, 185, 1, 185, 190, 185, 227, 244, 
-       185, 1, 185, 190, 185, 16, 185, 227, 
-       227, 185, 1, 185, 190, 185, 221, 225, 
-       225, 3, 1, 185, 190, 185, 220, 221, 
-       225, 225, 3, 1, 185, 190, 185, 185, 
-       185, 185, 185, 185, 191, 185, 220, 221, 
-       222, 225, 3, 1, 185, 190, 185, 185, 
-       27, 185, 185, 185, 191, 185, 218, 185, 
-       245, 185, 232, 232, 3, 1, 185, 190, 
-       185, 185, 185, 185, 185, 218, 185, 218, 
-       185, 185, 185, 227, 227, 185, 1, 185, 
-       190, 185, 185, 185, 185, 185, 218, 185, 
-       218, 185, 185, 185, 227, 246, 185, 1, 
-       185, 190, 185, 185, 185, 185, 185, 218, 
-       185, 218, 185, 245, 185, 227, 227, 185, 
-       1, 185, 190, 185, 185, 185, 185, 185, 
-       218, 185, 212, 213, 217, 217, 3, 1, 
-       185, 190, 185, 185, 185, 185, 185, 185, 
-       191, 185, 212, 213, 214, 217, 3, 1, 
-       185, 190, 185, 185, 29, 185, 185, 185, 
-       191, 185, 210, 185, 247, 185, 232, 232, 
-       3, 1, 185, 190, 185, 185, 185, 185, 
-       185, 210, 185, 210, 185, 185, 185, 227, 
-       227, 185, 1, 185, 190, 185, 185, 185, 
-       185, 185, 210, 185, 210, 185, 185, 185, 
-       227, 248, 185, 1, 185, 190, 185, 185, 
-       185, 185, 185, 210, 185, 210, 185, 247, 
-       185, 227, 227, 185, 1, 185, 190, 185, 
-       185, 185, 185, 185, 210, 185, 204, 205, 
-       209, 209, 3, 1, 185, 190, 185, 185, 
-       185, 185, 185, 185, 191, 185, 204, 205, 
-       206, 209, 3, 1, 185, 190, 185, 185, 
-       31, 185, 185, 185, 191, 185, 202, 185, 
-       249, 185, 232, 232, 3, 1, 185, 190, 
-       185, 185, 185, 185, 185, 202, 185, 202, 
-       185, 185, 185, 227, 227, 185, 1, 185, 
-       190, 185, 185, 185, 185, 185, 202, 185, 
-       202, 185, 185, 185, 227, 250, 185, 1, 
-       185, 190, 185, 185, 185, 185, 185, 202, 
-       185, 202, 185, 249, 185, 227, 227, 185, 
-       1, 185, 190, 185, 185, 185, 185, 185, 
-       202, 185, 196, 197, 201, 201, 3, 1, 
-       185, 190, 185, 185, 185, 185, 185, 185, 
-       191, 185, 196, 197, 198, 201, 3, 1, 
-       185, 190, 185, 185, 33, 185, 185, 185, 
-       191, 185, 194, 185, 251, 185, 232, 232, 
-       3, 1, 185, 190, 185, 185, 185, 185, 
-       185, 194, 185, 194, 185, 185, 185, 227, 
-       227, 185, 1, 185, 190, 185, 185, 185, 
-       185, 185, 194, 185, 194, 185, 185, 185, 
-       227, 252, 185, 1, 185, 190, 185, 185, 
-       185, 185, 185, 194, 185, 194, 185, 251, 
-       185, 227, 227, 185, 1, 185, 190, 185, 
-       185, 185, 185, 185, 194, 185, 186, 187, 
-       193, 193, 3, 1, 185, 190, 185, 185, 
-       185, 185, 185, 185, 191, 185, 186, 187, 
-       188, 193, 3, 1, 185, 190, 185, 185, 
-       35, 185, 185, 185, 191, 185, 254, 255, 
-       256, 257, 39, 37, 253, 258, 253, 253, 
-       71, 253, 253, 253, 259, 253, 260, 255, 
-       261, 257, 39, 37, 253, 258, 253, 253, 
-       253, 253, 253, 253, 259, 253, 255, 261, 
-       257, 39, 37, 253, 258, 253, 253, 253, 
-       253, 253, 253, 259, 253, 262, 253, 253, 
-       253, 52, 263, 253, 37, 253, 258, 253, 
-       253, 253, 253, 253, 262, 253, 264, 265, 
-       266, 267, 39, 37, 253, 258, 253, 253, 
-       69, 253, 253, 253, 259, 253, 268, 265, 
-       269, 269, 39, 37, 253, 258, 253, 253, 
-       253, 253, 253, 253, 259, 253, 265, 269, 
-       269, 39, 37, 253, 258, 253, 253, 253, 
-       253, 253, 253, 259, 253, 270, 253, 253, 
-       253, 52, 271, 253, 37, 253, 258, 253, 
-       253, 253, 253, 253, 270, 253, 272, 273, 
-       274, 275, 39, 37, 253, 258, 253, 253, 
-       67, 253, 253, 253, 259, 253, 276, 273, 
-       277, 277, 39, 37, 253, 258, 253, 253, 
-       253, 253, 253, 253, 259, 253, 273, 277, 
-       277, 39, 37, 253, 258, 253, 253, 253, 
-       253, 253, 253, 259, 253, 278, 253, 253, 
-       253, 52, 279, 253, 37, 253, 258, 253, 
-       253, 253, 253, 253, 278, 253, 280, 281, 
-       282, 283, 39, 37, 253, 258, 253, 253, 
-       65, 253, 253, 253, 259, 253, 284, 281, 
-       285, 285, 39, 37, 253, 258, 253, 253, 
-       253, 253, 253, 253, 259, 253, 281, 285, 
-       285, 39, 37, 253, 258, 253, 253, 253, 
-       253, 253, 253, 259, 253, 286, 253, 253, 
-       253, 52, 287, 253, 37, 253, 258, 253, 
-       253, 253, 253, 253, 286, 253, 288, 289, 
-       290, 291, 39, 37, 253, 258, 253, 253, 
-       63, 253, 253, 253, 259, 253, 292, 289, 
-       293, 293, 39, 37, 253, 258, 253, 253, 
-       253, 253, 253, 253, 259, 253, 289, 293, 
-       293, 39, 37, 253, 258, 253, 253, 253, 
-       253, 253, 253, 259, 253, 52, 294, 253, 
-       37, 253, 258, 253, 295, 295, 253, 37, 
-       253, 258, 253, 296, 253, 253, 297, 253, 
-       258, 253, 258, 253, 298, 253, 299, 253, 
-       296, 253, 253, 253, 253, 258, 253, 52, 
-       253, 300, 300, 39, 37, 253, 258, 253, 
-       301, 61, 302, 303, 42, 37, 253, 258, 
-       253, 61, 302, 303, 42, 37, 253, 258, 
-       253, 302, 302, 42, 37, 253, 258, 253, 
-       304, 58, 305, 306, 45, 37, 253, 258, 
-       253, 58, 305, 306, 45, 37, 253, 258, 
-       253, 305, 305, 45, 37, 253, 258, 253, 
-       307, 55, 308, 309, 48, 37, 253, 258, 
-       253, 55, 308, 309, 48, 37, 253, 258, 
-       253, 308, 308, 48, 37, 253, 258, 253, 
-       310, 52, 295, 311, 253, 37, 253, 258, 
-       253, 52, 295, 311, 253, 37, 253, 258, 
-       253, 295, 312, 253, 37, 253, 258, 253, 
-       52, 253, 295, 295, 253, 37, 253, 258, 
-       253, 289, 293, 293, 39, 37, 253, 258, 
-       253, 288, 289, 293, 293, 39, 37, 253, 
-       258, 253, 253, 253, 253, 253, 253, 259, 
-       253, 288, 289, 290, 293, 39, 37, 253, 
-       258, 253, 253, 63, 253, 253, 253, 259, 
-       253, 286, 253, 313, 253, 300, 300, 39, 
-       37, 253, 258, 253, 253, 253, 253, 253, 
-       286, 253, 286, 253, 253, 253, 295, 295, 
-       253, 37, 253, 258, 253, 253, 253, 253, 
-       253, 286, 253, 286, 253, 253, 253, 295, 
-       314, 253, 37, 253, 258, 253, 253, 253, 
-       253, 253, 286, 253, 286, 253, 313, 253, 
-       295, 295, 253, 37, 253, 258, 253, 253, 
-       253, 253, 253, 286, 253, 280, 281, 285, 
-       285, 39, 37, 253, 258, 253, 253, 253, 
-       253, 253, 253, 259, 253, 280, 281, 282, 
-       285, 39, 37, 253, 258, 253, 253, 65, 
-       253, 253, 253, 259, 253, 278, 253, 315, 
-       253, 300, 300, 39, 37, 253, 258, 253, 
-       253, 253, 253, 253, 278, 253, 278, 253, 
-       253, 253, 295, 295, 253, 37, 253, 258, 
-       253, 253, 253, 253, 253, 278, 253, 278, 
-       253, 253, 253, 295, 316, 253, 37, 253, 
-       258, 253, 253, 253, 253, 253, 278, 253, 
-       278, 253, 315, 253, 295, 295, 253, 37, 
-       253, 258, 253, 253, 253, 253, 253, 278, 
-       253, 272, 273, 277, 277, 39, 37, 253, 
-       258, 253, 253, 253, 253, 253, 253, 259, 
-       253, 272, 273, 274, 277, 39, 37, 253, 
-       258, 253, 253, 67, 253, 253, 253, 259, 
-       253, 270, 253, 317, 253, 300, 300, 39, 
-       37, 253, 258, 253, 253, 253, 253, 253, 
-       270, 253, 270, 253, 253, 253, 295, 295, 
-       253, 37, 253, 258, 253, 253, 253, 253, 
-       253, 270, 253, 270, 253, 253, 253, 295, 
-       318, 253, 37, 253, 258, 253, 253, 253, 
-       253, 253, 270, 253, 270, 253, 317, 253, 
-       295, 295, 253, 37, 253, 258, 253, 253, 
-       253, 253, 253, 270, 253, 264, 265, 269, 
-       269, 39, 37, 253, 258, 253, 253, 253, 
-       253, 253, 253, 259, 253, 264, 265, 266, 
-       269, 39, 37, 253, 258, 253, 253, 69, 
-       253, 253, 253, 259, 253, 262, 253, 319, 
-       253, 300, 300, 39, 37, 253, 258, 253, 
-       253, 253, 253, 253, 262, 253, 262, 253, 
-       253, 253, 295, 295, 253, 37, 253, 258, 
-       253, 253, 253, 253, 253, 262, 253, 262, 
-       253, 253, 253, 295, 320, 253, 37, 253, 
-       258, 253, 253, 253, 253, 253, 262, 253, 
-       262, 253, 319, 253, 295, 295, 253, 37, 
-       253, 258, 253, 253, 253, 253, 253, 262, 
-       253, 70, 38, 38, 39, 37, 253, 254, 
-       255, 261, 257, 39, 37, 253, 258, 253, 
-       253, 253, 253, 253, 253, 259, 253, 322, 
-       175, 323, 323, 75, 73, 321, 178, 321, 
-       321, 321, 321, 321, 321, 182, 321, 175, 
-       323, 323, 75, 73, 321, 178, 321, 321, 
-       321, 321, 321, 321, 182, 321, 324, 321, 
-       321, 321, 89, 325, 321, 73, 321, 178, 
-       321, 321, 321, 321, 321, 324, 321, 326, 
-       327, 328, 329, 75, 73, 321, 178, 321, 
-       321, 106, 321, 321, 321, 182, 321, 330, 
-       327, 331, 331, 75, 73, 321, 178, 321, 
-       321, 321, 321, 321, 321, 182, 321, 327, 
-       331, 331, 75, 73, 321, 178, 321, 321, 
-       321, 321, 321, 321, 182, 321, 332, 321, 
-       321, 321, 89, 333, 321, 73, 321, 178, 
-       321, 321, 321, 321, 321, 332, 321, 334, 
-       335, 336, 337, 75, 73, 321, 178, 321, 
-       321, 104, 321, 321, 321, 182, 321, 338, 
-       335, 339, 339, 75, 73, 321, 178, 321, 
-       321, 321, 321, 321, 321, 182, 321, 335, 
-       339, 339, 75, 73, 321, 178, 321, 321, 
-       321, 321, 321, 321, 182, 321, 340, 321, 
-       321, 321, 89, 341, 321, 73, 321, 178, 
-       321, 321, 321, 321, 321, 340, 321, 342, 
-       343, 344, 345, 75, 73, 321, 178, 321, 
-       321, 102, 321, 321, 321, 182, 321, 346, 
-       343, 347, 347, 75, 73, 321, 178, 321, 
-       321, 321, 321, 321, 321, 182, 321, 343, 
-       347, 347, 75, 73, 321, 178, 321, 321, 
-       321, 321, 321, 321, 182, 321, 348, 321, 
-       321, 321, 89, 349, 321, 73, 321, 178, 
-       321, 321, 321, 321, 321, 348, 321, 350, 
-       351, 352, 353, 75, 73, 321, 178, 321, 
-       321, 100, 321, 321, 321, 182, 321, 354, 
-       351, 355, 355, 75, 73, 321, 178, 321, 
-       321, 321, 321, 321, 321, 182, 321, 351, 
-       355, 355, 75, 73, 321, 178, 321, 321, 
-       321, 321, 321, 321, 182, 321, 89, 356, 
-       321, 73, 321, 178, 321, 357, 357, 321, 
-       73, 321, 178, 321, 358, 321, 321, 359, 
-       321, 178, 321, 178, 321, 360, 321, 361, 
-       321, 358, 321, 321, 321, 321, 178, 321, 
-       89, 321, 362, 362, 75, 73, 321, 178, 
-       321, 363, 98, 364, 365, 79, 73, 321, 
-       178, 321, 98, 364, 365, 79, 73, 321, 
-       178, 321, 364, 364, 79, 73, 321, 178, 
-       321, 366, 95, 367, 368, 82, 73, 321, 
-       178, 321, 95, 367, 368, 82, 73, 321, 
-       178, 321, 367, 367, 82, 73, 321, 178, 
-       321, 369, 92, 370, 371, 85, 73, 321, 
-       178, 321, 92, 370, 371, 85, 73, 321, 
-       178, 321, 370, 370, 85, 73, 321, 178, 
-       321, 372, 89, 357, 373, 321, 73, 321, 
-       178, 321, 89, 357, 373, 321, 73, 321, 
-       178, 321, 357, 374, 321, 73, 321, 178, 
-       321, 89, 321, 357, 357, 321, 73, 321, 
-       178, 321, 351, 355, 355, 75, 73, 321, 
-       178, 321, 350, 351, 355, 355, 75, 73, 
-       321, 178, 321, 321, 321, 321, 321, 321, 
-       182, 321, 350, 351, 352, 355, 75, 73, 
-       321, 178, 321, 321, 100, 321, 321, 321, 
-       182, 321, 348, 321, 375, 321, 362, 362, 
-       75, 73, 321, 178, 321, 321, 321, 321, 
-       321, 348, 321, 348, 321, 321, 321, 357, 
-       357, 321, 73, 321, 178, 321, 321, 321, 
-       321, 321, 348, 321, 348, 321, 321, 321, 
-       357, 376, 321, 73, 321, 178, 321, 321, 
-       321, 321, 321, 348, 321, 348, 321, 375, 
-       321, 357, 357, 321, 73, 321, 178, 321, 
-       321, 321, 321, 321, 348, 321, 342, 343, 
-       347, 347, 75, 73, 321, 178, 321, 321, 
-       321, 321, 321, 321, 182, 321, 342, 343, 
-       344, 347, 75, 73, 321, 178, 321, 321, 
-       102, 321, 321, 321, 182, 321, 340, 321, 
-       377, 321, 362, 362, 75, 73, 321, 178, 
-       321, 321, 321, 321, 321, 340, 321, 340, 
-       321, 321, 321, 357, 357, 321, 73, 321, 
-       178, 321, 321, 321, 321, 321, 340, 321, 
-       340, 321, 321, 321, 357, 378, 321, 73, 
-       321, 178, 321, 321, 321, 321, 321, 340, 
-       321, 340, 321, 377, 321, 357, 357, 321, 
-       73, 321, 178, 321, 321, 321, 321, 321, 
-       340, 321, 334, 335, 339, 339, 75, 73, 
-       321, 178, 321, 321, 321, 321, 321, 321, 
-       182, 321, 334, 335, 336, 339, 75, 73, 
-       321, 178, 321, 321, 104, 321, 321, 321, 
-       182, 321, 332, 321, 379, 321, 362, 362, 
-       75, 73, 321, 178, 321, 321, 321, 321, 
-       321, 332, 321, 332, 321, 321, 321, 357, 
-       357, 321, 73, 321, 178, 321, 321, 321, 
-       321, 321, 332, 321, 332, 321, 321, 321, 
-       357, 380, 321, 73, 321, 178, 321, 321, 
-       321, 321, 321, 332, 321, 332, 321, 379, 
-       321, 357, 357, 321, 73, 321, 178, 321, 
-       321, 321, 321, 321, 332, 321, 326, 327, 
-       331, 331, 75, 73, 321, 178, 321, 321, 
-       321, 321, 321, 321, 182, 321, 326, 327, 
-       328, 331, 75, 73, 321, 178, 321, 321, 
-       106, 321, 321, 321, 182, 321, 324, 321, 
-       381, 321, 362, 362, 75, 73, 321, 178, 
-       321, 321, 321, 321, 321, 324, 321, 324, 
-       321, 321, 321, 357, 357, 321, 73, 321, 
-       178, 321, 321, 321, 321, 321, 324, 321, 
-       324, 321, 321, 321, 357, 382, 321, 73, 
-       321, 178, 321, 321, 321, 321, 321, 324, 
-       321, 324, 321, 381, 321, 357, 357, 321, 
-       73, 321, 178, 321, 321, 321, 321, 321, 
-       324, 321, 107, 74, 74, 75, 73, 383, 
-       383, 383, 383, 144, 383, 174, 175, 323, 
-       323, 75, 73, 321, 178, 321, 321, 321, 
-       321, 321, 321, 182, 321, 107, 74, 74, 
-       75, 73, 383, 385, 386, 387, 388, 111, 
-       109, 384, 389, 384, 384, 143, 384, 384, 
-       384, 390, 384, 391, 386, 388, 388, 111, 
-       109, 384, 389, 384, 384, 384, 384, 384, 
-       384, 390, 384, 386, 388, 388, 111, 109, 
-       384, 389, 384, 384, 384, 384, 384, 384, 
-       390, 384, 392, 384, 384, 384, 124, 393, 
-       384, 109, 384, 389, 384, 384, 384, 384, 
-       384, 392, 384, 394, 395, 396, 397, 111, 
-       109, 384, 389, 384, 384, 141, 384, 384, 
-       384, 390, 384, 398, 395, 399, 399, 111, 
-       109, 384, 389, 384, 384, 384, 384, 384, 
-       384, 390, 384, 395, 399, 399, 111, 109, 
-       384, 389, 384, 384, 384, 384, 384, 384, 
-       390, 384, 400, 384, 384, 384, 124, 401, 
-       384, 109, 384, 389, 384, 384, 384, 384, 
-       384, 400, 384, 402, 403, 404, 405, 111, 
-       109, 384, 389, 384, 384, 139, 384, 384, 
-       384, 390, 384, 406, 403, 407, 407, 111, 
-       109, 384, 389, 384, 384, 384, 384, 384, 
-       384, 390, 384, 403, 407, 407, 111, 109, 
-       384, 389, 384, 384, 384, 384, 384, 384, 
-       390, 384, 408, 384, 384, 384, 124, 409, 
-       384, 109, 384, 389, 384, 384, 384, 384, 
-       384, 408, 384, 410, 411, 412, 413, 111, 
-       109, 384, 389, 384, 384, 137, 384, 384, 
-       384, 390, 384, 414, 411, 415, 415, 111, 
-       109, 384, 389, 384, 384, 384, 384, 384, 
-       384, 390, 384, 411, 415, 415, 111, 109, 
-       384, 389, 384, 384, 384, 384, 384, 384, 
-       390, 384, 416, 384, 384, 384, 124, 417, 
-       384, 109, 384, 389, 384, 384, 384, 384, 
-       384, 416, 384, 418, 419, 420, 421, 111, 
-       109, 384, 389, 384, 384, 135, 384, 384, 
-       384, 390, 384, 422, 419, 423, 423, 111, 
-       109, 384, 389, 384, 384, 384, 384, 384, 
-       384, 390, 384, 419, 423, 423, 111, 109, 
-       384, 389, 384, 384, 384, 384, 384, 384, 
-       390, 384, 124, 424, 384, 109, 384, 389, 
-       384, 425, 425, 384, 109, 384, 389, 384, 
-       426, 384, 384, 427, 384, 389, 384, 389, 
-       384, 428, 384, 429, 384, 426, 384, 384, 
-       384, 384, 389, 384, 124, 384, 430, 430, 
-       111, 109, 384, 389, 384, 431, 133, 432, 
-       433, 114, 109, 384, 389, 384, 133, 432, 
-       433, 114, 109, 384, 389, 384, 432, 432, 
-       114, 109, 384, 389, 384, 434, 130, 435, 
-       436, 117, 109, 384, 389, 384, 130, 435, 
-       436, 117, 109, 384, 389, 384, 435, 435, 
-       117, 109, 384, 389, 384, 437, 127, 438, 
-       439, 120, 109, 384, 389, 384, 127, 438, 
-       439, 120, 109, 384, 389, 384, 438, 438, 
-       120, 109, 384, 389, 384, 440, 124, 425, 
-       441, 384, 109, 384, 389, 384, 124, 425, 
-       441, 384, 109, 384, 389, 384, 425, 442, 
-       384, 109, 384, 389, 384, 124, 384, 425, 
-       425, 384, 109, 384, 389, 384, 419, 423, 
-       423, 111, 109, 384, 389, 384, 418, 419, 
-       423, 423, 111, 109, 384, 389, 384, 384, 
-       384, 384, 384, 384, 390, 384, 418, 419, 
-       420, 423, 111, 109, 384, 389, 384, 384, 
-       135, 384, 384, 384, 390, 384, 416, 384, 
-       443, 384, 430, 430, 111, 109, 384, 389, 
-       384, 384, 384, 384, 384, 416, 384, 416, 
-       384, 384, 384, 425, 425, 384, 109, 384, 
-       389, 384, 384, 384, 384, 384, 416, 384, 
-       416, 384, 384, 384, 425, 444, 384, 109, 
-       384, 389, 384, 384, 384, 384, 384, 416, 
-       384, 416, 384, 443, 384, 425, 425, 384, 
-       109, 384, 389, 384, 384, 384, 384, 384, 
-       416, 384, 410, 411, 415, 415, 111, 109, 
-       384, 389, 384, 384, 384, 384, 384, 384, 
-       390, 384, 410, 411, 412, 415, 111, 109, 
-       384, 389, 384, 384, 137, 384, 384, 384, 
-       390, 384, 408, 384, 445, 384, 430, 430, 
-       111, 109, 384, 389, 384, 384, 384, 384, 
-       384, 408, 384, 408, 384, 384, 384, 425, 
-       425, 384, 109, 384, 389, 384, 384, 384, 
-       384, 384, 408, 384, 408, 384, 384, 384, 
-       425, 446, 384, 109, 384, 389, 384, 384, 
-       384, 384, 384, 408, 384, 408, 384, 445, 
-       384, 425, 425, 384, 109, 384, 389, 384, 
-       384, 384, 384, 384, 408, 384, 402, 403, 
-       407, 407, 111, 109, 384, 389, 384, 384, 
-       384, 384, 384, 384, 390, 384, 402, 403, 
-       404, 407, 111, 109, 384, 389, 384, 384, 
-       139, 384, 384, 384, 390, 384, 400, 384, 
-       447, 384, 430, 430, 111, 109, 384, 389, 
-       384, 384, 384, 384, 384, 400, 384, 400, 
-       384, 384, 384, 425, 425, 384, 109, 384, 
-       389, 384, 384, 384, 384, 384, 400, 384, 
-       400, 384, 384, 384, 425, 448, 384, 109, 
-       384, 389, 384, 384, 384, 384, 384, 400, 
-       384, 400, 384, 447, 384, 425, 425, 384, 
-       109, 384, 389, 384, 384, 384, 384, 384, 
-       400, 384, 394, 395, 399, 399, 111, 109, 
-       384, 389, 384, 384, 384, 384, 384, 384, 
-       390, 384, 394, 395, 396, 399, 111, 109, 
-       384, 389, 384, 384, 141, 384, 384, 384, 
-       390, 384, 392, 384, 449, 384, 430, 430, 
-       111, 109, 384, 389, 384, 384, 384, 384, 
-       384, 392, 384, 392, 384, 384, 384, 425, 
-       425, 384, 109, 384, 389, 384, 384, 384, 
-       384, 384, 392, 384, 392, 384, 384, 384, 
-       425, 450, 384, 109, 384, 389, 384, 384, 
-       384, 384, 384, 392, 384, 392, 384, 449, 
-       384, 425, 425, 384, 109, 384, 389, 384, 
-       384, 384, 384, 384, 392, 384, 385, 386, 
-       388, 388, 111, 109, 384, 389, 384, 384, 
-       384, 384, 384, 384, 390, 384, 172, 173, 
-       174, 175, 451, 323, 75, 73, 321, 178, 
-       179, 179, 144, 321, 321, 172, 182, 321, 
-       186, 452, 188, 189, 3, 1, 185, 190, 
-       185, 185, 35, 185, 185, 185, 191, 185, 
-       194, 173, 174, 175, 453, 454, 75, 149, 
-       185, 455, 185, 179, 144, 185, 185, 194, 
-       182, 185, 107, 456, 456, 75, 149, 185, 
-       190, 185, 185, 144, 185, 457, 185, 185, 
-       458, 185, 455, 185, 455, 185, 459, 185, 
-       231, 185, 457, 185, 185, 185, 185, 455, 
-       185, 194, 185, 251, 107, 460, 460, 146, 
-       149, 185, 190, 185, 185, 185, 185, 185, 
-       194, 185, 461, 168, 462, 463, 148, 149, 
-       185, 455, 185, 168, 462, 463, 148, 149, 
-       185, 455, 185, 462, 462, 148, 149, 185, 
-       455, 185, 464, 165, 465, 466, 152, 149, 
-       185, 455, 185, 165, 465, 466, 152, 149, 
-       185, 455, 185, 465, 465, 152, 149, 185, 
-       455, 185, 467, 162, 468, 469, 155, 149, 
-       185, 455, 185, 162, 468, 469, 155, 149, 
-       185, 455, 185, 468, 468, 155, 149, 185, 
-       455, 185, 470, 159, 471, 472, 185, 149, 
-       185, 455, 185, 159, 471, 472, 185, 149, 
-       185, 455, 185, 471, 471, 185, 149, 185, 
-       455, 185, 474, 473, 475, 475, 473, 170, 
-       473, 476, 473, 475, 475, 473, 170, 473, 
-       476, 473, 477, 473, 473, 478, 473, 476, 
-       473, 476, 473, 479, 473, 480, 473, 477, 
-       473, 473, 473, 473, 476, 473, 172, 383, 
-       383, 383, 383, 383, 383, 383, 383, 383, 
-       179, 383, 383, 383, 383, 172, 383, 0
+       1, 0, 2, 3, 3, 4, 1, 0, 
+       5, 5, 4, 0, 4, 0, 6, 6, 
+       7, 1, 0, 8, 8, 7, 0, 7, 
+       0, 9, 9, 10, 1, 0, 11, 11, 
+       10, 0, 10, 0, 12, 12, 13, 1, 
+       0, 14, 14, 13, 0, 13, 0, 15, 
+       0, 0, 0, 1, 0, 16, 0, 17, 
+       0, 18, 12, 12, 13, 1, 0, 19, 
+       0, 20, 0, 21, 9, 9, 10, 1, 
+       0, 22, 0, 23, 0, 24, 6, 6, 
+       7, 1, 0, 25, 0, 26, 0, 2, 
+       3, 3, 4, 1, 0, 0, 0, 0, 
+       27, 0, 28, 3, 3, 4, 1, 0, 
+       28, 3, 3, 4, 1, 0, 0, 0, 
+       0, 29, 0, 30, 3, 3, 4, 1, 
+       0, 30, 3, 3, 4, 1, 0, 0, 
+       0, 0, 31, 0, 32, 3, 3, 4, 
+       1, 0, 32, 3, 3, 4, 1, 0, 
+       0, 0, 0, 33, 0, 34, 3, 3, 
+       4, 1, 0, 34, 3, 3, 4, 1, 
+       0, 0, 0, 0, 35, 0, 37, 36, 
+       38, 39, 39, 40, 37, 36, 41, 41, 
+       40, 36, 40, 36, 42, 42, 43, 37, 
+       36, 44, 44, 43, 36, 43, 36, 45, 
+       45, 46, 37, 36, 47, 47, 46, 36, 
+       46, 36, 48, 48, 49, 37, 36, 50, 
+       50, 49, 36, 49, 36, 51, 36, 36, 
+       36, 37, 36, 52, 36, 53, 36, 54, 
+       48, 48, 49, 37, 36, 55, 36, 56, 
+       36, 57, 45, 45, 46, 37, 36, 58, 
+       36, 59, 36, 60, 42, 42, 43, 37, 
+       36, 61, 36, 62, 36, 38, 39, 39, 
+       40, 37, 36, 36, 36, 36, 63, 36, 
+       64, 39, 39, 40, 37, 36, 64, 39, 
+       39, 40, 37, 36, 36, 36, 36, 65, 
+       36, 66, 39, 39, 40, 37, 36, 66, 
+       39, 39, 40, 37, 36, 36, 36, 36, 
+       67, 36, 68, 39, 39, 40, 37, 36, 
+       68, 39, 39, 40, 37, 36, 36, 36, 
+       36, 69, 36, 70, 39, 39, 40, 37, 
+       36, 70, 39, 39, 40, 37, 36, 36, 
+       36, 36, 71, 36, 73, 72, 74, 75, 
+       75, 76, 73, 72, 78, 78, 76, 77, 
+       76, 77, 79, 79, 80, 73, 72, 81, 
+       81, 80, 72, 80, 72, 82, 82, 83, 
+       73, 72, 84, 84, 83, 72, 83, 72, 
+       85, 85, 86, 73, 72, 87, 87, 86, 
+       72, 86, 72, 88, 72, 72, 72, 73, 
+       72, 89, 72, 90, 72, 91, 85, 85, 
+       86, 73, 72, 92, 72, 93, 72, 94, 
+       82, 82, 83, 73, 72, 95, 72, 96, 
+       72, 97, 79, 79, 80, 73, 72, 98, 
+       72, 99, 72, 74, 75, 75, 76, 73, 
+       72, 72, 72, 72, 100, 72, 101, 75, 
+       75, 76, 73, 72, 101, 75, 75, 76, 
+       73, 72, 72, 72, 72, 102, 72, 103, 
+       75, 75, 76, 73, 72, 103, 75, 75, 
+       76, 73, 72, 72, 72, 72, 104, 72, 
+       105, 75, 75, 76, 73, 72, 105, 75, 
+       75, 76, 73, 72, 72, 72, 72, 106, 
+       72, 107, 75, 75, 76, 73, 72, 109, 
+       108, 110, 111, 111, 112, 109, 108, 113, 
+       113, 112, 108, 112, 108, 114, 114, 115, 
+       109, 108, 116, 116, 115, 108, 115, 108, 
+       117, 117, 118, 109, 108, 119, 119, 118, 
+       108, 118, 108, 120, 120, 121, 109, 108, 
+       122, 122, 121, 108, 121, 108, 123, 108, 
+       108, 108, 109, 108, 124, 108, 125, 108, 
+       126, 120, 120, 121, 109, 108, 127, 108, 
+       128, 108, 129, 117, 117, 118, 109, 108, 
+       130, 108, 131, 108, 132, 114, 114, 115, 
+       109, 108, 133, 108, 134, 108, 110, 111, 
+       111, 112, 109, 108, 108, 108, 108, 135, 
+       108, 136, 111, 111, 112, 109, 108, 136, 
+       111, 111, 112, 109, 108, 108, 108, 108, 
+       137, 108, 138, 111, 111, 112, 109, 108, 
+       138, 111, 111, 112, 109, 108, 108, 108, 
+       108, 139, 108, 140, 111, 111, 112, 109, 
+       108, 140, 111, 111, 112, 109, 108, 108, 
+       108, 108, 141, 108, 142, 111, 111, 112, 
+       109, 108, 142, 111, 111, 112, 109, 108, 
+       108, 108, 108, 143, 108, 107, 75, 75, 
+       76, 73, 72, 72, 72, 72, 144, 72, 
+       78, 78, 76, 1, 0, 146, 145, 148, 
+       149, 150, 151, 152, 153, 76, 73, 147, 
+       154, 155, 155, 144, 147, 156, 157, 158, 
+       159, 160, 147, 162, 163, 164, 165, 4, 
+       1, 161, 166, 161, 161, 35, 161, 161, 
+       161, 167, 161, 168, 163, 169, 169, 4, 
+       1, 161, 166, 161, 161, 161, 161, 161, 
+       161, 167, 161, 163, 169, 169, 4, 1, 
+       161, 166, 161, 161, 161, 161, 161, 161, 
+       167, 161, 170, 161, 161, 161, 17, 171, 
+       161, 1, 161, 166, 161, 161, 161, 161, 
+       161, 170, 161, 172, 173, 174, 175, 4, 
+       1, 161, 166, 161, 161, 33, 161, 161, 
+       161, 167, 161, 176, 173, 177, 177, 4, 
+       1, 161, 166, 161, 161, 161, 161, 161, 
+       161, 167, 161, 173, 177, 177, 4, 1, 
+       161, 166, 161, 161, 161, 161, 161, 161, 
+       167, 161, 178, 161, 161, 161, 17, 179, 
+       161, 1, 161, 166, 161, 161, 161, 161, 
+       161, 178, 161, 180, 181, 182, 183, 4, 
+       1, 161, 166, 161, 161, 31, 161, 161, 
+       161, 167, 161, 184, 181, 185, 185, 4, 
+       1, 161, 166, 161, 161, 161, 161, 161, 
+       161, 167, 161, 181, 185, 185, 4, 1, 
+       161, 166, 161, 161, 161, 161, 161, 161, 
+       167, 161, 186, 161, 161, 161, 17, 187, 
+       161, 1, 161, 166, 161, 161, 161, 161, 
+       161, 186, 161, 188, 189, 190, 191, 4, 
+       1, 161, 166, 161, 161, 29, 161, 161, 
+       161, 167, 161, 192, 189, 193, 193, 4, 
+       1, 161, 166, 161, 161, 161, 161, 161, 
+       161, 167, 161, 189, 193, 193, 4, 1, 
+       161, 166, 161, 161, 161, 161, 161, 161, 
+       167, 161, 194, 161, 161, 161, 17, 195, 
+       161, 1, 161, 166, 161, 161, 161, 161, 
+       161, 194, 161, 196, 197, 198, 199, 4, 
+       1, 161, 166, 161, 161, 27, 161, 161, 
+       161, 167, 161, 200, 197, 201, 201, 4, 
+       1, 161, 166, 161, 161, 161, 161, 161, 
+       161, 167, 161, 197, 201, 201, 4, 1, 
+       161, 166, 161, 161, 161, 161, 161, 161, 
+       167, 161, 17, 202, 161, 1, 161, 166, 
+       161, 203, 203, 161, 1, 161, 166, 161, 
+       204, 161, 161, 205, 161, 166, 161, 166, 
+       161, 206, 161, 207, 161, 204, 161, 161, 
+       161, 161, 166, 161, 17, 161, 203, 203, 
+       161, 1, 161, 166, 161, 203, 202, 161, 
+       1, 161, 166, 161, 208, 26, 209, 210, 
+       7, 1, 161, 166, 161, 26, 209, 210, 
+       7, 1, 161, 166, 161, 209, 209, 7, 
+       1, 161, 166, 161, 211, 23, 212, 213, 
+       10, 1, 161, 166, 161, 23, 212, 213, 
+       10, 1, 161, 166, 161, 212, 212, 10, 
+       1, 161, 166, 161, 214, 20, 215, 216, 
+       13, 1, 161, 166, 161, 20, 215, 216, 
+       13, 1, 161, 166, 161, 215, 215, 13, 
+       1, 161, 166, 161, 217, 17, 203, 218, 
+       161, 1, 161, 166, 161, 17, 203, 218, 
+       161, 1, 161, 166, 161, 197, 201, 201, 
+       4, 1, 161, 166, 161, 196, 197, 201, 
+       201, 4, 1, 161, 166, 161, 161, 161, 
+       161, 161, 161, 167, 161, 196, 197, 198, 
+       201, 4, 1, 161, 166, 161, 161, 27, 
+       161, 161, 161, 167, 161, 194, 161, 219, 
+       161, 203, 203, 161, 1, 161, 166, 161, 
+       161, 161, 161, 161, 194, 161, 194, 161, 
+       161, 161, 203, 203, 161, 1, 161, 166, 
+       161, 161, 161, 161, 161, 194, 161, 194, 
+       161, 161, 161, 203, 195, 161, 1, 161, 
+       166, 161, 161, 161, 161, 161, 194, 161, 
+       188, 189, 193, 193, 4, 1, 161, 166, 
+       161, 161, 161, 161, 161, 161, 167, 161, 
+       188, 189, 190, 193, 4, 1, 161, 166, 
+       161, 161, 29, 161, 161, 161, 167, 161, 
+       186, 161, 220, 161, 203, 203, 161, 1, 
+       161, 166, 161, 161, 161, 161, 161, 186, 
+       161, 186, 161, 161, 161, 203, 203, 161, 
+       1, 161, 166, 161, 161, 161, 161, 161, 
+       186, 161, 186, 161, 161, 161, 203, 187, 
+       161, 1, 161, 166, 161, 161, 161, 161, 
+       161, 186, 161, 180, 181, 185, 185, 4, 
+       1, 161, 166, 161, 161, 161, 161, 161, 
+       161, 167, 161, 180, 181, 182, 185, 4, 
+       1, 161, 166, 161, 161, 31, 161, 161, 
+       161, 167, 161, 178, 161, 221, 161, 203, 
+       203, 161, 1, 161, 166, 161, 161, 161, 
+       161, 161, 178, 161, 178, 161, 161, 161, 
+       203, 203, 161, 1, 161, 166, 161, 161, 
+       161, 161, 161, 178, 161, 178, 161, 161, 
+       161, 203, 179, 161, 1, 161, 166, 161, 
+       161, 161, 161, 161, 178, 161, 172, 173, 
+       177, 177, 4, 1, 161, 166, 161, 161, 
+       161, 161, 161, 161, 167, 161, 172, 173, 
+       174, 177, 4, 1, 161, 166, 161, 161, 
+       33, 161, 161, 161, 167, 161, 170, 161, 
+       222, 161, 203, 203, 161, 1, 161, 166, 
+       161, 161, 161, 161, 161, 170, 161, 170, 
+       161, 161, 161, 203, 203, 161, 1, 161, 
+       166, 161, 161, 161, 161, 161, 170, 161, 
+       170, 161, 161, 161, 203, 171, 161, 1, 
+       161, 166, 161, 161, 161, 161, 161, 170, 
+       161, 162, 163, 169, 169, 4, 1, 161, 
+       166, 161, 161, 161, 161, 161, 161, 167, 
+       161, 162, 163, 164, 169, 4, 1, 161, 
+       166, 161, 161, 35, 161, 161, 161, 167, 
+       161, 224, 225, 226, 227, 40, 37, 223, 
+       228, 223, 223, 71, 223, 223, 223, 229, 
+       223, 230, 225, 231, 227, 40, 37, 223, 
+       228, 223, 223, 223, 223, 223, 223, 229, 
+       223, 225, 231, 227, 40, 37, 223, 228, 
+       223, 223, 223, 223, 223, 223, 229, 223, 
+       232, 223, 223, 223, 53, 233, 223, 37, 
+       223, 228, 223, 223, 223, 223, 223, 232, 
+       223, 234, 235, 236, 237, 40, 37, 223, 
+       228, 223, 223, 69, 223, 223, 223, 229, 
+       223, 238, 235, 239, 239, 40, 37, 223, 
+       228, 223, 223, 223, 223, 223, 223, 229, 
+       223, 235, 239, 239, 40, 37, 223, 228, 
+       223, 223, 223, 223, 223, 223, 229, 223, 
+       240, 223, 223, 223, 53, 241, 223, 37, 
+       223, 228, 223, 223, 223, 223, 223, 240, 
+       223, 242, 243, 244, 245, 40, 37, 223, 
+       228, 223, 223, 67, 223, 223, 223, 229, 
+       223, 246, 243, 247, 247, 40, 37, 223, 
+       228, 223, 223, 223, 223, 223, 223, 229, 
+       223, 243, 247, 247, 40, 37, 223, 228, 
+       223, 223, 223, 223, 223, 223, 229, 223, 
+       248, 223, 223, 223, 53, 249, 223, 37, 
+       223, 228, 223, 223, 223, 223, 223, 248, 
+       223, 250, 251, 252, 253, 40, 37, 223, 
+       228, 223, 223, 65, 223, 223, 223, 229, 
+       223, 254, 251, 255, 255, 40, 37, 223, 
+       228, 223, 223, 223, 223, 223, 223, 229, 
+       223, 251, 255, 255, 40, 37, 223, 228, 
+       223, 223, 223, 223, 223, 223, 229, 223, 
+       256, 223, 223, 223, 53, 257, 223, 37, 
+       223, 228, 223, 223, 223, 223, 223, 256, 
+       223, 258, 259, 260, 261, 40, 37, 223, 
+       228, 223, 223, 63, 223, 223, 223, 229, 
+       223, 262, 259, 263, 263, 40, 37, 223, 
+       228, 223, 223, 223, 223, 223, 223, 229, 
+       223, 259, 263, 263, 40, 37, 223, 228, 
+       223, 223, 223, 223, 223, 223, 229, 223, 
+       53, 264, 223, 37, 223, 228, 223, 265, 
+       265, 223, 37, 223, 228, 223, 266, 223, 
+       223, 267, 223, 228, 223, 228, 223, 268, 
+       223, 269, 223, 266, 223, 223, 223, 223, 
+       228, 223, 53, 223, 265, 265, 223, 37, 
+       223, 228, 223, 265, 264, 223, 37, 223, 
+       228, 223, 270, 62, 271, 272, 43, 37, 
+       223, 228, 223, 62, 271, 272, 43, 37, 
+       223, 228, 223, 271, 271, 43, 37, 223, 
+       228, 223, 273, 59, 274, 275, 46, 37, 
+       223, 228, 223, 59, 274, 275, 46, 37, 
+       223, 228, 223, 274, 274, 46, 37, 223, 
+       228, 223, 276, 56, 277, 278, 49, 37, 
+       223, 228, 223, 56, 277, 278, 49, 37, 
+       223, 228, 223, 277, 277, 49, 37, 223, 
+       228, 223, 279, 53, 265, 280, 223, 37, 
+       223, 228, 223, 53, 265, 280, 223, 37, 
+       223, 228, 223, 259, 263, 263, 40, 37, 
+       223, 228, 223, 258, 259, 263, 263, 40, 
+       37, 223, 228, 223, 223, 223, 223, 223, 
+       223, 229, 223, 258, 259, 260, 263, 40, 
+       37, 223, 228, 223, 223, 63, 223, 223, 
+       223, 229, 223, 256, 223, 281, 223, 265, 
+       265, 223, 37, 223, 228, 223, 223, 223, 
+       223, 223, 256, 223, 256, 223, 223, 223, 
+       265, 265, 223, 37, 223, 228, 223, 223, 
+       223, 223, 223, 256, 223, 256, 223, 223, 
+       223, 265, 257, 223, 37, 223, 228, 223, 
+       223, 223, 223, 223, 256, 223, 250, 251, 
+       255, 255, 40, 37, 223, 228, 223, 223, 
+       223, 223, 223, 223, 229, 223, 250, 251, 
+       252, 255, 40, 37, 223, 228, 223, 223, 
+       65, 223, 223, 223, 229, 223, 248, 223, 
+       282, 223, 265, 265, 223, 37, 223, 228, 
+       223, 223, 223, 223, 223, 248, 223, 248, 
+       223, 223, 223, 265, 265, 223, 37, 223, 
+       228, 223, 223, 223, 223, 223, 248, 223, 
+       248, 223, 223, 223, 265, 249, 223, 37, 
+       223, 228, 223, 223, 223, 223, 223, 248, 
+       223, 242, 243, 247, 247, 40, 37, 223, 
+       228, 223, 223, 223, 223, 223, 223, 229, 
+       223, 242, 243, 244, 247, 40, 37, 223, 
+       228, 223, 223, 67, 223, 223, 223, 229, 
+       223, 240, 223, 283, 223, 265, 265, 223, 
+       37, 223, 228, 223, 223, 223, 223, 223, 
+       240, 223, 240, 223, 223, 223, 265, 265, 
+       223, 37, 223, 228, 223, 223, 223, 223, 
+       223, 240, 223, 240, 223, 223, 223, 265, 
+       241, 223, 37, 223, 228, 223, 223, 223, 
+       223, 223, 240, 223, 234, 235, 239, 239, 
+       40, 37, 223, 228, 223, 223, 223, 223, 
+       223, 223, 229, 223, 234, 235, 236, 239, 
+       40, 37, 223, 228, 223, 223, 69, 223, 
+       223, 223, 229, 223, 232, 223, 284, 223, 
+       265, 265, 223, 37, 223, 228, 223, 223, 
+       223, 223, 223, 232, 223, 232, 223, 223, 
+       223, 265, 265, 223, 37, 223, 228, 223, 
+       223, 223, 223, 223, 232, 223, 232, 223, 
+       223, 223, 265, 233, 223, 37, 223, 228, 
+       223, 223, 223, 223, 223, 232, 223, 70, 
+       39, 39, 40, 37, 223, 224, 225, 231, 
+       227, 40, 37, 223, 228, 223, 223, 223, 
+       223, 223, 223, 229, 223, 286, 151, 287, 
+       287, 76, 73, 285, 154, 285, 285, 285, 
+       285, 285, 285, 158, 285, 151, 287, 287, 
+       76, 73, 285, 154, 285, 285, 285, 285, 
+       285, 285, 158, 285, 288, 285, 285, 285, 
+       90, 289, 285, 73, 285, 154, 285, 285, 
+       285, 285, 285, 288, 285, 290, 291, 292, 
+       293, 76, 73, 285, 154, 285, 285, 106, 
+       285, 285, 285, 158, 285, 294, 291, 295, 
+       295, 76, 73, 285, 154, 285, 285, 285, 
+       285, 285, 285, 158, 285, 291, 295, 295, 
+       76, 73, 285, 154, 285, 285, 285, 285, 
+       285, 285, 158, 285, 296, 285, 285, 285, 
+       90, 297, 285, 73, 285, 154, 285, 285, 
+       285, 285, 285, 296, 285, 298, 299, 300, 
+       301, 76, 73, 285, 154, 285, 285, 104, 
+       285, 285, 285, 158, 285, 302, 299, 303, 
+       303, 76, 73, 285, 154, 285, 285, 285, 
+       285, 285, 285, 158, 285, 299, 303, 303, 
+       76, 73, 285, 154, 285, 285, 285, 285, 
+       285, 285, 158, 285, 304, 285, 285, 285, 
+       90, 305, 285, 73, 285, 154, 285, 285, 
+       285, 285, 285, 304, 285, 306, 307, 308, 
+       309, 76, 73, 285, 154, 285, 285, 102, 
+       285, 285, 285, 158, 285, 310, 307, 311, 
+       311, 76, 73, 285, 154, 285, 285, 285, 
+       285, 285, 285, 158, 285, 307, 311, 311, 
+       76, 73, 285, 154, 285, 285, 285, 285, 
+       285, 285, 158, 285, 312, 285, 285, 285, 
+       90, 313, 285, 73, 285, 154, 285, 285, 
+       285, 285, 285, 312, 285, 314, 315, 316, 
+       317, 76, 73, 285, 154, 285, 285, 100, 
+       285, 285, 285, 158, 285, 318, 315, 319, 
+       319, 76, 73, 285, 154, 285, 285, 285, 
+       285, 285, 285, 158, 285, 315, 319, 319, 
+       76, 73, 285, 154, 285, 285, 285, 285, 
+       285, 285, 158, 285, 90, 320, 285, 73, 
+       285, 154, 285, 321, 321, 285, 73, 285, 
+       154, 285, 322, 285, 285, 323, 285, 154, 
+       285, 154, 285, 324, 285, 325, 285, 322, 
+       285, 285, 285, 285, 154, 285, 90, 285, 
+       321, 321, 285, 73, 285, 154, 285, 321, 
+       320, 285, 73, 285, 154, 285, 326, 99, 
+       327, 328, 80, 73, 285, 154, 285, 99, 
+       327, 328, 80, 73, 285, 154, 285, 327, 
+       327, 80, 73, 285, 154, 285, 329, 96, 
+       330, 331, 83, 73, 285, 154, 285, 96, 
+       330, 331, 83, 73, 285, 154, 285, 330, 
+       330, 83, 73, 285, 154, 285, 332, 93, 
+       333, 334, 86, 73, 285, 154, 285, 93, 
+       333, 334, 86, 73, 285, 154, 285, 333, 
+       333, 86, 73, 285, 154, 285, 335, 90, 
+       321, 336, 285, 73, 285, 154, 285, 90, 
+       321, 336, 285, 73, 285, 154, 285, 315, 
+       319, 319, 76, 73, 285, 154, 285, 314, 
+       315, 319, 319, 76, 73, 285, 154, 285, 
+       285, 285, 285, 285, 285, 158, 285, 314, 
+       315, 316, 319, 76, 73, 285, 154, 285, 
+       285, 100, 285, 285, 285, 158, 285, 312, 
+       285, 337, 285, 321, 321, 285, 73, 285, 
+       154, 285, 285, 285, 285, 285, 312, 285, 
+       312, 285, 285, 285, 321, 321, 285, 73, 
+       285, 154, 285, 285, 285, 285, 285, 312, 
+       285, 312, 285, 285, 285, 321, 313, 285, 
+       73, 285, 154, 285, 285, 285, 285, 285, 
+       312, 285, 306, 307, 311, 311, 76, 73, 
+       285, 154, 285, 285, 285, 285, 285, 285, 
+       158, 285, 306, 307, 308, 311, 76, 73, 
+       285, 154, 285, 285, 102, 285, 285, 285, 
+       158, 285, 304, 285, 338, 285, 321, 321, 
+       285, 73, 285, 154, 285, 285, 285, 285, 
+       285, 304, 285, 304, 285, 285, 285, 321, 
+       321, 285, 73, 285, 154, 285, 285, 285, 
+       285, 285, 304, 285, 304, 285, 285, 285, 
+       321, 305, 285, 73, 285, 154, 285, 285, 
+       285, 285, 285, 304, 285, 298, 299, 303, 
+       303, 76, 73, 285, 154, 285, 285, 285, 
+       285, 285, 285, 158, 285, 298, 299, 300, 
+       303, 76, 73, 285, 154, 285, 285, 104, 
+       285, 285, 285, 158, 285, 296, 285, 339, 
+       285, 321, 321, 285, 73, 285, 154, 285, 
+       285, 285, 285, 285, 296, 285, 296, 285, 
+       285, 285, 321, 321, 285, 73, 285, 154, 
+       285, 285, 285, 285, 285, 296, 285, 296, 
+       285, 285, 285, 321, 297, 285, 73, 285, 
+       154, 285, 285, 285, 285, 285, 296, 285, 
+       290, 291, 295, 295, 76, 73, 285, 154, 
+       285, 285, 285, 285, 285, 285, 158, 285, 
+       290, 291, 292, 295, 76, 73, 285, 154, 
+       285, 285, 106, 285, 285, 285, 158, 285, 
+       288, 285, 340, 285, 321, 321, 285, 73, 
+       285, 154, 285, 285, 285, 285, 285, 288, 
+       285, 288, 285, 285, 285, 321, 321, 285, 
+       73, 285, 154, 285, 285, 285, 285, 285, 
+       288, 285, 288, 285, 285, 285, 321, 289, 
+       285, 73, 285, 154, 285, 285, 285, 285, 
+       285, 288, 285, 107, 75, 75, 76, 73, 
+       341, 341, 341, 341, 144, 341, 150, 151, 
+       287, 287, 76, 73, 285, 154, 285, 285, 
+       285, 285, 285, 285, 158, 285, 107, 75, 
+       75, 76, 73, 341, 343, 344, 345, 346, 
+       112, 109, 342, 347, 342, 342, 143, 342, 
+       342, 342, 348, 342, 349, 344, 346, 346, 
+       112, 109, 342, 347, 342, 342, 342, 342, 
+       342, 342, 348, 342, 344, 346, 346, 112, 
+       109, 342, 347, 342, 342, 342, 342, 342, 
+       342, 348, 342, 350, 342, 342, 342, 125, 
+       351, 342, 109, 342, 347, 342, 342, 342, 
+       342, 342, 350, 342, 352, 353, 354, 355, 
+       112, 109, 342, 347, 342, 342, 141, 342, 
+       342, 342, 348, 342, 356, 353, 357, 357, 
+       112, 109, 342, 347, 342, 342, 342, 342, 
+       342, 342, 348, 342, 353, 357, 357, 112, 
+       109, 342, 347, 342, 342, 342, 342, 342, 
+       342, 348, 342, 358, 342, 342, 342, 125, 
+       359, 342, 109, 342, 347, 342, 342, 342, 
+       342, 342, 358, 342, 360, 361, 362, 363, 
+       112, 109, 342, 347, 342, 342, 139, 342, 
+       342, 342, 348, 342, 364, 361, 365, 365, 
+       112, 109, 342, 347, 342, 342, 342, 342, 
+       342, 342, 348, 342, 361, 365, 365, 112, 
+       109, 342, 347, 342, 342, 342, 342, 342, 
+       342, 348, 342, 366, 342, 342, 342, 125, 
+       367, 342, 109, 342, 347, 342, 342, 342, 
+       342, 342, 366, 342, 368, 369, 370, 371, 
+       112, 109, 342, 347, 342, 342, 137, 342, 
+       342, 342, 348, 342, 372, 369, 373, 373, 
+       112, 109, 342, 347, 342, 342, 342, 342, 
+       342, 342, 348, 342, 369, 373, 373, 112, 
+       109, 342, 347, 342, 342, 342, 342, 342, 
+       342, 348, 342, 374, 342, 342, 342, 125, 
+       375, 342, 109, 342, 347, 342, 342, 342, 
+       342, 342, 374, 342, 376, 377, 378, 379, 
+       112, 109, 342, 347, 342, 342, 135, 342, 
+       342, 342, 348, 342, 380, 377, 381, 381, 
+       112, 109, 342, 347, 342, 342, 342, 342, 
+       342, 342, 348, 342, 377, 381, 381, 112, 
+       109, 342, 347, 342, 342, 342, 342, 342, 
+       342, 348, 342, 125, 382, 342, 109, 342, 
+       347, 342, 383, 383, 342, 109, 342, 347, 
+       342, 384, 342, 342, 385, 342, 347, 342, 
+       347, 342, 386, 342, 387, 342, 384, 342, 
+       342, 342, 342, 347, 342, 125, 342, 383, 
+       383, 342, 109, 342, 347, 342, 383, 382, 
+       342, 109, 342, 347, 342, 388, 134, 389, 
+       390, 115, 109, 342, 347, 342, 134, 389, 
+       390, 115, 109, 342, 347, 342, 389, 389, 
+       115, 109, 342, 347, 342, 391, 131, 392, 
+       393, 118, 109, 342, 347, 342, 131, 392, 
+       393, 118, 109, 342, 347, 342, 392, 392, 
+       118, 109, 342, 347, 342, 394, 128, 395, 
+       396, 121, 109, 342, 347, 342, 128, 395, 
+       396, 121, 109, 342, 347, 342, 395, 395, 
+       121, 109, 342, 347, 342, 397, 125, 383, 
+       398, 342, 109, 342, 347, 342, 125, 383, 
+       398, 342, 109, 342, 347, 342, 377, 381, 
+       381, 112, 109, 342, 347, 342, 376, 377, 
+       381, 381, 112, 109, 342, 347, 342, 342, 
+       342, 342, 342, 342, 348, 342, 376, 377, 
+       378, 381, 112, 109, 342, 347, 342, 342, 
+       135, 342, 342, 342, 348, 342, 374, 342, 
+       399, 342, 383, 383, 342, 109, 342, 347, 
+       342, 342, 342, 342, 342, 374, 342, 374, 
+       342, 342, 342, 383, 383, 342, 109, 342, 
+       347, 342, 342, 342, 342, 342, 374, 342, 
+       374, 342, 342, 342, 383, 375, 342, 109, 
+       342, 347, 342, 342, 342, 342, 342, 374, 
+       342, 368, 369, 373, 373, 112, 109, 342, 
+       347, 342, 342, 342, 342, 342, 342, 348, 
+       342, 368, 369, 370, 373, 112, 109, 342, 
+       347, 342, 342, 137, 342, 342, 342, 348, 
+       342, 366, 342, 400, 342, 383, 383, 342, 
+       109, 342, 347, 342, 342, 342, 342, 342, 
+       366, 342, 366, 342, 342, 342, 383, 383, 
+       342, 109, 342, 347, 342, 342, 342, 342, 
+       342, 366, 342, 366, 342, 342, 342, 383, 
+       367, 342, 109, 342, 347, 342, 342, 342, 
+       342, 342, 366, 342, 360, 361, 365, 365, 
+       112, 109, 342, 347, 342, 342, 342, 342, 
+       342, 342, 348, 342, 360, 361, 362, 365, 
+       112, 109, 342, 347, 342, 342, 139, 342, 
+       342, 342, 348, 342, 358, 342, 401, 342, 
+       383, 383, 342, 109, 342, 347, 342, 342, 
+       342, 342, 342, 358, 342, 358, 342, 342, 
+       342, 383, 383, 342, 109, 342, 347, 342, 
+       342, 342, 342, 342, 358, 342, 358, 342, 
+       342, 342, 383, 359, 342, 109, 342, 347, 
+       342, 342, 342, 342, 342, 358, 342, 352, 
+       353, 357, 357, 112, 109, 342, 347, 342, 
+       342, 342, 342, 342, 342, 348, 342, 352, 
+       353, 354, 357, 112, 109, 342, 347, 342, 
+       342, 141, 342, 342, 342, 348, 342, 350, 
+       342, 402, 342, 383, 383, 342, 109, 342, 
+       347, 342, 342, 342, 342, 342, 350, 342, 
+       350, 342, 342, 342, 383, 383, 342, 109, 
+       342, 347, 342, 342, 342, 342, 342, 350, 
+       342, 350, 342, 342, 342, 383, 351, 342, 
+       109, 342, 347, 342, 342, 342, 342, 342, 
+       350, 342, 343, 344, 346, 346, 112, 109, 
+       342, 347, 342, 342, 342, 342, 342, 342, 
+       348, 342, 148, 149, 150, 151, 403, 287, 
+       76, 73, 285, 154, 155, 155, 144, 285, 
+       285, 148, 158, 285, 162, 404, 164, 165, 
+       4, 1, 161, 166, 161, 161, 35, 161, 
+       161, 161, 167, 161, 170, 149, 150, 151, 
+       405, 406, 76, 407, 161, 408, 161, 155, 
+       144, 161, 161, 170, 158, 161, 107, 409, 
+       409, 76, 407, 161, 166, 161, 161, 144, 
+       161, 410, 161, 161, 411, 161, 408, 161, 
+       408, 161, 412, 161, 207, 161, 410, 161, 
+       161, 161, 161, 408, 161, 170, 161, 222, 
+       107, 409, 409, 76, 407, 161, 166, 161, 
+       161, 161, 161, 161, 170, 161, 414, 413, 
+       415, 415, 413, 146, 413, 416, 413, 415, 
+       415, 413, 146, 413, 416, 413, 417, 413, 
+       413, 418, 413, 416, 413, 416, 413, 419, 
+       413, 420, 413, 417, 413, 413, 413, 413, 
+       416, 413, 148, 341, 341, 341, 341, 341, 
+       341, 341, 341, 341, 155, 341, 341, 341, 
+       341, 148, 341, 0
 };
 
 static const short _indic_syllable_machine_trans_targs[] = {
-       166, 188, 2, 194, 3, 5, 197, 6, 
-       8, 200, 9, 11, 203, 12, 14, 15, 
-       187, 17, 18, 202, 20, 21, 199, 23, 
-       24, 196, 205, 208, 212, 214, 218, 220, 
-       224, 226, 230, 232, 166, 255, 37, 261, 
-       38, 40, 264, 41, 43, 267, 44, 46, 
-       270, 47, 49, 50, 254, 52, 53, 269, 
-       55, 56, 266, 58, 59, 263, 272, 275, 
-       279, 281, 285, 287, 291, 293, 297, 300, 
-       166, 321, 72, 327, 166, 73, 75, 330, 
-       76, 78, 333, 79, 81, 336, 82, 84, 
-       85, 320, 87, 88, 335, 90, 91, 332, 
-       93, 94, 329, 338, 341, 345, 347, 351, 
-       353, 357, 359, 363, 166, 389, 106, 395, 
-       107, 109, 398, 110, 112, 401, 113, 115, 
-       404, 116, 118, 119, 388, 121, 122, 403, 
-       124, 125, 400, 127, 128, 397, 406, 409, 
-       413, 415, 419, 421, 425, 427, 431, 433, 
-       366, 142, 444, 144, 447, 438, 145, 147, 
-       450, 148, 150, 453, 151, 154, 155, 455, 
-       157, 158, 452, 160, 161, 449, 163, 164, 
-       446, 166, 458, 166, 167, 234, 301, 303, 
-       365, 367, 323, 368, 434, 435, 340, 456, 
-       463, 166, 168, 170, 34, 233, 190, 207, 
-       169, 33, 171, 228, 172, 174, 32, 227, 
-       173, 31, 175, 222, 176, 178, 30, 221, 
-       177, 29, 179, 216, 180, 182, 28, 215, 
-       181, 27, 183, 210, 184, 186, 26, 209, 
-       185, 25, 193, 0, 189, 192, 191, 166, 
-       1, 195, 4, 22, 198, 7, 19, 201, 
-       10, 16, 204, 13, 206, 211, 213, 217, 
-       219, 223, 225, 229, 231, 166, 235, 237, 
-       69, 299, 257, 274, 236, 68, 238, 295, 
-       239, 241, 67, 294, 240, 66, 242, 289, 
-       243, 245, 65, 288, 244, 64, 246, 283, 
-       247, 249, 63, 282, 248, 62, 250, 277, 
-       251, 253, 61, 276, 252, 60, 260, 35, 
-       256, 259, 258, 166, 36, 262, 39, 57, 
-       265, 42, 54, 268, 45, 51, 271, 48, 
-       273, 278, 280, 284, 286, 290, 292, 296, 
-       298, 166, 302, 103, 304, 361, 305, 307, 
-       102, 360, 306, 101, 308, 355, 309, 311, 
-       100, 354, 310, 99, 312, 349, 313, 315, 
-       98, 348, 314, 97, 316, 343, 317, 319, 
-       96, 342, 318, 95, 326, 70, 322, 325, 
-       324, 166, 71, 328, 74, 92, 331, 77, 
-       89, 334, 80, 86, 337, 83, 339, 344, 
-       346, 350, 352, 356, 358, 362, 364, 166, 
-       166, 369, 371, 138, 137, 391, 408, 370, 
-       372, 429, 373, 375, 136, 428, 374, 135, 
-       376, 423, 377, 379, 134, 422, 378, 133, 
-       380, 417, 381, 383, 132, 416, 382, 131, 
-       384, 411, 385, 387, 130, 410, 386, 129, 
-       394, 104, 390, 393, 392, 166, 105, 396, 
-       108, 126, 399, 111, 123, 402, 114, 120, 
-       405, 117, 407, 412, 414, 418, 420, 424, 
-       426, 430, 432, 139, 436, 437, 443, 440, 
-       140, 439, 442, 441, 141, 445, 143, 162, 
-       448, 146, 159, 451, 149, 156, 454, 152, 
-       153, 166, 457, 165, 460, 459, 462, 461, 
-       166
+       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
 };
 
 static const char _indic_syllable_machine_trans_actions[] = {
-       1, 0, 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, 2, 3, 0, 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, 2, 
-       4, 0, 0, 2, 5, 0, 0, 2, 
+       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, 6, 2, 6, 2, 
-       6, 2, 6, 2, 7, 0, 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, 
+       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, 
-       6, 0, 2, 0, 2, 0, 0, 0, 
-       2, 0, 0, 2, 0, 0, 0, 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, 8, 0, 11, 2, 2, 6, 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, 
@@ -885,38 +789,33 @@ static const char _indic_syllable_machine_trans_actions[] = {
        2, 0, 2, 2, 2, 0, 0, 2, 
        2, 0, 2, 2, 2, 0, 0, 2, 
        2, 0, 2, 0, 0, 0, 0, 14, 
-       0, 2, 0, 0, 2, 0, 0, 2, 
-       0, 0, 2, 0, 2, 2, 2, 2, 
-       2, 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, 0, 2, 0, 0, 
        2, 0, 0, 2, 0, 0, 2, 0, 
-       2, 2, 2, 2, 2, 2, 2, 2, 
-       2, 17, 6, 0, 6, 6, 6, 0, 
-       0, 6, 6, 0, 6, 6, 6, 0, 
-       0, 6, 6, 0, 6, 6, 6, 0, 
-       0, 6, 6, 0, 6, 6, 6, 0, 
-       0, 6, 6, 0, 6, 0, 0, 0, 
-       0, 18, 0, 2, 0, 0, 2, 0, 
-       0, 2, 0, 0, 2, 0, 2, 2, 
-       2, 2, 2, 2, 2, 2, 2, 19, 
-       20, 2, 0, 0, 0, 0, 2, 2, 
+       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, 21, 0, 2, 
-       0, 0, 2, 0, 0, 2, 0, 0, 
-       2, 0, 2, 2, 2, 2, 2, 2, 
-       2, 2, 2, 0, 0, 22, 2, 0, 
-       0, 0, 0, 0, 0, 2, 0, 0, 
-       2, 0, 0, 2, 0, 0, 2, 0, 
-       0, 23, 2, 0, 0, 0, 0, 0, 
-       24
+       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
 };
 
 static const char _indic_syllable_machine_to_state_actions[] = {
@@ -937,12 +836,10 @@ 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, 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, 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, 
@@ -972,12 +869,7 @@ 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
 };
 
 static const char _indic_syllable_machine_from_state_actions[] = {
@@ -998,10 +890,7 @@ 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, 10, 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, 
@@ -1034,11 +923,7 @@ 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
 };
 
 static const short _indic_syllable_machine_eof_trans[] = {
@@ -1046,67 +931,60 @@ 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, 37, 37, 37, 37, 37, 
+       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, 37, 37, 73, 73, 
-       77, 77, 73, 73, 73, 73, 73, 73, 
+       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, 109, 
-       109, 109, 109, 73, 1, 1, 1, 1, 
-       1, 1, 1, 1, 1, 1, 1, 1, 
-       1, 1, 1, 1, 1, 1, 1, 1, 
-       1, 1, 1, 1, 1, 170, 0, 186, 
-       186, 186, 186, 186, 186, 186, 186, 186, 
-       186, 186, 186, 186, 186, 186, 186, 186, 
-       186, 186, 186, 186, 186, 186, 186, 186, 
-       186, 186, 186, 186, 186, 186, 186, 186, 
-       186, 186, 186, 186, 186, 186, 186, 186, 
-       186, 186, 186, 186, 186, 186, 186, 186, 
-       186, 186, 186, 186, 186, 186, 186, 186, 
-       186, 186, 186, 186, 186, 186, 186, 186, 
-       186, 186, 254, 254, 254, 254, 254, 254, 
-       254, 254, 254, 254, 254, 254, 254, 254, 
-       254, 254, 254, 254, 254, 254, 254, 254, 
-       254, 254, 254, 254, 254, 254, 254, 254, 
-       254, 254, 254, 254, 254, 254, 254, 254, 
-       254, 254, 254, 254, 254, 254, 254, 254, 
-       254, 254, 254, 254, 254, 254, 254, 254, 
-       254, 254, 254, 254, 254, 254, 254, 254, 
-       254, 254, 254, 254, 254, 322, 322, 322, 
-       322, 322, 322, 322, 322, 322, 322, 322, 
-       322, 322, 322, 322, 322, 322, 322, 322, 
-       322, 322, 322, 322, 322, 322, 322, 322, 
-       322, 322, 322, 322, 322, 322, 322, 322, 
-       322, 322, 322, 322, 322, 322, 322, 322, 
-       322, 322, 322, 322, 322, 322, 322, 322, 
-       322, 322, 322, 322, 322, 322, 322, 322, 
-       322, 322, 322, 322, 322, 384, 322, 384, 
-       385, 385, 385, 385, 385, 385, 385, 385, 
-       385, 385, 385, 385, 385, 385, 385, 385, 
-       385, 385, 385, 385, 385, 385, 385, 385, 
-       385, 385, 385, 385, 385, 385, 385, 385, 
-       385, 385, 385, 385, 385, 385, 385, 385, 
-       385, 385, 385, 385, 385, 385, 385, 385, 
-       385, 385, 385, 385, 385, 385, 385, 385, 
-       385, 385, 385, 385, 385, 385, 385, 385, 
-       385, 385, 322, 186, 186, 186, 186, 186, 
-       186, 186, 186, 186, 186, 186, 186, 186, 
-       186, 186, 186, 186, 186, 186, 186, 186, 
-       474, 474, 474, 474, 474, 474, 474, 384
+       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
 };
 
-static const int indic_syllable_machine_start = 166;
-static const int indic_syllable_machine_first_final = 166;
+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 = 166;
+static const int indic_syllable_machine_en_main = 138;
 
 
 #line 36 "hb-ot-shape-complex-indic-machine.rl"
@@ -1133,7 +1011,7 @@ find_syllables (hb_buffer_t *buffer)
   int cs;
   hb_glyph_info_t *info = buffer->info;
   
-#line 1137 "hb-ot-shape-complex-indic-machine.hh"
+#line 1015 "hb-ot-shape-complex-indic-machine.hh"
        {
        cs = indic_syllable_machine_start;
        ts = 0;
@@ -1150,7 +1028,7 @@ find_syllables (hb_buffer_t *buffer)
   unsigned int last = 0;
   unsigned int syllable_serial = 1;
   
-#line 1154 "hb-ot-shape-complex-indic-machine.hh"
+#line 1032 "hb-ot-shape-complex-indic-machine.hh"
        {
        int _slen;
        int _trans;
@@ -1164,7 +1042,7 @@ _resume:
 #line 1 "NONE"
        {ts = p;}
        break;
-#line 1168 "hb-ot-shape-complex-indic-machine.hh"
+#line 1046 "hb-ot-shape-complex-indic-machine.hh"
        }
 
        _keys = _indic_syllable_machine_trans_keys + (cs<<1);
@@ -1287,7 +1165,7 @@ _eof_trans:
 #line 88 "hb-ot-shape-complex-indic-machine.rl"
        {act = 6;}
        break;
-#line 1291 "hb-ot-shape-complex-indic-machine.hh"
+#line 1169 "hb-ot-shape-complex-indic-machine.hh"
        }
 
 _again:
@@ -1296,7 +1174,7 @@ _again:
 #line 1 "NONE"
        {ts = 0;}
        break;
-#line 1300 "hb-ot-shape-complex-indic-machine.hh"
+#line 1178 "hb-ot-shape-complex-indic-machine.hh"
        }
 
        if ( ++p != pe )
index d384a68..c5c5fe6 100644 (file)
@@ -69,7 +69,7 @@ syllable_tail = (z?.SM.SM?.ZWNJ?)? A{0,3}?;
 halant_group = (z?.H.(ZWJ.N?)?);
 final_halant_group = halant_group | H.ZWNJ;
 medial_group = CM?;
-halant_or_matra_group = (final_halant_group | (H.ZWJ)? matra_group{0,4});
+halant_or_matra_group = (final_halant_group | matra_group{0,4});
 
 
 consonant_syllable =   (Repha|CS)? (cn.halant_group){0,4} cn medial_group halant_or_matra_group syllable_tail;