initial
[prop.git] / prop-src / lexer.cc
blob7808bac2a0733c186dc083cbc54a4b425287239c
1 ///////////////////////////////////////////////////////////////////////////////
2 // This file is generated automatically using Prop (version 2.3.6),
3 // last updated on Nov 2, 1999.
4 // The original source file is "lexer.pcc".
5 ///////////////////////////////////////////////////////////////////////////////
7 #define PROP_PRINTER_USED
8 #define PROP_REGEXP_MATCHING_USED
9 #define PROP_PARSER_USED
10 #include <propdefs.h>
11 #line 1 "lexer.pcc"
12 ///////////////////////////////////////////////////////////////////////////////
14 // This is the implementation of the Prop lexical scanner.
16 ///////////////////////////////////////////////////////////////////////////////
17 #include <new.h>
18 #include <stdlib.h>
19 #include <string.h>
20 #include <iostream.h>
21 #include <strstream.h>
22 #include <ctype.h>
23 #include <AD/strings/quark.h>
24 #include "basics.h"
25 #include "keywords.h"
26 #include "parser.h"
27 #include "type.h"
30 // int PropParser::get_token()
31 // { int c = get_token2();
32 // if (verbosity > 3)
33 // { if (c < 256) cerr << "[" << (char)c << "]";
34 // else cerr << "[" << (PropToken)c << c << "]";
35 // }
36 // return c;
37 // }
39 ///////////////////////////////////////////////////////////////////////////////
41 // The definition of the lexical scanner.
43 ///////////////////////////////////////////////////////////////////////////////
44 int PropParser::get_token()
46 for (;;)
49 #line 37 "lexer.pcc"
50 #line 186 "lexer.pcc"
52 for (;;) {
54 static const DFATables::Offset _X1_base [ 1745 ] = {
55 0, 0, 105, 124, 215, 228, 217, 333, 223, 438, 225, 541, 231, 0, 0, 0,
56 225, 10682, 622, 10682, 189, 10677, 10675, 568, 576, 222, 10674, 490, 165, 10671, 194, 611,
57 644, 181, 186, 651, 504, 584, 598, 655, 658, 0, 697, 10671, 0, 10671, 743, 208,
58 246, 555, 623, 570, 805, 898, 711, 229, 602, 10670, 952, 536, 10670, 897, 1045, 1139,
59 10669, 0, 0, 714, 1244, 0, 0, 0, 637, 10669, 1333, 10669, 234, 10667, 10666, 603,
60 10666, 10665, 10664, 475, 10664, 591, 847, 649, 648, 0, 1038, 10664, 0, 10663, 1340, 0,
61 499, 880, 883, 612, 895, 1339, 892, 885, 10663, 10662, 1430, 750, 10662, 1044, 1523, 1617,
62 10661, 0, 0, 900, 1722, 0, 0, 1035, 10661, 1811, 10661, 643, 10660, 10660, 1282, 1465,
63 866, 10660, 990, 988, 10660, 671, 1290, 1467, 860, 1014, 1485, 1496, 996, 1299, 1496, 712,
64 1857, 10660, 10659, 1818, 0, 503, 1054, 1544, 1954, 1817, 1038, 1076, 10659, 10657, 899, 10657,
65 1522, 2047, 10655, 0, 0, 902, 2058, 0, 10653, 10641, 0, 10620, 1834, 0, 0, 10617,
66 0, 10616, 1835, 10616, 10615, 1837, 0, 0, 0, 0, 0, 0, 0, 899, 2066, 10615,
67 10615, 725, 480, 481, 10615, 10614, 1302, 10613, 10611, 10609, 10609, 10609, 10609, 10609, 10609, 10608,
68 10608, 10608, 1507, 10608, 10606, 10606, 1524, 10601, 10601, 10601, 0, 10595, 981, 10593, 472, 10588,
69 10585, 10585, 1011, 10582, 0, 1524, 10582, 0, 10582, 10580, 10580, 10580, 10580, 10580, 10573, 10571,
70 10571, 602, 1462, 10571, 10571, 10571, 10570, 10570, 555, 10569, 10568, 673, 10567, 1268, 10567, 10567,
71 10566, 991, 10565, 10565, 0, 10565, 10565, 10565, 2112, 0, 0, 1330, 2040, 0, 10565, 0,
72 0, 0, 10565, 10564, 10564, 0, 0, 0, 1356, 1532, 2209, 10564, 0, 2314, 0, 0,
73 1533, 10562, 0, 10561, 2419, 10561, 0, 10559, 0, 0, 0, 0, 0, 10552, 2524, 0,
74 0, 0, 1328, 0, 10548, 2045, 2629, 2734, 1338, 0, 0, 2839, 2944, 0, 3033, 10547,
75 10547, 3079, 3040, 2063, 10547, 3043, 3176, 3281, 2091, 0, 3370, 1541, 3416, 3462, 3508, 3554,
76 3600, 3646, 3692, 3738, 3784, 3830, 3876, 1313, 535, 1532, 1067, 1477, 1525, 1761, 10546, 1759,
77 1762, 874, 1769, 1540, 3922, 0, 1827, 3968, 4006, 0, 4076, 0, 0, 4181, 0, 4272,
78 10546, 1857, 4342, 4431, 10544, 10539, 4477, 3377, 10539, 3044, 4574, 4679, 0, 4768, 2052, 4814,
79 4860, 4906, 4952, 4998, 5044, 5090, 5136, 5182, 5228, 5274, 1772, 1318, 1532, 1528, 1778, 1837,
80 1786, 1835, 1986, 2033, 1788, 1848, 1994, 2992, 714, 2001, 1779, 10539, 2013, 2035, 2018, 2087,
81 2028, 2005, 1838, 3312, 2081, 10538, 3954, 1996, 10537, 10536, 2045, 2981, 2089, 2047, 2093, 2019,
82 2969, 2995, 2986, 3011, 2987, 2998, 3048, 2103, 10535, 3065, 2991, 3010, 3057, 3320, 3306, 3316,
83 3315, 3318, 3335, 3064, 3321, 10534, 3337, 3332, 3348, 5320, 0, 3382, 5366, 4453, 5449, 0,
84 0, 5554, 0, 0, 5645, 10534, 3416, 5723, 3352, 4019, 5828, 4455, 10531, 3954, 1794, 3394,
85 3055, 3386, 3388, 3442, 1377, 3439, 3396, 3448, 3485, 3494, 2032, 3531, 206, 3433, 3478, 3983,
86 3540, 3484, 3432, 3443, 1880, 3488, 3528, 3992, 3534, 10531, 3530, 3576, 4246, 3581, 3626, 3489,
87 3571, 3574, 3577, 3586, 3998, 3617, 3618, 3672, 3665, 3012, 3624, 10530, 3678, 3662, 3663, 10529,
88 3670, 3716, 3715, 3724, 3761, 3718, 3760, 10528, 3764, 3664, 3765, 10527, 3810, 3999, 4000, 3755,
89 3714, 3806, 3770, 3816, 3802, 4249, 10526, 3862, 3853, 10525, 3807, 3852, 4001, 3847, 3848, 3898,
90 3854, 3899, 3989, 4003, 3893, 4250, 3908, 4248, 4251, 3856, 10524, 4252, 10523, 0, 0, 0,
91 0, 4016, 5933, 0, 10523, 0, 0, 10521, 6038, 0, 10520, 10520, 0, 5638, 10519, 6143,
92 0, 0, 4273, 6232, 6278, 6324, 6370, 6467, 105, 10518, 6558, 6655, 6744, 6790, 4280, 4283,
93 0, 6887, 0, 10518, 10518, 6976, 2123, 3906, 3974, 3907, 3980, 3973, 3982, 10518, 3975, 10517,
94 3985, 4227, 3992, 10516, 4226, 4234, 3986, 4231, 4232, 10515, 4235, 4375, 4238, 10514, 7073, 0,
95 10514, 7178, 0, 4426, 7244, 10513, 10513, 7290, 10513, 4775, 7336, 7382, 5648, 4442, 7479, 0,
96 7568, 4410, 4409, 4411, 4438, 4448, 4419, 4420, 4263, 4744, 4753, 4754, 4425, 4745, 4755, 4752,
97 4450, 4746, 4493, 4747, 4790, 4791, 4833, 4840, 4831, 4774, 4764, 4841, 10510, 4830, 4846, 5352,
98 4882, 4932, 4834, 4922, 4836, 4883, 4892, 5377, 4923, 4837, 4938, 4926, 4929, 4930, 10508, 4984,
99 4970, 4976, 10507, 5014, 4978, 5021, 5067, 5076, 5020, 5022, 10506, 5024, 5068, 5064, 10505, 5116,
100 5378, 5622, 5106, 5066, 5030, 5159, 5168, 5108, 5624, 10504, 5214, 5205, 10503, 5110, 5112, 5625,
101 5153, 5202, 5122, 5158, 5260, 5297, 5626, 5199, 5306, 5208, 5255, 5294, 5198, 10502, 5204, 10501,
102 7665, 0, 10501, 7770, 0, 5254, 7875, 106, 7980, 8069, 8115, 6239, 5665, 10500, 0, 4390,
103 4728, 4729, 5352, 4732, 5351, 5355, 5353, 5599, 5602, 5606, 5631, 6182, 6208, 6183, 6190, 6189,
104 6207, 6196, 6267, 6313, 6359, 6504, 6506, 6507, 6508, 6532, 6515, 6693, 6533, 6534, 6694, 6695,
105 6701, 6718, 6720, 6719, 6779, 6925, 6926, 6927, 6933, 6939, 6952, 6965, 7217, 6951, 7219, 7220,
106 7221, 7544, 7279, 7517, 7518, 7520, 7541, 7542, 7325, 8045, 7371, 7519, 8019, 8018, 8020, 8021,
107 7543, 8042, 8044, 8104, 8143, 8144, 8145, 8146, 8163, 8165, 8166, 8169, 8177, 8186, 8189, 8188,
108 8190, 8197, 8206, 8208, 8215, 8219, 8222, 8228, 8231, 8239, 8247, 8248, 10500, 10481, 10480, 10480,
109 8302, 4381, 8399, 10480, 5647, 8488, 8534, 8580, 10467, 10467, 8626, 10459, 10458, 10458, 10453, 10450,
110 10449, 10448, 10447, 10447, 10447, 10445, 10444, 10443, 10443, 4239, 10443, 10443, 10443, 0, 10443, 10442,
111 10442, 8672, 8718, 5650, 8764, 8810, 8495, 10442, 5644, 5647, 5292, 10441, 5300, 5641, 10440, 5648,
112 10439, 5301, 6221, 5295, 10438, 10433, 6739, 6228, 5343, 6255, 6552, 6259, 6380, 6252, 6296, 6342,
113 6253, 6298, 6397, 6305, 6545, 6546, 5633, 6294, 6299, 6347, 10432, 3532, 6538, 6350, 6555, 6542,
114 6209, 6730, 6724, 5117, 6732, 10431, 6770, 5637, 10430, 10429, 6743, 6808, 6952, 6956, 5291, 7266,
115 7268, 10427, 6983, 10426, 7265, 6996, 7270, 7309, 6964, 7308, 7313, 7246, 7352, 6749, 7362, 7392,
116 10425, 7357, 7267, 6806, 8141, 7409, 7557, 7354, 7555, 7564, 7554, 10422, 7589, 8090, 8055, 7356,
117 8092, 8101, 8057, 8200, 7558, 8907, 10414, 8996, 9042, 9088, 9003, 10395, 8251, 0, 10395, 10395,
118 10393, 10393, 10392, 10383, 10382, 0, 10382, 10382, 10382, 10380, 10376, 10375, 10375, 10375, 0, 10374,
119 10369, 10369, 10369, 10369, 10369, 10369, 10367, 10367, 10367, 10367, 10367, 10363, 0, 10362, 10362, 10362,
120 10362, 10353, 10352, 10352, 10352, 3075, 0, 10350, 10350, 0, 10349, 10349, 10348, 10348, 10348, 10342,
121 10334, 0, 3325, 4389, 10332, 10328, 10328, 0, 10328, 10323, 10321, 10321, 10321, 10321, 0, 10317,
122 10317, 10317, 10317, 10317, 10316, 10316, 10316, 10316, 10313, 10311, 0, 10311, 10311, 0, 10310, 0,
123 10310, 10308, 10306, 4463, 4239, 0, 10302, 10302, 10302, 10302, 10301, 10301, 10300, 10297, 5628, 10296,
124 10295, 10295, 4388, 10294, 10294, 10294, 10293, 10293, 10293, 10293, 10293, 10293, 0, 10293, 9183, 8296,
125 10293, 10290, 7243, 8096, 8131, 8181, 8207, 8184, 8201, 8266, 8244, 8268, 8269, 10289, 8287, 8076,
126 8204, 10288, 10286, 8465, 8292, 8288, 8289, 8319, 8056, 8293, 8298, 8466, 8295, 8296, 8464, 8476,
127 8136, 8496, 10285, 10284, 8142, 8467, 8473, 8550, 10283, 8477, 8474, 8510, 8479, 8558, 8566, 10282,
128 8612, 8649, 8557, 8652, 8560, 8650, 8556, 10281, 8658, 8602, 8597, 8648, 10279, 8698, 10278, 10277,
129 8692, 8642, 8497, 8694, 8728, 8699, 8737, 8744, 8738, 8739, 10276, 8704, 8750, 10275, 8787, 10274,
130 6971, 8796, 8870, 107, 10274, 10268, 10267, 10266, 10266, 0, 10264, 10264, 0, 0, 10262, 0,
131 0, 10261, 10261, 0, 10261, 0, 10261, 0, 10261, 0, 10261, 10259, 10259, 10258, 10258, 10258,
132 10258, 10234, 10231, 0, 0, 10231, 10227, 0, 10224, 10222, 0, 0, 10221, 0, 10218, 10218,
133 0, 10218, 10215, 10215, 10215, 10214, 10214, 0, 10213, 10213, 10204, 0, 10204, 0, 0, 10204,
134 0, 10204, 10203, 10202, 10202, 10202, 10202, 10202, 10201, 10201, 10197, 10193, 10192, 10192, 10192, 10192,
135 9014, 4470, 108, 10191, 0, 10190, 10189, 0, 10189, 0, 10189, 10189, 0, 10185, 10185, 10183,
136 10183, 10182, 10181, 10181, 10181, 10181, 10181, 10181, 10181, 10181, 10181, 8523, 8788, 8972, 8973, 8980,
137 8786, 10181, 8790, 8974, 10179, 10178, 8791, 10177, 9015, 8982, 8983, 10176, 8977, 10174, 8985, 10170,
138 9003, 9058, 8984, 9059, 9069, 8990, 10169, 9074, 9061, 9112, 9104, 10166, 9146, 9066, 10163, 10148,
139 9062, 10147, 9107, 9115, 9114, 9120, 9006, 9149, 9152, 9148, 10146, 3756, 9151, 9153, 10144, 10140,
140 10138, 9154, 9155, 9159, 9161, 9164, 9162, 9160, 9165, 9166, 9167, 9180, 9190, 9202, 10137, 9200,
141 9239, 9280, 0, 10131, 10127, 0, 10127, 10127, 10127, 10126, 10126, 0, 0, 10126, 0, 10126,
142 10125, 0, 10125, 10124, 10124, 0, 10124, 10119, 0, 10116, 10115, 10115, 10113, 10112, 10112, 0,
143 10111, 10109, 10108, 0, 10108, 10108, 0, 10102, 0, 10102, 0, 0, 10102, 10101, 10101, 10101,
144 10095, 10091, 0, 10087, 10087, 10085, 0, 10082, 10081, 10079, 10079, 10079, 0, 10078, 10077, 10077,
145 10077, 10077, 10077, 10077, 10076, 10076, 0, 10076, 10076, 10076, 10075, 0, 10075, 10075, 9031, 10075,
146 9173, 9243, 10074, 9244, 10073, 9246, 9245, 9248, 10072, 10071, 9249, 10070, 9252, 9251, 10069, 9253,
147 9254, 9255, 9256, 9257, 10068, 9258, 9259, 9260, 9263, 9264, 9266, 10067, 10066, 9261, 9262, 10065,
148 9265, 9276, 10064, 9268, 9269, 10063, 10062, 9272, 9270, 9271, 9275, 9273, 9282, 10061, 9274, 9279,
149 9281, 9277, 9280, 0, 9983, 9961, 0, 9905, 9863, 9822, 0, 9719, 9612, 9542, 9507, 9507,
150 9480, 9480, 9478, 9478, 0, 9478, 9474, 9471, 0, 9470, 9455, 0, 9416, 9370, 9359, 0,
151 0, 9329, 0, 9327, 9327, 0, 9169, 0, 9130, 9030, 9360, 8964, 8963, 8962, 8962, 0,
152 8961, 8954, 8953, 8941, 0, 8941, 0, 0, 8805, 8800, 0, 8796, 9369, 8740, 9313, 9316,
153 9288, 8653, 9317, 8645, 9320, 9319, 9318, 9325, 8492, 9332, 9293, 9333, 9338, 8489, 9334, 9337,
154 9339, 9341, 9342, 8488, 9348, 9344, 8487, 8485, 8483, 9345, 8482, 9353, 9354, 8481, 8480, 8478,
155 9355, 9347, 0, 8424, 8270, 0, 0, 0, 0, 8267, 0, 0, 8228, 8154, 8031, 0,
156 8010, 0, 0, 0, 7905, 7798, 7684, 0, 7567, 7524, 7516, 0, 7370, 7349, 9437, 9396,
157 0, 0, 0, 7195, 0, 0, 7103, 6932, 6781, 6761, 6704, 6559, 9501, 5356, 6344, 6339,
158 6257, 4252, 6184, 6106, 4720, 6931, 5954, 4721, 5849, 5618, 5470, 5352, 4457, 6535, 6201, 6686,
159 4711, 4462, 4712, 0, 5366, 0, 0, 0, 0, 5176, 5114, 5038, 4982, 0, 0, 4975,
160 4595, 4406, 9577, 4401, 4382, 4265, 0, 0, 4228, 4227, 8273, 4097, 3897, 3391, 8274, 6762,
161 8278, 3211, 3054, 2987, 2874, 2650, 2559, 0, 0, 2454, 0, 0, 0, 2354, 0, 9682,
162 0, 2057, 0, 1873, 1770, 1638, 1492, 1452, 1346, 1160, 8444, 985, 0, 892, 9787, 9892,
163 0, 682, 619, 5243, 490, 9997, 249, 6349, 52, 51, 8447, 24, 23, 18, 0, 0,
166 static const DFATables::State _X1_check [ 10787 ] = {
167 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
168 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
169 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
170 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
171 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
172 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
173 1, 1, 1, 1, 1, 1, 1, 1, 1, 1744, 1741, 600, 759, 1203, 1282, 1740,
174 1739, 600, 759, 1203, 1282, 600, 759, 2, 1737, 1736, 0, 2, 3, 3, 3, 3,
175 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
176 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
177 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
178 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
179 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
180 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
181 3, 3, 3, 3, 3, 4, 5, 6, 5, 4, 5, 6, 5, 8, 5, 10,
182 28, 8, 5, 10, 5, 12, 5, 492, 5, 12, 33, 16, 5, 28, 5, 47,
183 5, 47, 5, 55, 5, 34, 5, 30, 5, 33, 5, 20, 20, 5, 34, 5,
184 16, 5, 34, 5, 55, 5, 30, 5, 5, 5, 5, 5, 5, 30, 5, 16,
185 5, 492, 5, 25, 5, 48, 5, 48, 25, 5, 5, 5, 5, 25, 5, 5,
186 5, 5, 5, 5, 5, 5, 5, 5, 5, 76, 5, 5, 5, 5, 5, 5,
187 5, 5, 5, 5, 5, 16, 5, 16, 5, 76, 5, 1734, 5, 7, 7, 7,
188 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
189 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
190 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
191 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
192 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
193 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
194 7, 7, 7, 7, 7, 7, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
195 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
196 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
197 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
198 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
199 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
200 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 11,
201 83, 11, 96, 11, 96, 11, 149, 11, 149, 11, 194, 11, 59, 11, 222, 11,
202 195, 11, 222, 11, 27, 11, 83, 11, 194, 11, 195, 11, 1732, 11, 27, 11,
203 36, 11, 27, 11, 11, 27, 11, 59, 11, 36, 11, 36, 11, 49, 11, 36,
204 11, 11, 11, 11, 11, 11, 36, 11, 49, 11, 49, 11, 344, 11, 51, 11,
205 11, 51, 11, 11, 11, 11, 344, 11, 11, 11, 11, 11, 11, 11, 11, 11,
206 11, 11, 248, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 18, 11,
207 56, 11, 248, 11, 18, 11, 23, 23, 99, 56, 24, 99, 23, 37, 24, 24,
208 23, 50, 37, 23, 85, 18, 24, 23, 50, 85, 24, 38, 37, 24, 50, 24,
209 79, 18, 18, 18, 18, 18, 18, 38, 31, 241, 38, 241, 72, 31, 31, 79,
210 18, 38, 31, 18, 18, 18, 18, 31, 18, 18, 18, 18, 18, 18, 18, 18,
211 18, 18, 18, 1730, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 32,
212 35, 123, 123, 87, 39, 35, 32, 32, 87, 39, 35, 88, 67, 32, 39, 35,
213 42, 72, 88, 39, 133, 40, 35, 39, 40, 54, 40, 40, 40, 42, 42, 42,
214 42, 42, 251, 133, 251, 46, 54, 46, 54, 67, 133, 42, 1729, 46, 42, 42,
215 42, 42, 107, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 46, 42,
216 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 46, 143, 408, 107, 143, 193,
217 143, 143, 143, 408, 193, 52, 52, 52, 52, 46, 52, 52, 52, 52, 52, 52,
218 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
219 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
220 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
221 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
222 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
223 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 53, 61,
224 53, 61, 97, 103, 86, 98, 115, 158, 165, 189, 53, 100, 98, 97, 102, 97,
225 86, 136, 98, 86, 103, 100, 53, 128, 61, 53, 86, 102, 128, 102, 100, 353,
226 136, 128, 158, 115, 61, 165, 189, 353, 58, 58, 58, 58, 53, 58, 58, 58,
227 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 1725, 58,
228 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58,
229 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58,
230 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58,
231 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58,
232 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58,
233 58, 62, 109, 62, 109, 119, 220, 131, 130, 140, 257, 62, 257, 62, 140, 220,
234 154, 1723, 130, 62, 131, 90, 130, 62, 140, 130, 119, 109, 62, 154, 226, 154,
235 150, 137, 90, 90, 90, 90, 90, 109, 62, 119, 137, 150, 226, 150, 137, 62,
236 90, 226, 155, 90, 90, 90, 90, 62, 90, 90, 90, 90, 90, 90, 90, 90,
237 90, 90, 90, 155, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 119,
238 346, 119, 346, 63, 63, 63, 63, 62, 63, 63, 63, 63, 63, 63, 63, 63,
239 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
240 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
241 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
242 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
243 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
244 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 68, 68, 68, 68,
245 1721, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
246 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
247 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
248 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
249 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
250 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
251 68, 68, 68, 68, 68, 74, 312, 101, 267, 101, 94, 74, 94, 253, 253, 134,
252 126, 126, 94, 101, 134, 134, 126, 306, 141, 134, 126, 198, 74, 126, 134, 101,
253 198, 126, 101, 94, 141, 267, 343, 141, 74, 74, 74, 74, 74, 74, 141, 94,
254 280, 198, 306, 280, 343, 101, 312, 74, 395, 395, 74, 74, 74, 74, 94, 74,
255 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 484, 74, 74, 74, 74, 74,
256 74, 74, 74, 74, 74, 74, 106, 106, 106, 106, 1720, 106, 106, 106, 106, 106,
257 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 484, 106, 106, 106,
258 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106,
259 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106,
260 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106,
261 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106,
262 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 110,
263 160, 110, 160, 127, 1719, 242, 135, 127, 127, 110, 347, 110, 242, 135, 135, 127,
264 242, 110, 138, 127, 135, 110, 127, 138, 127, 160, 110, 331, 138, 142, 1718, 347,
265 139, 138, 142, 281, 288, 160, 110, 142, 138, 139, 151, 139, 142, 110, 210, 139,
266 142, 151, 281, 288, 210, 110, 139, 151, 331, 214, 348, 229, 229, 210, 214, 229,
267 210, 345, 229, 214, 345, 229, 281, 288, 214, 355, 397, 396, 355, 229, 396, 348,
268 397, 111, 111, 111, 111, 110, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111,
269 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111,
270 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111,
271 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111,
272 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111,
273 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111,
274 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 116, 116, 116, 116, 1717, 116,
275 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
276 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
277 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
278 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
279 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
280 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
281 116, 116, 116, 121, 351, 153, 349, 352, 147, 121, 147, 478, 172, 178, 354, 181,
282 147, 153, 172, 178, 349, 181, 394, 398, 351, 358, 121, 410, 352, 153, 394, 400,
283 153, 147, 1716, 354, 398, 410, 121, 121, 121, 121, 121, 121, 400, 147, 404, 404,
284 478, 172, 178, 153, 181, 121, 358, 369, 121, 121, 121, 121, 147, 121, 121, 121,
285 121, 121, 121, 121, 121, 121, 121, 121, 144, 121, 121, 121, 121, 121, 121, 121,
286 121, 121, 121, 121, 369, 144, 144, 144, 144, 144, 399, 172, 178, 401, 181, 399,
287 418, 500, 405, 144, 418, 401, 144, 144, 144, 144, 405, 144, 144, 144, 144, 144,
288 144, 144, 144, 144, 144, 144, 1715, 144, 144, 144, 144, 144, 144, 144, 144, 144,
289 144, 144, 152, 152, 152, 152, 500, 152, 152, 152, 152, 152, 152, 152, 152, 152,
290 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152,
291 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152,
292 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152,
293 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152,
294 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152,
295 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 161, 166, 161, 268, 402,
296 406, 323, 166, 309, 402, 161, 166, 323, 166, 490, 382, 323, 406, 161, 423, 268,
297 166, 161, 423, 409, 309, 412, 161, 417, 166, 409, 414, 268, 166, 328, 417, 412,
298 309, 166, 161, 328, 414, 431, 323, 382, 490, 190, 268, 431, 403, 166, 416, 309,
299 416, 161, 403, 403, 413, 413, 190, 190, 190, 190, 190, 403, 166, 413, 403, 426,
300 264, 429, 328, 1713, 190, 429, 426, 190, 190, 190, 190, 166, 190, 190, 190, 190,
301 190, 190, 190, 190, 190, 190, 190, 264, 190, 190, 190, 190, 190, 190, 190, 190,
302 190, 190, 190, 420, 264, 264, 264, 264, 264, 415, 328, 428, 328, 415, 420, 430,
303 430, 415, 264, 428, 439, 264, 264, 264, 264, 439, 264, 264, 264, 264, 264, 264,
304 264, 264, 264, 264, 264, 614, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
305 264, 282, 282, 282, 282, 614, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
306 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
307 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
308 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
309 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
310 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
311 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 285, 285, 285, 285, 285, 285,
312 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
313 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
314 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
315 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
316 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
317 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
318 285, 285, 285, 292, 292, 292, 292, 1709, 292, 292, 292, 292, 292, 292, 292, 292,
319 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
320 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
321 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
322 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
323 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
324 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 302, 302, 302, 302,
325 1705, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302,
326 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302,
327 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302,
328 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302,
329 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302,
330 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302,
331 302, 302, 302, 302, 302, 310, 310, 310, 310, 1702, 310, 310, 310, 310, 310, 310,
332 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
333 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
334 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
335 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
336 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
337 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 311, 311,
338 311, 311, 1701, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
339 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
340 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
341 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
342 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
343 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
344 311, 311, 311, 311, 311, 311, 311, 315, 315, 315, 315, 315, 315, 315, 315, 315,
345 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
346 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
347 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
348 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
349 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
350 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
351 316, 316, 316, 316, 1700, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
352 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
353 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
354 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
355 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
356 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
357 316, 316, 316, 316, 316, 316, 316, 316, 316, 318, 427, 432, 432, 521, 322, 318,
358 322, 325, 377, 325, 377, 407, 322, 427, 433, 434, 407, 434, 434, 436, 437, 407,
359 318, 442, 407, 1699, 407, 433, 436, 322, 437, 442, 325, 377, 318, 318, 318, 318,
360 318, 318, 435, 322, 443, 435, 325, 377, 480, 435, 521, 318, 443, 435, 318, 318,
361 318, 318, 322, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 321, 318,
362 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 438, 321, 321, 321, 321, 321,
363 441, 438, 444, 444, 444, 451, 1698, 480, 1045, 321, 451, 441, 321, 321, 321, 321,
364 441, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1045, 321, 321, 321,
365 321, 321, 321, 321, 321, 321, 321, 321, 326, 326, 326, 326, 326, 326, 326, 326,
366 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326,
367 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326,
368 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326,
369 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326,
370 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326,
371 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326,
372 326, 327, 327, 327, 327, 1697, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
373 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
374 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
375 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
376 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
377 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
378 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 330, 419, 446, 445, 447, 375,
379 330, 375, 419, 446, 446, 448, 447, 375, 449, 419, 445, 452, 459, 448, 419, 454,
380 449, 330, 450, 452, 450, 1058, 455, 1058, 375, 450, 455, 454, 456, 330, 330, 330,
381 330, 330, 330, 481, 375, 482, 456, 472, 332, 459, 472, 479, 330, 486, 470, 330,
382 330, 330, 330, 375, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 332,
383 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 470, 332, 332, 332, 332,
384 332, 498, 493, 479, 481, 486, 333, 1693, 485, 482, 332, 483, 499, 332, 332, 332,
385 332, 487, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 333, 332, 332,
386 332, 332, 332, 332, 332, 332, 332, 332, 332, 485, 333, 333, 333, 333, 333, 494,
387 498, 483, 487, 493, 334, 497, 488, 499, 333, 501, 511, 333, 333, 333, 333, 489,
388 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 334, 333, 333, 333, 333,
389 333, 333, 333, 333, 333, 333, 333, 488, 334, 334, 334, 334, 334, 489, 511, 497,
390 494, 502, 335, 506, 491, 939, 334, 504, 501, 334, 334, 334, 334, 496, 334, 334,
391 334, 334, 334, 334, 334, 334, 334, 334, 334, 335, 334, 334, 334, 334, 334, 334,
392 334, 334, 334, 334, 334, 491, 335, 335, 335, 335, 335, 496, 512, 504, 939, 513,
393 336, 507, 514, 502, 335, 506, 509, 335, 335, 335, 335, 515, 335, 335, 335, 335,
394 335, 335, 335, 335, 335, 335, 335, 336, 335, 335, 335, 335, 335, 335, 335, 335,
395 335, 335, 335, 514, 336, 336, 336, 336, 336, 507, 517, 518, 515, 512, 337, 513,
396 509, 522, 336, 510, 509, 336, 336, 336, 336, 509, 336, 336, 336, 336, 336, 336,
397 336, 336, 336, 336, 336, 337, 336, 336, 336, 336, 336, 336, 336, 336, 336, 336,
398 336, 510, 337, 337, 337, 337, 337, 525, 526, 537, 520, 517, 338, 518, 510, 528,
399 337, 519, 522, 337, 337, 337, 337, 524, 337, 337, 337, 337, 337, 337, 337, 337,
400 337, 337, 337, 338, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 519,
401 338, 338, 338, 338, 338, 520, 537, 525, 524, 526, 339, 544, 530, 529, 338, 533,
402 528, 338, 338, 338, 338, 531, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338,
403 338, 339, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 530, 339, 339,
404 339, 339, 339, 529, 543, 1355, 531, 533, 340, 534, 532, 544, 339, 536, 538, 339,
405 339, 339, 339, 546, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 340,
406 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 532, 340, 340, 340, 340,
407 340, 534, 536, 548, 546, 543, 341, 545, 554, 538, 340, 540, 1355, 340, 340, 340,
408 340, 547, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 341, 340, 340,
409 340, 340, 340, 340, 340, 340, 340, 340, 340, 540, 341, 341, 341, 341, 341, 545,
410 557, 558, 547, 548, 342, 555, 552, 560, 341, 569, 554, 341, 341, 341, 341, 551,
411 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 342, 341, 341, 341, 341,
412 341, 341, 341, 341, 341, 341, 341, 552, 342, 342, 342, 342, 342, 555, 564, 557,
413 551, 558, 558, 559, 561, 551, 342, 560, 569, 342, 342, 342, 342, 566, 342, 342,
414 342, 342, 342, 342, 342, 342, 342, 342, 342, 356, 342, 342, 342, 342, 342, 342,
415 342, 342, 342, 342, 342, 561, 356, 356, 356, 356, 356, 559, 615, 617, 359, 564,
416 359, 1692, 617, 566, 356, 615, 359, 356, 356, 356, 356, 477, 356, 356, 356, 356,
417 356, 356, 356, 356, 356, 356, 356, 359, 356, 356, 356, 356, 356, 356, 356, 356,
418 356, 356, 356, 359, 360, 473, 360, 477, 495, 422, 422, 473, 477, 422, 562, 473,
419 422, 503, 359, 422, 422, 359, 477, 516, 541, 542, 556, 422, 563, 360, 577, 619,
420 616, 622, 577, 618, 495, 620, 618, 577, 620, 360, 473, 624, 630, 503, 616, 562,
421 619, 622, 626, 516, 541, 542, 556, 624, 563, 626, 630, 360, 362, 362, 362, 362,
422 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362,
423 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362,
424 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362,
425 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362,
426 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362,
427 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362,
428 362, 362, 362, 362, 362, 365, 365, 365, 365, 1691, 365, 365, 365, 365, 365, 365,
429 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
430 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
431 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
432 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
433 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
434 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 367, 508,
435 367, 567, 549, 565, 568, 571, 606, 594, 606, 607, 625, 607, 628, 625, 606, 629,
436 664, 631, 632, 628, 629, 634, 634, 367, 636, 1092, 889, 1689, 1688, 508, 549, 606,
437 631, 632, 607, 367, 594, 565, 636, 1649, 549, 889, 1092, 606, 567, 571, 607, 568,
438 508, 664, 367, 1685, 1649, 367, 370, 370, 370, 370, 606, 370, 370, 370, 370, 370,
439 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
440 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
441 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
442 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
443 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
444 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 371,
445 643, 635, 658, 657, 659, 371, 635, 865, 653, 475, 653, 767, 662, 663, 865, 475,
446 767, 1091, 668, 461, 1059, 461, 371, 1091, 1684, 1059, 767, 1683, 1106, 643, 1106, 660,
447 1681, 653, 371, 371, 371, 371, 371, 371, 657, 661, 658, 672, 461, 653, 475, 663,
448 668, 371, 662, 659, 371, 371, 371, 371, 461, 371, 371, 371, 371, 371, 371, 371,
449 371, 371, 371, 371, 374, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371,
450 660, 374, 374, 374, 374, 374, 674, 461, 475, 1091, 1660, 1665, 672, 661, 1281, 374,
451 1281, 1660, 374, 374, 374, 374, 1665, 374, 374, 374, 374, 374, 374, 374, 374, 374,
452 374, 374, 674, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 378, 378,
453 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
454 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
455 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
456 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
457 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
458 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
459 378, 378, 378, 378, 378, 378, 378, 379, 379, 379, 379, 1680, 379, 379, 379, 379,
460 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
461 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
462 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
463 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
464 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
465 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
466 381, 665, 669, 673, 675, 649, 381, 649, 1664, 671, 666, 667, 670, 768, 769, 1664,
467 1666, 771, 768, 769, 1666, 682, 771, 381, 1652, 1655, 1652, 1655, 768, 769, 649, 681,
468 771, 669, 675, 381, 381, 381, 381, 381, 381, 665, 649, 666, 667, 670, 383, 676,
469 677, 682, 381, 671, 673, 381, 381, 381, 381, 649, 381, 381, 381, 381, 381, 381,
470 381, 381, 381, 381, 381, 383, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
471 381, 681, 383, 383, 383, 383, 383, 685, 680, 676, 678, 690, 384, 692, 697, 677,
472 383, 679, 683, 383, 383, 383, 383, 686, 383, 383, 383, 383, 383, 383, 383, 383,
473 383, 383, 383, 384, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 690,
474 384, 384, 384, 384, 384, 678, 679, 680, 683, 685, 385, 688, 693, 692, 384, 686,
475 697, 384, 384, 384, 384, 694, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384,
476 384, 385, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 693, 385, 385,
477 385, 385, 385, 691, 696, 688, 694, 699, 386, 688, 700, 701, 385, 689, 688, 385,
478 385, 385, 385, 698, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 386,
479 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 689, 386, 386, 386, 386,
480 386, 698, 699, 704, 691, 696, 387, 700, 689, 705, 386, 708, 701, 386, 386, 386,
481 386, 703, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 387, 386, 386,
482 386, 386, 386, 386, 386, 386, 386, 386, 386, 1679, 387, 387, 387, 387, 387, 707,
483 1676, 708, 703, 704, 388, 712, 709, 713, 387, 715, 705, 387, 387, 387, 387, 724,
484 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 388, 387, 387, 387, 387,
485 387, 387, 387, 387, 387, 387, 387, 709, 388, 388, 388, 388, 388, 712, 715, 713,
486 707, 717, 389, 723, 710, 716, 388, 724, 1675, 388, 388, 388, 388, 711, 388, 388,
487 388, 388, 388, 388, 388, 388, 388, 388, 388, 389, 388, 388, 388, 388, 388, 388,
488 388, 388, 388, 388, 388, 710, 389, 389, 389, 389, 389, 722, 717, 727, 711, 733,
489 390, 734, 716, 723, 389, 719, 947, 389, 389, 389, 389, 738, 389, 389, 389, 389,
490 389, 389, 389, 389, 389, 389, 389, 390, 389, 389, 389, 389, 389, 389, 389, 389,
491 389, 389, 389, 719, 390, 390, 390, 390, 390, 734, 736, 947, 722, 727, 391, 739,
492 725, 733, 390, 738, 1674, 390, 390, 390, 390, 726, 390, 390, 390, 390, 390, 390,
493 390, 390, 390, 390, 390, 391, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390,
494 390, 725, 391, 391, 391, 391, 391, 748, 743, 736, 726, 737, 392, 750, 731, 739,
495 391, 745, 1673, 391, 391, 391, 391, 730, 391, 391, 391, 391, 391, 391, 391, 391,
496 391, 391, 391, 392, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 731,
497 392, 392, 392, 392, 392, 750, 748, 745, 730, 743, 393, 737, 737, 730, 392, 757,
498 746, 392, 392, 392, 392, 740, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392,
499 392, 393, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 1731, 393, 393,
500 393, 393, 393, 1731, 958, 906, 740, 747, 915, 757, 741, 746, 393, 908, 913, 393,
501 393, 393, 393, 744, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 457,
502 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 741, 457, 457, 457, 457,
503 457, 908, 747, 915, 460, 744, 460, 906, 920, 958, 457, 913, 460, 457, 457, 457,
504 457, 687, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 460, 457, 457,
505 457, 457, 457, 457, 457, 457, 457, 457, 457, 460, 695, 720, 772, 770, 774, 687,
506 773, 772, 770, 774, 772, 773, 1645, 1659, 460, 920, 773, 772, 770, 774, 1668, 773,
507 1659, 0, 687, 770, 1645, 0, 695, 720, 460, 462, 462, 462, 462, 462, 462, 462,
508 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462,
509 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462,
510 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462,
511 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462,
512 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462,
513 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462,
514 462, 462, 465, 465, 465, 465, 1658, 465, 465, 465, 465, 465, 465, 465, 465, 465,
515 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
516 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
517 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
518 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
519 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
520 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 468, 589, 468, 652, 721,
521 652, 728, 735, 742, 775, 868, 652, 776, 899, 775, 934, 777, 776, 589, 951, 764,
522 777, 764, 909, 775, 468, 904, 776, 652, 905, 911, 777, 721, 777, 728, 735, 742,
523 468, 1102, 868, 652, 778, 899, 934, 728, 764, 778, 1657, 589, 589, 589, 589, 468,
524 589, 589, 652, 778, 764, 1102, 904, 951, 909, 905, 911, 471, 471, 471, 471, 468,
525 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
526 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
527 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
528 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
529 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
530 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
531 471, 471, 471, 471, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474,
532 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474,
533 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474,
534 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474,
535 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474,
536 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474,
537 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 578, 578, 578,
538 578, 1656, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578,
539 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578,
540 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578,
541 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578,
542 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578,
543 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578, 578,
544 578, 578, 578, 578, 578, 578, 584, 584, 584, 584, 1654, 584, 584, 584, 584, 584,
545 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584,
546 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584,
547 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584,
548 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584,
549 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584,
550 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, 591,
551 591, 591, 591, 1651, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591,
552 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591,
553 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591,
554 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591,
555 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591,
556 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 591,
557 591, 591, 591, 591, 591, 591, 591, 591, 595, 780, 944, 779, 781, 763, 595, 763,
558 779, 781, 783, 782, 783, 763, 914, 783, 782, 785, 779, 781, 782, 919, 785, 595,
559 1650, 783, 782, 1662, 784, 780, 763, 944, 785, 784, 780, 595, 595, 595, 595, 595,
560 595, 1662, 763, 784, 780, 925, 928, 914, 921, 784, 595, 919, 923, 595, 595, 595,
561 595, 763, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 596, 595, 595,
562 595, 595, 595, 595, 595, 595, 595, 595, 595, 921, 596, 596, 596, 596, 596, 935,
563 786, 926, 923, 929, 936, 786, 925, 928, 596, 1648, 931, 596, 596, 596, 596, 786,
564 596, 596, 596, 596, 596, 596, 596, 596, 596, 596, 596, 597, 596, 596, 596, 596,
565 596, 596, 596, 596, 596, 596, 596, 926, 597, 597, 597, 597, 597, 929, 787, 927,
566 931, 935, 598, 787, 937, 936, 597, 941, 787, 597, 597, 597, 597, 787, 597, 597,
567 597, 597, 597, 597, 597, 597, 597, 597, 597, 598, 597, 597, 597, 597, 597, 597,
568 597, 597, 597, 597, 597, 924, 598, 598, 598, 598, 598, 1647, 788, 941, 927, 1735,
569 1646, 788, 788, 937, 598, 1735, 930, 598, 598, 598, 598, 788, 598, 598, 598, 598,
570 598, 598, 598, 598, 598, 598, 598, 924, 598, 598, 598, 598, 598, 598, 598, 598,
571 598, 598, 598, 599, 599, 599, 599, 930, 599, 599, 599, 599, 599, 599, 599, 599,
572 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
573 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
574 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
575 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
576 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
577 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 602, 789, 602, 790,
578 791, 792, 789, 940, 790, 791, 792, 943, 794, 790, 932, 933, 789, 794, 790, 791,
579 792, 922, 789, 791, 942, 602, 792, 794, 1643, 793, 796, 797, 0, 0, 793, 796,
580 797, 602, 602, 602, 602, 602, 602, 793, 793, 796, 797, 932, 933, 922, 940, 1661,
581 602, 1661, 922, 602, 602, 602, 602, 943, 602, 602, 602, 602, 602, 602, 602, 602,
582 602, 602, 602, 942, 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, 603,
583 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
584 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
585 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
586 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
587 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
588 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
589 603, 603, 603, 603, 603, 603, 603, 603, 604, 802, 795, 798, 799, 946, 604, 795,
590 798, 799, 800, 945, 795, 948, 1663, 800, 1663, 795, 798, 799, 918, 1642, 0, 604,
591 954, 800, 799, 801, 803, 802, 973, 800, 801, 803, 802, 604, 604, 604, 604, 604,
592 604, 803, 801, 803, 802, 946, 801, 948, 918, 945, 604, 950, 954, 604, 604, 604,
593 604, 918, 604, 604, 604, 604, 604, 604, 604, 604, 604, 604, 604, 605, 604, 604,
594 604, 604, 604, 604, 604, 604, 604, 604, 604, 973, 605, 605, 605, 605, 605, 979,
595 804, 955, 1695, 1641, 1695, 804, 950, 1640, 605, 0, 0, 605, 605, 605, 605, 804,
596 605, 605, 605, 605, 605, 605, 605, 605, 605, 605, 605, 979, 605, 605, 605, 605,
597 605, 605, 605, 605, 605, 605, 605, 609, 609, 609, 609, 955, 609, 609, 609, 609,
598 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609,
599 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609,
600 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609,
601 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609,
602 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609,
603 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, 609,
604 613, 956, 805, 806, 807, 957, 613, 805, 806, 807, 808, 808, 805, 968, 1653, 808,
605 809, 805, 806, 807, 1200, 809, 806, 613, 807, 808, 809, 1653, 813, 810, 1639, 809,
606 962, 813, 810, 613, 613, 613, 613, 613, 613, 810, 811, 813, 810, 965, 968, 811,
607 956, 1200, 613, 811, 957, 613, 613, 613, 613, 811, 613, 613, 613, 613, 613, 613,
608 613, 613, 613, 613, 613, 962, 613, 613, 613, 613, 613, 613, 613, 613, 613, 613,
609 613, 638, 638, 638, 638, 965, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638,
610 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638,
611 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638,
612 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638,
613 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638,
614 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 638,
615 638, 638, 638, 638, 638, 638, 638, 638, 638, 638, 641, 641, 641, 641, 1638, 641,
616 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641,
617 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641,
618 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641,
619 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641,
620 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641,
621 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641, 641,
622 641, 641, 641, 644, 1122, 1635, 812, 971, 814, 815, 816, 812, 812, 814, 815, 816,
623 644, 644, 644, 644, 644, 812, 815, 814, 815, 816, 964, 959, 978, 960, 644, 966,
624 1122, 644, 644, 644, 644, 971, 644, 644, 644, 644, 644, 644, 644, 644, 644, 644,
625 644, 647, 644, 644, 644, 644, 644, 644, 644, 644, 644, 644, 644, 978, 647, 647,
626 647, 647, 647, 960, 818, 969, 967, 966, 650, 818, 970, 964, 647, 959, 650, 647,
627 647, 647, 647, 818, 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 650,
628 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 650, 650, 650, 650, 650,
629 650, 972, 824, 983, 969, 991, 977, 824, 967, 970, 650, 974, 824, 650, 650, 650,
630 650, 824, 650, 650, 650, 650, 650, 650, 650, 650, 650, 650, 650, 651, 650, 650,
631 650, 650, 650, 650, 650, 650, 650, 650, 650, 975, 651, 651, 651, 651, 651, 991,
632 826, 1629, 972, 974, 983, 826, 977, 1628, 651, 826, 981, 651, 651, 651, 651, 826,
633 651, 651, 651, 651, 651, 651, 651, 651, 651, 651, 651, 975, 651, 651, 651, 651,
634 651, 651, 651, 651, 651, 651, 651, 654, 654, 654, 654, 981, 654, 654, 654, 654,
635 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654,
636 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654,
637 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654,
638 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654,
639 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654,
640 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654, 654,
641 656, 817, 819, 820, 827, 821, 656, 819, 820, 827, 821, 986, 984, 1626, 982, 996,
642 819, 819, 820, 827, 821, 985, 820, 656, 821, 656, 822, 823, 832, 817, 1625, 822,
643 823, 832, 817, 656, 656, 656, 656, 656, 656, 822, 823, 832, 817, 984, 988, 986,
644 996, 823, 656, 822, 982, 656, 656, 656, 656, 1624, 656, 656, 656, 656, 656, 656,
645 656, 656, 656, 656, 656, 985, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
646 656, 752, 752, 752, 752, 988, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752,
647 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752,
648 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752,
649 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752,
650 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752,
651 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 752,
652 752, 752, 752, 752, 752, 752, 752, 752, 752, 752, 755, 755, 755, 755, 1622, 755,
653 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755,
654 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755,
655 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755,
656 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755,
657 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755,
658 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755, 755,
659 755, 755, 755, 758, 758, 758, 758, 1621, 758, 758, 758, 758, 758, 758, 758, 758,
660 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
661 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
662 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
663 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
664 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
665 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 760, 760, 760, 760,
666 1620, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
667 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
668 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
669 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
670 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
671 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
672 760, 760, 760, 760, 760, 761, 825, 829, 828, 830, 831, 761, 829, 828, 830, 831,
673 990, 1144, 994, 829, 1616, 830, 829, 828, 830, 831, 1614, 0, 761, 828, 0, 833,
674 831, 834, 825, 0, 833, 1135, 834, 825, 761, 761, 761, 761, 761, 761, 833, 1144,
675 834, 825, 833, 989, 834, 992, 990, 761, 994, 1123, 761, 761, 761, 761, 993, 761,
676 761, 761, 761, 761, 761, 761, 761, 761, 761, 761, 762, 761, 761, 761, 761, 761,
677 761, 761, 761, 761, 761, 761, 1135, 762, 762, 762, 762, 762, 1124, 835, 989, 835,
678 993, 1152, 835, 1123, 992, 762, 980, 1156, 762, 762, 762, 762, 835, 762, 762, 762,
679 762, 762, 762, 762, 762, 762, 762, 762, 1124, 762, 762, 762, 762, 762, 762, 762,
680 762, 762, 762, 762, 836, 837, 838, 839, 980, 836, 837, 838, 839, 839, 1125, 1156,
681 1152, 1127, 838, 836, 837, 838, 839, 980, 840, 836, 841, 842, 837, 840, 843, 841,
682 842, 995, 1128, 843, 1613, 1136, 844, 840, 1126, 841, 842, 844, 844, 843, 841, 845,
683 1127, 847, 846, 848, 845, 844, 847, 846, 848, 1125, 849, 844, 846, 1612, 845, 849,
684 847, 846, 848, 850, 1126, 851, 847, 995, 850, 849, 851, 850, 852, 1130, 849, 1136,
685 853, 852, 850, 854, 851, 853, 1128, 852, 854, 855, 1119, 852, 856, 854, 855, 853,
686 1119, 856, 854, 1129, 857, 1131, 1132, 855, 855, 857, 857, 856, 858, 859, 864, 856,
687 1004, 858, 859, 857, 864, 1004, 858, 859, 1134, 1141, 1142, 858, 859, 1140, 1145, 1004,
688 1148, 1149, 1130, 1146, 1129, 864, 1609, 1132, 1604, 1690, 1131, 0, 1694, 0, 0, 0,
689 1696, 864, 864, 864, 864, 864, 864, 1134, 1143, 1690, 1694, 1142, 1145, 1149, 1696, 1141,
690 864, 1148, 1146, 864, 864, 864, 864, 1140, 864, 864, 864, 864, 864, 864, 864, 864,
691 864, 864, 864, 1119, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 866,
692 866, 866, 866, 1143, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866,
693 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866,
694 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866,
695 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866,
696 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866,
697 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866,
698 866, 866, 866, 866, 866, 866, 866, 866, 869, 1150, 1139, 1147, 1157, 902, 869, 902,
699 1603, 1722, 1158, 1162, 1738, 1151, 1161, 1599, 1164, 1598, 1597, 1594, 1592, 1307, 1591, 869,
700 1590, 1587, 1581, 1307, 1722, 1576, 902, 1738, 1150, 1153, 1186, 869, 869, 869, 869, 869,
701 869, 1151, 902, 1158, 1162, 1157, 870, 1163, 1161, 1164, 869, 1139, 1147, 869, 869, 869,
702 869, 902, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 870, 869, 869,
703 869, 869, 869, 869, 869, 869, 869, 869, 869, 1153, 870, 870, 870, 870, 870, 1159,
704 1186, 1163, 871, 1307, 871, 1174, 1170, 1165, 870, 1172, 871, 870, 870, 870, 870, 1166,
705 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 1159, 870, 870, 870, 870,
706 870, 870, 870, 870, 870, 870, 870, 871, 871, 871, 871, 871, 871, 1165, 1178, 1159,
707 1166, 1172, 874, 1177, 1174, 1170, 871, 1170, 874, 871, 871, 871, 871, 1168, 871, 871,
708 871, 871, 871, 871, 871, 871, 871, 871, 871, 874, 871, 871, 871, 871, 871, 871,
709 871, 871, 871, 871, 871, 874, 874, 874, 874, 874, 874, 1185, 1168, 1177, 1571, 1178,
710 897, 1179, 1169, 1173, 874, 1171, 1569, 874, 874, 874, 874, 1176, 874, 874, 874, 874,
711 874, 874, 874, 874, 874, 874, 874, 897, 874, 874, 874, 874, 874, 874, 874, 874,
712 874, 874, 874, 1169, 897, 897, 897, 897, 897, 1173, 1185, 1171, 1176, 1184, 898, 1187,
713 1171, 1179, 897, 1181, 1189, 897, 897, 897, 897, 1195, 897, 897, 897, 897, 897, 897,
714 897, 897, 897, 897, 897, 898, 897, 897, 897, 897, 897, 897, 897, 897, 897, 897,
715 897, 1188, 898, 898, 898, 898, 898, 1187, 1184, 1181, 1190, 1192, 1193, 1565, 1189, 0,
716 898, 1191, 1195, 898, 898, 898, 898, 1196, 898, 898, 898, 898, 898, 898, 898, 898,
717 898, 898, 898, 900, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 1191,
718 900, 900, 900, 900, 900, 1188, 1192, 1193, 1196, 1190, 901, 1312, 1198, 1308, 900, 1314,
719 1318, 900, 900, 900, 900, 1201, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900,
720 900, 901, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 1198, 901, 901,
721 901, 901, 901, 1201, 1318, 1308, 1563, 0, 1202, 1314, 1312, 0, 901, 0, 1202, 901,
722 901, 901, 901, 1561, 901, 901, 901, 901, 901, 901, 901, 901, 901, 901, 901, 1560,
723 901, 901, 901, 901, 901, 901, 901, 901, 901, 901, 901, 997, 997, 997, 997, 1202,
724 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997,
725 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997,
726 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997,
727 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997,
728 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997,
729 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997, 997,
730 997, 997, 997, 997, 999, 1309, 1310, 1315, 1280, 1002, 1324, 1002, 1557, 1311, 1280, 1321,
731 1322, 1330, 1326, 1554, 1553, 1555, 1552, 1333, 0, 1454, 0, 999, 1549, 1548, 1547, 1454,
732 0, 0, 1002, 1310, 1328, 1550, 1309, 1350, 999, 999, 999, 999, 999, 1280, 1002, 1311,
733 1320, 1322, 1330, 1321, 1326, 1324, 999, 1315, 1333, 999, 999, 999, 999, 1002, 999, 999,
734 999, 999, 999, 999, 999, 999, 999, 999, 999, 1000, 999, 999, 999, 999, 999, 999,
735 999, 999, 999, 999, 999, 1328, 1000, 1000, 1000, 1000, 1000, 1329, 1331, 1350, 1336, 1344,
736 1001, 1454, 1320, 1341, 1000, 1545, 1332, 1000, 1000, 1000, 1000, 1335, 1000, 1000, 1000, 1000,
737 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1001, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000,
738 1000, 1000, 1000, 1332, 1001, 1001, 1001, 1001, 1001, 1338, 1335, 1341, 1346, 1329, 1331, 1336,
739 1344, 1337, 1001, 1348, 1347, 1001, 1001, 1001, 1001, 1349, 1001, 1001, 1001, 1001, 1001, 1001,
740 1001, 1001, 1001, 1001, 1001, 1338, 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1001,
741 1001, 1118, 1337, 1340, 1348, 1353, 1351, 1118, 1356, 1352, 1357, 1361, 1362, 1346, 1347, 1118,
742 1363, 1367, 1364, 1366, 1544, 1365, 1368, 1369, 1370, 1349, 1542, 0, 0, 0, 1456, 0,
743 0, 1340, 0, 0, 0, 1371, 1118, 1351, 0, 1356, 0, 0, 0, 0, 1362, 1372,
744 1353, 1363, 1368, 1118, 1118, 1118, 1118, 1118, 1352, 1375, 1370, 1373, 1361, 1456, 1357, 1364,
745 1365, 1118, 1366, 1367, 1118, 1118, 1118, 1118, 1369, 1118, 1118, 1118, 1118, 1118, 1118, 1118,
746 1118, 1118, 1118, 1118, 1371, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118,
747 1376, 1372, 1377, 1373, 1457, 1459, 1462, 1461, 1377, 1463, 1466, 1375, 1469, 1468, 1471, 1472,
748 1473, 1474, 1475, 1477, 1478, 1479, 1485, 1486, 1480, 1481, 1488, 1482, 1376, 1491, 1492, 1496,
749 1497, 1495, 1499, 1502, 1498, 1489, 1505, 1377, 1503, 1506, 1504, 1500, 1457, 1461, 1468, 1471,
750 1478, 1568, 1474, 1475, 1466, 1459, 1578, 1472, 1463, 1482, 1481, 1469, 1462, 1479, 1480, 1473,
751 1477, 1489, 1495, 1485, 1488, 1498, 1497, 1500, 1499, 1504, 1566, 1486, 1491, 1567, 1570, 1574,
752 1573, 1572, 1546, 1496, 1492, 1503, 1575, 1505, 1546, 1502, 1506, 1564, 1546, 1577, 1579, 1582,
753 1578, 1564, 1583, 1580, 1584, 1564, 1585, 1586, 1568, 1589, 1593, 1566, 1601, 1588, 1567, 1570,
754 1572, 1573, 1595, 1596, 1600, 1540, 1631, 1575, 1534, 0, 1574, 1582, 1631, 1546, 0, 0,
755 1631, 1583, 1539, 0, 0, 1584, 1564, 1585, 0, 1579, 1588, 1537, 1577, 1580, 0, 1589,
756 1596, 0, 1601, 0, 0, 1600, 1586, 0, 0, 0, 1546, 1593, 1595, 1630, 1630, 1630,
757 1630, 1631, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1533, 1630, 1630, 1630, 1630, 1630, 1630,
758 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630,
759 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1532, 1630,
760 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630,
761 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630,
762 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630,
763 1630, 1630, 1630, 1630, 1630, 1630, 1644, 1530, 1529, 1527, 1526, 1525, 1519, 0, 0, 0,
764 0, 0, 0, 0, 0, 0, 0, 0, 0, 1523, 1522, 1521, 0, 0, 0, 0,
765 1520, 0, 0, 0, 0, 0, 0, 0, 0, 1682, 1682, 1682, 1682, 1518, 1682, 1682,
766 1682, 1682, 1682, 1682, 1682, 1644, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682,
767 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682,
768 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1517, 1682, 1682, 1682, 1682, 1682,
769 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682,
770 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682,
771 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682,
772 1682, 1682, 1711, 1711, 1711, 1711, 1516, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
773 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
774 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
775 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
776 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
777 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
778 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1726, 1726, 1726, 1726, 1515,
779 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726,
780 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726,
781 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726,
782 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726,
783 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726,
784 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726,
785 1726, 1726, 1726, 1726, 1727, 1727, 1727, 1727, 1513, 1727, 1727, 1727, 1727, 1727, 1727, 1727,
786 1512, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727,
787 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727,
788 1727, 1727, 1727, 1727, 1727, 0, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727,
789 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727,
790 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727,
791 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1733, 1733, 1733,
792 1733, 1511, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733,
793 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733,
794 1733, 1733, 1733, 1509, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733,
795 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1508, 1733, 1733, 1733, 1733, 1733, 1733,
796 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733,
797 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733,
798 1733, 1733, 1733, 1733, 1733, 1733, 1501, 1494, 1493, 1490, 1487, 1484, 1483, 1476, 1470, 1467,
799 1465, 1464, 1460, 1458, 1455, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
800 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
801 0, 0, 1438, 1452, 1441, 0, 1447, 1434, 1408, 1433, 1450, 1449, 1440, 1429, 1439, 1444,
802 1425, 0, 0, 1442, 1445, 1453, 1437, 1435, 1383, 1448, 1443, 1432, 1431, 1428, 1424, 1423,
803 1420, 1413, 1374, 1360, 1422, 1359, 1427, 1406, 1402, 1358, 1405, 1354, 1345, 1343, 1415, 1412,
804 1404, 1399, 1421, 1409, 1403, 1417, 1398, 1394, 1391, 1410, 1401, 1379, 1342, 1395, 1384, 1339,
805 1380, 1389, 1334, 1327, 1396, 1392, 1386, 1325, 1382, 1323, 1319, 1317, 1316, 1385, 1313, 0,
806 0, 0, 0, 0, 0, 0, 0, 0, 0, 1277, 0, 0, 0, 0, 0, 0,
807 0, 0, 0, 0, 0, 1260, 0, 0, 0, 0, 1303, 0, 0, 0, 0, 1299,
808 1304, 1296, 0, 0, 1290, 1279, 1305, 1286, 0, 1301, 1297, 1300, 1294, 1302, 1291, 1271,
809 1306, 1276, 1298, 1293, 1273, 1266, 1295, 1265, 1288, 1285, 1283, 1278, 1275, 1274, 1268, 1257,
810 1267, 1252, 1269, 1272, 1249, 1270, 1263, 1240, 1238, 1258, 1254, 1232, 0, 1247, 1253, 1241,
811 1250, 1237, 1233, 0, 1246, 1256, 1251, 1244, 0, 0, 0, 1199, 1197, 1194, 1183, 1182,
812 1180, 1234, 1175, 1167, 1160, 1155, 1154, 1138, 1230, 1137, 1133, 1121, 1231, 1228, 1120, 1220,
813 1224, 1206, 1218, 1214, 1090, 1207, 1205, 0, 0, 1222, 0, 1210, 0, 1229, 1227, 1226,
814 1217, 1211, 1208, 1204, 0, 0, 1071, 0, 0, 0, 1068, 1117, 0, 0, 0, 1115,
815 1108, 1105, 1103, 1101, 1100, 1107, 1111, 1099, 1094, 1114, 1104, 1089, 1088, 1113, 1109, 1095,
816 1086, 1084, 1112, 1079, 1110, 1054, 0, 1098, 1097, 1083, 1041, 1081, 1096, 1080, 1075, 1077,
817 1069, 1072, 1064, 1040, 1078, 1073, 1065, 1061, 1056, 1076, 1067, 1066, 1074, 1060, 1055, 1023,
818 1062, 1018, 998, 0, 0, 0, 1053, 1051, 1048, 1047, 1044, 1052, 0, 0, 0, 1037,
819 1050, 1042, 1043, 1035, 1034, 0, 1030, 1031, 1029, 1033, 0, 1027, 0, 0, 0, 1019,
820 1026, 0, 1038, 1039, 1025, 1028, 1017, 1011, 1014, 1032, 1021, 1024, 1016, 1010, 1008, 987,
821 1006, 1020, 976, 963, 961, 1003, 953, 952, 949, 938, 917, 1012, 1015, 1009, 1007, 916,
822 912, 910, 907, 903, 867, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
823 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
824 888, 0, 863, 0, 883, 890, 0, 862, 861, 896, 894, 885, 879, 895, 881, 876,
825 875, 882, 880, 887, 892, 891, 886, 884, 878, 877, 873, 860, 754, 0, 751, 749,
826 732, 729, 718, 714, 706, 702, 872, 684, 648, 640, 587, 0, 0, 601, 590, 586,
827 583, 580, 0, 0, 572, 570, 553, 550, 539, 535, 527, 523, 505, 469, 301, 293,
828 0, 0, 376, 0, 0, 0, 0, 765, 646, 368, 324, 308, 637, 633, 627, 623,
829 621, 295, 0, 0, 645, 611, 289, 0, 291, 612, 283, 0, 0, 0, 0, 0,
830 0, 0, 476, 275, 270, 276, 274, 350, 453, 440, 425, 424, 421, 411, 373, 372,
831 0, 0, 319, 0, 0, 0, 320, 0, 0, 180, 177, 261, 252, 263, 171, 0,
832 240, 254, 258, 244, 179, 175, 0, 246, 0, 234, 0, 262, 247, 0, 239, 259,
833 256, 255, 250, 249, 245, 238, 243, 237, 232, 221, 236, 219, 230, 233, 235, 225,
834 223, 217, 224, 227, 213, 207, 205, 169, 212, 168, 0, 201, 0, 209, 206, 0,
835 203, 216, 215, 211, 202, 200, 0, 0, 0, 204, 208, 199, 197, 196, 162, 191,
836 159, 192, 156, 145, 112, 108, 104, 91, 0, 0, 0, 0, 64, 60, 43, 0,
837 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
838 0, 0, 0, 124, 80, 77, 0, 125, 132, 122, 0, 84, 81, 0, 0, 129,
839 82, 0, 78, 29, 21, 157, 22, 146, 0, 120, 105, 93, 75, 26, 19, 0,
840 0, 73, 57, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0,
841 0, 0, 0
843 static const DFATables::State _X1_next [ 10787 ] = {
844 14, 14, 65, 14, 66, 14, 65, 14, 65, 14, 64, 14, 63, 14, 62, 14,
845 61, 14, 60, 14, 59, 14, 58, 14, 57, 14, 15, 14, 56, 14, 55, 14,
846 13, 14, 54, 14, 53, 14, 52, 51, 14, 50, 14, 13, 14, 49, 14, 48,
847 14, 47, 14, 46, 18, 18, 18, 18, 18, 14, 45, 14, 44, 14, 15, 14,
848 43, 14, 42, 41, 14, 40, 39, 38, 37, 14, 36, 35, 18, 34, 33, 32,
849 18, 31, 30, 29, 28, 14, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18,
850 18, 14, 17, 14, 16, 14, 15, 14, 13, 381, 1744, 600, 759, 1377, 1280, 1743,
851 1742, 600, 759, 1377, 1280, 599, 758, 68, 1740, 1739, 0, 67, 70, 70, 113, 70,
852 114, 70, 113, 70, 113, 70, 112, 70, 111, 70, 110, 70, 109, 70, 108, 70,
853 107, 70, 106, 70, 105, 70, 71, 70, 104, 70, 103, 70, 69, 70, 102, 70,
854 101, 70, 100, 99, 70, 98, 70, 69, 70, 97, 70, 96, 70, 95, 70, 94,
855 74, 74, 74, 74, 74, 70, 93, 70, 92, 70, 71, 70, 91, 70, 90, 89,
856 70, 88, 87, 86, 85, 70, 84, 83, 74, 82, 74, 81, 74, 80, 79, 74,
857 74, 70, 78, 74, 77, 76, 75, 74, 74, 74, 74, 74, 74, 70, 73, 70,
858 72, 70, 71, 70, 69, 116, 163, 166, 164, 115, 163, 165, 163, 172, 162, 178,
859 218, 171, 161, 177, 160, 181, 159, 0, 158, 180, 233, 186, 157, 217, 118, 271,
860 156, 270, 155, 297, 117, 236, 154, 222, 153, 232, 152, 193, 192, 151, 235, 117,
861 185, 150, 234, 149, 296, 148, 221, 147, 121, 121, 121, 121, 121, 220, 146, 184,
862 117, 781, 118, 211, 145, 273, 144, 272, 210, 143, 142, 141, 140, 209, 139, 138,
863 121, 137, 136, 135, 121, 134, 133, 132, 131, 335, 130, 129, 128, 127, 126, 125,
864 124, 123, 122, 121, 121, 183, 120, 182, 119, 334, 118, 1737, 117, 167, 167, 167,
865 167, 170, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
866 167, 167, 167, 167, 167, 167, 167, 167, 167, 169, 167, 167, 167, 167, 167, 167,
867 167, 167, 167, 168, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
868 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
869 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
870 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
871 167, 167, 167, 167, 167, 167, 173, 173, 173, 173, 176, 173, 173, 173, 173, 173,
872 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
873 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 175, 173, 173, 173,
874 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
875 173, 173, 173, 173, 173, 173, 173, 173, 173, 174, 173, 173, 173, 173, 173, 173,
876 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
877 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 70,
878 344, 0, 273, 70, 272, 70, 273, 70, 272, 70, 482, 70, 304, 70, 520, 70,
879 484, 70, 519, 70, 216, 70, 343, 70, 481, 70, 483, 70, 1736, 70, 215, 70,
880 246, 70, 214, 179, 70, 213, 70, 303, 70, 245, 70, 244, 70, 276, 70, 243,
881 70, 70, 70, 70, 70, 70, 242, 70, 275, 70, 274, 70, 330, 70, 281, 70,
882 70, 280, 70, 70, 70, 70, 626, 70, 70, 70, 70, 70, 70, 70, 70, 70,
883 70, 70, 555, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 190, 70,
884 299, 70, 554, 70, 189, 70, 201, 200, 281, 298, 208, 280, 199, 249, 207, 206,
885 198, 279, 248, 197, 347, 188, 205, 196, 278, 346, 204, 253, 247, 203, 277, 202,
886 339, 189, 188, 188, 188, 188, 188, 252, 227, 545, 251, 544, 185, 226, 225, 338,
887 188, 250, 224, 188, 188, 188, 188, 223, 188, 188, 188, 188, 188, 188, 188, 188,
888 188, 188, 188, 381, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 231,
889 241, 386, 385, 353, 258, 240, 230, 229, 352, 257, 239, 355, 315, 228, 256, 238,
890 264, 183, 354, 255, 415, 263, 237, 254, 262, 295, 261, 260, 259, 264, 264, 264,
891 264, 264, 559, 414, 558, 268, 294, 269, 293, 305, 413, 264, 1734, 0, 264, 264,
892 264, 264, 304, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 0, 264,
893 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 268, 456, 381, 303, 455, 480,
894 454, 453, 452, 691, 479, 282, 282, 282, 282, 267, 282, 282, 282, 282, 282, 282,
895 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
896 282, 286, 282, 282, 282, 282, 282, 282, 282, 282, 282, 285, 282, 282, 282, 282,
897 282, 282, 282, 282, 284, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
898 282, 283, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
899 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
900 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 292, 268,
901 291, 269, 276, 297, 351, 279, 315, 304, 315, 189, 290, 286, 278, 275, 295, 274,
902 350, 426, 277, 349, 296, 362, 289, 404, 190, 288, 348, 294, 403, 293, 361, 330,
903 425, 402, 303, 305, 306, 305, 189, 635, 301, 301, 301, 301, 287, 301, 301, 301,
904 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 1732, 301,
905 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
906 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
907 301, 301, 301, 301, 302, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
908 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
909 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
910 301, 310, 359, 309, 360, 186, 517, 411, 409, 442, 567, 0, 566, 307, 441, 516,
911 295, 381, 408, 308, 410, 356, 407, 308, 440, 406, 185, 332, 0, 294, 526, 466,
912 276, 429, 356, 356, 356, 356, 356, 367, 268, 184, 428, 275, 525, 274, 427, 307,
913 356, 524, 297, 356, 356, 356, 356, 267, 356, 356, 356, 356, 356, 356, 356, 356,
914 356, 356, 356, 296, 356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 183,
915 330, 182, 628, 311, 311, 311, 311, 307, 311, 311, 311, 311, 311, 311, 311, 313,
916 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
917 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
918 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 312,
919 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
920 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
921 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 316, 316, 328, 316,
922 381, 316, 316, 316, 328, 316, 316, 316, 327, 316, 326, 316, 325, 316, 316, 316,
923 316, 316, 316, 316, 317, 316, 316, 316, 316, 316, 324, 316, 316, 316, 324, 316,
924 316, 316, 316, 323, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 322,
925 318, 318, 318, 318, 318, 316, 317, 316, 316, 316, 316, 316, 316, 316, 321, 316,
926 316, 318, 318, 318, 318, 316, 318, 318, 318, 318, 318, 320, 318, 319, 318, 318,
927 318, 316, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 316, 317, 316,
928 316, 316, 316, 316, 316, 332, 311, 365, 0, 291, 359, 331, 360, 562, 561, 420,
929 394, 393, 0, 364, 419, 418, 392, 0, 446, 417, 391, 489, 330, 390, 416, 289,
930 488, 389, 288, 0, 445, 0, 330, 444, 331, 330, 330, 330, 330, 330, 443, 359,
931 281, 487, 267, 280, 625, 363, 311, 330, 381, 672, 330, 330, 330, 330, 358, 330,
932 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 0, 330, 330, 330, 330, 330,
933 330, 330, 330, 330, 330, 330, 301, 301, 301, 301, 381, 301, 301, 301, 301, 301,
934 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 773, 301, 301, 301,
935 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
936 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
937 301, 301, 302, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
938 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
939 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 370,
940 460, 369, 461, 401, 381, 548, 424, 400, 399, 0, 330, 307, 547, 423, 422, 398,
941 546, 368, 434, 397, 421, 368, 396, 433, 395, 383, 0, 331, 432, 451, 1730, 629,
942 439, 431, 450, 281, 288, 468, 359, 449, 430, 438, 279, 437, 448, 307, 504, 436,
943 447, 278, 577, 577, 503, 358, 435, 277, 331, 511, 330, 533, 532, 502, 510, 531,
944 501, 330, 530, 509, 627, 529, 577, 577, 508, 330, 381, 673, 637, 528, 381, 630,
945 674, 311, 311, 311, 311, 307, 311, 311, 311, 311, 311, 311, 311, 313, 311, 311,
946 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
947 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
948 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 312, 311, 311,
949 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
950 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
951 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 316, 316, 328, 316, 381, 316,
952 316, 316, 328, 316, 316, 316, 379, 316, 378, 316, 377, 316, 316, 316, 316, 316,
953 316, 316, 317, 316, 316, 316, 316, 316, 376, 316, 316, 316, 376, 316, 316, 316,
954 316, 323, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 375, 371, 371,
955 371, 371, 371, 316, 317, 316, 316, 316, 316, 316, 316, 316, 374, 316, 316, 371,
956 371, 371, 371, 316, 371, 371, 371, 371, 371, 373, 371, 372, 371, 371, 371, 316,
957 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 316, 317, 316, 316, 316,
958 316, 316, 316, 383, 330, 465, 330, 330, 460, 382, 461, 0, 475, 475, 330, 475,
959 0, 464, 475, 475, 631, 475, 671, 675, 633, 0, 381, 693, 634, 289, 381, 677,
960 288, 0, 381, 636, 381, 381, 382, 381, 381, 381, 381, 381, 381, 460, 381, 684,
961 767, 473, 473, 463, 473, 381, 0, 0, 381, 381, 381, 381, 459, 381, 381, 381,
962 381, 381, 381, 381, 381, 381, 381, 381, 457, 381, 381, 381, 381, 381, 381, 381,
963 381, 381, 381, 381, 359, 457, 457, 457, 457, 457, 676, 476, 476, 381, 476, 381,
964 381, 0, 685, 457, 702, 678, 457, 457, 457, 457, 381, 457, 457, 457, 457, 457,
965 457, 457, 457, 457, 457, 457, 1729, 457, 457, 457, 457, 457, 457, 457, 457, 457,
966 457, 457, 282, 282, 282, 282, 789, 282, 282, 282, 282, 282, 282, 282, 282, 282,
967 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 286, 282,
968 282, 282, 282, 282, 282, 282, 282, 282, 462, 282, 282, 282, 282, 282, 282, 282,
969 282, 284, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 283, 282,
970 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
971 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
972 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 471, 475, 470, 0, 679,
973 686, 600, 475, 0, 381, 0, 471, 600, 474, 0, 382, 599, 381, 469, 381, 0,
974 0, 469, 713, 381, 0, 694, 0, 381, 469, 692, 697, 268, 469, 328, 701, 381,
975 268, 473, 460, 328, 381, 381, 323, 382, 779, 190, 267, 720, 683, 460, 381, 267,
976 700, 459, 682, 381, 696, 381, 190, 190, 190, 190, 190, 681, 459, 695, 680, 381,
977 0, 381, 323, 1728, 190, 718, 715, 190, 190, 190, 190, 472, 190, 190, 190, 190,
978 190, 190, 190, 190, 190, 190, 190, 264, 190, 190, 190, 190, 190, 190, 190, 190,
979 190, 190, 190, 381, 264, 264, 264, 264, 264, 381, 612, 381, 611, 699, 706, 381,
980 719, 698, 264, 717, 731, 264, 264, 264, 264, 381, 264, 264, 264, 264, 264, 264,
981 264, 264, 264, 264, 264, 330, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264,
982 264, 282, 282, 282, 282, 875, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
983 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
984 282, 282, 282, 282, 282, 282, 282, 579, 282, 282, 282, 282, 282, 282, 282, 282,
985 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 578, 282, 282,
986 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
987 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
988 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 285, 285, 285, 285, 581, 285,
989 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
990 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
991 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
992 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
993 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
994 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
995 285, 285, 285, 292, 292, 292, 292, 1725, 292, 292, 292, 292, 292, 292, 292, 585,
996 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
997 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
998 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 584,
999 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
1000 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
1001 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 589, 589, 589, 589,
1002 1724, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589,
1003 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589,
1004 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589,
1005 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589,
1006 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589,
1007 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589, 589,
1008 589, 589, 589, 589, 589, 310, 310, 310, 310, 1723, 310, 310, 310, 310, 310, 310,
1009 310, 592, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
1010 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
1011 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
1012 310, 591, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
1013 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
1014 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 311, 311,
1015 311, 311, 1722, 311, 311, 311, 311, 311, 311, 311, 313, 311, 311, 311, 311, 311,
1016 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
1017 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
1018 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 312, 311, 311, 311, 311, 311,
1019 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
1020 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
1021 311, 311, 311, 311, 311, 311, 311, 315, 315, 315, 315, 593, 315, 315, 315, 315,
1022 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
1023 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
1024 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
1025 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
1026 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
1027 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
1028 316, 316, 316, 316, 1721, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
1029 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
1030 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
1031 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
1032 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
1033 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
1034 316, 316, 316, 316, 316, 316, 316, 316, 316, 595, 716, 381, 721, 0, 322, 594,
1035 325, 322, 375, 325, 377, 690, 316, 381, 722, 724, 689, 723, 381, 381, 729, 688,
1036 318, 381, 381, 381, 687, 381, 728, 316, 381, 735, 595, 644, 594, 318, 318, 318,
1037 318, 318, 727, 322, 381, 381, 602, 649, 0, 726, 813, 318, 736, 725, 318, 318,
1038 318, 318, 321, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 598, 318,
1039 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 381, 598, 598, 598, 598, 598,
1040 734, 730, 738, 381, 737, 747, 381, 769, 1241, 598, 381, 381, 598, 598, 598, 598,
1041 733, 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, 1240, 598, 598, 598,
1042 598, 598, 598, 598, 598, 598, 598, 598, 603, 603, 603, 603, 608, 603, 603, 603,
1043 603, 603, 603, 603, 603, 603, 606, 603, 607, 603, 603, 603, 603, 603, 603, 603,
1044 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
1045 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 606, 604, 604, 604, 604,
1046 604, 603, 603, 603, 603, 603, 603, 603, 603, 603, 605, 603, 603, 604, 604, 604,
1047 604, 603, 604, 604, 604, 604, 604, 604, 604, 604, 604, 604, 604, 603, 604, 604,
1048 604, 604, 604, 604, 604, 604, 604, 604, 604, 603, 603, 603, 603, 603, 603, 603,
1049 603, 327, 327, 327, 327, 1720, 327, 327, 327, 327, 327, 327, 327, 610, 327, 327,
1050 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
1051 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
1052 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 609, 327, 327,
1053 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
1054 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
1055 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 332, 705, 381, 739, 742, 375,
1056 331, 377, 381, 741, 740, 381, 381, 316, 381, 704, 381, 381, 0, 743, 703, 749,
1057 744, 330, 746, 748, 745, 1252, 381, 1251, 316, 381, 750, 381, 751, 331, 330, 330,
1058 330, 330, 330, 0, 375, 0, 381, 757, 332, 0, 381, 0, 330, 0, 0, 330,
1059 330, 330, 330, 374, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 332,
1060 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 460, 332, 332, 332, 332,
1061 332, 0, 0, 768, 770, 775, 332, 381, 0, 771, 332, 0, 0, 332, 332, 332,
1062 332, 0, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 330, 332, 332,
1063 332, 332, 332, 332, 332, 332, 332, 332, 332, 774, 330, 330, 330, 330, 330, 0,
1064 787, 772, 776, 782, 332, 0, 0, 788, 330, 0, 0, 330, 330, 330, 330, 0,
1065 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 613, 330, 330, 330,
1066 330, 330, 330, 330, 330, 330, 330, 777, 330, 330, 330, 330, 330, 778, 803, 786,
1067 783, 0, 332, 0, 0, 0, 330, 0, 790, 330, 330, 330, 330, 0, 330, 330,
1068 330, 330, 330, 330, 330, 330, 330, 614, 330, 330, 330, 330, 330, 330, 330, 330,
1069 330, 330, 330, 330, 330, 780, 330, 330, 330, 330, 330, 785, 0, 793, 1151, 0,
1070 332, 0, 0, 791, 330, 794, 0, 330, 330, 330, 330, 0, 330, 330, 330, 615,
1071 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
1072 330, 330, 330, 806, 330, 330, 330, 330, 330, 795, 0, 0, 807, 804, 332, 805,
1073 800, 0, 330, 0, 799, 330, 330, 330, 330, 798, 330, 617, 330, 330, 330, 330,
1074 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 616, 330, 330,
1075 330, 802, 330, 330, 330, 330, 330, 0, 0, 0, 0, 809, 332, 810, 801, 0,
1076 330, 0, 814, 330, 330, 330, 330, 0, 330, 330, 330, 330, 330, 330, 330, 330,
1077 330, 330, 618, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 811,
1078 330, 330, 330, 330, 330, 812, 826, 816, 815, 817, 332, 0, 0, 0, 330, 0,
1079 818, 330, 330, 330, 619, 0, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
1080 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 820, 330, 330,
1081 330, 330, 330, 819, 0, 0, 821, 823, 332, 0, 0, 832, 330, 0, 0, 330,
1082 330, 330, 330, 0, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
1083 330, 330, 330, 330, 620, 330, 330, 330, 330, 330, 330, 822, 330, 330, 330, 330,
1084 330, 824, 825, 0, 834, 831, 332, 0, 0, 827, 330, 0, 1489, 330, 330, 330,
1085 330, 0, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
1086 330, 330, 330, 330, 330, 330, 621, 330, 330, 828, 330, 330, 330, 330, 330, 833,
1087 0, 0, 835, 836, 332, 0, 0, 0, 330, 0, 842, 330, 330, 330, 330, 0,
1088 330, 623, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 622,
1089 330, 330, 330, 330, 330, 330, 330, 841, 330, 330, 330, 330, 330, 843, 0, 845,
1090 840, 847, 846, 0, 0, 839, 330, 849, 858, 624, 330, 330, 330, 0, 330, 330,
1091 330, 330, 330, 330, 330, 330, 330, 330, 330, 356, 330, 330, 330, 330, 330, 330,
1092 330, 330, 330, 330, 330, 850, 356, 356, 356, 356, 356, 848, 330, 330, 359, 853,
1093 360, 381, 878, 855, 356, 876, 0, 356, 356, 356, 356, 766, 356, 356, 356, 356,
1094 356, 356, 356, 356, 356, 356, 356, 0, 356, 356, 356, 356, 356, 356, 356, 356,
1095 356, 356, 356, 359, 359, 759, 360, 188, 0, 712, 711, 759, 188, 710, 0, 758,
1096 709, 0, 358, 708, 381, 330, 188, 0, 0, 0, 0, 707, 0, 332, 861, 330,
1097 330, 330, 861, 879, 784, 881, 330, 860, 330, 367, 473, 330, 330, 792, 877, 851,
1098 880, 883, 330, 808, 829, 830, 844, 885, 852, 887, 890, 330, 362, 362, 362, 362,
1099 114, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362,
1100 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362,
1101 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362,
1102 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362,
1103 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362,
1104 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362,
1105 362, 362, 362, 362, 362, 365, 365, 365, 365, 381, 365, 365, 365, 365, 365, 365,
1106 365, 639, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
1107 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
1108 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
1109 365, 638, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
1110 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
1111 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 359, 0,
1112 360, 0, 0, 0, 0, 0, 606, 594, 607, 606, 886, 607, 330, 330, 603, 889,
1113 0, 330, 330, 888, 330, 330, 894, 0, 330, 318, 1111, 381, 1715, 797, 838, 603,
1114 891, 892, 869, 367, 594, 854, 896, 1691, 837, 1110, 1281, 606, 856, 859, 871, 857,
1115 796, 910, 358, 1714, 381, 330, 370, 370, 370, 370, 605, 370, 370, 370, 370, 370,
1116 370, 370, 642, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
1117 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
1118 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
1119 370, 370, 641, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
1120 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
1121 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 644,
1122 643, 330, 0, 0, 0, 643, 895, 318, 652, 475, 653, 188, 0, 0, 1092, 475,
1123 188, 1280, 0, 460, 1254, 461, 371, 1280, 1713, 1253, 188, 1712, 1296, 643, 1295, 0,
1124 1710, 900, 643, 371, 371, 371, 371, 371, 903, 0, 904, 0, 383, 902, 473, 909,
1125 914, 371, 908, 905, 371, 371, 371, 371, 468, 371, 371, 371, 371, 371, 371, 371,
1126 371, 371, 371, 371, 647, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371,
1127 906, 647, 647, 647, 647, 647, 0, 381, 476, 318, 1696, 1701, 918, 907, 1433, 647,
1128 318, 381, 647, 647, 647, 647, 381, 647, 647, 647, 647, 647, 647, 647, 647, 647,
1129 647, 647, 920, 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 603, 603,
1130 603, 603, 608, 603, 603, 603, 603, 603, 603, 603, 603, 603, 652, 603, 653, 603,
1131 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
1132 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
1133 603, 652, 650, 650, 650, 650, 650, 603, 603, 603, 603, 603, 603, 603, 603, 603,
1134 651, 603, 603, 650, 650, 650, 650, 603, 650, 650, 650, 650, 650, 650, 650, 650,
1135 650, 650, 650, 603, 650, 650, 650, 650, 650, 650, 650, 650, 650, 650, 650, 603,
1136 603, 603, 603, 603, 603, 603, 603, 379, 379, 379, 379, 1709, 379, 379, 379, 379,
1137 379, 379, 379, 655, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
1138 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
1139 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
1140 379, 379, 379, 654, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
1141 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
1142 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
1143 383, 0, 0, 0, 0, 375, 382, 377, 1700, 0, 0, 0, 0, 188, 188, 381,
1144 381, 188, 1004, 1005, 1702, 0, 188, 381, 381, 381, 1692, 1694, 188, 188, 316, 0,
1145 188, 915, 921, 382, 381, 381, 381, 381, 381, 911, 649, 912, 913, 916, 383, 0,
1146 0, 928, 381, 917, 919, 381, 381, 381, 381, 374, 381, 381, 381, 381, 381, 381,
1147 381, 381, 381, 381, 381, 383, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
1148 381, 927, 383, 383, 383, 383, 383, 0, 0, 922, 0, 0, 383, 0, 0, 923,
1149 383, 0, 0, 383, 383, 383, 383, 0, 383, 383, 383, 383, 383, 383, 383, 383,
1150 383, 383, 383, 381, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 939,
1151 381, 381, 381, 381, 381, 924, 925, 926, 929, 930, 383, 0, 0, 941, 381, 931,
1152 946, 381, 381, 381, 381, 0, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
1153 381, 381, 381, 381, 656, 381, 381, 381, 381, 381, 381, 381, 381, 942, 381, 381,
1154 381, 381, 381, 0, 0, 936, 943, 0, 383, 935, 0, 0, 381, 0, 934, 381,
1155 381, 381, 381, 0, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
1156 381, 381, 381, 381, 657, 381, 381, 381, 381, 381, 381, 938, 381, 381, 381, 381,
1157 381, 947, 948, 0, 940, 945, 383, 949, 937, 0, 381, 0, 950, 381, 381, 381,
1158 381, 0, 659, 381, 381, 381, 381, 658, 381, 381, 381, 381, 381, 381, 381, 381,
1159 381, 381, 381, 381, 381, 381, 381, 381, 381, 1708, 381, 381, 381, 381, 381, 0,
1160 1707, 955, 951, 952, 383, 0, 0, 0, 381, 0, 953, 381, 381, 381, 381, 0,
1161 661, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 660, 381,
1162 381, 381, 381, 381, 381, 381, 381, 956, 381, 381, 381, 381, 381, 959, 961, 960,
1163 954, 0, 383, 0, 0, 0, 381, 969, 1706, 381, 381, 381, 381, 0, 381, 381,
1164 381, 381, 381, 663, 381, 381, 381, 381, 381, 381, 381, 381, 381, 662, 381, 381,
1165 381, 381, 381, 381, 381, 957, 381, 381, 381, 381, 381, 0, 963, 0, 958, 0,
1166 383, 0, 962, 968, 381, 0, 0, 381, 381, 381, 381, 0, 381, 381, 381, 381,
1167 381, 381, 381, 381, 381, 381, 381, 381, 664, 381, 381, 381, 381, 381, 381, 381,
1168 381, 381, 381, 964, 381, 381, 381, 381, 381, 979, 0, 1159, 967, 972, 383, 0,
1169 0, 978, 381, 984, 1705, 381, 381, 381, 381, 0, 381, 381, 381, 381, 381, 381,
1170 381, 381, 381, 381, 381, 381, 665, 381, 381, 381, 381, 381, 381, 381, 381, 381,
1171 381, 970, 381, 381, 381, 381, 381, 0, 0, 981, 971, 0, 383, 0, 0, 985,
1172 381, 0, 1704, 668, 381, 381, 381, 0, 667, 381, 381, 381, 381, 381, 381, 381,
1173 381, 381, 381, 381, 381, 381, 381, 381, 381, 666, 381, 381, 381, 381, 381, 977,
1174 381, 381, 381, 381, 381, 995, 994, 991, 976, 989, 383, 983, 982, 975, 381, 0,
1175 0, 381, 381, 381, 381, 0, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
1176 381, 381, 669, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 1735, 381, 381,
1177 381, 381, 381, 381, 0, 0, 986, 0, 0, 996, 0, 992, 381, 0, 0, 381,
1178 381, 381, 381, 0, 381, 381, 381, 381, 381, 381, 381, 381, 670, 381, 381, 457,
1179 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 987, 457, 457, 457, 457,
1180 457, 1123, 993, 1128, 460, 990, 461, 1122, 0, 1167, 457, 1126, 0, 457, 457, 457,
1181 457, 0, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 0, 457, 457,
1182 457, 457, 457, 457, 457, 457, 457, 457, 457, 460, 0, 0, 188, 188, 188, 933,
1183 188, 188, 188, 188, 1007, 188, 1690, 1695, 459, 1132, 1008, 188, 188, 188, 1703, 188,
1184 381, 0, 932, 1006, 381, 0, 944, 965, 381, 462, 462, 462, 462, 164, 462, 462,
1185 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462,
1186 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462,
1187 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462,
1188 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462,
1189 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462,
1190 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462,
1191 462, 462, 465, 465, 465, 465, 381, 465, 465, 465, 465, 465, 465, 465, 753, 465,
1192 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
1193 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
1194 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 752, 465,
1195 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
1196 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
1197 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 460, 588, 461, 652, 0,
1198 653, 0, 0, 0, 188, 868, 603, 188, 899, 1009, 0, 188, 188, 589, 0, 763,
1199 188, 764, 0, 188, 0, 0, 188, 603, 0, 0, 188, 966, 1010, 974, 980, 988,
1200 468, 1291, 868, 652, 188, 899, 1147, 973, 1000, 1011, 381, 589, 589, 589, 589, 459,
1201 589, 589, 651, 188, 1002, 1290, 1120, 1162, 1124, 1121, 1125, 471, 471, 471, 471, 381,
1202 471, 471, 471, 471, 471, 471, 471, 756, 471, 471, 471, 471, 471, 471, 471, 471,
1203 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
1204 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
1205 471, 471, 471, 471, 471, 471, 471, 755, 471, 471, 471, 471, 471, 471, 471, 471,
1206 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
1207 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
1208 471, 471, 471, 471, 760, 760, 760, 760, 608, 760, 760, 760, 760, 760, 760, 760,
1209 760, 760, 763, 760, 764, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
1210 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
1211 760, 760, 760, 760, 760, 760, 760, 763, 761, 761, 761, 761, 761, 760, 760, 760,
1212 760, 760, 760, 760, 760, 760, 762, 760, 760, 761, 761, 761, 761, 760, 761, 761,
1213 761, 761, 761, 761, 761, 761, 761, 761, 761, 760, 761, 761, 761, 761, 761, 761,
1214 761, 761, 761, 761, 761, 760, 760, 760, 760, 760, 760, 760, 760, 282, 282, 282,
1215 282, 381, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
1216 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
1217 282, 282, 282, 580, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
1218 282, 282, 282, 282, 282, 282, 282, 282, 282, 578, 282, 282, 282, 282, 282, 282,
1219 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
1220 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
1221 282, 282, 282, 282, 282, 282, 292, 292, 292, 292, 381, 292, 292, 292, 292, 292,
1222 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
1223 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
1224 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
1225 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
1226 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
1227 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 310,
1228 310, 310, 310, 1670, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
1229 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
1230 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
1231 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
1232 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
1233 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
1234 310, 310, 310, 310, 310, 310, 310, 310, 595, 1013, 0, 188, 188, 763, 594, 764,
1235 188, 188, 188, 1015, 1016, 760, 0, 188, 188, 188, 1012, 188, 1014, 0, 1018, 595,
1236 381, 188, 188, 1698, 188, 188, 760, 1156, 188, 188, 188, 594, 595, 595, 595, 595,
1237 595, 381, 763, 188, 188, 0, 0, 1127, 0, 1017, 595, 1131, 0, 595, 595, 595,
1238 595, 762, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 318, 595, 595,
1239 595, 595, 595, 595, 595, 595, 595, 595, 595, 1133, 318, 318, 318, 318, 318, 0,
1240 1020, 0, 1136, 0, 0, 1019, 1138, 1141, 318, 381, 0, 318, 318, 318, 318, 188,
1241 318, 318, 318, 318, 318, 318, 318, 318, 318, 864, 318, 318, 318, 318, 318, 318,
1242 318, 318, 318, 318, 318, 318, 318, 1139, 318, 318, 318, 318, 318, 1142, 188, 0,
1243 1144, 1148, 316, 188, 0, 1149, 318, 0, 1021, 318, 318, 865, 318, 188, 318, 318,
1244 318, 318, 318, 318, 318, 318, 318, 318, 318, 598, 318, 318, 318, 318, 318, 318,
1245 318, 318, 318, 318, 318, 0, 598, 598, 598, 598, 598, 381, 188, 1153, 1140, 1738,
1246 381, 188, 1022, 1150, 598, 381, 0, 598, 598, 598, 598, 188, 598, 598, 598, 598,
1247 598, 598, 598, 598, 598, 598, 598, 1137, 598, 598, 598, 598, 598, 598, 598, 598,
1248 598, 598, 598, 599, 599, 599, 599, 1143, 599, 599, 599, 599, 599, 599, 599, 867,
1249 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
1250 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
1251 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 866,
1252 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
1253 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
1254 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 322, 188, 325, 188,
1255 188, 188, 188, 0, 188, 188, 188, 0, 188, 1024, 0, 0, 188, 1028, 188, 188,
1256 188, 0, 1023, 1025, 0, 316, 1026, 188, 0, 188, 188, 188, 0, 0, 188, 1030,
1257 1031, 602, 318, 318, 318, 318, 318, 1027, 188, 188, 188, 1145, 1146, 1135, 1152, 381,
1258 321, 1697, 1134, 318, 318, 318, 318, 1155, 318, 318, 318, 318, 318, 318, 318, 318,
1259 318, 318, 318, 1154, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 603,
1260 603, 603, 603, 608, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
1261 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
1262 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
1263 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
1264 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
1265 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, 603,
1266 603, 603, 603, 603, 603, 603, 603, 603, 869, 1036, 188, 1032, 188, 0, 868, 188,
1267 188, 188, 188, 0, 1029, 0, 381, 188, 1699, 188, 188, 188, 0, 1688, 0, 604,
1268 0, 188, 1033, 188, 188, 188, 0, 1034, 188, 188, 188, 868, 604, 604, 604, 604,
1269 604, 1037, 188, 188, 188, 1158, 1035, 1160, 1130, 1157, 604, 0, 1163, 604, 604, 604,
1270 604, 1129, 604, 604, 604, 604, 604, 604, 604, 604, 604, 604, 604, 870, 604, 604,
1271 604, 604, 604, 604, 604, 604, 604, 604, 604, 1180, 870, 870, 870, 870, 870, 0,
1272 188, 0, 381, 1687, 1718, 188, 1161, 1686, 870, 0, 0, 870, 870, 870, 870, 1038,
1273 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 1185, 870, 870, 870, 870,
1274 870, 870, 870, 870, 870, 870, 870, 327, 327, 327, 327, 1164, 327, 327, 327, 327,
1275 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
1276 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
1277 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
1278 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
1279 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
1280 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
1281 332, 0, 188, 188, 188, 0, 331, 188, 188, 188, 188, 1042, 1039, 0, 1693, 188,
1282 188, 188, 188, 188, 0, 188, 1040, 330, 1041, 188, 1043, 381, 188, 188, 1685, 188,
1283 0, 188, 188, 331, 330, 330, 330, 330, 330, 1044, 188, 188, 188, 0, 1175, 188,
1284 1165, 1375, 330, 1045, 1166, 330, 330, 330, 330, 188, 874, 330, 330, 330, 330, 330,
1285 330, 330, 330, 330, 330, 1170, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
1286 330, 365, 365, 365, 365, 1172, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
1287 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
1288 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
1289 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
1290 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
1291 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
1292 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 370, 370, 370, 370, 1684, 370,
1293 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
1294 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
1295 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
1296 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
1297 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
1298 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
1299 370, 370, 370, 644, 0, 1683, 188, 0, 188, 188, 188, 188, 1046, 188, 188, 188,
1300 644, 644, 644, 644, 644, 188, 1048, 1047, 188, 188, 0, 0, 0, 0, 644, 0,
1301 1308, 644, 644, 644, 644, 1178, 644, 644, 644, 644, 644, 644, 644, 644, 644, 644,
1302 644, 647, 644, 644, 644, 644, 644, 644, 644, 644, 644, 644, 644, 1184, 647, 647,
1303 647, 647, 647, 1169, 1050, 0, 0, 1173, 900, 188, 0, 1171, 647, 1168, 899, 647,
1304 647, 647, 647, 188, 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 650,
1305 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 899, 650, 650, 650, 650,
1306 650, 0, 188, 0, 1176, 0, 0, 188, 1174, 1177, 650, 0, 1056, 650, 650, 650,
1307 650, 188, 650, 650, 650, 650, 650, 650, 650, 650, 650, 650, 650, 901, 650, 650,
1308 650, 650, 650, 650, 650, 650, 650, 650, 650, 0, 901, 901, 901, 901, 901, 1197,
1309 188, 1681, 1179, 1181, 1190, 188, 1183, 1680, 901, 1058, 0, 901, 901, 901, 901, 188,
1310 901, 901, 901, 901, 901, 901, 901, 901, 901, 901, 901, 1182, 901, 901, 901, 901,
1311 901, 901, 901, 901, 901, 901, 901, 379, 379, 379, 379, 1188, 379, 379, 379, 379,
1312 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
1313 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
1314 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
1315 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
1316 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
1317 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379,
1318 383, 1049, 188, 188, 188, 188, 382, 188, 188, 188, 188, 0, 0, 1679, 0, 0,
1319 1051, 188, 188, 188, 188, 0, 1052, 381, 1053, 766, 188, 188, 188, 188, 1678, 188,
1320 188, 1063, 188, 382, 381, 381, 381, 381, 381, 188, 188, 188, 188, 1191, 0, 1193,
1321 1202, 1055, 381, 1054, 1189, 381, 381, 381, 381, 1677, 381, 381, 381, 381, 381, 381,
1322 381, 381, 381, 381, 381, 1192, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
1323 381, 465, 465, 465, 465, 1194, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
1324 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
1325 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
1326 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
1327 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
1328 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
1329 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 471, 471, 471, 471, 1676, 471,
1330 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
1331 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
1332 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
1333 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
1334 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
1335 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471,
1336 471, 471, 471, 758, 758, 758, 758, 1675, 758, 758, 758, 758, 758, 758, 758, 998,
1337 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
1338 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
1339 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 997,
1340 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
1341 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
1342 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 760, 760, 760, 760,
1343 1674, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
1344 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
1345 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
1346 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
1347 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
1348 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760, 760,
1349 760, 760, 760, 760, 760, 1000, 1057, 188, 188, 188, 188, 999, 188, 188, 188, 188,
1350 0, 0, 0, 1060, 1673, 1061, 188, 188, 188, 188, 1672, 0, 761, 1059, 0, 188,
1351 1062, 188, 188, 0, 188, 0, 188, 188, 999, 761, 761, 761, 761, 761, 188, 1327,
1352 188, 188, 1064, 0, 1065, 0, 1196, 761, 1200, 0, 761, 761, 761, 761, 0, 761,
1353 761, 761, 761, 761, 761, 761, 761, 761, 761, 761, 1001, 761, 761, 761, 761, 761,
1354 761, 761, 761, 761, 761, 761, 1320, 1001, 1001, 1001, 1001, 1001, 0, 188, 1195, 1066,
1355 1199, 0, 188, 1309, 1198, 1001, 0, 0, 1001, 1001, 1001, 1001, 188, 1001, 1001, 1001,
1356 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1310, 1001, 1001, 1001, 1001, 1001, 1001, 1001,
1357 1001, 1001, 1001, 1001, 188, 188, 188, 188, 1187, 188, 188, 188, 188, 1070, 0, 1337,
1358 1335, 0, 1069, 188, 188, 188, 188, 1186, 188, 1067, 188, 188, 1068, 188, 1073, 188,
1359 1072, 0, 0, 188, 1671, 0, 188, 188, 0, 188, 188, 188, 1075, 188, 1071, 188,
1360 1313, 188, 188, 188, 1076, 188, 188, 188, 1079, 1311, 188, 1074, 1077, 1670, 188, 188,
1361 188, 188, 188, 188, 1312, 188, 1078, 1201, 188, 188, 188, 1081, 188, 0, 1080, 1321,
1362 188, 188, 188, 188, 188, 188, 1314, 1082, 188, 188, 316, 188, 188, 1084, 188, 1083,
1363 316, 188, 188, 0, 188, 0, 0, 1085, 188, 188, 1087, 188, 188, 188, 595, 1086,
1364 188, 188, 188, 188, 594, 188, 1088, 1089, 0, 0, 0, 188, 188, 0, 0, 188,
1365 0, 0, 1316, 0, 1315, 318, 1669, 1318, 1668, 1716, 1317, 0, 1717, 0, 0, 0,
1366 1719, 594, 318, 318, 318, 318, 318, 1319, 0, 381, 381, 1325, 1328, 1332, 381, 1324,
1367 318, 1331, 1329, 318, 318, 318, 318, 1323, 1091, 318, 318, 318, 318, 318, 318, 318,
1368 318, 318, 318, 1307, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 599,
1369 599, 599, 599, 1326, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
1370 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
1371 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
1372 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
1373 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
1374 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
1375 599, 599, 599, 599, 599, 599, 599, 599, 869, 0, 0, 0, 0, 652, 868, 653,
1376 1667, 1731, 0, 0, 1741, 0, 0, 0, 0, 1627, 0, 0, 0, 316, 0, 869,
1377 1623, 0, 0, 316, 381, 1611, 603, 381, 1333, 0, 0, 868, 869, 869, 869, 869,
1378 869, 1334, 902, 1339, 1343, 1338, 603, 0, 1342, 1345, 869, 1322, 1330, 869, 869, 869,
1379 869, 651, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 870, 869, 869,
1380 869, 869, 869, 869, 869, 869, 869, 869, 869, 1336, 870, 870, 870, 870, 870, 0,
1381 1364, 1344, 606, 1454, 607, 0, 0, 0, 870, 0, 868, 870, 870, 870, 870, 0,
1382 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 1341, 870, 870, 870, 870,
1383 870, 870, 870, 870, 870, 870, 870, 871, 604, 604, 604, 604, 604, 1346, 0, 1340,
1384 1347, 1354, 332, 0, 1356, 1351, 605, 1350, 331, 604, 604, 604, 604, 0, 604, 604,
1385 604, 604, 604, 604, 604, 604, 604, 604, 604, 330, 604, 604, 604, 604, 604, 604,
1386 604, 604, 604, 604, 604, 331, 330, 330, 330, 330, 330, 0, 1348, 1358, 0, 1359,
1387 644, 0, 0, 0, 330, 0, 1605, 330, 330, 330, 330, 0, 330, 330, 330, 330,
1388 330, 330, 330, 330, 330, 330, 330, 371, 330, 330, 330, 330, 330, 330, 330, 330,
1389 330, 330, 330, 1349, 371, 371, 371, 371, 371, 1355, 1363, 1353, 1357, 0, 644, 0,
1390 1352, 1360, 371, 0, 0, 371, 371, 371, 371, 0, 1118, 371, 371, 371, 371, 371,
1391 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371,
1392 371, 0, 371, 371, 371, 371, 371, 1365, 1362, 1361, 0, 0, 0, 0, 1367, 0,
1393 371, 0, 1372, 371, 371, 371, 371, 0, 371, 371, 371, 371, 371, 371, 371, 1119,
1394 371, 371, 371, 900, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 1369,
1395 900, 900, 900, 900, 900, 1366, 1370, 1371, 1373, 1368, 603, 0, 0, 0, 900, 0,
1396 0, 900, 900, 900, 900, 0, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900,
1397 900, 901, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 1374, 901, 901,
1398 901, 901, 901, 1376, 1462, 1455, 1642, 0, 1377, 1460, 1459, 0, 901, 0, 1377, 901,
1399 901, 901, 901, 1641, 901, 901, 901, 901, 901, 901, 901, 901, 901, 901, 901, 1640,
1400 901, 901, 901, 901, 901, 901, 901, 901, 901, 901, 901, 758, 758, 758, 758, 0,
1401 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
1402 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
1403 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
1404 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
1405 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
1406 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758, 758,
1407 758, 758, 758, 758, 760, 0, 0, 0, 1280, 763, 0, 764, 1639, 0, 1280, 0,
1408 0, 0, 0, 1637, 1636, 1638, 1635, 0, 0, 316, 0, 760, 1633, 1632, 1631, 316,
1409 0, 0, 760, 1457, 0, 1634, 1456, 0, 760, 760, 760, 760, 760, 323, 1002, 1458,
1410 0, 1465, 1470, 1464, 1467, 1466, 760, 1461, 1473, 760, 760, 760, 760, 762, 760, 760,
1411 760, 760, 760, 760, 760, 760, 760, 760, 760, 1000, 760, 760, 760, 760, 760, 760,
1412 760, 760, 760, 760, 760, 1468, 1000, 1000, 1000, 1000, 1000, 0, 0, 1485, 0, 0,
1413 760, 1564, 1463, 0, 1000, 1629, 0, 1000, 1000, 1000, 1000, 0, 1000, 1000, 1000, 1000,
1414 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1001, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000,
1415 1000, 1000, 1000, 1472, 1001, 1001, 1001, 1001, 1001, 0, 1474, 1479, 0, 1469, 1471, 1475,
1416 1480, 0, 1001, 0, 0, 1001, 1001, 1001, 1001, 0, 1001, 1001, 1001, 1001, 1001, 1001,
1417 1001, 1001, 1001, 1001, 1001, 1477, 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1001,
1418 1001, 1280, 1476, 0, 1483, 0, 0, 1280, 0, 0, 0, 0, 0, 1481, 1482, 644,
1419 0, 0, 0, 0, 1628, 0, 0, 0, 0, 1484, 1627, 0, 0, 0, 0, 0,
1420 0, 1478, 0, 0, 0, 0, 371, 1486, 0, 1490, 0, 0, 0, 0, 1493, 0,
1421 1488, 1494, 1499, 371, 371, 371, 371, 371, 1487, 0, 1501, 0, 1492, 1565, 1491, 1495,
1422 1496, 371, 1497, 1498, 371, 371, 371, 371, 1500, 371, 371, 371, 371, 371, 371, 371,
1423 371, 371, 371, 371, 1502, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371,
1424 0, 1503, 1377, 1504, 0, 0, 0, 0, 1377, 0, 0, 1505, 0, 0, 0, 0,
1425 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1506, 0, 0, 0,
1426 0, 0, 0, 0, 0, 0, 0, 473, 0, 0, 0, 0, 1566, 1568, 1572, 1574,
1427 1580, 0, 1577, 1578, 1571, 1567, 0, 1575, 1570, 1584, 1583, 1573, 1569, 1581, 1582, 1576,
1428 1579, 1588, 1591, 1585, 1587, 1594, 1593, 1596, 1595, 1599, 0, 1586, 1589, 0, 0, 0,
1429 0, 0, 1631, 1592, 1590, 1598, 0, 1600, 1631, 1597, 1601, 1631, 1630, 0, 0, 0,
1430 1652, 1631, 0, 0, 0, 1630, 0, 0, 1645, 0, 0, 1643, 0, 0, 1644, 1646,
1431 1647, 1648, 0, 0, 0, 1626, 1631, 1650, 1623, 0, 1649, 1655, 1631, 1630, 0, 0,
1432 1630, 1656, 1625, 0, 0, 1657, 1630, 1658, 0, 1653, 1660, 1624, 1651, 1654, 0, 1661,
1433 1664, 0, 1666, 0, 0, 1665, 1659, 0, 0, 0, 318, 1662, 1663, 1630, 1630, 1630,
1434 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1622, 1630, 1630, 1630, 1630, 1630, 1630,
1435 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630,
1436 1630, 1682, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1621, 1630,
1437 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630,
1438 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630,
1439 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630,
1440 1630, 1630, 1630, 1630, 1630, 1630, 0, 1620, 1619, 1618, 1617, 1616, 1611, 0, 0, 0,
1441 0, 0, 0, 0, 0, 0, 0, 0, 0, 1615, 1614, 1613, 0, 0, 0, 0,
1442 1612, 0, 0, 0, 0, 0, 0, 0, 0, 1630, 1630, 1630, 1630, 1610, 1630, 1630,
1443 1630, 1630, 1630, 1630, 1630, 1689, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630,
1444 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1682, 1630, 1630,
1445 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1609, 1630, 1630, 1630, 1630, 1630,
1446 1630, 1711, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630,
1447 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1711,
1448 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630,
1449 1630, 1630, 1711, 1711, 1711, 1711, 1608, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1726, 1711,
1450 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
1451 1711, 1711, 1711, 1711, 1711, 1711, 1727, 1711, 1630, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
1452 1711, 1711, 1711, 1726, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1630, 1711,
1453 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
1454 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
1455 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1726, 1726, 1726, 1726, 1607,
1456 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726,
1457 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726,
1458 1726, 1733, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726,
1459 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1733, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726,
1460 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726,
1461 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726,
1462 1726, 1726, 1726, 1726, 1711, 1711, 1711, 1711, 1606, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
1463 1605, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
1464 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1727, 1711, 1630, 1711, 1711, 1711, 1711, 1711,
1465 1711, 1711, 1711, 1711, 1711, 0, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
1466 1630, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
1467 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711,
1468 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1733, 1733, 1733,
1469 1733, 1604, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733,
1470 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733,
1471 1733, 1733, 1733, 1603, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733,
1472 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1602, 1733, 1733, 1733, 1733, 1733, 1733,
1473 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733,
1474 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733,
1475 1733, 1733, 1733, 1733, 1733, 1733, 0, 0, 0, 0, 0, 1528, 0, 0, 0, 0,
1476 0, 0, 1510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1477 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1478 0, 0, 1550, 1562, 1553, 0, 1558, 1547, 1528, 1546, 1561, 1560, 1552, 1543, 1551, 1556,
1479 1540, 0, 0, 1554, 1557, 1563, 1549, 1548, 1510, 1559, 1555, 1545, 1544, 1542, 1539, 1538,
1480 1535, 1532, 1430, 0, 1537, 1416, 1541, 1527, 1523, 0, 1526, 0, 0, 0, 1533, 1531,
1481 1525, 1521, 1536, 1529, 1524, 1534, 1520, 1517, 1515, 1530, 1522, 1507, 0, 1518, 1511, 0,
1482 1508, 1514, 1397, 0, 1519, 1516, 1513, 0, 1509, 0, 0, 0, 0, 1512, 0, 0,
1483 0, 0, 0, 0, 0, 0, 0, 0, 0, 1430, 0, 0, 0, 0, 0, 0,
1484 0, 0, 0, 0, 0, 1416, 0, 0, 0, 0, 1450, 0, 0, 0, 0, 1446,
1485 1451, 1443, 0, 0, 1438, 1432, 1452, 1436, 0, 1448, 1444, 1447, 1441, 1449, 1439, 1424,
1486 1453, 1429, 1445, 1440, 1426, 1419, 1442, 1418, 1437, 1435, 1434, 1431, 1428, 1427, 1421, 1414,
1487 1420, 1410, 1422, 1425, 1407, 1423, 1417, 1402, 1401, 1415, 1412, 1397, 0, 1406, 1411, 1403,
1488 1408, 1400, 1398, 0, 1405, 1413, 1409, 1404, 0, 0, 0, 0, 0, 0, 1264, 0,
1489 1262, 1399, 0, 1248, 0, 1236, 1235, 1219, 1395, 0, 1215, 0, 1396, 1393, 0, 1388,
1490 1390, 1380, 1387, 1385, 1090, 1381, 1379, 0, 0, 1389, 0, 1383, 0, 1394, 1392, 1391,
1491 1386, 1384, 1382, 1378, 0, 0, 1264, 0, 0, 0, 1262, 1306, 0, 0, 0, 1305,
1492 1298, 1294, 1292, 1289, 1288, 1297, 1301, 1287, 1282, 1304, 1293, 1279, 1278, 1303, 1299, 1283,
1493 1277, 1276, 1302, 1272, 1300, 1248, 0, 1286, 1285, 1275, 1236, 1274, 1284, 1273, 1268, 1270,
1494 1263, 1265, 1258, 1235, 1271, 1266, 1259, 1256, 1250, 1269, 1261, 1260, 1267, 1255, 1249, 1219,
1495 1257, 1215, 1093, 0, 0, 0, 1247, 1245, 1243, 1242, 1239, 1246, 0, 0, 0, 1232,
1496 1244, 1237, 1238, 1231, 1230, 0, 1226, 1227, 1225, 1229, 0, 1223, 0, 0, 0, 1216,
1497 1222, 0, 1233, 1234, 1221, 1224, 1214, 1209, 1211, 1228, 1218, 1220, 1213, 1208, 1206, 0,
1498 1204, 1217, 0, 0, 1057, 1203, 1049, 0, 0, 1036, 0, 1210, 1212, 1207, 1205, 1013,
1499 0, 0, 0, 0, 1093, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1500 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1501 1109, 0, 1090, 0, 1104, 1112, 0, 862, 860, 1117, 1115, 1106, 1100, 1116, 1102, 1097,
1502 1096, 1103, 1101, 1108, 1114, 1113, 1107, 1105, 1099, 1098, 1095, 860, 754, 0, 0, 0,
1503 0, 0, 0, 0, 0, 0, 1094, 0, 648, 640, 863, 0, 0, 601, 590, 862,
1504 583, 579, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 754, 588, 586,
1505 0, 0, 648, 0, 0, 0, 0, 1003, 898, 640, 601, 590, 330, 893, 330, 884,
1506 882, 587, 0, 0, 897, 872, 582, 0, 583, 873, 580, 0, 0, 0, 0, 0,
1507 0, 0, 765, 575, 573, 576, 574, 632, 381, 732, 714, 381, 381, 381, 646, 645,
1508 0, 0, 596, 0, 0, 0, 597, 0, 0, 315, 315, 570, 560, 572, 315, 0,
1509 543, 563, 568, 550, 286, 286, 0, 552, 0, 537, 0, 571, 553, 0, 542, 569,
1510 565, 564, 557, 556, 551, 541, 549, 540, 535, 518, 539, 515, 534, 536, 538, 523,
1511 521, 514, 522, 527, 507, 498, 496, 299, 506, 286, 0, 492, 0, 500, 497, 0,
1512 494, 513, 512, 505, 493, 491, 0, 0, 0, 495, 499, 490, 486, 485, 314, 477,
1513 305, 478, 298, 265, 314, 305, 298, 265, 0, 0, 0, 0, 314, 305, 265, 0,
1514 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1515 0, 0, 0, 387, 340, 336, 0, 388, 412, 384, 0, 345, 341, 0, 0, 405,
1516 342, 0, 337, 219, 194, 467, 195, 458, 0, 380, 366, 357, 333, 212, 191, 0,
1517 0, 329, 300, 266, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 187, 0,
1518 0, 0, 0
1520 static const DFATables::State _X1_def [ 1745 ] = {
1521 0, 0, 1, 0, 3, 3, 5, 0, 7, 0, 9, 5, 11, 0, 0, 0,
1522 0, 0, 0, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
1523 18, 18, 18, 30, 18, 18, 30, 37, 18, 0, 0, 0, 0, 0, 18, 0,
1524 47, 0, 0, 0, 37, 0, 47, 0, 0, 0, 47, 0, 0, 18, 61, 37,
1525 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 37, 74, 74, 74, 74, 74,
1526 74, 74, 74, 74, 74, 74, 74, 74, 74, 0, 0, 0, 0, 0, 74, 47,
1527 47, 0, 0, 0, 0, 0, 47, 0, 0, 0, 47, 0, 0, 74, 109, 37,
1528 0, 0, 0, 0, 37, 0, 0, 0, 0, 37, 121, 121, 121, 121, 121, 121,
1529 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
1530 0, 0, 0, 121, 47, 47, 0, 0, 37, 0, 47, 0, 0, 0, 0, 0,
1531 121, 160, 0, 0, 0, 0, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1532 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 37, 18,
1533 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
1534 18, 18, 18, 18, 18, 18, 37, 18, 18, 18, 18, 18, 18, 18, 18, 18,
1535 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
1536 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
1537 18, 18, 18, 18, 18, 18, 18, 18, 37, 0, 0, 264, 61, 61, 0, 0,
1538 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 282, 282, 0, 0, 0,
1539 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 0,
1540 0, 0, 61, 0, 0, 61, 37, 37, 311, 0, 0, 0, 37, 316, 316, 318,
1541 318, 316, 318, 316, 316, 318, 0, 37, 316, 0, 37, 0, 331, 331, 331, 331,
1542 331, 331, 331, 331, 331, 331, 331, 342, 342, 342, 342, 342, 342, 342, 342, 342,
1543 342, 342, 342, 342, 331, 0, 356, 342, 342, 0, 0, 0, 0, 37, 0, 342,
1544 0, 367, 37, 318, 371, 371, 316, 371, 316, 371, 0, 37, 0, 37, 331, 382,
1545 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 393, 393, 393, 393, 393, 393,
1546 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393,
1547 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393,
1548 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393,
1549 393, 393, 393, 393, 393, 393, 393, 393, 393, 382, 0, 457, 393, 393, 0, 0,
1550 0, 37, 0, 0, 393, 0, 468, 37, 393, 0, 0, 0, 0, 37, 477, 477,
1551 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477,
1552 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477,
1553 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477,
1554 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477,
1555 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477,
1556 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 477, 0, 0, 0,
1557 0, 0, 37, 0, 578, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 37,
1558 0, 0, 316, 371, 595, 595, 595, 37, 316, 316, 595, 0, 603, 603, 604, 604,
1559 0, 37, 316, 316, 316, 37, 613, 613, 613, 613, 613, 613, 613, 613, 613, 613,
1560 613, 613, 613, 613, 613, 613, 613, 613, 613, 613, 613, 613, 613, 613, 37, 0,
1561 0, 37, 0, 316, 371, 371, 371, 643, 316, 371, 603, 603, 650, 650, 37, 316,
1562 37, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1563 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1564 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1565 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1566 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1567 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1568 37, 0, 0, 37, 0, 656, 37, 0, 603, 760, 760, 761, 761, 0, 0, 37,
1569 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
1570 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
1571 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
1572 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
1573 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
1574 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 0, 0, 0, 0,
1575 643, 864, 37, 316, 603, 603, 869, 603, 316, 316, 37, 874, 874, 874, 874, 874,
1576 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874,
1577 874, 643, 643, 603, 650, 650, 650, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1578 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1579 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1580 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1581 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1582 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1583 656, 656, 656, 656, 656, 37, 0, 761, 761, 761, 761, 0, 37, 1004, 1004, 1004,
1584 1004, 1004, 1004, 1004, 1004, 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
1585 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 0, 1004, 1004, 1004,
1586 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 0, 1004, 1004, 1004, 1004, 1004, 1004,
1587 1004, 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
1588 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
1589 1004, 1004, 0, 864, 864, 0, 316, 316, 874, 874, 874, 874, 874, 874, 874, 874,
1590 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 643, 1118,
1591 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1592 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1593 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1594 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1595 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1596 656, 656, 656, 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 0,
1597 1004, 1004, 1004, 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
1598 1004, 1004, 1004, 0, 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
1599 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 0, 1004,
1600 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
1601 316, 864, 316, 316, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874,
1602 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 1118, 656, 656, 656, 656,
1603 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1604 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1605 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1606 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1607 656, 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
1608 1004, 1004, 1004, 1004, 1004, 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
1609 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
1610 1004, 1004, 1004, 1004, 1004, 1004, 0, 1004, 1004, 864, 316, 874, 874, 874, 874, 874,
1611 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 1118, 656,
1612 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1613 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1614 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1615 656, 656, 656, 1004, 1004, 1004, 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
1616 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
1617 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 864, 316, 874, 874, 874, 874,
1618 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 1118, 656, 656, 656,
1619 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1620 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656, 656,
1621 656, 656, 1004, 1004, 1004, 0, 1004, 1004, 1004, 1004, 1004, 0, 1004, 1004, 1004, 1004,
1622 1004, 1004, 1004, 1004, 1004, 1004, 1004, 0, 1004, 1004, 1004, 0, 1004, 1004, 1118, 316,
1623 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 656, 656, 1644, 1644, 1644,
1624 1644, 1644, 1644, 656, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644,
1625 1644, 1644, 1644, 1004, 1004, 1004, 0, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
1626 1004, 1004, 1118, 874, 874, 874, 874, 874, 874, 1644, 1644, 1644, 1644, 1644, 1644, 1644,
1627 1644, 1696, 1644, 1644, 1696, 1644, 1696, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 37,
1628 874, 874, 874, 874, 1644, 1644, 1696, 1644, 1644, 1644, 1644, 1644, 1004, 1004, 37, 1726,
1629 874, 874, 1644, 1644, 1004, 1726, 874, 1644, 1004, 874, 1644, 1004, 874, 1644, 1004, 874,
1630 1644
1632 static const unsigned char _X1_equiv_classes [ 256 ] = {
1633 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 3, 6, 5, 5, 5,
1634 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1635 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38,
1636 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 41, 43, 45, 47, 49, 51,
1637 50, 52, 52, 52, 52, 54, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
1638 56, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 58, 60, 62, 64, 66,
1639 67, 69, 70, 71, 72, 74, 75, 77, 78, 79, 76, 80, 81, 82, 83, 84,
1640 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 98, 100, 102, 104, 103,
1641 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
1642 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
1643 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
1644 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
1645 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
1646 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
1647 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
1648 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103
1650 static const DFATables::Rule _X1_accept_rule [ 1745 ] = {
1651 -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -83, -206, -40,
1652 82, 30, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1653 81, 81, 81, 81, 81, 81, 81, 81, 81, -89, 89, 82, -83, 29, 82, 82,
1654 82, 82, 82, 77, 82, 82, 82, 82, 82, 28, 205, 82, 82, 81, 89, 205,
1655 82, -85, -86, 82, 87, -83, -212, -40, 82, 30, 81, 81, 81, 81, 81, 81,
1656 81, 81, 81, 81, 81, 81, 81, 81, 81, -89, 211, 82, -83, 29, 82, 82,
1657 82, 82, 82, 77, 82, 82, 82, 82, 82, 28, 211, 82, 82, 81, 211, 211,
1658 82, -85, -86, 82, 87, -200, -99, 199, 91, 195, 195, 195, 195, 195, 195, 195,
1659 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1660 89, 199, 92, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 90, 199, 199,
1661 195, 89, 199, -201, -202, 199, 89, -206, 205, 205, -205, 205, 205, -209, -208, 208,
1662 -210, 208, 208, 211, 211, 211, -101, -52, -102, -70, -100, -34, 81, 81, 81, 81,
1663 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1664 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1665 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1666 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1667 81, 81, 81, 81, 81, 81, 81, 81, 81, -71, -33, 0, 0, 81, 56, -58,
1668 -72, -65, 58, 55, 72, -75, -50, -76, 77, 78, 0, 0, 62, 0, -203, -36,
1669 78, 46, -35, 0, 0, 54, -61, 53, -60, -53, -62, -204, -32, 0, 0, -69,
1670 -51, -64, 81, -39, 0, 81, 0, 0, 0, -81, -66, 0, 87, 38, 81, 81,
1671 81, 87, 87, 87, 87, 81, 81, 87, 87, -34, 81, 81, 81, 81, 81, 81,
1672 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1673 81, 81, 81, 81, 81, -33, 0, 0, 81, -63, 0, -36, -35, 0, -32, 81,
1674 0, 81, 0, 81, 81, 81, 87, 87, 87, 81, 81, 87, -95, 195, 195, 195,
1675 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1676 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 111, 195, 195, 195, 195,
1677 195, 195, 195, 195, 195, 108, 195, 195, 102, 195, 195, 195, 195, 195, 195, 195,
1678 195, 195, 195, 195, 195, 195, 195, 195, 112, 195, 195, 195, 195, 195, 195, 195,
1679 195, 195, 195, 195, 195, 117, 195, 195, 195, 195, -96, 0, 0, 195, 0, -98,
1680 -97, 0, -55, -94, 195, 0, 195, 0, 195, 0, 195, 0, 0, 81, 81, 81,
1681 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1682 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1683 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1684 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 21, 81, 81, 81,
1685 81, 81, 81, 81, 81, 81, 42, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1686 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 41, -68, -74, -67,
1687 -49, 0, 0, -199, 198, -86, -48, 36, 0, -44, 0, 0, -80, 0, 45, 0,
1688 -45, -211, 81, 81, 81, 81, 81, 87, 87, 45, 81, 87, 81, 87, 87, 81,
1689 -87, 87, 44, 87, 87, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1690 81, 21, 81, 42, 81, 81, 81, 81, 81, 81, 81, 81, 81, 41, 0, -44,
1691 45, 0, -45, 81, 81, 81, 81, 81, 45, 81, 81, 87, 87, 81, 87, 44,
1692 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1693 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 166, 195, 195, 195,
1694 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 170, 195,
1695 195, 195, 149, 195, 195, 195, 195, 195, 195, 195, 172, 195, 195, 195, 171, 21,
1696 139, 195, 195, 195, 195, 195, 195, 195, 195, 193, 195, 195, 165, 195, 195, 195,
1697 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 167, 195, 192,
1698 0, -195, 197, 0, -197, 195, 0, 0, 0, 195, 0, 0, 195, 0, -175, 81,
1699 81, 81, 81, 81, 81, 81, 8, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1700 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1701 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1702 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1703 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1704 81, 81, 81, 40, 81, 81, 81, 81, 81, 81, 81, 81, 78, 0, 37, 0,
1705 81, 81, 87, 87, 81, 81, 81, 81, 87, 87, 8, 81, 81, 81, 81, 81,
1706 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 40, 81, 81,
1707 81, 81, 81, 81, 81, 81, 81, 135, 195, 195, 195, 145, 195, 195, 8, 195,
1708 126, 195, 195, 195, 195, 103, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1709 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1710 195, 195, 195, 195, 195, 107, 195, 195, 168, 195, 195, 195, 195, 195, 195, 195,
1711 195, 195, 195, 115, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1712 104, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 191, 195, 195, 195, 195,
1713 195, 195, 195, 195, 195, 0, 0, 195, 195, 195, 195, 0, 81, 81, 81, 81,
1714 81, 81, 81, 81, 81, -177, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1715 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, -154, 81, 81, 81,
1716 81, 81, 81, 81, 81, 3, 81, 81, 81, -151, 81, 81, 81, 81, 81, 81,
1717 81, -182, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1718 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 13, 81, 81,
1719 81, 81, 76, 81, 81, -207, 87, 87, 81, 81, 81, 81, 81, 81, 3, 81,
1720 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 13, 81, 81, 81,
1721 106, 116, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1722 195, 155, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1723 195, 195, 195, 195, 195, 195, 195, 3, 154, 195, 195, 195, 195, 195, 195, 195,
1724 195, 195, 195, 195, 195, 195, 195, 127, 195, 195, 195, 195, 195, 195, 105, 195,
1725 195, 195, 195, 195, 195, 195, 121, 195, 109, 195, 113, 195, 195, 13, 195, 156,
1726 195, 195, 195, 0, 81, 81, 81, 81, 81, 81, 81, 81, 14, 81, 81, -178,
1727 81, 81, 81, -152, 81, 81, 81, 6, 81, 81, 81, 81, 81, 81, 81, 81,
1728 81, 81, 81, -190, -179, 81, 81, 16, 81, 81, 81, 11, 81, 81, 81, 81,
1729 -181, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, -176, 81,
1730 -180, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1731 87, 81, 87, 87, 14, 81, 81, 6, 81, 16, 81, 81, 11, 81, 81, 81,
1732 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 195, 195, 195, 195,
1733 195, 131, 195, 195, 14, 136, 195, 138, 195, 195, 195, 147, 195, 6, 195, 118,
1734 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 16, 195, 195, 158, 11,
1735 195, 134, 195, 195, 195, 195, 195, 195, 195, 195, 163, 195, 195, 195, 122, 195,
1736 164, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1737 195, 0, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 1, 81, 81, 81,
1738 81, 81, 81, 81, 81, -191, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1739 81, 81, 81, 81, 81, 81, 81, 81, -153, 81, 81, 19, 81, 81, 81, 81,
1740 81, 81, 7, 81, 81, 81, -186, 81, 81, 81, 87, 81, 1, 81, 81, 81,
1741 81, 81, 81, 81, 81, 81, 19, 81, 81, 81, 81, 7, 81, 81, 81, 125,
1742 195, 195, 162, 195, 195, 195, 195, 195, 143, 1, 195, 160, 195, 195, 120, 195,
1743 195, 195, 195, 195, 123, 195, 195, 195, 195, 195, 195, 169, 195, 195, 195, 141,
1744 195, 195, 142, 195, 195, 161, 19, 195, 195, 195, 195, 195, 195, 7, 195, 195,
1745 195, 195, 195, 81, 81, 81, -187, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1746 81, 81, 81, 81, 4, 81, 81, 81, -174, 81, 81, 22, 81, 81, 81, 9,
1747 15, 81, 81, 81, 81, 81, 81, 12, 81, 81, 81, 87, 81, 81, 81, 4,
1748 81, 81, 81, 81, 22, 81, 9, 15, 81, 81, 12, 81, 81, 137, 195, 195,
1749 195, 195, 195, 144, 195, 195, 195, 195, 195, 195, 195, 195, 195, 4, 195, 195,
1750 195, 195, 195, 22, 195, 195, 195, 9, 15, 195, 114, 195, 195, 140, 195, 12,
1751 195, 195, 81, 81, 81, -189, 17, 81, 20, 81, 81, -184, 81, 81, 81, 5,
1752 81, 81, 2, 23, 81, 81, 81, -183, 81, 81, 81, -188, 81, 81, 87, 87,
1753 17, 20, 5, 81, 2, 23, 81, 81, 81, 81, 81, 110, 195, 195, 17, 119,
1754 20, 195, 130, 195, 195, 195, 5, 195, 146, 2, 23, 195, 195, 195, 195, 195,
1755 195, 195, 195, 81, 81, 81, -185, 81, 81, 81, 81, 81, 81, 25, 18, 81,
1756 81, 81, 87, 81, 81, 81, 25, 18, 81, 133, 195, 159, 132, 157, 195, 195,
1757 195, 195, 25, 18, 195, 195, 195, 81, 10, 81, 81, 26, 81, 81, 81, 87,
1758 10, 81, 26, 81, 148, 10, 195, 129, 26, 128, 195, 124, 24, 81, 83, 87,
1759 24, 81, 24, 195, 81, 83, 81, 195, 81, 81, 195, 81, 81, 195, 27, 27,
1762 static const RegexMatch _X1
1763 ( _X1_base,
1764 _X1_check,
1765 _X1_def,
1766 _X1_next,
1767 _X1_accept_rule,
1768 _X1_equiv_classes );
1769 int rule__;
1770 const char * next;
1771 switch(rule__ = _X1.MatchText(RegexMatch::start_state,lexbuf,next)) {
1772 case 1: {
1773 L2:;
1774 #line 39 "lexer.pcc"
1775 if (lexbuf.context() == C) start_sc(PROP);
1776 return ((PropToken)(rule__ + 255));
1778 #line 41 "lexer.pcc"
1779 } break;
1780 case 2: { goto L2; } break;
1781 case 3: { goto L2; } break;
1782 case 4: { goto L2; } break;
1783 case 5: { goto L2; } break;
1784 case 6: { goto L2; } break;
1785 case 7: { goto L2; } break;
1786 case 8: { goto L2; } break;
1787 case 9: { goto L2; } break;
1788 case 10: { goto L2; } break;
1789 case 11: { goto L2; } break;
1790 case 12: { goto L2; } break;
1791 case 13: { goto L2; } break;
1792 case 14: { goto L2; } break;
1793 case 15: { goto L2; } break;
1794 case 16: { goto L2; } break;
1795 case 17: { goto L2; } break;
1796 case 18: { goto L2; } break;
1797 case 19: { goto L2; } break;
1798 case 20: { goto L2; } break;
1799 case 21: { goto L2; } break;
1800 case 22: { goto L2; } break;
1801 case 23: { goto L2; } break;
1802 case 24: { goto L2; } break;
1803 case 25: { goto L2; } break;
1804 case 26: { goto L2; } break;
1805 case 27: { goto L2; } break;
1806 case 28: {
1807 #line 42 "lexer.pcc"
1808 start_quote('(',')'); emit();
1809 #line 42 "lexer.pcc"
1810 } break;
1811 case 29: {
1812 #line 43 "lexer.pcc"
1813 start_quote('[',']'); emit();
1814 #line 43 "lexer.pcc"
1815 } break;
1816 case 30: {
1817 #line 44 "lexer.pcc"
1818 start_quote('{','}'); emit();
1819 #line 44 "lexer.pcc"
1820 } break;
1821 case 31: {
1822 #line 45 "lexer.pcc"
1823 start_quote('(',')'); start_sc(PROP); return XXcihmXX;
1824 #line 45 "lexer.pcc"
1825 } break;
1826 case 32: {
1827 #line 46 "lexer.pcc"
1828 start_quote('[',']'); start_sc(PROP); return XXflhmXX;
1829 #line 46 "lexer.pcc"
1830 } break;
1831 case 33: {
1832 #line 47 "lexer.pcc"
1833 start_quote('{','}'); start_sc(PROP); return XXhlhmXX;
1834 #line 47 "lexer.pcc"
1835 } break;
1836 case 34: {
1837 #line 48 "lexer.pcc"
1838 start_quote('(',')'); start_sc(PROP); return XXcociXX;
1839 #line 48 "lexer.pcc"
1840 } break;
1841 case 35: {
1842 #line 49 "lexer.pcc"
1843 start_quote('[',']'); start_sc(PROP); return XXcoflXX;
1844 #line 49 "lexer.pcc"
1845 } break;
1846 case 36: {
1847 #line 50 "lexer.pcc"
1848 emit("._"); emit(lexbuf.text()+2);
1849 #line 50 "lexer.pcc"
1850 } break;
1851 case 37: {
1852 #line 51 "lexer.pcc"
1853 emit("->_"); emit(lexbuf.text()+3);
1854 #line 51 "lexer.pcc"
1855 } break;
1856 case 38: {
1857 #line 53 "lexer.pcc"
1858 lexbuf.push_back(1); start_sc(PROP); return '#';
1859 #line 53 "lexer.pcc"
1860 } break;
1861 case 39: {
1862 #line 55 "lexer.pcc"
1863 char c = end_quote(lexbuf[0]);
1864 if (levels[levels_top-1] > quote_top)
1865 { end_sc(); return c; }
1866 else
1867 { emit(); }
1869 #line 60 "lexer.pcc"
1870 } break;
1871 case 40: {
1872 L3:;
1873 #line 62 "lexer.pcc"
1874 if (levels[levels_top-1] >= quote_top)
1875 { end_sc(); return ((PropToken)(rule__ + 332)); }
1876 else
1877 { emit(); }
1879 #line 66 "lexer.pcc"
1880 } break;
1881 case 41: { goto L3; } break;
1882 case 42: { goto L3; } break;
1883 case 43: {
1884 #line 67 "lexer.pcc"
1885 emit_cons(lexbuf.text()+1);
1886 #line 67 "lexer.pcc"
1887 } break;
1888 case 44: {
1889 #line 68 "lexer.pcc"
1890 start_sc(PROP); return QUARK_TOK;
1891 #line 68 "lexer.pcc"
1892 } break;
1893 case 45: {
1894 #line 69 "lexer.pcc"
1895 start_sc(PROP); return BIGINT_TOK;
1896 #line 69 "lexer.pcc"
1897 } break;
1898 case 46: {
1899 L4:;
1900 #line 71 "lexer.pcc"
1901 if (lexbuf.context() == C) emit(); else return ((PropToken)(rule__ + 329));
1902 #line 71 "lexer.pcc"
1903 } break;
1904 case 47: { goto L4; } break;
1905 case 48: { goto L4; } break;
1906 case 49: { goto L4; } break;
1907 case 50: { goto L4; } break;
1908 case 51: { goto L4; } break;
1909 case 52: { goto L4; } break;
1910 case 53: { goto L4; } break;
1911 case 54: { goto L4; } break;
1912 case 55: { goto L4; } break;
1913 case 56: { goto L4; } break;
1914 case 57: { goto L4; } break;
1915 case 58: { goto L4; } break;
1916 case 59: { goto L4; } break;
1917 case 60: { goto L4; } break;
1918 case 61: { goto L4; } break;
1919 case 62: { goto L4; } break;
1920 case 63: { goto L4; } break;
1921 case 64: { goto L4; } break;
1922 case 65: { goto L4; } break;
1923 case 66: { goto L4; } break;
1924 case 67: { goto L4; } break;
1925 case 68: { goto L4; } break;
1926 case 69: { goto L4; } break;
1927 case 70: { goto L4; } break;
1928 case 71: { goto L4; } break;
1929 case 72: { goto L4; } break;
1930 case 73: { goto L4; } break;
1931 case 74: { goto L4; } break;
1932 case 75: { goto L4; } break;
1933 case 76: { goto L4; } break;
1934 case 77: {
1935 L5:;
1936 #line 73 "lexer.pcc"
1937 if (lexbuf.context() == C) emit(); else return ((PropToken)(rule__ + 345));
1938 #line 73 "lexer.pcc"
1939 } break;
1940 case 78: { goto L5; } break;
1941 case 79: { goto L5; } break;
1942 case 80: { goto L5; } break;
1943 case 81: {
1944 #line 75 "lexer.pcc"
1945 Quark id(lexbuf.text());
1946 Bool is_from_current_scope;
1947 my_exp = pv_env.lookup(id,&is_from_current_scope);
1948 if (my_exp != NOexp)
1949 { emit(my_exp);
1950 } else
1951 { if (lexbuf.lookahead() == '<' &&
1952 is_poly_datatype(lookup_ty(id)))
1953 { start_sc(PROP); return POLY_DATATYPE; }
1954 else
1955 { if (lexbuf[lexbuf.length()-1] == '\'')
1956 { int i;
1957 for (i = lexbuf.length()-1; i >= 0; i--)
1958 if (lexbuf[i] != '\'') break;
1959 lexbuf[i+1] = '\0';
1960 if (my_cons = find_cons(lexbuf.text()))
1961 { start_sc(PROP); return CONS_EXP; }
1962 lexbuf[i+1] = '\'';
1964 if (lexbuf[0] == '?' || lexbuf[0] == '$' ||
1965 lexbuf[0] == '#' && in_rewrite ||
1966 lexbuf[lexbuf.length()-1] == '\'')
1967 error("%Lpattern variable '%s' has no binding at this point\n",
1968 lexbuf.text());
1969 emit();
1973 #line 102 "lexer.pcc"
1974 } break;
1975 case 82: {
1976 #line 103 "lexer.pcc"
1977 emit();
1978 #line 103 "lexer.pcc"
1979 } break;
1980 case 83: {
1981 #line 105 "lexer.pcc"
1982 char name_buffer[256], * q;
1983 const char * p;
1984 // locate < or "
1985 for (p = lexbuf.text(); *p != '<' && *p != '"'; p++);
1986 // copy the filename to the buffer
1987 for (p++, q = name_buffer; *p != '"' && *p != '>'; p++, q++) *q = *p;
1988 *q = '\0';
1989 Quark file_name(name_buffer);
1990 // emit the filename sans [pP]
1991 for ( ;*p != '.'; p--);
1992 emit (lexbuf.text(), p - lexbuf.text() + 1);
1993 emit (p+2);
1994 open_include_file(file_name);
1996 #line 118 "lexer.pcc"
1997 } break;
1998 case 84: {
1999 #line 119 "lexer.pcc"
2000 emit();
2001 #line 119 "lexer.pcc"
2002 } break;
2003 case 85: {
2004 #line 120 "lexer.pcc"
2005 emit(); line++;
2006 #line 120 "lexer.pcc"
2007 } break;
2008 case 86: {
2009 #line 121 "lexer.pcc"
2010 emit_header(); line++;
2011 #line 121 "lexer.pcc"
2012 } break;
2013 case 87: {
2014 #line 122 "lexer.pcc"
2015 emit();
2016 #line 122 "lexer.pcc"
2017 } break;
2018 case 88: {
2019 #line 123 "lexer.pcc"
2020 start_quote('`','`'); start_sc(QUOTE);
2021 #line 123 "lexer.pcc"
2022 } break;
2023 case 89: {
2024 #line 124 "lexer.pcc"
2025 return lexbuf[0];
2026 #line 124 "lexer.pcc"
2027 } break;
2028 case 90: {
2029 #line 125 "lexer.pcc"
2030 start_quote('(',')'); return '(';
2031 #line 125 "lexer.pcc"
2032 } break;
2033 case 91: {
2034 #line 126 "lexer.pcc"
2035 start_quote('{','}'); return '{';
2036 #line 126 "lexer.pcc"
2037 } break;
2038 case 92: {
2039 #line 127 "lexer.pcc"
2040 start_quote('[',']'); return '[';
2041 #line 127 "lexer.pcc"
2042 } break;
2043 case 93: {
2044 #line 128 "lexer.pcc"
2045 start_quote('(',')'); return XXcihmXX;
2046 #line 128 "lexer.pcc"
2047 } break;
2048 case 94: {
2049 #line 129 "lexer.pcc"
2050 start_quote('{','}'); return XXhlhmXX;
2051 #line 129 "lexer.pcc"
2052 } break;
2053 case 95: {
2054 #line 130 "lexer.pcc"
2055 start_quote('[',']'); return XXflhmXX;
2056 #line 130 "lexer.pcc"
2057 } break;
2058 case 96: {
2059 #line 131 "lexer.pcc"
2060 start_quote('(',')'); return XXcociXX;
2061 #line 131 "lexer.pcc"
2062 } break;
2063 case 97: {
2064 #line 132 "lexer.pcc"
2065 start_quote('[',']'); return XXcoflXX;
2066 #line 132 "lexer.pcc"
2067 } break;
2068 case 98: {
2069 #line 133 "lexer.pcc"
2070 return end_quote(lexbuf[0]);
2071 #line 133 "lexer.pcc"
2072 } break;
2073 case 99: {
2074 #line 134 "lexer.pcc"
2075 end_quote(')'); return XXhmcjXX;
2076 #line 134 "lexer.pcc"
2077 } break;
2078 case 100: {
2079 #line 135 "lexer.pcc"
2080 end_quote('}'); return XXhmhnXX;
2081 #line 135 "lexer.pcc"
2082 } break;
2083 case 101: {
2084 #line 136 "lexer.pcc"
2085 end_quote(']'); return XXhmfnXX;
2086 #line 136 "lexer.pcc"
2087 } break;
2088 case 102: {
2089 L6:;
2090 #line 137 "lexer.pcc"
2091 return ((PropToken)(rule__ + 181));
2092 #line 137 "lexer.pcc"
2093 } break;
2094 case 103: { goto L6; } break;
2095 case 104: { goto L6; } break;
2096 case 105: { goto L6; } break;
2097 case 106: { goto L6; } break;
2098 case 107: { goto L6; } break;
2099 case 108: { goto L6; } break;
2100 case 109: { goto L6; } break;
2101 case 110: { goto L6; } break;
2102 case 111: { goto L6; } break;
2103 case 112: { goto L6; } break;
2104 case 113: { goto L6; } break;
2105 case 114: { goto L6; } break;
2106 case 115: { goto L6; } break;
2107 case 116: { goto L6; } break;
2108 case 117: { goto L6; } break;
2109 case 118: { goto L6; } break;
2110 case 119: { goto L6; } break;
2111 case 120: { goto L6; } break;
2112 case 121: { goto L6; } break;
2113 case 122: { goto L6; } break;
2114 case 123: { goto L6; } break;
2115 case 124: { goto L6; } break;
2116 case 125: { goto L6; } break;
2117 case 126: { goto L6; } break;
2118 case 127: { goto L6; } break;
2119 case 128: { goto L6; } break;
2120 case 129: { goto L6; } break;
2121 case 130: { goto L6; } break;
2122 case 131: { goto L6; } break;
2123 case 132: { goto L6; } break;
2124 case 133: { goto L6; } break;
2125 case 134: { goto L6; } break;
2126 case 135: { goto L6; } break;
2127 case 136: { goto L6; } break;
2128 case 137: { goto L6; } break;
2129 case 138: { goto L6; } break;
2130 case 139: { goto L6; } break;
2131 case 140: { goto L6; } break;
2132 case 141: { goto L6; } break;
2133 case 142: { goto L6; } break;
2134 case 143: { goto L6; } break;
2135 case 144: { goto L6; } break;
2136 case 145: { goto L6; } break;
2137 case 146: { goto L6; } break;
2138 case 147: { goto L6; } break;
2139 case 148: { goto L6; } break;
2140 case 149: { goto L6; } break;
2141 case 150: { goto L6; } break;
2142 case 151: { goto L6; } break;
2143 case 152: { goto L6; } break;
2144 case 153: { goto L6; } break;
2145 case 154: { goto L6; } break;
2146 case 155: { goto L6; } break;
2147 case 156: { goto L6; } break;
2148 case 157: { goto L6; } break;
2149 case 158: { goto L6; } break;
2150 case 159: { goto L6; } break;
2151 case 160: { goto L6; } break;
2152 case 161: { goto L6; } break;
2153 case 162: { goto L6; } break;
2154 case 163: { goto L6; } break;
2155 case 164: { goto L6; } break;
2156 case 165: { goto L6; } break;
2157 case 166: { goto L6; } break;
2158 case 167: { goto L6; } break;
2159 case 168: { goto L6; } break;
2160 case 169: { goto L6; } break;
2161 case 170: { goto L6; } break;
2162 case 171: { goto L6; } break;
2163 case 172: { goto L6; } break;
2164 case 173: { goto L6; } break;
2165 case 174: { goto L6; } break;
2166 case 175: { goto L6; } break;
2167 case 176: { goto L6; } break;
2168 case 177: { goto L6; } break;
2169 case 178: { goto L6; } break;
2170 case 179: { goto L6; } break;
2171 case 180: { goto L6; } break;
2172 case 181: { goto L6; } break;
2173 case 182: { goto L6; } break;
2174 case 183: { goto L6; } break;
2175 case 184: { goto L6; } break;
2176 case 185: { goto L6; } break;
2177 case 186: { goto L6; } break;
2178 case 187: { goto L6; } break;
2179 case 188: { goto L6; } break;
2180 case 189: { goto L6; } break;
2181 case 190: { goto L6; } break;
2182 case 191: {
2183 L7:;
2184 #line 138 "lexer.pcc"
2185 return ((PropToken)(rule__ + 181));
2186 #line 138 "lexer.pcc"
2187 } break;
2188 case 192: { goto L7; } break;
2189 case 193: { goto L7; } break;
2190 case 194: {
2191 #line 140 "lexer.pcc"
2192 my_cons = lookup_cons(lexbuf.text()+1);
2193 return CONS_TOK;
2195 #line 142 "lexer.pcc"
2196 } break;
2197 case 195: {
2198 #line 144 "lexer.pcc"
2199 if ((my_cons = find_cons(lexbuf.text())) != NOcons)
2200 return CONS_TOK;
2201 if (lexbuf[lexbuf.length()-1] == '\'')
2202 { int i;
2203 for (i = lexbuf.length()-1; i >= 0; i--)
2204 if (lexbuf[i] != '\'') break;
2205 lexbuf[i+1] = '\0';
2206 if (my_cons = find_cons(lexbuf.text()))
2207 return CONS_EXP;
2208 lexbuf[i+1] = '\'';
2210 return ID_TOK;
2212 #line 156 "lexer.pcc"
2213 } break;
2214 case 196: {
2215 #line 157 "lexer.pcc"
2216 return QUARK_TOK;
2217 #line 157 "lexer.pcc"
2218 } break;
2219 case 197: {
2220 #line 158 "lexer.pcc"
2221 return BIGINT_TOK;
2222 #line 158 "lexer.pcc"
2223 } break;
2224 case 198: {
2225 #line 159 "lexer.pcc"
2226 return REGEXP_TOK;
2227 #line 159 "lexer.pcc"
2228 } break;
2229 case 199: {
2230 #line 160 "lexer.pcc"
2231 return lexbuf[0];
2232 #line 160 "lexer.pcc"
2233 } break;
2234 case 200: {
2235 #line 161 "lexer.pcc"
2236 /* skip */
2237 #line 161 "lexer.pcc"
2238 } break;
2239 case 201: {
2240 #line 162 "lexer.pcc"
2241 line++;
2242 #line 162 "lexer.pcc"
2243 } break;
2244 case 202: {
2245 #line 163 "lexer.pcc"
2246 emit(); start_sc(COMMENT);
2247 #line 163 "lexer.pcc"
2248 } break;
2249 case 203: {
2250 #line 164 "lexer.pcc"
2251 emit(); end_sc();
2252 #line 164 "lexer.pcc"
2253 } break;
2254 case 204: {
2255 #line 165 "lexer.pcc"
2256 emit(); line++;
2257 #line 165 "lexer.pcc"
2258 } break;
2259 case 205: {
2260 #line 166 "lexer.pcc"
2261 emit();
2262 #line 166 "lexer.pcc"
2263 } break;
2264 case 206: {
2265 #line 168 "lexer.pcc"
2266 char buffer[1024];
2267 const char * p;
2268 char * q;
2269 for (p = lexbuf.text(); ! isdigit(*p); p++);
2270 line = atol(p);
2271 for ( ; *p != '"'; p++);
2272 for (p++, q = buffer; (*q = *p) != '"'; p++, q++);
2273 *q = '\0';
2274 file = Quark(buffer);
2275 debug_msg("[%s, %i]", file, line);
2276 emit();
2278 #line 179 "lexer.pcc"
2279 } break;
2280 case 207: {
2281 #line 180 "lexer.pcc"
2282 meta.emit('\0'); end_quote('`'); end_sc();
2283 return META_QUOTE;
2285 #line 182 "lexer.pcc"
2286 } break;
2287 case 208: {
2288 #line 183 "lexer.pcc"
2289 meta.emit(lexbuf[0]);
2290 #line 183 "lexer.pcc"
2291 } break;
2292 case 209: {
2293 #line 184 "lexer.pcc"
2294 line++; meta.emit(lexbuf[0]);
2295 #line 184 "lexer.pcc"
2296 } break;
2297 case 210: {
2298 #line 185 "lexer.pcc"
2299 line++; emit_doc();
2300 #line 185 "lexer.pcc"
2301 } break;
2302 case 211: {
2303 #line 186 "lexer.pcc"
2304 error("%Lillegal character %c\n", lexbuf[0]);
2305 #line 186 "lexer.pcc"
2306 } break;
2307 default: { goto L1; }
2311 L1:;
2313 #line 187 "lexer.pcc"
2314 #line 187 "lexer.pcc"
2316 if (includes_top != 0) close_include_file();
2317 else return EOF;
2320 #line 192 "lexer.pcc"
2322 ------------------------------- Statistics -------------------------------
2323 Merge matching rules = yes
2324 Number of DFA nodes merged = 151
2325 Number of ifs generated = 0
2326 Number of switches generated = 1
2327 Number of labels = 6
2328 Number of gotos = 151
2329 Adaptive matching = enabled
2330 Fast string matching = disabled
2331 Inline downcasts = enabled
2332 --------------------------------------------------------------------------