gfx/harfbuzz/src/hb-ot-shape-complex-indic-machine.hh

Fri, 16 Jan 2015 18:13:44 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 16 Jan 2015 18:13:44 +0100
branch
TOR_BUG_9701
changeset 14
925c144e1f1f
permissions
-rw-r--r--

Integrate suggestion from review to improve consistency with existing code.

michael@0 1
michael@0 2 #line 1 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 3 /*
michael@0 4 * Copyright © 2011,2012 Google, Inc.
michael@0 5 *
michael@0 6 * This is part of HarfBuzz, a text shaping library.
michael@0 7 *
michael@0 8 * Permission is hereby granted, without written agreement and without
michael@0 9 * license or royalty fees, to use, copy, modify, and distribute this
michael@0 10 * software and its documentation for any purpose, provided that the
michael@0 11 * above copyright notice and the following two paragraphs appear in
michael@0 12 * all copies of this software.
michael@0 13 *
michael@0 14 * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
michael@0 15 * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
michael@0 16 * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
michael@0 17 * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
michael@0 18 * DAMAGE.
michael@0 19 *
michael@0 20 * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
michael@0 21 * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
michael@0 22 * FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
michael@0 23 * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
michael@0 24 * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
michael@0 25 *
michael@0 26 * Google Author(s): Behdad Esfahbod
michael@0 27 */
michael@0 28
michael@0 29 #ifndef HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH
michael@0 30 #define HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH
michael@0 31
michael@0 32 #include "hb-private.hh"
michael@0 33
michael@0 34
michael@0 35 #line 36 "hb-ot-shape-complex-indic-machine.hh.tmp"
michael@0 36 static const unsigned char _indic_syllable_machine_trans_keys[] = {
michael@0 37 1u, 16u, 13u, 13u, 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u,
michael@0 38 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, 4u, 4u, 6u, 6u,
michael@0 39 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u,
michael@0 40 6u, 6u, 16u, 16u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u,
michael@0 41 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 1u, 16u, 13u, 13u, 5u, 7u, 5u, 7u,
michael@0 42 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u,
michael@0 43 5u, 7u, 7u, 7u, 4u, 4u, 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u,
michael@0 44 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 14u, 4u, 14u,
michael@0 45 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u,
michael@0 46 1u, 16u, 13u, 13u, 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u,
michael@0 47 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, 4u, 4u, 6u, 6u,
michael@0 48 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u,
michael@0 49 6u, 6u, 16u, 16u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u,
michael@0 50 4u, 14u, 4u, 14u, 4u, 14u, 1u, 16u, 13u, 13u, 5u, 7u, 5u, 7u, 7u, 7u,
michael@0 51 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u,
michael@0 52 7u, 7u, 4u, 4u, 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u,
michael@0 53 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 14u, 4u, 14u, 4u, 14u,
michael@0 54 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u, 4u, 14u,
michael@0 55 4u, 14u, 5u, 7u, 5u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, 5u, 7u, 5u, 7u,
michael@0 56 7u, 7u, 5u, 7u, 5u, 7u, 7u, 7u, 1u, 16u, 13u, 13u, 4u, 4u, 6u, 6u,
michael@0 57 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u, 6u, 6u, 16u, 16u, 4u, 7u,
michael@0 58 6u, 6u, 16u, 16u, 1u, 31u, 3u, 31u, 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u,
michael@0 59 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u, 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u,
michael@0 60 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u, 3u, 31u, 4u, 31u, 5u, 18u, 8u, 18u,
michael@0 61 5u, 10u, 9u, 10u, 9u, 10u, 9u, 9u, 5u, 10u, 3u, 18u, 3u, 18u, 8u, 18u,
michael@0 62 3u, 10u, 8u, 10u, 3u, 18u, 3u, 18u, 3u, 18u, 3u, 18u, 4u, 18u, 5u, 18u,
michael@0 63 3u, 18u, 4u, 18u, 5u, 18u, 3u, 18u, 4u, 18u, 5u, 18u, 3u, 18u, 4u, 18u,
michael@0 64 6u, 18u, 3u, 18u, 1u, 18u, 4u, 31u, 4u, 18u, 3u, 31u, 3u, 31u, 1u, 18u,
michael@0 65 1u, 18u, 1u, 18u, 1u, 18u, 1u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u,
michael@0 66 1u, 18u, 1u, 18u, 1u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u, 1u, 18u,
michael@0 67 1u, 18u, 1u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u, 1u, 18u, 1u, 18u,
michael@0 68 1u, 18u, 3u, 31u, 3u, 31u, 3u, 31u, 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u,
michael@0 69 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u, 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u,
michael@0 70 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u, 3u, 31u, 4u, 31u, 5u, 18u, 8u, 18u,
michael@0 71 5u, 10u, 9u, 10u, 9u, 10u, 9u, 9u, 5u, 10u, 3u, 18u, 3u, 18u, 8u, 18u,
michael@0 72 3u, 10u, 8u, 10u, 3u, 18u, 3u, 18u, 3u, 18u, 3u, 18u, 4u, 18u, 5u, 18u,
michael@0 73 3u, 18u, 4u, 18u, 5u, 18u, 3u, 18u, 4u, 18u, 5u, 18u, 3u, 18u, 4u, 18u,
michael@0 74 6u, 18u, 3u, 18u, 1u, 18u, 4u, 31u, 4u, 18u, 3u, 31u, 3u, 31u, 1u, 18u,
michael@0 75 1u, 18u, 1u, 18u, 1u, 18u, 1u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u,
michael@0 76 1u, 18u, 1u, 18u, 1u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u, 1u, 18u,
michael@0 77 1u, 18u, 1u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u, 1u, 18u, 1u, 18u,
michael@0 78 4u, 14u, 1u, 18u, 3u, 31u, 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u, 3u, 31u,
michael@0 79 4u, 31u, 1u, 18u, 3u, 31u, 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u, 3u, 31u,
michael@0 80 4u, 31u, 1u, 18u, 3u, 31u, 3u, 31u, 4u, 31u, 5u, 18u, 8u, 18u, 5u, 10u,
michael@0 81 9u, 10u, 9u, 10u, 9u, 9u, 5u, 10u, 3u, 18u, 3u, 18u, 8u, 18u, 3u, 10u,
michael@0 82 8u, 10u, 3u, 18u, 3u, 18u, 3u, 18u, 3u, 18u, 4u, 18u, 5u, 18u, 3u, 18u,
michael@0 83 4u, 18u, 5u, 18u, 3u, 18u, 4u, 18u, 5u, 18u, 3u, 18u, 4u, 18u, 6u, 18u,
michael@0 84 3u, 18u, 1u, 18u, 4u, 31u, 4u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u,
michael@0 85 1u, 18u, 1u, 18u, 1u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u, 1u, 18u,
michael@0 86 1u, 18u, 1u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u, 1u, 18u, 1u, 18u,
michael@0 87 1u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u, 1u, 18u, 1u, 18u, 1u, 18u,
michael@0 88 4u, 14u, 3u, 31u, 4u, 14u, 3u, 31u, 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u,
michael@0 89 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u, 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u,
michael@0 90 3u, 31u, 4u, 31u, 1u, 18u, 3u, 31u, 3u, 31u, 4u, 31u, 5u, 18u, 8u, 18u,
michael@0 91 5u, 10u, 9u, 10u, 9u, 10u, 9u, 9u, 5u, 10u, 3u, 18u, 3u, 18u, 8u, 18u,
michael@0 92 3u, 10u, 8u, 10u, 3u, 18u, 3u, 18u, 3u, 18u, 3u, 18u, 4u, 18u, 5u, 18u,
michael@0 93 3u, 18u, 4u, 18u, 5u, 18u, 3u, 18u, 4u, 18u, 5u, 18u, 3u, 18u, 4u, 18u,
michael@0 94 6u, 18u, 3u, 18u, 1u, 18u, 4u, 31u, 4u, 18u, 3u, 31u, 3u, 31u, 1u, 18u,
michael@0 95 1u, 18u, 1u, 18u, 1u, 18u, 1u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u,
michael@0 96 1u, 18u, 1u, 18u, 1u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u, 1u, 18u,
michael@0 97 1u, 18u, 1u, 18u, 3u, 31u, 3u, 31u, 1u, 18u, 1u, 18u, 1u, 18u, 1u, 18u,
michael@0 98 1u, 18u, 3u, 31u, 1u, 31u, 3u, 31u, 1u, 31u, 4u, 18u, 1u, 18u, 3u, 31u,
michael@0 99 3u, 31u, 4u, 31u, 5u, 10u, 9u, 10u, 9u, 10u, 9u, 9u, 5u, 10u, 3u, 10u,
michael@0 100 8u, 10u, 3u, 31u, 3u, 31u, 1u, 18u, 3u, 18u, 4u, 18u, 5u, 18u, 3u, 18u,
michael@0 101 4u, 18u, 5u, 18u, 3u, 18u, 4u, 18u, 5u, 18u, 3u, 18u, 4u, 18u, 8u, 18u,
michael@0 102 3u, 18u, 3u, 18u, 8u, 18u, 3u, 18u, 3u, 18u, 1u, 18u, 3u, 10u, 8u, 10u,
michael@0 103 5u, 10u, 9u, 10u, 9u, 10u, 9u, 9u, 5u, 10u, 0
michael@0 104 };
michael@0 105
michael@0 106 static const char _indic_syllable_machine_key_spans[] = {
michael@0 107 16, 1, 3, 3, 1, 3, 3, 1,
michael@0 108 3, 3, 1, 3, 3, 1, 1, 1,
michael@0 109 1, 4, 1, 1, 4, 1, 1, 4,
michael@0 110 1, 1, 11, 11, 11, 11, 11, 11,
michael@0 111 11, 11, 11, 11, 16, 1, 3, 3,
michael@0 112 1, 3, 3, 1, 3, 3, 1, 3,
michael@0 113 3, 1, 1, 1, 1, 4, 1, 1,
michael@0 114 4, 1, 1, 4, 1, 1, 11, 11,
michael@0 115 11, 11, 11, 11, 11, 11, 11, 11,
michael@0 116 16, 1, 3, 3, 1, 3, 3, 1,
michael@0 117 3, 3, 1, 3, 3, 1, 1, 1,
michael@0 118 1, 4, 1, 1, 4, 1, 1, 4,
michael@0 119 1, 1, 11, 11, 11, 11, 11, 11,
michael@0 120 11, 11, 11, 16, 1, 3, 3, 1,
michael@0 121 3, 3, 1, 3, 3, 1, 3, 3,
michael@0 122 1, 1, 1, 1, 4, 1, 1, 4,
michael@0 123 1, 1, 4, 1, 1, 11, 11, 11,
michael@0 124 11, 11, 11, 11, 11, 11, 11, 11,
michael@0 125 11, 3, 3, 3, 3, 1, 3, 3,
michael@0 126 1, 3, 3, 1, 16, 1, 1, 1,
michael@0 127 1, 4, 1, 1, 4, 1, 1, 4,
michael@0 128 1, 1, 31, 29, 29, 28, 18, 29,
michael@0 129 29, 28, 18, 29, 29, 28, 18, 29,
michael@0 130 29, 28, 18, 29, 29, 28, 14, 11,
michael@0 131 6, 2, 2, 1, 6, 16, 16, 11,
michael@0 132 8, 3, 16, 16, 16, 16, 15, 14,
michael@0 133 16, 15, 14, 16, 15, 14, 16, 15,
michael@0 134 13, 16, 18, 28, 15, 29, 29, 18,
michael@0 135 18, 18, 18, 18, 29, 29, 18, 18,
michael@0 136 18, 18, 18, 29, 29, 18, 18, 18,
michael@0 137 18, 18, 29, 29, 18, 18, 18, 18,
michael@0 138 18, 29, 29, 29, 29, 28, 18, 29,
michael@0 139 29, 28, 18, 29, 29, 28, 18, 29,
michael@0 140 29, 28, 18, 29, 29, 28, 14, 11,
michael@0 141 6, 2, 2, 1, 6, 16, 16, 11,
michael@0 142 8, 3, 16, 16, 16, 16, 15, 14,
michael@0 143 16, 15, 14, 16, 15, 14, 16, 15,
michael@0 144 13, 16, 18, 28, 15, 29, 29, 18,
michael@0 145 18, 18, 18, 18, 29, 29, 18, 18,
michael@0 146 18, 18, 18, 29, 29, 18, 18, 18,
michael@0 147 18, 18, 29, 29, 18, 18, 18, 18,
michael@0 148 11, 18, 29, 29, 28, 18, 29, 29,
michael@0 149 28, 18, 29, 29, 28, 18, 29, 29,
michael@0 150 28, 18, 29, 29, 28, 14, 11, 6,
michael@0 151 2, 2, 1, 6, 16, 16, 11, 8,
michael@0 152 3, 16, 16, 16, 16, 15, 14, 16,
michael@0 153 15, 14, 16, 15, 14, 16, 15, 13,
michael@0 154 16, 18, 28, 15, 29, 29, 18, 18,
michael@0 155 18, 18, 18, 29, 29, 18, 18, 18,
michael@0 156 18, 18, 29, 29, 18, 18, 18, 18,
michael@0 157 18, 29, 29, 18, 18, 18, 18, 18,
michael@0 158 11, 29, 11, 29, 29, 28, 18, 29,
michael@0 159 29, 28, 18, 29, 29, 28, 18, 29,
michael@0 160 29, 28, 18, 29, 29, 28, 14, 11,
michael@0 161 6, 2, 2, 1, 6, 16, 16, 11,
michael@0 162 8, 3, 16, 16, 16, 16, 15, 14,
michael@0 163 16, 15, 14, 16, 15, 14, 16, 15,
michael@0 164 13, 16, 18, 28, 15, 29, 29, 18,
michael@0 165 18, 18, 18, 18, 29, 29, 18, 18,
michael@0 166 18, 18, 18, 29, 29, 18, 18, 18,
michael@0 167 18, 18, 29, 29, 18, 18, 18, 18,
michael@0 168 18, 29, 31, 29, 31, 15, 18, 29,
michael@0 169 29, 28, 6, 2, 2, 1, 6, 8,
michael@0 170 3, 29, 29, 18, 16, 15, 14, 16,
michael@0 171 15, 14, 16, 15, 14, 16, 15, 11,
michael@0 172 16, 16, 11, 16, 16, 18, 8, 3,
michael@0 173 6, 2, 2, 1, 6
michael@0 174 };
michael@0 175
michael@0 176 static const short _indic_syllable_machine_index_offsets[] = {
michael@0 177 0, 17, 19, 23, 27, 29, 33, 37,
michael@0 178 39, 43, 47, 49, 53, 57, 59, 61,
michael@0 179 63, 65, 70, 72, 74, 79, 81, 83,
michael@0 180 88, 90, 92, 104, 116, 128, 140, 152,
michael@0 181 164, 176, 188, 200, 212, 229, 231, 235,
michael@0 182 239, 241, 245, 249, 251, 255, 259, 261,
michael@0 183 265, 269, 271, 273, 275, 277, 282, 284,
michael@0 184 286, 291, 293, 295, 300, 302, 304, 316,
michael@0 185 328, 340, 352, 364, 376, 388, 400, 412,
michael@0 186 424, 441, 443, 447, 451, 453, 457, 461,
michael@0 187 463, 467, 471, 473, 477, 481, 483, 485,
michael@0 188 487, 489, 494, 496, 498, 503, 505, 507,
michael@0 189 512, 514, 516, 528, 540, 552, 564, 576,
michael@0 190 588, 600, 612, 624, 641, 643, 647, 651,
michael@0 191 653, 657, 661, 663, 667, 671, 673, 677,
michael@0 192 681, 683, 685, 687, 689, 694, 696, 698,
michael@0 193 703, 705, 707, 712, 714, 716, 728, 740,
michael@0 194 752, 764, 776, 788, 800, 812, 824, 836,
michael@0 195 848, 860, 864, 868, 872, 876, 878, 882,
michael@0 196 886, 888, 892, 896, 898, 915, 917, 919,
michael@0 197 921, 923, 928, 930, 932, 937, 939, 941,
michael@0 198 946, 948, 950, 982, 1012, 1042, 1071, 1090,
michael@0 199 1120, 1150, 1179, 1198, 1228, 1258, 1287, 1306,
michael@0 200 1336, 1366, 1395, 1414, 1444, 1474, 1503, 1518,
michael@0 201 1530, 1537, 1540, 1543, 1545, 1552, 1569, 1586,
michael@0 202 1598, 1607, 1611, 1628, 1645, 1662, 1679, 1695,
michael@0 203 1710, 1727, 1743, 1758, 1775, 1791, 1806, 1823,
michael@0 204 1839, 1853, 1870, 1889, 1918, 1934, 1964, 1994,
michael@0 205 2013, 2032, 2051, 2070, 2089, 2119, 2149, 2168,
michael@0 206 2187, 2206, 2225, 2244, 2274, 2304, 2323, 2342,
michael@0 207 2361, 2380, 2399, 2429, 2459, 2478, 2497, 2516,
michael@0 208 2535, 2554, 2584, 2614, 2644, 2674, 2703, 2722,
michael@0 209 2752, 2782, 2811, 2830, 2860, 2890, 2919, 2938,
michael@0 210 2968, 2998, 3027, 3046, 3076, 3106, 3135, 3150,
michael@0 211 3162, 3169, 3172, 3175, 3177, 3184, 3201, 3218,
michael@0 212 3230, 3239, 3243, 3260, 3277, 3294, 3311, 3327,
michael@0 213 3342, 3359, 3375, 3390, 3407, 3423, 3438, 3455,
michael@0 214 3471, 3485, 3502, 3521, 3550, 3566, 3596, 3626,
michael@0 215 3645, 3664, 3683, 3702, 3721, 3751, 3781, 3800,
michael@0 216 3819, 3838, 3857, 3876, 3906, 3936, 3955, 3974,
michael@0 217 3993, 4012, 4031, 4061, 4091, 4110, 4129, 4148,
michael@0 218 4167, 4179, 4198, 4228, 4258, 4287, 4306, 4336,
michael@0 219 4366, 4395, 4414, 4444, 4474, 4503, 4522, 4552,
michael@0 220 4582, 4611, 4630, 4660, 4690, 4719, 4734, 4746,
michael@0 221 4753, 4756, 4759, 4761, 4768, 4785, 4802, 4814,
michael@0 222 4823, 4827, 4844, 4861, 4878, 4895, 4911, 4926,
michael@0 223 4943, 4959, 4974, 4991, 5007, 5022, 5039, 5055,
michael@0 224 5069, 5086, 5105, 5134, 5150, 5180, 5210, 5229,
michael@0 225 5248, 5267, 5286, 5305, 5335, 5365, 5384, 5403,
michael@0 226 5422, 5441, 5460, 5490, 5520, 5539, 5558, 5577,
michael@0 227 5596, 5615, 5645, 5675, 5694, 5713, 5732, 5751,
michael@0 228 5770, 5782, 5812, 5824, 5854, 5884, 5913, 5932,
michael@0 229 5962, 5992, 6021, 6040, 6070, 6100, 6129, 6148,
michael@0 230 6178, 6208, 6237, 6256, 6286, 6316, 6345, 6360,
michael@0 231 6372, 6379, 6382, 6385, 6387, 6394, 6411, 6428,
michael@0 232 6440, 6449, 6453, 6470, 6487, 6504, 6521, 6537,
michael@0 233 6552, 6569, 6585, 6600, 6617, 6633, 6648, 6665,
michael@0 234 6681, 6695, 6712, 6731, 6760, 6776, 6806, 6836,
michael@0 235 6855, 6874, 6893, 6912, 6931, 6961, 6991, 7010,
michael@0 236 7029, 7048, 7067, 7086, 7116, 7146, 7165, 7184,
michael@0 237 7203, 7222, 7241, 7271, 7301, 7320, 7339, 7358,
michael@0 238 7377, 7396, 7426, 7458, 7488, 7520, 7536, 7555,
michael@0 239 7585, 7615, 7644, 7651, 7654, 7657, 7659, 7666,
michael@0 240 7675, 7679, 7709, 7739, 7758, 7775, 7791, 7806,
michael@0 241 7823, 7839, 7854, 7871, 7887, 7902, 7919, 7935,
michael@0 242 7947, 7964, 7981, 7993, 8010, 8027, 8046, 8055,
michael@0 243 8059, 8066, 8069, 8072, 8074
michael@0 244 };
michael@0 245
michael@0 246 static const short _indic_syllable_machine_indicies[] = {
michael@0 247 1, 2, 0, 0, 0, 0, 0, 0,
michael@0 248 0, 0, 0, 0, 0, 0, 0, 1,
michael@0 249 0, 3, 0, 4, 4, 5, 0, 6,
michael@0 250 6, 5, 0, 5, 0, 7, 7, 8,
michael@0 251 0, 9, 9, 8, 0, 8, 0, 10,
michael@0 252 10, 11, 0, 12, 12, 11, 0, 11,
michael@0 253 0, 13, 13, 14, 0, 15, 15, 14,
michael@0 254 0, 14, 0, 16, 0, 17, 0, 18,
michael@0 255 0, 19, 13, 13, 14, 0, 20, 0,
michael@0 256 21, 0, 22, 10, 10, 11, 0, 23,
michael@0 257 0, 24, 0, 25, 7, 7, 8, 0,
michael@0 258 26, 0, 27, 0, 28, 4, 4, 5,
michael@0 259 0, 0, 0, 0, 0, 0, 28, 0,
michael@0 260 28, 4, 4, 5, 0, 0, 0, 0,
michael@0 261 0, 29, 28, 0, 30, 4, 4, 5,
michael@0 262 0, 0, 0, 0, 0, 0, 30, 0,
michael@0 263 30, 4, 4, 5, 0, 0, 0, 0,
michael@0 264 0, 31, 30, 0, 32, 4, 4, 5,
michael@0 265 0, 0, 0, 0, 0, 0, 32, 0,
michael@0 266 32, 4, 4, 5, 0, 0, 0, 0,
michael@0 267 0, 33, 32, 0, 34, 4, 4, 5,
michael@0 268 0, 0, 0, 0, 0, 0, 34, 0,
michael@0 269 34, 4, 4, 5, 0, 0, 0, 0,
michael@0 270 0, 35, 34, 0, 36, 4, 4, 5,
michael@0 271 0, 0, 0, 0, 0, 0, 36, 0,
michael@0 272 36, 4, 4, 5, 0, 0, 0, 0,
michael@0 273 0, 37, 36, 0, 39, 40, 38, 38,
michael@0 274 38, 38, 38, 38, 38, 38, 38, 38,
michael@0 275 38, 38, 38, 39, 38, 41, 38, 42,
michael@0 276 42, 43, 38, 44, 44, 43, 38, 43,
michael@0 277 38, 45, 45, 46, 38, 47, 47, 46,
michael@0 278 38, 46, 38, 48, 48, 49, 38, 50,
michael@0 279 50, 49, 38, 49, 38, 51, 51, 52,
michael@0 280 38, 53, 53, 52, 38, 52, 38, 54,
michael@0 281 38, 55, 38, 56, 38, 57, 51, 51,
michael@0 282 52, 38, 58, 38, 59, 38, 60, 48,
michael@0 283 48, 49, 38, 61, 38, 62, 38, 63,
michael@0 284 45, 45, 46, 38, 64, 38, 65, 38,
michael@0 285 66, 42, 42, 43, 38, 38, 38, 38,
michael@0 286 38, 38, 66, 38, 66, 42, 42, 43,
michael@0 287 38, 38, 38, 38, 38, 67, 66, 38,
michael@0 288 68, 42, 42, 43, 38, 38, 38, 38,
michael@0 289 38, 38, 68, 38, 68, 42, 42, 43,
michael@0 290 38, 38, 38, 38, 38, 69, 68, 38,
michael@0 291 70, 42, 42, 43, 38, 38, 38, 38,
michael@0 292 38, 38, 70, 38, 70, 42, 42, 43,
michael@0 293 38, 38, 38, 38, 38, 71, 70, 38,
michael@0 294 72, 42, 42, 43, 38, 38, 38, 38,
michael@0 295 38, 38, 72, 38, 72, 42, 42, 43,
michael@0 296 38, 38, 38, 38, 38, 73, 72, 38,
michael@0 297 74, 42, 42, 43, 38, 38, 38, 38,
michael@0 298 38, 38, 74, 38, 74, 42, 42, 43,
michael@0 299 38, 38, 38, 38, 38, 75, 74, 38,
michael@0 300 77, 78, 76, 76, 76, 76, 76, 76,
michael@0 301 76, 76, 76, 76, 76, 76, 76, 77,
michael@0 302 76, 79, 76, 80, 80, 81, 76, 83,
michael@0 303 83, 81, 82, 81, 82, 84, 84, 85,
michael@0 304 76, 86, 86, 85, 76, 85, 76, 87,
michael@0 305 87, 88, 76, 89, 89, 88, 76, 88,
michael@0 306 76, 90, 90, 91, 76, 92, 92, 91,
michael@0 307 76, 91, 76, 93, 76, 94, 76, 95,
michael@0 308 76, 96, 90, 90, 91, 76, 97, 76,
michael@0 309 98, 76, 99, 87, 87, 88, 76, 100,
michael@0 310 76, 101, 76, 102, 84, 84, 85, 76,
michael@0 311 103, 76, 104, 76, 105, 80, 80, 81,
michael@0 312 76, 76, 76, 76, 76, 76, 105, 76,
michael@0 313 105, 80, 80, 81, 76, 76, 76, 76,
michael@0 314 76, 106, 105, 76, 107, 80, 80, 81,
michael@0 315 76, 76, 76, 76, 76, 76, 107, 76,
michael@0 316 107, 80, 80, 81, 76, 76, 76, 76,
michael@0 317 76, 108, 107, 76, 109, 80, 80, 81,
michael@0 318 76, 76, 76, 76, 76, 76, 109, 76,
michael@0 319 109, 80, 80, 81, 76, 76, 76, 76,
michael@0 320 76, 110, 109, 76, 111, 80, 80, 81,
michael@0 321 82, 82, 82, 82, 82, 82, 111, 82,
michael@0 322 111, 80, 80, 81, 76, 76, 76, 76,
michael@0 323 76, 112, 111, 76, 113, 80, 80, 81,
michael@0 324 76, 76, 76, 76, 76, 76, 113, 76,
michael@0 325 115, 116, 114, 114, 114, 114, 114, 114,
michael@0 326 114, 114, 114, 114, 114, 114, 114, 115,
michael@0 327 114, 117, 114, 118, 118, 119, 114, 120,
michael@0 328 120, 119, 114, 119, 114, 121, 121, 122,
michael@0 329 114, 123, 123, 122, 114, 122, 114, 124,
michael@0 330 124, 125, 114, 126, 126, 125, 114, 125,
michael@0 331 114, 127, 127, 128, 114, 129, 129, 128,
michael@0 332 114, 128, 114, 130, 114, 131, 114, 132,
michael@0 333 114, 133, 127, 127, 128, 114, 134, 114,
michael@0 334 135, 114, 136, 124, 124, 125, 114, 137,
michael@0 335 114, 138, 114, 139, 121, 121, 122, 114,
michael@0 336 140, 114, 141, 114, 142, 118, 118, 119,
michael@0 337 114, 114, 114, 114, 114, 114, 142, 114,
michael@0 338 142, 118, 118, 119, 114, 114, 114, 114,
michael@0 339 114, 143, 142, 114, 144, 118, 118, 119,
michael@0 340 114, 114, 114, 114, 114, 114, 144, 114,
michael@0 341 144, 118, 118, 119, 114, 114, 114, 114,
michael@0 342 114, 145, 144, 114, 146, 118, 118, 119,
michael@0 343 114, 114, 114, 114, 114, 114, 146, 114,
michael@0 344 146, 118, 118, 119, 114, 114, 114, 114,
michael@0 345 114, 147, 146, 114, 148, 118, 118, 119,
michael@0 346 114, 114, 114, 114, 114, 114, 148, 114,
michael@0 347 148, 118, 118, 119, 114, 114, 114, 114,
michael@0 348 114, 149, 148, 114, 150, 118, 118, 119,
michael@0 349 114, 114, 114, 114, 114, 114, 150, 114,
michael@0 350 150, 118, 118, 119, 114, 114, 114, 114,
michael@0 351 114, 151, 150, 114, 113, 80, 80, 81,
michael@0 352 76, 76, 76, 76, 76, 152, 113, 76,
michael@0 353 111, 80, 80, 81, 0, 0, 0, 0,
michael@0 354 0, 153, 111, 0, 154, 154, 155, 0,
michael@0 355 6, 6, 155, 0, 156, 156, 157, 0,
michael@0 356 158, 158, 157, 0, 157, 0, 159, 159,
michael@0 357 160, 0, 161, 161, 160, 0, 160, 0,
michael@0 358 162, 162, 163, 0, 164, 164, 163, 0,
michael@0 359 163, 0, 165, 166, 0, 0, 0, 0,
michael@0 360 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 361 0, 165, 0, 167, 0, 168, 0, 169,
michael@0 362 0, 170, 0, 171, 162, 162, 163, 0,
michael@0 363 172, 0, 173, 0, 174, 159, 159, 160,
michael@0 364 0, 175, 0, 176, 0, 177, 156, 156,
michael@0 365 157, 0, 178, 0, 179, 0, 181, 182,
michael@0 366 183, 184, 185, 186, 81, 187, 188, 189,
michael@0 367 190, 190, 152, 191, 192, 193, 194, 195,
michael@0 368 180, 180, 180, 180, 180, 180, 180, 180,
michael@0 369 180, 180, 180, 180, 196, 180, 198, 199,
michael@0 370 200, 201, 5, 202, 203, 204, 197, 197,
michael@0 371 37, 205, 197, 197, 206, 207, 197, 197,
michael@0 372 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 373 197, 197, 208, 197, 209, 199, 210, 210,
michael@0 374 5, 202, 203, 204, 197, 197, 197, 205,
michael@0 375 197, 197, 206, 207, 197, 197, 197, 197,
michael@0 376 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 377 208, 197, 199, 210, 210, 5, 202, 203,
michael@0 378 204, 197, 197, 197, 205, 197, 197, 206,
michael@0 379 207, 197, 197, 197, 197, 197, 197, 197,
michael@0 380 197, 197, 197, 197, 197, 208, 197, 211,
michael@0 381 197, 197, 197, 18, 212, 197, 202, 203,
michael@0 382 204, 197, 197, 197, 213, 197, 211, 197,
michael@0 383 207, 197, 214, 215, 216, 217, 5, 202,
michael@0 384 203, 204, 197, 197, 35, 218, 197, 197,
michael@0 385 206, 207, 197, 197, 197, 197, 197, 197,
michael@0 386 197, 197, 197, 197, 197, 197, 208, 197,
michael@0 387 219, 215, 220, 220, 5, 202, 203, 204,
michael@0 388 197, 197, 197, 218, 197, 197, 206, 207,
michael@0 389 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 390 197, 197, 197, 197, 208, 197, 215, 220,
michael@0 391 220, 5, 202, 203, 204, 197, 197, 197,
michael@0 392 218, 197, 197, 206, 207, 197, 197, 197,
michael@0 393 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 394 197, 208, 197, 221, 197, 197, 197, 18,
michael@0 395 222, 197, 202, 203, 204, 197, 197, 197,
michael@0 396 213, 197, 221, 197, 207, 197, 223, 224,
michael@0 397 225, 226, 5, 202, 203, 204, 197, 197,
michael@0 398 33, 227, 197, 197, 206, 207, 197, 197,
michael@0 399 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 400 197, 197, 208, 197, 228, 224, 229, 229,
michael@0 401 5, 202, 203, 204, 197, 197, 197, 227,
michael@0 402 197, 197, 206, 207, 197, 197, 197, 197,
michael@0 403 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 404 208, 197, 224, 229, 229, 5, 202, 203,
michael@0 405 204, 197, 197, 197, 227, 197, 197, 206,
michael@0 406 207, 197, 197, 197, 197, 197, 197, 197,
michael@0 407 197, 197, 197, 197, 197, 208, 197, 230,
michael@0 408 197, 197, 197, 18, 231, 197, 202, 203,
michael@0 409 204, 197, 197, 197, 213, 197, 230, 197,
michael@0 410 207, 197, 232, 233, 234, 235, 5, 202,
michael@0 411 203, 204, 197, 197, 31, 236, 197, 197,
michael@0 412 206, 207, 197, 197, 197, 197, 197, 197,
michael@0 413 197, 197, 197, 197, 197, 197, 208, 197,
michael@0 414 237, 233, 238, 238, 5, 202, 203, 204,
michael@0 415 197, 197, 197, 236, 197, 197, 206, 207,
michael@0 416 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 417 197, 197, 197, 197, 208, 197, 233, 238,
michael@0 418 238, 5, 202, 203, 204, 197, 197, 197,
michael@0 419 236, 197, 197, 206, 207, 197, 197, 197,
michael@0 420 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 421 197, 208, 197, 239, 197, 197, 197, 18,
michael@0 422 240, 197, 202, 203, 204, 197, 197, 197,
michael@0 423 213, 197, 239, 197, 207, 197, 241, 242,
michael@0 424 243, 244, 5, 202, 203, 204, 197, 197,
michael@0 425 29, 245, 197, 197, 206, 207, 197, 197,
michael@0 426 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 427 197, 197, 208, 197, 246, 242, 247, 247,
michael@0 428 5, 202, 203, 204, 197, 197, 197, 245,
michael@0 429 197, 197, 206, 207, 197, 197, 197, 197,
michael@0 430 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 431 208, 197, 242, 247, 247, 5, 202, 203,
michael@0 432 204, 197, 197, 197, 245, 197, 197, 206,
michael@0 433 207, 197, 197, 197, 197, 197, 197, 197,
michael@0 434 197, 197, 197, 197, 197, 208, 197, 18,
michael@0 435 248, 197, 202, 203, 204, 197, 197, 197,
michael@0 436 213, 197, 197, 197, 207, 197, 202, 203,
michael@0 437 204, 197, 197, 197, 213, 197, 197, 197,
michael@0 438 207, 197, 249, 197, 197, 250, 203, 204,
michael@0 439 197, 203, 204, 197, 203, 251, 197, 203,
michael@0 440 197, 249, 197, 197, 197, 203, 204, 197,
michael@0 441 252, 197, 253, 254, 197, 202, 203, 204,
michael@0 442 197, 197, 3, 197, 197, 197, 197, 207,
michael@0 443 197, 2, 197, 197, 197, 197, 202, 203,
michael@0 444 204, 197, 197, 197, 197, 197, 197, 197,
michael@0 445 207, 197, 202, 203, 204, 197, 197, 197,
michael@0 446 197, 197, 197, 197, 207, 197, 255, 197,
michael@0 447 197, 197, 197, 202, 203, 204, 197, 202,
michael@0 448 203, 204, 197, 252, 197, 197, 197, 197,
michael@0 449 202, 203, 204, 197, 197, 197, 197, 197,
michael@0 450 197, 197, 207, 197, 252, 197, 253, 197,
michael@0 451 197, 202, 203, 204, 197, 197, 3, 197,
michael@0 452 197, 197, 197, 207, 197, 18, 197, 256,
michael@0 453 256, 5, 202, 203, 204, 197, 197, 197,
michael@0 454 213, 197, 197, 197, 207, 197, 257, 27,
michael@0 455 258, 259, 8, 202, 203, 204, 197, 197,
michael@0 456 197, 213, 197, 197, 197, 207, 197, 27,
michael@0 457 258, 259, 8, 202, 203, 204, 197, 197,
michael@0 458 197, 213, 197, 197, 197, 207, 197, 258,
michael@0 459 258, 8, 202, 203, 204, 197, 197, 197,
michael@0 460 213, 197, 197, 197, 207, 197, 260, 24,
michael@0 461 261, 262, 11, 202, 203, 204, 197, 197,
michael@0 462 197, 213, 197, 197, 197, 207, 197, 24,
michael@0 463 261, 262, 11, 202, 203, 204, 197, 197,
michael@0 464 197, 213, 197, 197, 197, 207, 197, 261,
michael@0 465 261, 11, 202, 203, 204, 197, 197, 197,
michael@0 466 213, 197, 197, 197, 207, 197, 263, 21,
michael@0 467 264, 265, 14, 202, 203, 204, 197, 197,
michael@0 468 197, 213, 197, 197, 197, 207, 197, 21,
michael@0 469 264, 265, 14, 202, 203, 204, 197, 197,
michael@0 470 197, 213, 197, 197, 197, 207, 197, 264,
michael@0 471 264, 14, 202, 203, 204, 197, 197, 197,
michael@0 472 213, 197, 197, 197, 207, 197, 266, 18,
michael@0 473 197, 267, 197, 202, 203, 204, 197, 197,
michael@0 474 197, 213, 197, 197, 197, 207, 197, 18,
michael@0 475 197, 267, 197, 202, 203, 204, 197, 197,
michael@0 476 197, 213, 197, 197, 197, 207, 197, 268,
michael@0 477 197, 202, 203, 204, 197, 197, 197, 213,
michael@0 478 197, 197, 197, 207, 197, 18, 197, 197,
michael@0 479 197, 197, 202, 203, 204, 197, 197, 197,
michael@0 480 213, 197, 197, 197, 207, 197, 1, 2,
michael@0 481 197, 197, 18, 248, 197, 202, 203, 204,
michael@0 482 197, 197, 197, 213, 197, 1, 197, 207,
michael@0 483 197, 242, 247, 247, 5, 202, 203, 204,
michael@0 484 197, 197, 197, 245, 197, 197, 197, 207,
michael@0 485 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 486 197, 197, 197, 197, 208, 197, 242, 247,
michael@0 487 247, 5, 202, 203, 204, 197, 197, 197,
michael@0 488 245, 197, 197, 197, 207, 197, 241, 242,
michael@0 489 247, 247, 5, 202, 203, 204, 197, 197,
michael@0 490 197, 245, 197, 197, 206, 207, 197, 197,
michael@0 491 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 492 197, 197, 208, 197, 241, 242, 243, 247,
michael@0 493 5, 202, 203, 204, 197, 197, 29, 245,
michael@0 494 197, 197, 206, 207, 197, 197, 197, 197,
michael@0 495 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 496 208, 197, 239, 197, 269, 197, 256, 256,
michael@0 497 5, 202, 203, 204, 197, 197, 197, 213,
michael@0 498 197, 239, 197, 207, 197, 239, 197, 197,
michael@0 499 197, 197, 197, 197, 202, 203, 204, 197,
michael@0 500 197, 197, 213, 197, 239, 197, 207, 197,
michael@0 501 239, 197, 197, 197, 197, 270, 197, 202,
michael@0 502 203, 204, 197, 197, 197, 213, 197, 239,
michael@0 503 197, 207, 197, 239, 197, 269, 197, 197,
michael@0 504 197, 197, 202, 203, 204, 197, 197, 197,
michael@0 505 213, 197, 239, 197, 207, 197, 239, 2,
michael@0 506 197, 197, 18, 240, 197, 202, 203, 204,
michael@0 507 197, 197, 197, 213, 197, 239, 197, 207,
michael@0 508 197, 232, 233, 238, 238, 5, 202, 203,
michael@0 509 204, 197, 197, 197, 236, 197, 197, 206,
michael@0 510 207, 197, 197, 197, 197, 197, 197, 197,
michael@0 511 197, 197, 197, 197, 197, 208, 197, 232,
michael@0 512 233, 234, 238, 5, 202, 203, 204, 197,
michael@0 513 197, 31, 236, 197, 197, 206, 207, 197,
michael@0 514 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 515 197, 197, 197, 208, 197, 230, 197, 271,
michael@0 516 197, 256, 256, 5, 202, 203, 204, 197,
michael@0 517 197, 197, 213, 197, 230, 197, 207, 197,
michael@0 518 230, 197, 197, 197, 197, 197, 197, 202,
michael@0 519 203, 204, 197, 197, 197, 213, 197, 230,
michael@0 520 197, 207, 197, 230, 197, 197, 197, 197,
michael@0 521 272, 197, 202, 203, 204, 197, 197, 197,
michael@0 522 213, 197, 230, 197, 207, 197, 230, 197,
michael@0 523 271, 197, 197, 197, 197, 202, 203, 204,
michael@0 524 197, 197, 197, 213, 197, 230, 197, 207,
michael@0 525 197, 230, 2, 197, 197, 18, 231, 197,
michael@0 526 202, 203, 204, 197, 197, 197, 213, 197,
michael@0 527 230, 197, 207, 197, 223, 224, 229, 229,
michael@0 528 5, 202, 203, 204, 197, 197, 197, 227,
michael@0 529 197, 197, 206, 207, 197, 197, 197, 197,
michael@0 530 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 531 208, 197, 223, 224, 225, 229, 5, 202,
michael@0 532 203, 204, 197, 197, 33, 227, 197, 197,
michael@0 533 206, 207, 197, 197, 197, 197, 197, 197,
michael@0 534 197, 197, 197, 197, 197, 197, 208, 197,
michael@0 535 221, 197, 273, 197, 256, 256, 5, 202,
michael@0 536 203, 204, 197, 197, 197, 213, 197, 221,
michael@0 537 197, 207, 197, 221, 197, 197, 197, 197,
michael@0 538 197, 197, 202, 203, 204, 197, 197, 197,
michael@0 539 213, 197, 221, 197, 207, 197, 221, 197,
michael@0 540 197, 197, 197, 274, 197, 202, 203, 204,
michael@0 541 197, 197, 197, 213, 197, 221, 197, 207,
michael@0 542 197, 221, 197, 273, 197, 197, 197, 197,
michael@0 543 202, 203, 204, 197, 197, 197, 213, 197,
michael@0 544 221, 197, 207, 197, 221, 2, 197, 197,
michael@0 545 18, 222, 197, 202, 203, 204, 197, 197,
michael@0 546 197, 213, 197, 221, 197, 207, 197, 214,
michael@0 547 215, 220, 220, 5, 202, 203, 204, 197,
michael@0 548 197, 197, 218, 197, 197, 206, 207, 197,
michael@0 549 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 550 197, 197, 197, 208, 197, 214, 215, 216,
michael@0 551 220, 5, 202, 203, 204, 197, 197, 35,
michael@0 552 218, 197, 197, 206, 207, 197, 197, 197,
michael@0 553 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 554 197, 208, 197, 211, 197, 275, 197, 256,
michael@0 555 256, 5, 202, 203, 204, 197, 197, 197,
michael@0 556 213, 197, 211, 197, 207, 197, 211, 197,
michael@0 557 197, 197, 197, 197, 197, 202, 203, 204,
michael@0 558 197, 197, 197, 213, 197, 211, 197, 207,
michael@0 559 197, 211, 197, 197, 197, 197, 276, 197,
michael@0 560 202, 203, 204, 197, 197, 197, 213, 197,
michael@0 561 211, 197, 207, 197, 211, 197, 275, 197,
michael@0 562 197, 197, 197, 202, 203, 204, 197, 197,
michael@0 563 197, 213, 197, 211, 197, 207, 197, 211,
michael@0 564 2, 197, 197, 18, 212, 197, 202, 203,
michael@0 565 204, 197, 197, 197, 213, 197, 211, 197,
michael@0 566 207, 197, 198, 199, 210, 210, 5, 202,
michael@0 567 203, 204, 197, 197, 197, 205, 197, 197,
michael@0 568 206, 207, 197, 197, 197, 197, 197, 197,
michael@0 569 197, 197, 197, 197, 197, 197, 208, 197,
michael@0 570 198, 199, 200, 210, 5, 202, 203, 204,
michael@0 571 197, 197, 37, 205, 197, 197, 206, 207,
michael@0 572 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 573 197, 197, 197, 197, 208, 197, 278, 279,
michael@0 574 280, 281, 43, 282, 283, 284, 277, 277,
michael@0 575 75, 285, 277, 277, 286, 287, 277, 277,
michael@0 576 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 577 277, 277, 288, 277, 289, 279, 290, 281,
michael@0 578 43, 282, 283, 284, 277, 277, 277, 285,
michael@0 579 277, 277, 286, 287, 277, 277, 277, 277,
michael@0 580 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 581 288, 277, 279, 290, 281, 43, 282, 283,
michael@0 582 284, 277, 277, 277, 285, 277, 277, 286,
michael@0 583 287, 277, 277, 277, 277, 277, 277, 277,
michael@0 584 277, 277, 277, 277, 277, 288, 277, 291,
michael@0 585 277, 277, 277, 56, 292, 277, 282, 283,
michael@0 586 284, 277, 277, 277, 293, 277, 291, 277,
michael@0 587 287, 277, 294, 295, 296, 297, 43, 282,
michael@0 588 283, 284, 277, 277, 73, 298, 277, 277,
michael@0 589 286, 287, 277, 277, 277, 277, 277, 277,
michael@0 590 277, 277, 277, 277, 277, 277, 288, 277,
michael@0 591 299, 295, 300, 300, 43, 282, 283, 284,
michael@0 592 277, 277, 277, 298, 277, 277, 286, 287,
michael@0 593 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 594 277, 277, 277, 277, 288, 277, 295, 300,
michael@0 595 300, 43, 282, 283, 284, 277, 277, 277,
michael@0 596 298, 277, 277, 286, 287, 277, 277, 277,
michael@0 597 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 598 277, 288, 277, 301, 277, 277, 277, 56,
michael@0 599 302, 277, 282, 283, 284, 277, 277, 277,
michael@0 600 293, 277, 301, 277, 287, 277, 303, 304,
michael@0 601 305, 306, 43, 282, 283, 284, 277, 277,
michael@0 602 71, 307, 277, 277, 286, 287, 277, 277,
michael@0 603 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 604 277, 277, 288, 277, 308, 304, 309, 309,
michael@0 605 43, 282, 283, 284, 277, 277, 277, 307,
michael@0 606 277, 277, 286, 287, 277, 277, 277, 277,
michael@0 607 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 608 288, 277, 304, 309, 309, 43, 282, 283,
michael@0 609 284, 277, 277, 277, 307, 277, 277, 286,
michael@0 610 287, 277, 277, 277, 277, 277, 277, 277,
michael@0 611 277, 277, 277, 277, 277, 288, 277, 310,
michael@0 612 277, 277, 277, 56, 311, 277, 282, 283,
michael@0 613 284, 277, 277, 277, 293, 277, 310, 277,
michael@0 614 287, 277, 312, 313, 314, 315, 43, 282,
michael@0 615 283, 284, 277, 277, 69, 316, 277, 277,
michael@0 616 286, 287, 277, 277, 277, 277, 277, 277,
michael@0 617 277, 277, 277, 277, 277, 277, 288, 277,
michael@0 618 317, 313, 318, 318, 43, 282, 283, 284,
michael@0 619 277, 277, 277, 316, 277, 277, 286, 287,
michael@0 620 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 621 277, 277, 277, 277, 288, 277, 313, 318,
michael@0 622 318, 43, 282, 283, 284, 277, 277, 277,
michael@0 623 316, 277, 277, 286, 287, 277, 277, 277,
michael@0 624 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 625 277, 288, 277, 319, 277, 277, 277, 56,
michael@0 626 320, 277, 282, 283, 284, 277, 277, 277,
michael@0 627 293, 277, 319, 277, 287, 277, 321, 322,
michael@0 628 323, 324, 43, 282, 283, 284, 277, 277,
michael@0 629 67, 325, 277, 277, 286, 287, 277, 277,
michael@0 630 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 631 277, 277, 288, 277, 326, 322, 327, 327,
michael@0 632 43, 282, 283, 284, 277, 277, 277, 325,
michael@0 633 277, 277, 286, 287, 277, 277, 277, 277,
michael@0 634 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 635 288, 277, 322, 327, 327, 43, 282, 283,
michael@0 636 284, 277, 277, 277, 325, 277, 277, 286,
michael@0 637 287, 277, 277, 277, 277, 277, 277, 277,
michael@0 638 277, 277, 277, 277, 277, 288, 277, 56,
michael@0 639 328, 277, 282, 283, 284, 277, 277, 277,
michael@0 640 293, 277, 277, 277, 287, 277, 282, 283,
michael@0 641 284, 277, 277, 277, 293, 277, 277, 277,
michael@0 642 287, 277, 329, 277, 277, 330, 283, 284,
michael@0 643 277, 283, 284, 277, 283, 331, 277, 283,
michael@0 644 277, 329, 277, 277, 277, 283, 284, 277,
michael@0 645 332, 277, 333, 334, 277, 282, 283, 284,
michael@0 646 277, 277, 41, 277, 277, 277, 277, 287,
michael@0 647 277, 40, 277, 277, 277, 277, 282, 283,
michael@0 648 284, 277, 277, 277, 277, 277, 277, 277,
michael@0 649 287, 277, 282, 283, 284, 277, 277, 277,
michael@0 650 277, 277, 277, 277, 287, 277, 335, 277,
michael@0 651 277, 277, 277, 282, 283, 284, 277, 282,
michael@0 652 283, 284, 277, 332, 277, 277, 277, 277,
michael@0 653 282, 283, 284, 277, 277, 277, 277, 277,
michael@0 654 277, 277, 287, 277, 332, 277, 333, 277,
michael@0 655 277, 282, 283, 284, 277, 277, 41, 277,
michael@0 656 277, 277, 277, 287, 277, 56, 277, 336,
michael@0 657 336, 43, 282, 283, 284, 277, 277, 277,
michael@0 658 293, 277, 277, 277, 287, 277, 337, 65,
michael@0 659 338, 339, 46, 282, 283, 284, 277, 277,
michael@0 660 277, 293, 277, 277, 277, 287, 277, 65,
michael@0 661 338, 339, 46, 282, 283, 284, 277, 277,
michael@0 662 277, 293, 277, 277, 277, 287, 277, 338,
michael@0 663 338, 46, 282, 283, 284, 277, 277, 277,
michael@0 664 293, 277, 277, 277, 287, 277, 340, 62,
michael@0 665 341, 342, 49, 282, 283, 284, 277, 277,
michael@0 666 277, 293, 277, 277, 277, 287, 277, 62,
michael@0 667 341, 342, 49, 282, 283, 284, 277, 277,
michael@0 668 277, 293, 277, 277, 277, 287, 277, 341,
michael@0 669 341, 49, 282, 283, 284, 277, 277, 277,
michael@0 670 293, 277, 277, 277, 287, 277, 343, 59,
michael@0 671 344, 345, 52, 282, 283, 284, 277, 277,
michael@0 672 277, 293, 277, 277, 277, 287, 277, 59,
michael@0 673 344, 345, 52, 282, 283, 284, 277, 277,
michael@0 674 277, 293, 277, 277, 277, 287, 277, 344,
michael@0 675 344, 52, 282, 283, 284, 277, 277, 277,
michael@0 676 293, 277, 277, 277, 287, 277, 346, 56,
michael@0 677 277, 347, 277, 282, 283, 284, 277, 277,
michael@0 678 277, 293, 277, 277, 277, 287, 277, 56,
michael@0 679 277, 347, 277, 282, 283, 284, 277, 277,
michael@0 680 277, 293, 277, 277, 277, 287, 277, 348,
michael@0 681 277, 282, 283, 284, 277, 277, 277, 293,
michael@0 682 277, 277, 277, 287, 277, 56, 277, 277,
michael@0 683 277, 277, 282, 283, 284, 277, 277, 277,
michael@0 684 293, 277, 277, 277, 287, 277, 39, 40,
michael@0 685 277, 277, 56, 328, 277, 282, 283, 284,
michael@0 686 277, 277, 277, 293, 277, 39, 277, 287,
michael@0 687 277, 322, 327, 327, 43, 282, 283, 284,
michael@0 688 277, 277, 277, 325, 277, 277, 277, 287,
michael@0 689 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 690 277, 277, 277, 277, 288, 277, 322, 327,
michael@0 691 327, 43, 282, 283, 284, 277, 277, 277,
michael@0 692 325, 277, 277, 277, 287, 277, 321, 322,
michael@0 693 327, 327, 43, 282, 283, 284, 277, 277,
michael@0 694 277, 325, 277, 277, 286, 287, 277, 277,
michael@0 695 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 696 277, 277, 288, 277, 321, 322, 323, 327,
michael@0 697 43, 282, 283, 284, 277, 277, 67, 325,
michael@0 698 277, 277, 286, 287, 277, 277, 277, 277,
michael@0 699 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 700 288, 277, 319, 277, 349, 277, 336, 336,
michael@0 701 43, 282, 283, 284, 277, 277, 277, 293,
michael@0 702 277, 319, 277, 287, 277, 319, 277, 277,
michael@0 703 277, 277, 277, 277, 282, 283, 284, 277,
michael@0 704 277, 277, 293, 277, 319, 277, 287, 277,
michael@0 705 319, 277, 277, 277, 277, 350, 277, 282,
michael@0 706 283, 284, 277, 277, 277, 293, 277, 319,
michael@0 707 277, 287, 277, 319, 277, 349, 277, 277,
michael@0 708 277, 277, 282, 283, 284, 277, 277, 277,
michael@0 709 293, 277, 319, 277, 287, 277, 319, 40,
michael@0 710 277, 277, 56, 320, 277, 282, 283, 284,
michael@0 711 277, 277, 277, 293, 277, 319, 277, 287,
michael@0 712 277, 312, 313, 318, 318, 43, 282, 283,
michael@0 713 284, 277, 277, 277, 316, 277, 277, 286,
michael@0 714 287, 277, 277, 277, 277, 277, 277, 277,
michael@0 715 277, 277, 277, 277, 277, 288, 277, 312,
michael@0 716 313, 314, 318, 43, 282, 283, 284, 277,
michael@0 717 277, 69, 316, 277, 277, 286, 287, 277,
michael@0 718 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 719 277, 277, 277, 288, 277, 310, 277, 351,
michael@0 720 277, 336, 336, 43, 282, 283, 284, 277,
michael@0 721 277, 277, 293, 277, 310, 277, 287, 277,
michael@0 722 310, 277, 277, 277, 277, 277, 277, 282,
michael@0 723 283, 284, 277, 277, 277, 293, 277, 310,
michael@0 724 277, 287, 277, 310, 277, 277, 277, 277,
michael@0 725 352, 277, 282, 283, 284, 277, 277, 277,
michael@0 726 293, 277, 310, 277, 287, 277, 310, 277,
michael@0 727 351, 277, 277, 277, 277, 282, 283, 284,
michael@0 728 277, 277, 277, 293, 277, 310, 277, 287,
michael@0 729 277, 310, 40, 277, 277, 56, 311, 277,
michael@0 730 282, 283, 284, 277, 277, 277, 293, 277,
michael@0 731 310, 277, 287, 277, 303, 304, 309, 309,
michael@0 732 43, 282, 283, 284, 277, 277, 277, 307,
michael@0 733 277, 277, 286, 287, 277, 277, 277, 277,
michael@0 734 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 735 288, 277, 303, 304, 305, 309, 43, 282,
michael@0 736 283, 284, 277, 277, 71, 307, 277, 277,
michael@0 737 286, 287, 277, 277, 277, 277, 277, 277,
michael@0 738 277, 277, 277, 277, 277, 277, 288, 277,
michael@0 739 301, 277, 353, 277, 336, 336, 43, 282,
michael@0 740 283, 284, 277, 277, 277, 293, 277, 301,
michael@0 741 277, 287, 277, 301, 277, 277, 277, 277,
michael@0 742 277, 277, 282, 283, 284, 277, 277, 277,
michael@0 743 293, 277, 301, 277, 287, 277, 301, 277,
michael@0 744 277, 277, 277, 354, 277, 282, 283, 284,
michael@0 745 277, 277, 277, 293, 277, 301, 277, 287,
michael@0 746 277, 301, 277, 353, 277, 277, 277, 277,
michael@0 747 282, 283, 284, 277, 277, 277, 293, 277,
michael@0 748 301, 277, 287, 277, 301, 40, 277, 277,
michael@0 749 56, 302, 277, 282, 283, 284, 277, 277,
michael@0 750 277, 293, 277, 301, 277, 287, 277, 294,
michael@0 751 295, 300, 300, 43, 282, 283, 284, 277,
michael@0 752 277, 277, 298, 277, 277, 286, 287, 277,
michael@0 753 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 754 277, 277, 277, 288, 277, 294, 295, 296,
michael@0 755 300, 43, 282, 283, 284, 277, 277, 73,
michael@0 756 298, 277, 277, 286, 287, 277, 277, 277,
michael@0 757 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 758 277, 288, 277, 291, 277, 355, 277, 336,
michael@0 759 336, 43, 282, 283, 284, 277, 277, 277,
michael@0 760 293, 277, 291, 277, 287, 277, 291, 277,
michael@0 761 277, 277, 277, 277, 277, 282, 283, 284,
michael@0 762 277, 277, 277, 293, 277, 291, 277, 287,
michael@0 763 277, 291, 277, 277, 277, 277, 356, 277,
michael@0 764 282, 283, 284, 277, 277, 277, 293, 277,
michael@0 765 291, 277, 287, 277, 291, 277, 355, 277,
michael@0 766 277, 277, 277, 282, 283, 284, 277, 277,
michael@0 767 277, 293, 277, 291, 277, 287, 277, 74,
michael@0 768 42, 42, 43, 277, 277, 277, 277, 277,
michael@0 769 277, 74, 277, 291, 40, 277, 277, 56,
michael@0 770 292, 277, 282, 283, 284, 277, 277, 277,
michael@0 771 293, 277, 291, 277, 287, 277, 278, 279,
michael@0 772 290, 281, 43, 282, 283, 284, 277, 277,
michael@0 773 277, 285, 277, 277, 286, 287, 277, 277,
michael@0 774 277, 277, 277, 277, 277, 277, 277, 277,
michael@0 775 277, 277, 288, 277, 358, 184, 359, 359,
michael@0 776 81, 187, 188, 189, 357, 357, 357, 191,
michael@0 777 357, 357, 194, 360, 357, 357, 357, 357,
michael@0 778 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 779 196, 357, 184, 359, 359, 81, 187, 188,
michael@0 780 189, 357, 357, 357, 191, 357, 357, 194,
michael@0 781 360, 357, 357, 357, 357, 357, 357, 357,
michael@0 782 357, 357, 357, 357, 357, 196, 357, 361,
michael@0 783 357, 357, 357, 95, 362, 357, 187, 188,
michael@0 784 189, 357, 357, 357, 363, 357, 361, 357,
michael@0 785 360, 357, 364, 365, 366, 367, 81, 187,
michael@0 786 188, 189, 357, 357, 112, 368, 357, 357,
michael@0 787 194, 360, 357, 357, 357, 357, 357, 357,
michael@0 788 357, 357, 357, 357, 357, 357, 196, 357,
michael@0 789 369, 365, 370, 370, 81, 187, 188, 189,
michael@0 790 357, 357, 357, 368, 357, 357, 194, 360,
michael@0 791 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 792 357, 357, 357, 357, 196, 357, 365, 370,
michael@0 793 370, 81, 187, 188, 189, 357, 357, 357,
michael@0 794 368, 357, 357, 194, 360, 357, 357, 357,
michael@0 795 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 796 357, 196, 357, 371, 357, 357, 357, 95,
michael@0 797 372, 357, 187, 188, 189, 357, 357, 357,
michael@0 798 363, 357, 371, 357, 360, 357, 373, 374,
michael@0 799 375, 376, 81, 187, 188, 189, 357, 357,
michael@0 800 110, 377, 357, 357, 194, 360, 357, 357,
michael@0 801 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 802 357, 357, 196, 357, 378, 374, 379, 379,
michael@0 803 81, 187, 188, 189, 357, 357, 357, 377,
michael@0 804 357, 357, 194, 360, 357, 357, 357, 357,
michael@0 805 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 806 196, 357, 374, 379, 379, 81, 187, 188,
michael@0 807 189, 357, 357, 357, 377, 357, 357, 194,
michael@0 808 360, 357, 357, 357, 357, 357, 357, 357,
michael@0 809 357, 357, 357, 357, 357, 196, 357, 380,
michael@0 810 357, 357, 357, 95, 381, 357, 187, 188,
michael@0 811 189, 357, 357, 357, 363, 357, 380, 357,
michael@0 812 360, 357, 382, 383, 384, 385, 81, 187,
michael@0 813 188, 189, 357, 357, 108, 386, 357, 357,
michael@0 814 194, 360, 357, 357, 357, 357, 357, 357,
michael@0 815 357, 357, 357, 357, 357, 357, 196, 357,
michael@0 816 387, 383, 388, 388, 81, 187, 188, 189,
michael@0 817 357, 357, 357, 386, 357, 357, 194, 360,
michael@0 818 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 819 357, 357, 357, 357, 196, 357, 383, 388,
michael@0 820 388, 81, 187, 188, 189, 357, 357, 357,
michael@0 821 386, 357, 357, 194, 360, 357, 357, 357,
michael@0 822 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 823 357, 196, 357, 389, 357, 357, 357, 95,
michael@0 824 390, 357, 187, 188, 189, 357, 357, 357,
michael@0 825 363, 357, 389, 357, 360, 357, 391, 392,
michael@0 826 393, 394, 81, 187, 188, 189, 357, 357,
michael@0 827 106, 395, 357, 357, 194, 360, 357, 357,
michael@0 828 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 829 357, 357, 196, 357, 396, 392, 397, 397,
michael@0 830 81, 187, 188, 189, 357, 357, 357, 395,
michael@0 831 357, 357, 194, 360, 357, 357, 357, 357,
michael@0 832 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 833 196, 357, 392, 397, 397, 81, 187, 188,
michael@0 834 189, 357, 357, 357, 395, 357, 357, 194,
michael@0 835 360, 357, 357, 357, 357, 357, 357, 357,
michael@0 836 357, 357, 357, 357, 357, 196, 357, 95,
michael@0 837 398, 357, 187, 188, 189, 357, 357, 357,
michael@0 838 363, 357, 357, 357, 360, 357, 187, 188,
michael@0 839 189, 357, 357, 357, 363, 357, 357, 357,
michael@0 840 360, 357, 399, 357, 357, 400, 188, 189,
michael@0 841 357, 188, 189, 357, 188, 401, 357, 188,
michael@0 842 357, 399, 357, 357, 357, 188, 189, 357,
michael@0 843 402, 357, 403, 404, 357, 187, 188, 189,
michael@0 844 357, 357, 79, 357, 357, 357, 357, 360,
michael@0 845 357, 78, 357, 357, 357, 357, 187, 188,
michael@0 846 189, 357, 357, 357, 357, 357, 357, 357,
michael@0 847 360, 357, 187, 188, 189, 357, 357, 357,
michael@0 848 357, 357, 357, 357, 360, 357, 405, 357,
michael@0 849 357, 357, 357, 187, 188, 189, 357, 187,
michael@0 850 188, 189, 357, 402, 357, 357, 357, 357,
michael@0 851 187, 188, 189, 357, 357, 357, 357, 357,
michael@0 852 357, 357, 360, 357, 402, 357, 403, 357,
michael@0 853 357, 187, 188, 189, 357, 357, 79, 357,
michael@0 854 357, 357, 357, 360, 357, 95, 357, 406,
michael@0 855 406, 81, 187, 188, 189, 357, 357, 357,
michael@0 856 363, 357, 357, 357, 360, 357, 407, 104,
michael@0 857 408, 409, 85, 187, 188, 189, 357, 357,
michael@0 858 357, 363, 357, 357, 357, 360, 357, 104,
michael@0 859 408, 409, 85, 187, 188, 189, 357, 357,
michael@0 860 357, 363, 357, 357, 357, 360, 357, 408,
michael@0 861 408, 85, 187, 188, 189, 357, 357, 357,
michael@0 862 363, 357, 357, 357, 360, 357, 410, 101,
michael@0 863 411, 412, 88, 187, 188, 189, 357, 357,
michael@0 864 357, 363, 357, 357, 357, 360, 357, 101,
michael@0 865 411, 412, 88, 187, 188, 189, 357, 357,
michael@0 866 357, 363, 357, 357, 357, 360, 357, 411,
michael@0 867 411, 88, 187, 188, 189, 357, 357, 357,
michael@0 868 363, 357, 357, 357, 360, 357, 413, 98,
michael@0 869 414, 415, 91, 187, 188, 189, 357, 357,
michael@0 870 357, 363, 357, 357, 357, 360, 357, 98,
michael@0 871 414, 415, 91, 187, 188, 189, 357, 357,
michael@0 872 357, 363, 357, 357, 357, 360, 357, 414,
michael@0 873 414, 91, 187, 188, 189, 357, 357, 357,
michael@0 874 363, 357, 357, 357, 360, 357, 416, 95,
michael@0 875 357, 417, 357, 187, 188, 189, 357, 357,
michael@0 876 357, 363, 357, 357, 357, 360, 357, 95,
michael@0 877 357, 417, 357, 187, 188, 189, 357, 357,
michael@0 878 357, 363, 357, 357, 357, 360, 357, 418,
michael@0 879 357, 187, 188, 189, 357, 357, 357, 363,
michael@0 880 357, 357, 357, 360, 357, 95, 357, 357,
michael@0 881 357, 357, 187, 188, 189, 357, 357, 357,
michael@0 882 363, 357, 357, 357, 360, 357, 77, 78,
michael@0 883 357, 357, 95, 398, 357, 187, 188, 189,
michael@0 884 357, 357, 357, 363, 357, 77, 357, 360,
michael@0 885 357, 392, 397, 397, 81, 187, 188, 189,
michael@0 886 357, 357, 357, 395, 357, 357, 357, 360,
michael@0 887 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 888 357, 357, 357, 357, 196, 357, 392, 397,
michael@0 889 397, 81, 187, 188, 189, 357, 357, 357,
michael@0 890 395, 357, 357, 357, 360, 357, 391, 392,
michael@0 891 397, 397, 81, 187, 188, 189, 357, 357,
michael@0 892 357, 395, 357, 357, 194, 360, 357, 357,
michael@0 893 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 894 357, 357, 196, 357, 391, 392, 393, 397,
michael@0 895 81, 187, 188, 189, 357, 357, 106, 395,
michael@0 896 357, 357, 194, 360, 357, 357, 357, 357,
michael@0 897 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 898 196, 357, 389, 357, 419, 357, 406, 406,
michael@0 899 81, 187, 188, 189, 357, 357, 357, 363,
michael@0 900 357, 389, 357, 360, 357, 389, 357, 357,
michael@0 901 357, 357, 357, 357, 187, 188, 189, 357,
michael@0 902 357, 357, 363, 357, 389, 357, 360, 357,
michael@0 903 389, 357, 357, 357, 357, 420, 357, 187,
michael@0 904 188, 189, 357, 357, 357, 363, 357, 389,
michael@0 905 357, 360, 357, 389, 357, 419, 357, 357,
michael@0 906 357, 357, 187, 188, 189, 357, 357, 357,
michael@0 907 363, 357, 389, 357, 360, 357, 389, 78,
michael@0 908 357, 357, 95, 390, 357, 187, 188, 189,
michael@0 909 357, 357, 357, 363, 357, 389, 357, 360,
michael@0 910 357, 382, 383, 388, 388, 81, 187, 188,
michael@0 911 189, 357, 357, 357, 386, 357, 357, 194,
michael@0 912 360, 357, 357, 357, 357, 357, 357, 357,
michael@0 913 357, 357, 357, 357, 357, 196, 357, 382,
michael@0 914 383, 384, 388, 81, 187, 188, 189, 357,
michael@0 915 357, 108, 386, 357, 357, 194, 360, 357,
michael@0 916 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 917 357, 357, 357, 196, 357, 380, 357, 421,
michael@0 918 357, 406, 406, 81, 187, 188, 189, 357,
michael@0 919 357, 357, 363, 357, 380, 357, 360, 357,
michael@0 920 380, 357, 357, 357, 357, 357, 357, 187,
michael@0 921 188, 189, 357, 357, 357, 363, 357, 380,
michael@0 922 357, 360, 357, 380, 357, 357, 357, 357,
michael@0 923 422, 357, 187, 188, 189, 357, 357, 357,
michael@0 924 363, 357, 380, 357, 360, 357, 380, 357,
michael@0 925 421, 357, 357, 357, 357, 187, 188, 189,
michael@0 926 357, 357, 357, 363, 357, 380, 357, 360,
michael@0 927 357, 380, 78, 357, 357, 95, 381, 357,
michael@0 928 187, 188, 189, 357, 357, 357, 363, 357,
michael@0 929 380, 357, 360, 357, 373, 374, 379, 379,
michael@0 930 81, 187, 188, 189, 357, 357, 357, 377,
michael@0 931 357, 357, 194, 360, 357, 357, 357, 357,
michael@0 932 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 933 196, 357, 373, 374, 375, 379, 81, 187,
michael@0 934 188, 189, 357, 357, 110, 377, 357, 357,
michael@0 935 194, 360, 357, 357, 357, 357, 357, 357,
michael@0 936 357, 357, 357, 357, 357, 357, 196, 357,
michael@0 937 371, 357, 423, 357, 406, 406, 81, 187,
michael@0 938 188, 189, 357, 357, 357, 363, 357, 371,
michael@0 939 357, 360, 357, 371, 357, 357, 357, 357,
michael@0 940 357, 357, 187, 188, 189, 357, 357, 357,
michael@0 941 363, 357, 371, 357, 360, 357, 371, 357,
michael@0 942 357, 357, 357, 424, 357, 187, 188, 189,
michael@0 943 357, 357, 357, 363, 357, 371, 357, 360,
michael@0 944 357, 371, 357, 423, 357, 357, 357, 357,
michael@0 945 187, 188, 189, 357, 357, 357, 363, 357,
michael@0 946 371, 357, 360, 357, 371, 78, 357, 357,
michael@0 947 95, 372, 357, 187, 188, 189, 357, 357,
michael@0 948 357, 363, 357, 371, 357, 360, 357, 364,
michael@0 949 365, 370, 370, 81, 187, 188, 189, 357,
michael@0 950 357, 357, 368, 357, 357, 194, 360, 357,
michael@0 951 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 952 357, 357, 357, 196, 357, 364, 365, 366,
michael@0 953 370, 81, 187, 188, 189, 357, 357, 112,
michael@0 954 368, 357, 357, 194, 360, 357, 357, 357,
michael@0 955 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 956 357, 196, 357, 361, 357, 425, 357, 406,
michael@0 957 406, 81, 187, 188, 189, 357, 357, 357,
michael@0 958 363, 357, 361, 357, 360, 357, 361, 357,
michael@0 959 357, 357, 357, 357, 357, 187, 188, 189,
michael@0 960 357, 357, 357, 363, 357, 361, 357, 360,
michael@0 961 357, 361, 357, 357, 357, 357, 426, 357,
michael@0 962 187, 188, 189, 357, 357, 357, 363, 357,
michael@0 963 361, 357, 360, 357, 361, 357, 425, 357,
michael@0 964 357, 357, 357, 187, 188, 189, 357, 357,
michael@0 965 357, 363, 357, 361, 357, 360, 357, 361,
michael@0 966 78, 357, 357, 95, 362, 357, 187, 188,
michael@0 967 189, 357, 357, 357, 363, 357, 361, 357,
michael@0 968 360, 357, 113, 80, 80, 81, 427, 427,
michael@0 969 427, 427, 427, 152, 113, 427, 183, 184,
michael@0 970 359, 359, 81, 187, 188, 189, 357, 357,
michael@0 971 357, 191, 357, 357, 194, 360, 357, 357,
michael@0 972 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 973 357, 357, 196, 357, 113, 80, 80, 81,
michael@0 974 427, 427, 427, 427, 427, 427, 113, 427,
michael@0 975 429, 430, 431, 432, 119, 433, 434, 435,
michael@0 976 428, 428, 151, 436, 428, 428, 437, 438,
michael@0 977 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 978 428, 428, 428, 428, 439, 428, 440, 430,
michael@0 979 432, 432, 119, 433, 434, 435, 428, 428,
michael@0 980 428, 436, 428, 428, 437, 438, 428, 428,
michael@0 981 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 982 428, 428, 439, 428, 430, 432, 432, 119,
michael@0 983 433, 434, 435, 428, 428, 428, 436, 428,
michael@0 984 428, 437, 438, 428, 428, 428, 428, 428,
michael@0 985 428, 428, 428, 428, 428, 428, 428, 439,
michael@0 986 428, 441, 428, 428, 428, 132, 442, 428,
michael@0 987 433, 434, 435, 428, 428, 428, 443, 428,
michael@0 988 441, 428, 438, 428, 444, 445, 446, 447,
michael@0 989 119, 433, 434, 435, 428, 428, 149, 448,
michael@0 990 428, 428, 437, 438, 428, 428, 428, 428,
michael@0 991 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 992 439, 428, 449, 445, 450, 450, 119, 433,
michael@0 993 434, 435, 428, 428, 428, 448, 428, 428,
michael@0 994 437, 438, 428, 428, 428, 428, 428, 428,
michael@0 995 428, 428, 428, 428, 428, 428, 439, 428,
michael@0 996 445, 450, 450, 119, 433, 434, 435, 428,
michael@0 997 428, 428, 448, 428, 428, 437, 438, 428,
michael@0 998 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 999 428, 428, 428, 439, 428, 451, 428, 428,
michael@0 1000 428, 132, 452, 428, 433, 434, 435, 428,
michael@0 1001 428, 428, 443, 428, 451, 428, 438, 428,
michael@0 1002 453, 454, 455, 456, 119, 433, 434, 435,
michael@0 1003 428, 428, 147, 457, 428, 428, 437, 438,
michael@0 1004 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 1005 428, 428, 428, 428, 439, 428, 458, 454,
michael@0 1006 459, 459, 119, 433, 434, 435, 428, 428,
michael@0 1007 428, 457, 428, 428, 437, 438, 428, 428,
michael@0 1008 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 1009 428, 428, 439, 428, 454, 459, 459, 119,
michael@0 1010 433, 434, 435, 428, 428, 428, 457, 428,
michael@0 1011 428, 437, 438, 428, 428, 428, 428, 428,
michael@0 1012 428, 428, 428, 428, 428, 428, 428, 439,
michael@0 1013 428, 460, 428, 428, 428, 132, 461, 428,
michael@0 1014 433, 434, 435, 428, 428, 428, 443, 428,
michael@0 1015 460, 428, 438, 428, 462, 463, 464, 465,
michael@0 1016 119, 433, 434, 435, 428, 428, 145, 466,
michael@0 1017 428, 428, 437, 438, 428, 428, 428, 428,
michael@0 1018 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 1019 439, 428, 467, 463, 468, 468, 119, 433,
michael@0 1020 434, 435, 428, 428, 428, 466, 428, 428,
michael@0 1021 437, 438, 428, 428, 428, 428, 428, 428,
michael@0 1022 428, 428, 428, 428, 428, 428, 439, 428,
michael@0 1023 463, 468, 468, 119, 433, 434, 435, 428,
michael@0 1024 428, 428, 466, 428, 428, 437, 438, 428,
michael@0 1025 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 1026 428, 428, 428, 439, 428, 469, 428, 428,
michael@0 1027 428, 132, 470, 428, 433, 434, 435, 428,
michael@0 1028 428, 428, 443, 428, 469, 428, 438, 428,
michael@0 1029 471, 472, 473, 474, 119, 433, 434, 435,
michael@0 1030 428, 428, 143, 475, 428, 428, 437, 438,
michael@0 1031 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 1032 428, 428, 428, 428, 439, 428, 476, 472,
michael@0 1033 477, 477, 119, 433, 434, 435, 428, 428,
michael@0 1034 428, 475, 428, 428, 437, 438, 428, 428,
michael@0 1035 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 1036 428, 428, 439, 428, 472, 477, 477, 119,
michael@0 1037 433, 434, 435, 428, 428, 428, 475, 428,
michael@0 1038 428, 437, 438, 428, 428, 428, 428, 428,
michael@0 1039 428, 428, 428, 428, 428, 428, 428, 439,
michael@0 1040 428, 132, 478, 428, 433, 434, 435, 428,
michael@0 1041 428, 428, 443, 428, 428, 428, 438, 428,
michael@0 1042 433, 434, 435, 428, 428, 428, 443, 428,
michael@0 1043 428, 428, 438, 428, 479, 428, 428, 480,
michael@0 1044 434, 435, 428, 434, 435, 428, 434, 481,
michael@0 1045 428, 434, 428, 479, 428, 428, 428, 434,
michael@0 1046 435, 428, 482, 428, 483, 484, 428, 433,
michael@0 1047 434, 435, 428, 428, 117, 428, 428, 428,
michael@0 1048 428, 438, 428, 116, 428, 428, 428, 428,
michael@0 1049 433, 434, 435, 428, 428, 428, 428, 428,
michael@0 1050 428, 428, 438, 428, 433, 434, 435, 428,
michael@0 1051 428, 428, 428, 428, 428, 428, 438, 428,
michael@0 1052 485, 428, 428, 428, 428, 433, 434, 435,
michael@0 1053 428, 433, 434, 435, 428, 482, 428, 428,
michael@0 1054 428, 428, 433, 434, 435, 428, 428, 428,
michael@0 1055 428, 428, 428, 428, 438, 428, 482, 428,
michael@0 1056 483, 428, 428, 433, 434, 435, 428, 428,
michael@0 1057 117, 428, 428, 428, 428, 438, 428, 132,
michael@0 1058 428, 486, 486, 119, 433, 434, 435, 428,
michael@0 1059 428, 428, 443, 428, 428, 428, 438, 428,
michael@0 1060 487, 141, 488, 489, 122, 433, 434, 435,
michael@0 1061 428, 428, 428, 443, 428, 428, 428, 438,
michael@0 1062 428, 141, 488, 489, 122, 433, 434, 435,
michael@0 1063 428, 428, 428, 443, 428, 428, 428, 438,
michael@0 1064 428, 488, 488, 122, 433, 434, 435, 428,
michael@0 1065 428, 428, 443, 428, 428, 428, 438, 428,
michael@0 1066 490, 138, 491, 492, 125, 433, 434, 435,
michael@0 1067 428, 428, 428, 443, 428, 428, 428, 438,
michael@0 1068 428, 138, 491, 492, 125, 433, 434, 435,
michael@0 1069 428, 428, 428, 443, 428, 428, 428, 438,
michael@0 1070 428, 491, 491, 125, 433, 434, 435, 428,
michael@0 1071 428, 428, 443, 428, 428, 428, 438, 428,
michael@0 1072 493, 135, 494, 495, 128, 433, 434, 435,
michael@0 1073 428, 428, 428, 443, 428, 428, 428, 438,
michael@0 1074 428, 135, 494, 495, 128, 433, 434, 435,
michael@0 1075 428, 428, 428, 443, 428, 428, 428, 438,
michael@0 1076 428, 494, 494, 128, 433, 434, 435, 428,
michael@0 1077 428, 428, 443, 428, 428, 428, 438, 428,
michael@0 1078 496, 132, 428, 497, 428, 433, 434, 435,
michael@0 1079 428, 428, 428, 443, 428, 428, 428, 438,
michael@0 1080 428, 132, 428, 497, 428, 433, 434, 435,
michael@0 1081 428, 428, 428, 443, 428, 428, 428, 438,
michael@0 1082 428, 498, 428, 433, 434, 435, 428, 428,
michael@0 1083 428, 443, 428, 428, 428, 438, 428, 132,
michael@0 1084 428, 428, 428, 428, 433, 434, 435, 428,
michael@0 1085 428, 428, 443, 428, 428, 428, 438, 428,
michael@0 1086 115, 116, 428, 428, 132, 478, 428, 433,
michael@0 1087 434, 435, 428, 428, 428, 443, 428, 115,
michael@0 1088 428, 438, 428, 472, 477, 477, 119, 433,
michael@0 1089 434, 435, 428, 428, 428, 475, 428, 428,
michael@0 1090 428, 438, 428, 428, 428, 428, 428, 428,
michael@0 1091 428, 428, 428, 428, 428, 428, 439, 428,
michael@0 1092 472, 477, 477, 119, 433, 434, 435, 428,
michael@0 1093 428, 428, 475, 428, 428, 428, 438, 428,
michael@0 1094 471, 472, 477, 477, 119, 433, 434, 435,
michael@0 1095 428, 428, 428, 475, 428, 428, 437, 438,
michael@0 1096 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 1097 428, 428, 428, 428, 439, 428, 471, 472,
michael@0 1098 473, 477, 119, 433, 434, 435, 428, 428,
michael@0 1099 143, 475, 428, 428, 437, 438, 428, 428,
michael@0 1100 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 1101 428, 428, 439, 428, 469, 428, 499, 428,
michael@0 1102 486, 486, 119, 433, 434, 435, 428, 428,
michael@0 1103 428, 443, 428, 469, 428, 438, 428, 469,
michael@0 1104 428, 428, 428, 428, 428, 428, 433, 434,
michael@0 1105 435, 428, 428, 428, 443, 428, 469, 428,
michael@0 1106 438, 428, 469, 428, 428, 428, 428, 500,
michael@0 1107 428, 433, 434, 435, 428, 428, 428, 443,
michael@0 1108 428, 469, 428, 438, 428, 469, 428, 499,
michael@0 1109 428, 428, 428, 428, 433, 434, 435, 428,
michael@0 1110 428, 428, 443, 428, 469, 428, 438, 428,
michael@0 1111 469, 116, 428, 428, 132, 470, 428, 433,
michael@0 1112 434, 435, 428, 428, 428, 443, 428, 469,
michael@0 1113 428, 438, 428, 462, 463, 468, 468, 119,
michael@0 1114 433, 434, 435, 428, 428, 428, 466, 428,
michael@0 1115 428, 437, 438, 428, 428, 428, 428, 428,
michael@0 1116 428, 428, 428, 428, 428, 428, 428, 439,
michael@0 1117 428, 462, 463, 464, 468, 119, 433, 434,
michael@0 1118 435, 428, 428, 145, 466, 428, 428, 437,
michael@0 1119 438, 428, 428, 428, 428, 428, 428, 428,
michael@0 1120 428, 428, 428, 428, 428, 439, 428, 460,
michael@0 1121 428, 501, 428, 486, 486, 119, 433, 434,
michael@0 1122 435, 428, 428, 428, 443, 428, 460, 428,
michael@0 1123 438, 428, 460, 428, 428, 428, 428, 428,
michael@0 1124 428, 433, 434, 435, 428, 428, 428, 443,
michael@0 1125 428, 460, 428, 438, 428, 460, 428, 428,
michael@0 1126 428, 428, 502, 428, 433, 434, 435, 428,
michael@0 1127 428, 428, 443, 428, 460, 428, 438, 428,
michael@0 1128 460, 428, 501, 428, 428, 428, 428, 433,
michael@0 1129 434, 435, 428, 428, 428, 443, 428, 460,
michael@0 1130 428, 438, 428, 460, 116, 428, 428, 132,
michael@0 1131 461, 428, 433, 434, 435, 428, 428, 428,
michael@0 1132 443, 428, 460, 428, 438, 428, 453, 454,
michael@0 1133 459, 459, 119, 433, 434, 435, 428, 428,
michael@0 1134 428, 457, 428, 428, 437, 438, 428, 428,
michael@0 1135 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 1136 428, 428, 439, 428, 453, 454, 455, 459,
michael@0 1137 119, 433, 434, 435, 428, 428, 147, 457,
michael@0 1138 428, 428, 437, 438, 428, 428, 428, 428,
michael@0 1139 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 1140 439, 428, 451, 428, 503, 428, 486, 486,
michael@0 1141 119, 433, 434, 435, 428, 428, 428, 443,
michael@0 1142 428, 451, 428, 438, 428, 451, 428, 428,
michael@0 1143 428, 428, 428, 428, 433, 434, 435, 428,
michael@0 1144 428, 428, 443, 428, 451, 428, 438, 428,
michael@0 1145 451, 428, 428, 428, 428, 504, 428, 433,
michael@0 1146 434, 435, 428, 428, 428, 443, 428, 451,
michael@0 1147 428, 438, 428, 451, 428, 503, 428, 428,
michael@0 1148 428, 428, 433, 434, 435, 428, 428, 428,
michael@0 1149 443, 428, 451, 428, 438, 428, 451, 116,
michael@0 1150 428, 428, 132, 452, 428, 433, 434, 435,
michael@0 1151 428, 428, 428, 443, 428, 451, 428, 438,
michael@0 1152 428, 444, 445, 450, 450, 119, 433, 434,
michael@0 1153 435, 428, 428, 428, 448, 428, 428, 437,
michael@0 1154 438, 428, 428, 428, 428, 428, 428, 428,
michael@0 1155 428, 428, 428, 428, 428, 439, 428, 444,
michael@0 1156 445, 446, 450, 119, 433, 434, 435, 428,
michael@0 1157 428, 149, 448, 428, 428, 437, 438, 428,
michael@0 1158 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 1159 428, 428, 428, 439, 428, 441, 428, 505,
michael@0 1160 428, 486, 486, 119, 433, 434, 435, 428,
michael@0 1161 428, 428, 443, 428, 441, 428, 438, 428,
michael@0 1162 441, 428, 428, 428, 428, 428, 428, 433,
michael@0 1163 434, 435, 428, 428, 428, 443, 428, 441,
michael@0 1164 428, 438, 428, 441, 428, 428, 428, 428,
michael@0 1165 506, 428, 433, 434, 435, 428, 428, 428,
michael@0 1166 443, 428, 441, 428, 438, 428, 441, 428,
michael@0 1167 505, 428, 428, 428, 428, 433, 434, 435,
michael@0 1168 428, 428, 428, 443, 428, 441, 428, 438,
michael@0 1169 428, 441, 116, 428, 428, 132, 442, 428,
michael@0 1170 433, 434, 435, 428, 428, 428, 443, 428,
michael@0 1171 441, 428, 438, 428, 429, 430, 432, 432,
michael@0 1172 119, 433, 434, 435, 428, 428, 428, 436,
michael@0 1173 428, 428, 437, 438, 428, 428, 428, 428,
michael@0 1174 428, 428, 428, 428, 428, 428, 428, 428,
michael@0 1175 439, 428, 181, 182, 183, 184, 507, 359,
michael@0 1176 81, 187, 188, 189, 190, 190, 152, 191,
michael@0 1177 357, 181, 194, 360, 357, 357, 357, 357,
michael@0 1178 357, 357, 357, 357, 357, 357, 357, 357,
michael@0 1179 196, 357, 198, 508, 200, 201, 5, 202,
michael@0 1180 203, 204, 197, 197, 37, 205, 197, 197,
michael@0 1181 206, 207, 197, 197, 197, 197, 197, 197,
michael@0 1182 197, 197, 197, 197, 197, 197, 208, 197,
michael@0 1183 211, 182, 183, 184, 509, 510, 81, 511,
michael@0 1184 203, 512, 190, 190, 152, 513, 197, 211,
michael@0 1185 194, 514, 197, 197, 197, 197, 197, 197,
michael@0 1186 197, 197, 197, 197, 197, 197, 196, 197,
michael@0 1187 113, 80, 80, 81, 202, 203, 204, 197,
michael@0 1188 197, 152, 515, 197, 197, 197, 207, 197,
michael@0 1189 516, 2, 357, 357, 357, 426, 357, 187,
michael@0 1190 188, 189, 357, 357, 357, 363, 357, 516,
michael@0 1191 357, 360, 357, 517, 365, 518, 519, 81,
michael@0 1192 511, 203, 512, 197, 197, 153, 368, 197,
michael@0 1193 197, 194, 514, 197, 197, 197, 197, 197,
michael@0 1194 197, 197, 197, 197, 197, 197, 197, 196,
michael@0 1195 197, 520, 365, 370, 370, 81, 511, 203,
michael@0 1196 512, 197, 197, 197, 368, 197, 197, 194,
michael@0 1197 514, 197, 197, 197, 197, 197, 197, 197,
michael@0 1198 197, 197, 197, 197, 197, 196, 197, 365,
michael@0 1199 370, 370, 81, 511, 203, 512, 197, 197,
michael@0 1200 197, 368, 197, 197, 194, 514, 197, 197,
michael@0 1201 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 1202 197, 197, 196, 197, 521, 197, 197, 522,
michael@0 1203 203, 512, 197, 203, 512, 197, 203, 523,
michael@0 1204 197, 203, 197, 521, 197, 197, 197, 203,
michael@0 1205 512, 197, 524, 197, 197, 197, 197, 511,
michael@0 1206 203, 512, 197, 511, 203, 512, 197, 517,
michael@0 1207 365, 370, 370, 81, 511, 203, 512, 197,
michael@0 1208 197, 197, 368, 197, 197, 194, 514, 197,
michael@0 1209 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 1210 197, 197, 197, 196, 197, 517, 365, 518,
michael@0 1211 370, 81, 511, 203, 512, 197, 197, 153,
michael@0 1212 368, 197, 197, 194, 514, 197, 197, 197,
michael@0 1213 197, 197, 197, 197, 197, 197, 197, 197,
michael@0 1214 197, 196, 197, 211, 197, 275, 113, 525,
michael@0 1215 525, 155, 202, 203, 204, 197, 197, 197,
michael@0 1216 515, 197, 211, 197, 207, 197, 526, 179,
michael@0 1217 527, 528, 157, 511, 203, 512, 197, 197,
michael@0 1218 197, 529, 197, 197, 197, 514, 197, 179,
michael@0 1219 527, 528, 157, 511, 203, 512, 197, 197,
michael@0 1220 197, 529, 197, 197, 197, 514, 197, 527,
michael@0 1221 527, 157, 511, 203, 512, 197, 197, 197,
michael@0 1222 529, 197, 197, 197, 514, 197, 530, 176,
michael@0 1223 531, 532, 160, 511, 203, 512, 197, 197,
michael@0 1224 197, 529, 197, 197, 197, 514, 197, 176,
michael@0 1225 531, 532, 160, 511, 203, 512, 197, 197,
michael@0 1226 197, 529, 197, 197, 197, 514, 197, 531,
michael@0 1227 531, 160, 511, 203, 512, 197, 197, 197,
michael@0 1228 529, 197, 197, 197, 514, 197, 533, 173,
michael@0 1229 534, 535, 163, 511, 203, 512, 197, 197,
michael@0 1230 197, 529, 197, 197, 197, 514, 197, 173,
michael@0 1231 534, 535, 163, 511, 203, 512, 197, 197,
michael@0 1232 197, 529, 197, 197, 197, 514, 197, 534,
michael@0 1233 534, 163, 511, 203, 512, 197, 197, 197,
michael@0 1234 529, 197, 197, 197, 514, 197, 536, 170,
michael@0 1235 197, 537, 197, 511, 203, 512, 197, 197,
michael@0 1236 197, 529, 197, 197, 197, 514, 197, 170,
michael@0 1237 197, 537, 197, 511, 203, 512, 197, 197,
michael@0 1238 197, 529, 197, 197, 197, 514, 197, 511,
michael@0 1239 203, 512, 197, 197, 197, 529, 197, 197,
michael@0 1240 197, 514, 197, 538, 197, 539, 540, 197,
michael@0 1241 511, 203, 512, 197, 197, 167, 197, 197,
michael@0 1242 197, 197, 514, 197, 166, 197, 197, 197,
michael@0 1243 197, 511, 203, 512, 197, 197, 197, 197,
michael@0 1244 197, 197, 197, 514, 197, 511, 203, 512,
michael@0 1245 197, 197, 197, 197, 197, 197, 197, 514,
michael@0 1246 197, 538, 197, 197, 197, 197, 511, 203,
michael@0 1247 512, 197, 197, 197, 197, 197, 197, 197,
michael@0 1248 514, 197, 538, 197, 539, 197, 197, 511,
michael@0 1249 203, 512, 197, 197, 167, 197, 197, 197,
michael@0 1250 197, 514, 197, 516, 166, 357, 357, 95,
michael@0 1251 362, 357, 187, 188, 189, 357, 357, 357,
michael@0 1252 363, 357, 516, 357, 360, 357, 542, 541,
michael@0 1253 541, 541, 541, 543, 544, 545, 541, 543,
michael@0 1254 544, 545, 541, 546, 541, 541, 547, 544,
michael@0 1255 545, 541, 544, 545, 541, 544, 548, 541,
michael@0 1256 544, 541, 546, 541, 541, 541, 544, 545,
michael@0 1257 541, 0
michael@0 1258 };
michael@0 1259
michael@0 1260 static const short _indic_syllable_machine_trans_targs[] = {
michael@0 1261 170, 197, 199, 202, 3, 205, 4, 6,
michael@0 1262 208, 7, 9, 211, 10, 12, 214, 13,
michael@0 1263 15, 16, 191, 18, 19, 213, 21, 22,
michael@0 1264 210, 24, 25, 207, 216, 221, 225, 228,
michael@0 1265 232, 235, 239, 242, 246, 249, 170, 277,
michael@0 1266 279, 282, 39, 285, 40, 42, 288, 43,
michael@0 1267 45, 291, 46, 48, 294, 49, 51, 52,
michael@0 1268 271, 54, 55, 293, 57, 58, 290, 60,
michael@0 1269 61, 287, 296, 301, 305, 308, 312, 315,
michael@0 1270 319, 322, 326, 330, 170, 356, 358, 361,
michael@0 1271 75, 364, 170, 76, 78, 367, 79, 81,
michael@0 1272 370, 82, 84, 373, 85, 87, 88, 350,
michael@0 1273 90, 91, 372, 93, 94, 369, 96, 97,
michael@0 1274 366, 375, 380, 384, 387, 391, 394, 398,
michael@0 1275 401, 405, 170, 437, 439, 442, 110, 445,
michael@0 1276 111, 113, 448, 114, 116, 451, 117, 119,
michael@0 1277 454, 120, 122, 123, 431, 125, 126, 453,
michael@0 1278 128, 129, 450, 131, 132, 447, 456, 461,
michael@0 1279 465, 468, 472, 475, 479, 482, 486, 489,
michael@0 1280 409, 505, 146, 508, 148, 511, 149, 151,
michael@0 1281 514, 152, 154, 517, 155, 520, 522, 523,
michael@0 1282 159, 160, 519, 162, 163, 516, 165, 166,
michael@0 1283 513, 168, 169, 510, 170, 171, 251, 331,
michael@0 1284 333, 408, 410, 351, 170, 353, 411, 407,
michael@0 1285 490, 491, 378, 526, 379, 170, 172, 174,
michael@0 1286 35, 250, 192, 170, 194, 248, 219, 200,
michael@0 1287 220, 173, 34, 175, 244, 0, 176, 178,
michael@0 1288 33, 243, 241, 177, 32, 179, 237, 180,
michael@0 1289 182, 31, 236, 234, 181, 30, 183, 230,
michael@0 1290 184, 186, 29, 229, 227, 185, 28, 187,
michael@0 1291 223, 188, 190, 27, 222, 218, 189, 26,
michael@0 1292 204, 193, 196, 195, 198, 1, 203, 201,
michael@0 1293 2, 206, 5, 23, 209, 8, 20, 212,
michael@0 1294 11, 17, 215, 14, 217, 224, 226, 231,
michael@0 1295 233, 238, 240, 245, 247, 170, 252, 254,
michael@0 1296 71, 328, 272, 170, 274, 329, 299, 280,
michael@0 1297 300, 253, 70, 255, 324, 36, 256, 258,
michael@0 1298 69, 323, 321, 257, 68, 259, 317, 260,
michael@0 1299 262, 67, 316, 314, 261, 66, 263, 310,
michael@0 1300 264, 266, 65, 309, 307, 265, 64, 267,
michael@0 1301 303, 268, 270, 63, 302, 298, 269, 62,
michael@0 1302 284, 273, 276, 275, 278, 37, 283, 281,
michael@0 1303 38, 286, 41, 59, 289, 44, 56, 292,
michael@0 1304 47, 53, 295, 50, 297, 304, 306, 311,
michael@0 1305 313, 318, 320, 325, 327, 170, 332, 106,
michael@0 1306 359, 334, 403, 72, 335, 337, 105, 402,
michael@0 1307 400, 336, 104, 338, 396, 339, 341, 103,
michael@0 1308 395, 393, 340, 102, 342, 389, 343, 345,
michael@0 1309 101, 388, 386, 344, 100, 346, 382, 347,
michael@0 1310 349, 99, 381, 377, 348, 98, 363, 352,
michael@0 1311 355, 354, 357, 73, 362, 360, 74, 365,
michael@0 1312 77, 95, 368, 80, 92, 371, 83, 89,
michael@0 1313 374, 86, 376, 383, 385, 390, 392, 397,
michael@0 1314 399, 404, 406, 170, 170, 412, 414, 142,
michael@0 1315 141, 432, 170, 434, 488, 459, 440, 460,
michael@0 1316 413, 415, 484, 107, 416, 418, 140, 483,
michael@0 1317 481, 417, 139, 419, 477, 420, 422, 138,
michael@0 1318 476, 474, 421, 137, 423, 470, 424, 426,
michael@0 1319 136, 469, 467, 425, 135, 427, 463, 428,
michael@0 1320 430, 134, 462, 458, 429, 133, 444, 433,
michael@0 1321 436, 435, 438, 108, 443, 441, 109, 446,
michael@0 1322 112, 130, 449, 115, 127, 452, 118, 124,
michael@0 1323 455, 121, 457, 464, 466, 471, 473, 478,
michael@0 1324 480, 485, 487, 143, 492, 493, 507, 498,
michael@0 1325 500, 525, 503, 494, 495, 496, 144, 506,
michael@0 1326 497, 499, 502, 501, 504, 145, 509, 147,
michael@0 1327 167, 156, 512, 150, 164, 515, 153, 161,
michael@0 1328 518, 158, 521, 157, 524, 170, 527, 528,
michael@0 1329 170, 530, 529, 532, 531
michael@0 1330 };
michael@0 1331
michael@0 1332 static const char _indic_syllable_machine_trans_actions[] = {
michael@0 1333 1, 2, 0, 0, 0, 2, 0, 0,
michael@0 1334 2, 0, 0, 2, 0, 0, 2, 0,
michael@0 1335 0, 0, 2, 0, 0, 2, 0, 0,
michael@0 1336 2, 0, 0, 2, 2, 2, 2, 2,
michael@0 1337 2, 2, 2, 2, 2, 2, 3, 2,
michael@0 1338 0, 0, 0, 2, 0, 0, 2, 0,
michael@0 1339 0, 2, 0, 0, 2, 0, 0, 0,
michael@0 1340 2, 0, 0, 2, 0, 0, 2, 0,
michael@0 1341 0, 2, 2, 2, 2, 2, 2, 2,
michael@0 1342 2, 2, 2, 2, 4, 2, 0, 0,
michael@0 1343 0, 2, 5, 0, 0, 2, 0, 0,
michael@0 1344 2, 0, 0, 2, 0, 0, 0, 2,
michael@0 1345 0, 0, 2, 0, 0, 2, 0, 0,
michael@0 1346 2, 2, 6, 2, 6, 2, 6, 2,
michael@0 1347 6, 2, 7, 2, 0, 0, 0, 2,
michael@0 1348 0, 0, 2, 0, 0, 2, 0, 0,
michael@0 1349 2, 0, 0, 0, 2, 0, 0, 2,
michael@0 1350 0, 0, 2, 0, 0, 2, 2, 2,
michael@0 1351 2, 2, 2, 2, 2, 2, 2, 2,
michael@0 1352 6, 8, 0, 2, 0, 2, 0, 0,
michael@0 1353 2, 0, 0, 2, 0, 2, 0, 0,
michael@0 1354 0, 0, 2, 0, 0, 2, 0, 0,
michael@0 1355 2, 0, 0, 2, 11, 2, 2, 6,
michael@0 1356 2, 12, 12, 0, 13, 0, 2, 2,
michael@0 1357 6, 2, 6, 0, 6, 14, 2, 2,
michael@0 1358 0, 2, 0, 15, 0, 2, 2, 0,
michael@0 1359 2, 2, 0, 2, 2, 0, 2, 2,
michael@0 1360 0, 2, 2, 2, 0, 2, 2, 2,
michael@0 1361 2, 0, 2, 2, 2, 0, 2, 2,
michael@0 1362 2, 2, 0, 2, 2, 2, 0, 2,
michael@0 1363 2, 2, 2, 0, 2, 2, 2, 0,
michael@0 1364 2, 0, 0, 0, 0, 0, 2, 0,
michael@0 1365 0, 2, 0, 0, 2, 0, 0, 2,
michael@0 1366 0, 0, 2, 0, 2, 2, 2, 2,
michael@0 1367 2, 2, 2, 2, 2, 16, 2, 2,
michael@0 1368 0, 2, 0, 17, 0, 2, 2, 0,
michael@0 1369 2, 2, 0, 2, 2, 0, 2, 2,
michael@0 1370 0, 2, 2, 2, 0, 2, 2, 2,
michael@0 1371 2, 0, 2, 2, 2, 0, 2, 2,
michael@0 1372 2, 2, 0, 2, 2, 2, 0, 2,
michael@0 1373 2, 2, 2, 0, 2, 2, 2, 0,
michael@0 1374 2, 0, 0, 0, 0, 0, 2, 0,
michael@0 1375 0, 2, 0, 0, 2, 0, 0, 2,
michael@0 1376 0, 0, 2, 0, 2, 2, 2, 2,
michael@0 1377 2, 2, 2, 2, 2, 18, 6, 0,
michael@0 1378 0, 6, 6, 0, 6, 2, 0, 6,
michael@0 1379 2, 6, 0, 6, 6, 6, 2, 0,
michael@0 1380 6, 2, 6, 0, 6, 6, 6, 2,
michael@0 1381 0, 6, 2, 6, 0, 6, 6, 6,
michael@0 1382 2, 0, 6, 2, 6, 0, 6, 0,
michael@0 1383 0, 0, 0, 0, 2, 0, 0, 2,
michael@0 1384 0, 0, 2, 0, 0, 2, 0, 0,
michael@0 1385 2, 0, 2, 2, 2, 2, 2, 2,
michael@0 1386 2, 2, 2, 19, 20, 2, 2, 0,
michael@0 1387 0, 0, 21, 0, 2, 2, 0, 2,
michael@0 1388 2, 2, 2, 0, 2, 2, 0, 2,
michael@0 1389 2, 2, 0, 2, 2, 2, 2, 0,
michael@0 1390 2, 2, 2, 0, 2, 2, 2, 2,
michael@0 1391 0, 2, 2, 2, 0, 2, 2, 2,
michael@0 1392 2, 0, 2, 2, 2, 0, 2, 0,
michael@0 1393 0, 0, 0, 0, 2, 0, 0, 2,
michael@0 1394 0, 0, 2, 0, 0, 2, 0, 0,
michael@0 1395 2, 0, 2, 2, 2, 2, 2, 2,
michael@0 1396 2, 2, 2, 0, 0, 8, 2, 0,
michael@0 1397 0, 2, 0, 2, 8, 8, 0, 8,
michael@0 1398 8, 0, 0, 0, 0, 0, 2, 0,
michael@0 1399 0, 0, 2, 0, 0, 2, 0, 0,
michael@0 1400 2, 0, 0, 0, 2, 22, 0, 0,
michael@0 1401 23, 0, 0, 0, 0
michael@0 1402 };
michael@0 1403
michael@0 1404 static const char _indic_syllable_machine_to_state_actions[] = {
michael@0 1405 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1406 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1407 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1408 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1409 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1410 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1411 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1412 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1413 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1414 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1415 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1416 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1417 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1418 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1419 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1420 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1421 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1422 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1423 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1424 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1425 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1426 0, 0, 9, 0, 0, 0, 0, 0,
michael@0 1427 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1428 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1429 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1430 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1431 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1432 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1433 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1434 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1435 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1436 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1437 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1438 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1439 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1440 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1441 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1442 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1443 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1444 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1445 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1446 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1447 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1448 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1449 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1450 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1451 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1452 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1453 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1454 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1455 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1456 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1457 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1458 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1459 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1460 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1461 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1462 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1463 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1464 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1465 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1466 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1467 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1468 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1469 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1470 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1471 0, 0, 0, 0, 0
michael@0 1472 };
michael@0 1473
michael@0 1474 static const char _indic_syllable_machine_from_state_actions[] = {
michael@0 1475 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1476 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1477 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1478 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1479 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1480 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1481 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1482 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1483 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1484 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1485 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1486 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1487 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1488 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1489 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1490 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1491 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1492 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1493 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1494 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1495 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1496 0, 0, 10, 0, 0, 0, 0, 0,
michael@0 1497 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1498 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1499 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1500 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1501 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1502 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1503 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1504 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1505 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1506 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1507 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1508 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1509 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1510 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1511 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1512 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1513 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1514 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1515 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1516 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1517 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1518 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1519 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1520 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1521 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1522 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1523 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1524 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1525 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1526 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1527 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1528 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1529 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1530 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1531 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1532 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1533 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1534 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1535 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1536 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1537 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1538 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1539 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1540 0, 0, 0, 0, 0, 0, 0, 0,
michael@0 1541 0, 0, 0, 0, 0
michael@0 1542 };
michael@0 1543
michael@0 1544 static const short _indic_syllable_machine_eof_trans[] = {
michael@0 1545 1, 1, 1, 1, 1, 1, 1, 1,
michael@0 1546 1, 1, 1, 1, 1, 1, 1, 1,
michael@0 1547 1, 1, 1, 1, 1, 1, 1, 1,
michael@0 1548 1, 1, 1, 1, 1, 1, 1, 1,
michael@0 1549 1, 1, 1, 1, 39, 39, 39, 39,
michael@0 1550 39, 39, 39, 39, 39, 39, 39, 39,
michael@0 1551 39, 39, 39, 39, 39, 39, 39, 39,
michael@0 1552 39, 39, 39, 39, 39, 39, 39, 39,
michael@0 1553 39, 39, 39, 39, 39, 39, 39, 39,
michael@0 1554 77, 77, 77, 83, 83, 77, 77, 77,
michael@0 1555 77, 77, 77, 77, 77, 77, 77, 77,
michael@0 1556 77, 77, 77, 77, 77, 77, 77, 77,
michael@0 1557 77, 77, 77, 77, 77, 77, 77, 77,
michael@0 1558 83, 77, 77, 115, 115, 115, 115, 115,
michael@0 1559 115, 115, 115, 115, 115, 115, 115, 115,
michael@0 1560 115, 115, 115, 115, 115, 115, 115, 115,
michael@0 1561 115, 115, 115, 115, 115, 115, 115, 115,
michael@0 1562 115, 115, 115, 115, 115, 115, 115, 77,
michael@0 1563 1, 1, 1, 1, 1, 1, 1, 1,
michael@0 1564 1, 1, 1, 1, 1, 1, 1, 1,
michael@0 1565 1, 1, 1, 1, 1, 1, 1, 1,
michael@0 1566 1, 1, 0, 198, 198, 198, 198, 198,
michael@0 1567 198, 198, 198, 198, 198, 198, 198, 198,
michael@0 1568 198, 198, 198, 198, 198, 198, 198, 198,
michael@0 1569 198, 198, 198, 198, 198, 198, 198, 198,
michael@0 1570 198, 198, 198, 198, 198, 198, 198, 198,
michael@0 1571 198, 198, 198, 198, 198, 198, 198, 198,
michael@0 1572 198, 198, 198, 198, 198, 198, 198, 198,
michael@0 1573 198, 198, 198, 198, 198, 198, 198, 198,
michael@0 1574 198, 198, 198, 198, 198, 198, 198, 198,
michael@0 1575 198, 198, 198, 198, 198, 198, 198, 198,
michael@0 1576 198, 198, 198, 278, 278, 278, 278, 278,
michael@0 1577 278, 278, 278, 278, 278, 278, 278, 278,
michael@0 1578 278, 278, 278, 278, 278, 278, 278, 278,
michael@0 1579 278, 278, 278, 278, 278, 278, 278, 278,
michael@0 1580 278, 278, 278, 278, 278, 278, 278, 278,
michael@0 1581 278, 278, 278, 278, 278, 278, 278, 278,
michael@0 1582 278, 278, 278, 278, 278, 278, 278, 278,
michael@0 1583 278, 278, 278, 278, 278, 278, 278, 278,
michael@0 1584 278, 278, 278, 278, 278, 278, 278, 278,
michael@0 1585 278, 278, 278, 278, 278, 278, 278, 278,
michael@0 1586 278, 278, 278, 358, 358, 358, 358, 358,
michael@0 1587 358, 358, 358, 358, 358, 358, 358, 358,
michael@0 1588 358, 358, 358, 358, 358, 358, 358, 358,
michael@0 1589 358, 358, 358, 358, 358, 358, 358, 358,
michael@0 1590 358, 358, 358, 358, 358, 358, 358, 358,
michael@0 1591 358, 358, 358, 358, 358, 358, 358, 358,
michael@0 1592 358, 358, 358, 358, 358, 358, 358, 358,
michael@0 1593 358, 358, 358, 358, 358, 358, 358, 358,
michael@0 1594 358, 358, 358, 358, 358, 358, 358, 358,
michael@0 1595 358, 358, 358, 358, 358, 358, 358, 358,
michael@0 1596 428, 358, 428, 429, 429, 429, 429, 429,
michael@0 1597 429, 429, 429, 429, 429, 429, 429, 429,
michael@0 1598 429, 429, 429, 429, 429, 429, 429, 429,
michael@0 1599 429, 429, 429, 429, 429, 429, 429, 429,
michael@0 1600 429, 429, 429, 429, 429, 429, 429, 429,
michael@0 1601 429, 429, 429, 429, 429, 429, 429, 429,
michael@0 1602 429, 429, 429, 429, 429, 429, 429, 429,
michael@0 1603 429, 429, 429, 429, 429, 429, 429, 429,
michael@0 1604 429, 429, 429, 429, 429, 429, 429, 429,
michael@0 1605 429, 429, 429, 429, 429, 429, 429, 429,
michael@0 1606 429, 429, 358, 198, 198, 198, 358, 198,
michael@0 1607 198, 198, 198, 198, 198, 198, 198, 198,
michael@0 1608 198, 198, 198, 198, 198, 198, 198, 198,
michael@0 1609 198, 198, 198, 198, 198, 198, 198, 198,
michael@0 1610 198, 198, 198, 198, 198, 358, 542, 542,
michael@0 1611 542, 542, 542, 542, 542
michael@0 1612 };
michael@0 1613
michael@0 1614 static const int indic_syllable_machine_start = 170;
michael@0 1615 static const int indic_syllable_machine_first_final = 170;
michael@0 1616 static const int indic_syllable_machine_error = -1;
michael@0 1617
michael@0 1618 static const int indic_syllable_machine_en_main = 170;
michael@0 1619
michael@0 1620
michael@0 1621 #line 36 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1622
michael@0 1623
michael@0 1624
michael@0 1625 #line 98 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1626
michael@0 1627
michael@0 1628 #define found_syllable(syllable_type) \
michael@0 1629 HB_STMT_START { \
michael@0 1630 if (0) fprintf (stderr, "syllable %d..%d %s\n", last, p+1, #syllable_type); \
michael@0 1631 for (unsigned int i = last; i < p+1; i++) \
michael@0 1632 info[i].syllable() = (syllable_serial << 4) | syllable_type; \
michael@0 1633 last = p+1; \
michael@0 1634 syllable_serial++; \
michael@0 1635 if (unlikely (syllable_serial == 16)) syllable_serial = 1; \
michael@0 1636 } HB_STMT_END
michael@0 1637
michael@0 1638 static void
michael@0 1639 find_syllables (hb_buffer_t *buffer)
michael@0 1640 {
michael@0 1641 unsigned int p, pe, eof, ts HB_UNUSED, te HB_UNUSED, act HB_UNUSED;
michael@0 1642 int cs;
michael@0 1643 hb_glyph_info_t *info = buffer->info;
michael@0 1644
michael@0 1645 #line 1646 "hb-ot-shape-complex-indic-machine.hh.tmp"
michael@0 1646 {
michael@0 1647 cs = indic_syllable_machine_start;
michael@0 1648 ts = 0;
michael@0 1649 te = 0;
michael@0 1650 act = 0;
michael@0 1651 }
michael@0 1652
michael@0 1653 #line 119 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1654
michael@0 1655
michael@0 1656 p = 0;
michael@0 1657 pe = eof = buffer->len;
michael@0 1658
michael@0 1659 unsigned int last = 0;
michael@0 1660 unsigned int syllable_serial = 1;
michael@0 1661
michael@0 1662 #line 1663 "hb-ot-shape-complex-indic-machine.hh.tmp"
michael@0 1663 {
michael@0 1664 int _slen;
michael@0 1665 int _trans;
michael@0 1666 const unsigned char *_keys;
michael@0 1667 const short *_inds;
michael@0 1668 if ( p == pe )
michael@0 1669 goto _test_eof;
michael@0 1670 _resume:
michael@0 1671 switch ( _indic_syllable_machine_from_state_actions[cs] ) {
michael@0 1672 case 10:
michael@0 1673 #line 1 "NONE"
michael@0 1674 {ts = p;}
michael@0 1675 break;
michael@0 1676 #line 1677 "hb-ot-shape-complex-indic-machine.hh.tmp"
michael@0 1677 }
michael@0 1678
michael@0 1679 _keys = _indic_syllable_machine_trans_keys + (cs<<1);
michael@0 1680 _inds = _indic_syllable_machine_indicies + _indic_syllable_machine_index_offsets[cs];
michael@0 1681
michael@0 1682 _slen = _indic_syllable_machine_key_spans[cs];
michael@0 1683 _trans = _inds[ _slen > 0 && _keys[0] <=( info[p].indic_category()) &&
michael@0 1684 ( info[p].indic_category()) <= _keys[1] ?
michael@0 1685 ( info[p].indic_category()) - _keys[0] : _slen ];
michael@0 1686
michael@0 1687 _eof_trans:
michael@0 1688 cs = _indic_syllable_machine_trans_targs[_trans];
michael@0 1689
michael@0 1690 if ( _indic_syllable_machine_trans_actions[_trans] == 0 )
michael@0 1691 goto _again;
michael@0 1692
michael@0 1693 switch ( _indic_syllable_machine_trans_actions[_trans] ) {
michael@0 1694 case 2:
michael@0 1695 #line 1 "NONE"
michael@0 1696 {te = p+1;}
michael@0 1697 break;
michael@0 1698 case 15:
michael@0 1699 #line 89 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1700 {te = p+1;{ found_syllable (consonant_syllable); }}
michael@0 1701 break;
michael@0 1702 case 17:
michael@0 1703 #line 90 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1704 {te = p+1;{ found_syllable (vowel_syllable); }}
michael@0 1705 break;
michael@0 1706 case 21:
michael@0 1707 #line 91 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1708 {te = p+1;{ found_syllable (standalone_cluster); }}
michael@0 1709 break;
michael@0 1710 case 23:
michael@0 1711 #line 92 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1712 {te = p+1;{ found_syllable (avagraha_cluster); }}
michael@0 1713 break;
michael@0 1714 case 13:
michael@0 1715 #line 93 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1716 {te = p+1;{ found_syllable (broken_cluster); }}
michael@0 1717 break;
michael@0 1718 case 11:
michael@0 1719 #line 94 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1720 {te = p+1;{ found_syllable (non_indic_cluster); }}
michael@0 1721 break;
michael@0 1722 case 14:
michael@0 1723 #line 89 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1724 {te = p;p--;{ found_syllable (consonant_syllable); }}
michael@0 1725 break;
michael@0 1726 case 16:
michael@0 1727 #line 90 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1728 {te = p;p--;{ found_syllable (vowel_syllable); }}
michael@0 1729 break;
michael@0 1730 case 20:
michael@0 1731 #line 91 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1732 {te = p;p--;{ found_syllable (standalone_cluster); }}
michael@0 1733 break;
michael@0 1734 case 22:
michael@0 1735 #line 92 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1736 {te = p;p--;{ found_syllable (avagraha_cluster); }}
michael@0 1737 break;
michael@0 1738 case 18:
michael@0 1739 #line 93 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1740 {te = p;p--;{ found_syllable (broken_cluster); }}
michael@0 1741 break;
michael@0 1742 case 19:
michael@0 1743 #line 94 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1744 {te = p;p--;{ found_syllable (non_indic_cluster); }}
michael@0 1745 break;
michael@0 1746 case 1:
michael@0 1747 #line 89 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1748 {{p = ((te))-1;}{ found_syllable (consonant_syllable); }}
michael@0 1749 break;
michael@0 1750 case 3:
michael@0 1751 #line 90 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1752 {{p = ((te))-1;}{ found_syllable (vowel_syllable); }}
michael@0 1753 break;
michael@0 1754 case 7:
michael@0 1755 #line 91 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1756 {{p = ((te))-1;}{ found_syllable (standalone_cluster); }}
michael@0 1757 break;
michael@0 1758 case 4:
michael@0 1759 #line 93 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1760 {{p = ((te))-1;}{ found_syllable (broken_cluster); }}
michael@0 1761 break;
michael@0 1762 case 5:
michael@0 1763 #line 1 "NONE"
michael@0 1764 { switch( act ) {
michael@0 1765 case 1:
michael@0 1766 {{p = ((te))-1;} found_syllable (consonant_syllable); }
michael@0 1767 break;
michael@0 1768 case 5:
michael@0 1769 {{p = ((te))-1;} found_syllable (broken_cluster); }
michael@0 1770 break;
michael@0 1771 case 6:
michael@0 1772 {{p = ((te))-1;} found_syllable (non_indic_cluster); }
michael@0 1773 break;
michael@0 1774 }
michael@0 1775 }
michael@0 1776 break;
michael@0 1777 case 8:
michael@0 1778 #line 1 "NONE"
michael@0 1779 {te = p+1;}
michael@0 1780 #line 89 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1781 {act = 1;}
michael@0 1782 break;
michael@0 1783 case 6:
michael@0 1784 #line 1 "NONE"
michael@0 1785 {te = p+1;}
michael@0 1786 #line 93 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1787 {act = 5;}
michael@0 1788 break;
michael@0 1789 case 12:
michael@0 1790 #line 1 "NONE"
michael@0 1791 {te = p+1;}
michael@0 1792 #line 94 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1793 {act = 6;}
michael@0 1794 break;
michael@0 1795 #line 1796 "hb-ot-shape-complex-indic-machine.hh.tmp"
michael@0 1796 }
michael@0 1797
michael@0 1798 _again:
michael@0 1799 switch ( _indic_syllable_machine_to_state_actions[cs] ) {
michael@0 1800 case 9:
michael@0 1801 #line 1 "NONE"
michael@0 1802 {ts = 0;}
michael@0 1803 break;
michael@0 1804 #line 1805 "hb-ot-shape-complex-indic-machine.hh.tmp"
michael@0 1805 }
michael@0 1806
michael@0 1807 if ( ++p != pe )
michael@0 1808 goto _resume;
michael@0 1809 _test_eof: {}
michael@0 1810 if ( p == eof )
michael@0 1811 {
michael@0 1812 if ( _indic_syllable_machine_eof_trans[cs] > 0 ) {
michael@0 1813 _trans = _indic_syllable_machine_eof_trans[cs] - 1;
michael@0 1814 goto _eof_trans;
michael@0 1815 }
michael@0 1816 }
michael@0 1817
michael@0 1818 }
michael@0 1819
michael@0 1820 #line 128 "../../src/hb-ot-shape-complex-indic-machine.rl"
michael@0 1821
michael@0 1822 }
michael@0 1823
michael@0 1824 #endif /* HB_OT_SHAPE_COMPLEX_INDIC_MACHINE_HH */

mercurial