1/* -*- buffer-read-only: t -*-
2   !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
3   This file is built by regen_perly.pl from perly.y.
4   Any changes made here will be lost!
5 */
6
7#define YYFINAL  16
8/* YYLAST -- Last index in YYTABLE.  */
9#define YYLAST   3348
10
11/* YYNTOKENS -- Number of terminals.  */
12#define YYNTOKENS  112
13/* YYNNTS -- Number of nonterminals.  */
14#define YYNNTS  96
15/* YYNRULES -- Number of rules.  */
16#define YYNRULES  294
17/* YYNSTATES -- Number of states.  */
18#define YYNSTATES  572
19
20#define YYUNDEFTOK  2
21#define YYMAXUTOK   344
22
23/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
24   as returned by yylex, with out-of-bounds checking.  */
25#define YYTRANSLATE(YYX)                                                \
26  ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
27
28/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
29   as returned by yylex.  */
30static const yytype_uint8 yytranslate[] =
31{
32       0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
33       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
34       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
35       2,     2,     2,    95,     2,     2,   109,    17,    18,     2,
36     107,   106,   110,    15,    80,    14,    20,   111,     2,     2,
37       2,     2,     2,     2,     2,     2,     2,     2,    83,   108,
38       2,    19,     2,    82,    16,     2,     2,     2,     2,     2,
39       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
40       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
41       2,    12,     2,    13,     2,     2,     2,     2,     2,     2,
42       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
43       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
44       2,     2,     2,    10,     2,    11,    96,     2,     2,     2,
45       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
46       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
47       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
48       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
49       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
50       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
51       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
52       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
53       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
54       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
55       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
56       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
57       2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
58       5,     6,     7,     8,     9,    21,    22,    23,    24,    25,
59      26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
60      36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
61      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
62      56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
63      66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
64      76,    77,    78,    79,    81,    84,    85,    86,    87,    88,
65      89,    90,    91,    92,    93,    94,    97,    98,    99,   100,
66     101,   102,   103,   104,   105
67};
68
69#if YYDEBUG
70  /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
71static const yytype_uint16 yyrline[] =
72{
73       0,   121,   121,   120,   132,   131,   142,   141,   155,   154,
74     168,   167,   181,   180,   191,   190,   203,   211,   219,   223,
75     231,   237,   238,   248,   249,   258,   262,   266,   273,   283,
76     285,   298,   295,   319,   314,   335,   343,   342,   351,   357,
77     363,   368,   370,   372,   379,   387,   389,   386,   406,   411,
78     418,   417,   432,   440,   446,   453,   452,   467,   471,   476,
79     484,   502,   503,   508,   510,   512,   514,   516,   518,   520,
80     523,   529,   530,   535,   546,   547,   553,   559,   560,   565,
81     568,   572,   577,   581,   585,   586,   590,   596,   601,   606,
82     607,   612,   613,   618,   619,   621,   626,   628,   640,   641,
83     646,   648,   652,   672,   673,   675,   681,   746,   748,   754,
84     756,   760,   766,   767,   772,   773,   777,   781,   781,   849,
85     850,   855,   866,   867,   870,   881,   883,   885,   887,   891,
86     893,   898,   902,   906,   910,   916,   921,   927,   933,   935,
87     937,   940,   939,   950,   951,   955,   959,   962,   967,   972,
88     975,   979,   983,   989,   997,  1004,  1010,  1012,  1014,  1019,
89    1021,  1023,  1028,  1030,  1032,  1034,  1036,  1038,  1040,  1042,
90    1044,  1046,  1048,  1052,  1054,  1056,  1058,  1062,  1064,  1068,
91    1070,  1072,  1074,  1078,  1080,  1085,  1087,  1090,  1092,  1094,
92    1097,  1100,  1111,  1114,  1121,  1123,  1125,  1127,  1129,  1132,
93    1138,  1140,  1144,  1145,  1146,  1147,  1148,  1150,  1152,  1154,
94    1156,  1158,  1160,  1162,  1164,  1166,  1168,  1170,  1172,  1174,
95    1176,  1186,  1196,  1206,  1216,  1218,  1220,  1223,  1228,  1232,
96    1234,  1236,  1238,  1241,  1243,  1246,  1248,  1250,  1252,  1254,
97    1256,  1258,  1260,  1262,  1265,  1267,  1269,  1271,  1273,  1275,
98    1279,  1282,  1281,  1294,  1295,  1296,  1300,  1302,  1304,  1309,
99    1311,  1314,  1316,  1318,  1323,  1325,  1330,  1331,  1336,  1337,
100    1343,  1347,  1348,  1349,  1352,  1353,  1356,  1357,  1360,  1364,
101    1368,  1374,  1380,  1382,  1386,  1390,  1391,  1395,  1396,  1400,
102    1401,  1406,  1408,  1410,  1413
103};
104#endif
105
106#if YYDEBUG || YYERROR_VERBOSE || 0
107/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
108   First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
109static const char *const yytname[] =
110{
111  "$end", "error", "$undefined", "GRAMPROG", "GRAMEXPR", "GRAMBLOCK",
112  "GRAMBARESTMT", "GRAMFULLSTMT", "GRAMSTMTSEQ", "GRAMSUBSIGNATURE", "'{'",
113  "'}'", "'['", "']'", "'-'", "'+'", "'@'", "'%'", "'&'", "'='", "'.'",
114  "BAREWORD", "METHOD", "FUNCMETH", "THING", "PMFUNC", "PRIVATEREF",
115  "QWLIST", "FUNC0OP", "FUNC0SUB", "UNIOPSUB", "LSTOPSUB", "PLUGEXPR",
116  "PLUGSTMT", "LABEL", "FORMAT", "SUB", "SIGSUB", "ANONSUB", "ANON_SIGSUB",
117  "PACKAGE", "USE", "WHILE", "UNTIL", "IF", "UNLESS", "ELSE", "ELSIF",
118  "CONTINUE", "FOR", "GIVEN", "WHEN", "DEFAULT", "LOOPEX", "DOTDOT",
119  "YADAYADA", "FUNC0", "FUNC1", "FUNC", "UNIOP", "LSTOP", "MULOP", "ADDOP",
120  "DOLSHARP", "DO", "HASHBRACK", "NOAMP", "LOCAL", "MY", "REQUIRE",
121  "COLONATTR", "FORMLBRACK", "FORMRBRACK", "SUBLEXSTART", "SUBLEXEND",
122  "PREC_LOW", "OROP", "DOROP", "ANDOP", "NOTOP", "','", "ASSIGNOP", "'?'",
123  "':'", "OROR", "DORDOR", "ANDAND", "BITOROP", "BITANDOP", "CHEQOP",
124  "NCEQOP", "CHRELOP", "NCRELOP", "SHIFTOP", "MATCHOP", "'!'", "'~'",
125  "UMINUS", "REFGEN", "POWOP", "PREINC", "PREDEC", "POSTINC", "POSTDEC",
126  "POSTJOIN", "ARROW", "')'", "'('", "';'", "'$'", "'*'", "'/'", "$accept",
127  "grammar", "@1", "@2", "@3", "@4", "@5", "@6", "@7", "block",
128  "formblock", "remember", "mblock", "mremember", "stmtseq", "formstmtseq",
129  "fullstmt", "labfullstmt", "barestmt", "$@8", "$@9", "$@10", "$@11",
130  "$@12", "@13", "$@14", "formline", "formarg", "sideff", "else", "cont",
131  "mintro", "nexpr", "texpr", "iexpr", "mexpr", "mnexpr", "formname",
132  "startsub", "startanonsub", "startformsub", "subname", "proto",
133  "subattrlist", "myattrlist", "sigvarname", "sigslurpsigil",
134  "sigslurpelem", "sigdefault", "sigscalarelem", "sigelem", "siglist",
135  "siglistornull", "optsubsignature", "subsignature", "subsigguts", "$@15",
136  "optsubbody", "subbody", "optsigsubbody", "sigsubbody", "expr",
137  "listexpr", "listop", "@16", "method", "subscripted", "termbinop",
138  "termrelop", "relopchain", "termeqop", "eqopchain", "termunop",
139  "anonymous", "termdo", "term", "@17", "myattrterm", "myterm",
140  "optlistexpr", "optexpr", "optrepl", "my_scalar", "my_var",
141  "refgen_topic", "my_refgen", "amper", "scalar", "ary", "hsh", "arylen",
142  "star", "sliceme", "kvslice", "gelem", "indirob", YY_NULLPTR
143};
144#endif
145
146# ifdef YYPRINT
147/* YYTOKNUM[NUM] -- (External) token number corresponding to the
148   (internal) symbol number NUM (which must be that of a token).  */
149static const yytype_uint16 yytoknum[] =
150{
151       0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
152     123,   125,    91,    93,    45,    43,    64,    37,    38,    61,
153      46,   265,   266,   267,   268,   269,   270,   271,   272,   273,
154     274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
155     284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
156     294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
157     304,   305,   306,   307,   308,   309,   310,   311,   312,   313,
158     314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
159      44,   324,    63,    58,   325,   326,   327,   328,   329,   330,
160     331,   332,   333,   334,   335,    33,   126,   336,   337,   338,
161     339,   340,   341,   342,   343,   344,    41,    40,    59,    36,
162      42,    47
163};
164# endif
165
166#define YYPACT_NINF -485
167
168#define yypact_value_is_default(Yystate) \
169  (!!((Yystate) == (-485)))
170
171#define YYTABLE_NINF -290
172
173#define yytable_value_is_error(Yytable_value) \
174  (!!((Yytable_value) == (-290)))
175
176  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
177     STATE-NUM.  */
178static const yytype_int16 yypact[] =
179{
180     739,  -485,  -485,  -485,  -485,  -485,  -485,  -485,    28,  -485,
181    2976,    32,  1582,  1481,  -485,  -485,  -485,  -485,  2085,  2976,
182    2976,     6,     6,     6,  -485,     6,     6,  -485,  -485,    50,
183     -31,  -485,  2976,  -485,  -485,  -485,  -485,  2976,   -13,    20,
184     -33,  1986,  1885,     6,  1986,  2184,     4,  2976,    83,  2976,
185    2976,  2976,  2976,  2976,  2976,  2976,  2283,     6,     6,    41,
186      -7,  -485,    14,  -485,   -34,    -1,   -20,    22,  -485,  -485,
187    -485,  3151,  -485,  -485,    29,    56,    95,   102,  -485,   153,
188     247,   254,   157,  -485,  -485,  -485,  -485,  -485,     4,     4,
189     132,  -485,    79,   100,   119,   130,   174,   146,   154,    32,
190     152,  -485,   217,  -485,   160,  1984,  1481,  -485,  -485,  -485,
191     672,  -485,    30,   774,  -485,   111,   142,   142,  -485,  -485,
192    -485,  -485,  -485,  -485,  -485,  2976,   172,   207,  2976,   176,
193     430,    32,   261,   216,  3151,   202,  2382,  2976,  1885,  -485,
194     430,   572,    -7,  -485,   476,  2976,  -485,  -485,   430,   299,
195     197,  -485,  -485,  2976,   430,  3075,  2481,   242,  -485,  -485,
196    -485,   430,    -7,   142,   142,   142,    57,    57,   306,   267,
197    -485,  -485,  2976,  2976,  2976,  2976,  2976,  2976,  2580,  -485,
198    -485,  2976,  -485,  -485,  2976,  2976,  2976,  2976,  2976,  2976,
199    2976,  2976,  2976,  2976,  2976,  2976,  2976,  2976,  2976,  2976,
200    2976,  2976,  -485,  -485,  -485,    75,  2679,  2976,  2976,  2976,
201    2976,  2976,  2976,  2976,  -485,   307,  -485,  -485,   311,  -485,
202    -485,  -485,  -485,  -485,   224,    36,  -485,  -485,   226,  -485,
203    -485,  -485,  -485,    32,  -485,  -485,  2976,  2976,  2976,  2976,
204    2976,  2976,  -485,  -485,  -485,  -485,  -485,   320,   320,  -485,
205    -485,  -485,   273,  -485,  -485,  -485,  2976,  2976,   118,  -485,
206    -485,  -485,   216,   330,  -485,  -485,  -485,   331,   284,   260,
207    2976,    -7,  -485,   348,  -485,  2778,   142,   242,    33,    55,
208      67,  -485,   342,   344,  -485,  2976,   357,   294,   294,  -485,
209    3151,   249,   133,  -485,   433,   430,   363,  3243,   504,   329,
210    3151,  3105,  1667,  1667,  1767,  1867,   538,   363,   363,   430,
211     430,   301,   142,   142,  2976,  2976,   271,   272,   274,  -485,
212     278,  2877,    23,   279,   270,  -485,  -485,   470,   253,   136,
213     302,   158,   364,   162,   407,   875,  -485,   372,  -485,  -485,
214       1,   375,  2976,  2976,  2976,  2976,  -485,   292,  -485,  -485,
215     305,  -485,  -485,  -485,  -485,  1683,    34,  -485,  2976,  2976,
216    -485,    41,  -485,    41,    41,    41,    41,    41,  -485,   332,
217     332,    30,   308,   -39,  -485,  2976,  -485,  -485,   309,  -485,
218    -485,  -485,  -485,   512,  -485,     5,   516,  -485,  -485,  -485,
219     178,  2976,   416,  -485,  -485,  2976,   418,   193,  -485,  -485,
220    -485,  -485,  -485,   519,  -485,  -485,  2976,  -485,   436,  -485,
221     438,  -485,   440,  -485,   447,  -485,  -485,  -485,   261,   216,
222    -485,  -485,   439,   353,    41,   358,   368,    41,   369,   356,
223    -485,  -485,  -485,  -485,   374,   373,   401,  -485,  2976,   381,
224     387,  2976,  -485,  -485,  -485,  -485,  2976,   423,  -485,   489,
225    -485,  -485,   490,  -485,  -485,    19,  -485,   239,  -485,  3197,
226     492,  -485,  -485,   398,  -485,  -485,  -485,  -485,   397,   216,
227     404,  -485,  2976,  -485,  -485,   496,   496,  2976,  2976,   496,
228    -485,   406,   408,   496,   496,  3151,    41,  -485,  -485,   410,
229    -485,  -485,  -485,  -485,   445,   414,  -485,  -485,  -485,  -485,
230     420,   496,   496,  -485,    37,    37,   434,   435,   217,  2976,
231    2976,   496,  -485,  -485,   976,  -485,  1077,  -485,  -485,  -485,
232    -485,  1178,  -485,   217,   217,  -485,   496,   442,  -485,  -485,
233     496,   496,  -485,   437,   449,   217,  -485,  -485,   -10,  -485,
234    -485,  -485,  1279,  -485,  2976,   217,   217,  -485,   496,  -485,
235     472,   531,  -485,  -485,   465,  -485,  -485,  -485,   217,  -485,
236    -485,  -485,   496,  1784,  -485,  1380,    37,   467,  -485,  -485,
237     496,  -485
238};
239
240  /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
241     Performed when YYTABLE does not specify something else to do.  Zero
242     means the default is an error.  */
243static const yytype_uint16 yydefact[] =
244{
245       0,     2,     4,     6,     8,    10,    12,    14,     0,    18,
246     266,     0,     0,     0,    21,   117,     1,    21,     0,     0,
247       0,     0,     0,     0,   253,     0,     0,   224,   251,   212,
248     246,   248,   242,    87,   255,    87,    87,   234,   244,     0,
249       0,   237,   264,     0,     0,     0,     0,     0,     0,   240,
250       0,     0,     0,     0,     0,     0,     0,     0,     0,   267,
251     128,   254,   219,   202,   164,   173,   165,   179,   203,   204,
252     205,   131,   209,     5,   225,   214,   217,   216,   218,   215,
253       0,     0,     0,    18,     7,    63,    29,    88,     0,     0,
254       0,    86,     0,     0,     0,     0,     0,     0,     0,     0,
255       0,    59,    74,     9,     0,    64,     0,    11,    26,    25,
256       0,    15,   112,     0,   195,     0,   185,   186,   291,   294,
257     293,   292,   280,   281,   278,   264,     0,     0,     0,     0,
258     243,     0,    91,    93,   235,     0,     0,   266,   266,   238,
259     239,   291,   265,   138,   292,     0,   282,   201,   200,     0,
260       0,    89,    90,   264,   210,     0,     0,   257,   261,   263,
261     262,   241,   236,   187,   188,   207,   192,   193,   213,     0,
262     279,   284,     0,     0,     0,   129,     0,     0,     0,   176,
263     175,     0,   182,   181,     0,     0,     0,     0,     0,     0,
264       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
265       0,     0,   189,   190,   191,     0,     0,     0,     0,     0,
266       0,     0,     0,     0,    21,    85,    86,    86,     0,    36,
267      18,    18,    18,    18,    18,     0,    18,    18,     0,    18,
268      18,    42,    58,     0,    54,    57,     0,     0,     0,     0,
269       0,     0,    28,    27,    22,   100,   101,    98,    98,   108,
270     107,   111,   113,   118,   194,   136,   266,     0,     0,   247,
271     141,    92,    93,    95,    18,   245,   249,     0,     0,     0,
272       0,   132,   197,     0,   228,     0,   208,     0,   214,   217,
273     216,   260,     0,    97,   256,     0,   211,   126,   127,   125,
274     130,     0,     0,   155,     0,   178,   184,   168,   161,   162,
275     159,     0,   170,   171,   169,   167,   166,   183,   180,   177,
276     174,   163,   172,   160,     0,     0,   286,   288,     0,   143,
277       0,     0,     0,   290,   135,   144,   226,     0,     0,     0,
278       0,     0,     0,     0,     0,     0,    84,     0,    31,    33,
279       0,     0,    79,     0,     0,     0,   276,     0,   277,   274,
280       0,   275,   271,   272,   273,     0,     0,    18,     0,     0,
281      75,    67,    68,    81,    65,    66,    69,    70,    99,   103,
282     103,   109,     0,   268,   157,   264,    18,    94,   114,   199,
283     250,   140,   139,     0,   196,   213,     0,   258,   259,    96,
284       0,     0,     0,   148,   154,     0,     0,     0,   230,   231,
285     232,   283,   152,     0,   229,   233,   266,   227,     0,   146,
286       0,   220,     0,   221,     0,    16,    18,    30,    91,    93,
287      18,    35,     0,     0,    80,     0,     0,    82,     0,     0,
288     270,    18,    78,    83,     0,     0,    64,    50,     0,     0,
289       0,   104,   106,   102,   110,   137,     0,     0,   142,     0,
290     198,   117,     0,   115,   133,   211,   158,     0,   151,   206,
291       0,   147,   153,     0,   149,   222,   223,   145,     0,    93,
292      18,    55,   264,    76,    76,     0,     0,     0,     0,     0,
293      45,     0,     0,     0,     0,   105,   269,   252,    21,     0,
294      21,   156,   150,   134,     0,    18,   123,    34,   122,    21,
295       0,     0,     0,    20,    71,    71,     0,     0,    74,    79,
296       0,     0,    40,    41,     0,   116,     0,    23,   120,    32,
297     119,     0,    37,    74,    74,    21,     0,     0,    38,    39,
298       0,     0,    53,     0,     0,    74,   121,   124,     0,    56,
299      43,    44,     0,    72,     0,    74,    74,    46,     0,    49,
300      61,     0,    24,    19,     0,    48,    52,    76,    74,    21,
301      60,    17,     0,     0,    51,     0,    71,     0,    62,    73,
302       0,    47
303};
304
305  /* YYPGOTO[NTERM-NUM].  */
306static const yytype_int16 yypgoto[] =
307{
308    -485,  -485,  -485,  -485,  -485,  -485,  -485,  -485,  -485,   298,
309    -485,    -5,  -109,  -485,   -17,  -485,   561,   471,     0,  -485,
310    -485,  -485,  -485,  -485,  -485,  -485,  -485,  -485,  -340,  -484,
311    -159,  -456,  -485,    74,   243,  -336,    39,  -485,   -44,   143,
312    -485,   161,   173,  -242,   324,   362,  -485,  -485,   234,  -485,
313     240,  -485,  -485,  -485,  -485,   168,  -485,  -485,   110,  -485,
314     165,    -8,   -37,  -485,  -485,  -485,  -485,  -485,  -485,  -485,
315    -485,  -485,  -485,  -485,  -485,   103,  -485,  -485,   457,  -124,
316    -130,  -485,  -485,   257,  -485,  -485,   399,    38,   -45,   -42,
317    -485,  -485,  -485,  -485,  -485,    13
318};
319
320  /* YYDEFGOTO[NTERM-NUM].  */
321static const yytype_int16 yydefgoto[] =
322{
323      -1,     8,     9,    10,    11,    12,    13,    14,    15,   102,
324     417,   378,   504,   525,   110,   538,   244,   108,   109,   418,
325     419,   341,   509,   557,   481,   499,   552,   560,   104,   528,
326     234,   501,   433,   423,   362,   426,   435,   337,   219,   131,
327     215,   153,   262,   264,   284,   369,   248,   249,   442,   250,
328     251,   252,   253,   452,   453,   111,   112,   519,   450,   497,
329     379,   105,    60,    61,   375,   324,    62,    63,    64,    65,
330      66,    67,    68,    69,    70,    71,   127,    72,   157,   143,
331      73,   447,   429,   349,   350,   227,    74,    75,    76,    77,
332      78,    79,    80,    81,    82,   170
333};
334
335  /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
336     positive, shift that token.  If negative, reduce the rule whose
337     number is the opposite.  If YYTABLE_NINF, syntax error.  */
338static const yytype_int16 yytable[] =
339{
340     113,   255,    59,   159,    17,   142,   160,   268,   269,   428,
341     115,   420,   103,   162,   550,   432,    83,   285,   502,   434,
342     376,   529,   439,   440,   176,   151,   177,   118,    16,   274,
343     152,   391,   119,    83,   122,   123,   124,   150,   125,   126,
344     137,   175,    83,   207,   118,   208,   245,   246,   169,   119,
345      21,    22,    21,    22,    23,   145,   146,   179,   180,   121,
346     121,   121,   128,   121,   121,  -285,   207,  -285,   208,   182,
347     183,   171,   446,   175,   138,  -260,   129,  -287,   214,  -287,
348     144,   121,   569,   526,   527,   314,   158,   315,   142,  -259,
349     181,   316,   317,   318,   135,   121,   121,   319,   551,    21,
350      22,   563,   482,  -261,   348,  -285,   243,  -285,   271,   421,
351     279,   184,  -287,   280,  -287,    57,   142,   172,   173,   174,
352     258,   178,   116,   117,   254,  -263,   372,   136,   267,    59,
353      59,   374,    57,   404,   228,   130,   206,  -262,   320,   247,
354     134,   506,   507,    57,   140,    57,   393,   148,   282,   409,
355     154,   270,   161,   218,   163,   164,   165,   166,   167,  -290,
356    -290,  -290,   205,  -289,   287,   288,   289,   213,   291,   292,
357     294,   411,   338,   339,   534,   413,   144,   470,   132,   133,
358     353,   155,   321,   354,   322,   323,   220,   172,   173,   174,
359     156,   456,    57,   278,   172,   173,   174,   335,   327,   328,
360     329,   330,   331,   332,   333,   334,   461,   221,   554,   172,
361     173,   174,   172,   173,   174,   342,   343,   344,   345,   347,
362     373,   355,   356,   432,   358,   359,   222,   495,   361,   363,
363     364,   365,   366,   367,   172,   173,   174,   223,   172,   173,
364     174,   201,   224,   325,   202,   203,   204,   205,    59,   216,
365     217,   448,   491,   229,   172,   173,   174,   209,   276,   210,
366     232,   230,   383,   352,   211,   233,   212,   386,   235,   172,
367     173,   174,   225,   172,   173,   174,   463,   390,   290,   256,
368     257,   226,   259,    57,   295,   261,   263,   296,   297,   298,
369     299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
370     309,   310,   311,   312,   313,   273,   396,   397,   265,    84,
371     272,   353,   283,   403,   354,   172,   173,   174,   285,   120,
372     120,   120,   346,   120,   120,   172,   173,   174,   336,   172,
373     173,   174,   340,   357,   424,   363,   427,   427,   142,   139,
374     120,   120,   147,   172,   173,   174,   368,   436,   500,   532,
375     427,   427,   438,   371,   377,   120,   120,   392,   381,   384,
376     121,   408,   186,   187,   540,   541,   382,   505,   389,   391,
377     508,   449,   174,   286,   512,   513,   549,   406,   172,   173,
378     174,   398,   399,   457,   400,   430,   555,   556,   401,   405,
379     186,   416,   523,   524,   352,   200,   422,   231,    59,   564,
380     201,    57,   535,   202,   203,   204,   205,   172,   173,   174,
381     410,   468,   431,   441,   445,   471,   451,   543,   172,   173,
382     174,   545,   546,   200,   186,   187,   478,   458,   201,   260,
383     427,   202,   203,   204,   205,   142,   120,   380,   486,   558,
384     172,   173,   174,   236,   237,   238,   239,   464,   388,   465,
385     240,   466,   241,   566,   197,   198,   199,   200,   467,   473,
386     472,   571,   201,   477,   474,   202,   203,   204,   205,   427,
387     427,   514,   412,   516,   475,   476,  -214,   172,   173,   174,
388     479,   480,   521,   172,   173,   174,   207,   483,   208,  -214,
389     449,   186,   187,   484,   172,   173,   174,   487,   459,   488,
390     490,   424,   427,   492,   493,   494,   503,   -82,   542,   172,
391     173,   174,   496,   510,   511,   414,   515,   517,  -214,  -214,
392    -214,  -214,   518,   199,   200,  -214,   460,  -214,   522,   201,
393    -214,   360,   202,   203,   204,   205,   427,  -214,  -214,   394,
394     530,   531,   565,   559,   485,   547,   172,   173,   174,   544,
395    -214,   561,  -214,  -214,  -214,   548,  -214,  -214,  -214,  -214,
396    -214,  -214,  -214,  -214,  -214,  -214,  -214,  -214,  -214,  -214,
397    -214,   562,  -253,   570,   107,  -214,   407,   242,  -214,  -214,
398    -214,  -214,  -214,   533,  -214,  -253,   425,  -214,   172,   173,
399     174,   469,   172,   173,   174,   172,   173,   174,   200,   186,
400     187,   387,   567,   201,   443,   520,   202,   203,   204,   205,
401     370,   444,   277,   437,  -253,  -253,  -253,  -253,   454,   489,
402     120,  -253,   455,  -253,   351,   462,  -253,   195,   196,   197,
403     198,   199,   200,  -253,  -253,   498,     0,   201,     0,     0,
404     202,   203,   204,   205,     0,     0,  -253,     0,  -253,  -253,
405    -253,     0,  -253,  -253,  -253,  -253,  -253,  -253,  -253,  -253,
406    -253,  -253,  -253,  -253,  -253,  -253,  -253,     0,     0,     0,
407       0,  -253,   -13,    85,  -253,  -253,  -253,  -253,  -253,     0,
408    -253,     0,    83,  -253,    18,     0,    19,    20,    21,    22,
409      23,     0,     0,    24,    25,    26,    27,    28,     0,    29,
410      30,    31,    32,    33,    34,    86,   106,    87,    88,    89,
411      35,    36,    90,    91,    92,    93,    94,    95,     0,     0,
412       0,    96,    97,    98,    99,    37,     0,   100,    38,    39,
413      40,    41,    42,     0,     0,    43,    44,    45,    46,    47,
414      48,    49,     1,     2,     3,     4,     5,     6,     7,     0,
415       0,    50,     0,     0,     0,     0,     0,     0,     0,     0,
416       0,     0,     0,     0,     0,     0,     0,    51,    52,     0,
417      53,     0,    54,    55,    -3,    85,     0,     0,     0,    56,
418     101,    57,    58,     0,    83,     0,    18,     0,    19,    20,
419      21,    22,    23,     0,     0,    24,    25,    26,    27,    28,
420       0,    29,    30,    31,    32,    33,    34,    86,   106,    87,
421      88,    89,    35,    36,    90,    91,    92,    93,    94,    95,
422       0,     0,     0,    96,    97,    98,    99,    37,     0,   100,
423      38,    39,    40,    41,    42,     0,     0,    43,    44,    45,
424      46,    47,    48,    49,     0,     0,     0,     0,     0,     0,
425       0,     0,     0,    50,     0,     0,     0,     0,     0,     0,
426       0,     0,     0,     0,     0,     0,     0,     0,     0,    51,
427      52,     0,    53,     0,    54,    55,    85,     0,     0,     0,
428       0,    56,   101,    57,    58,    83,   415,    18,     0,    19,
429      20,    21,    22,    23,     0,     0,    24,    25,    26,    27,
430      28,     0,    29,    30,    31,    32,    33,    34,    86,   106,
431      87,    88,    89,    35,    36,    90,    91,    92,    93,    94,
432      95,     0,     0,     0,    96,    97,    98,    99,    37,     0,
433     100,    38,    39,    40,    41,    42,     0,     0,    43,    44,
434      45,    46,    47,    48,    49,     0,     0,     0,     0,     0,
435       0,     0,     0,     0,    50,     0,     0,     0,     0,     0,
436       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
437      51,    52,     0,    53,     0,    54,    55,    85,     0,     0,
438       0,     0,    56,   101,    57,    58,    83,   536,    18,     0,
439      19,    20,    21,    22,    23,     0,     0,    24,    25,    26,
440      27,    28,     0,    29,    30,    31,    32,    33,    34,    86,
441     106,    87,    88,    89,    35,    36,    90,    91,    92,    93,
442      94,    95,     0,     0,     0,    96,    97,    98,    99,    37,
443       0,   100,    38,    39,    40,    41,    42,     0,     0,    43,
444      44,    45,    46,    47,    48,    49,     0,     0,     0,     0,
445       0,     0,     0,     0,     0,    50,     0,     0,     0,     0,
446       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
447       0,    51,    52,     0,    53,     0,    54,    55,    85,     0,
448       0,     0,     0,    56,   101,    57,    58,    83,   537,    18,
449       0,    19,    20,    21,    22,    23,     0,     0,    24,    25,
450      26,    27,    28,     0,    29,    30,    31,    32,    33,    34,
451      86,   106,    87,    88,    89,    35,    36,    90,    91,    92,
452      93,    94,    95,     0,     0,     0,    96,    97,    98,    99,
453      37,     0,   100,    38,    39,    40,    41,    42,     0,     0,
454      43,    44,    45,    46,    47,    48,    49,     0,     0,     0,
455       0,     0,     0,     0,     0,     0,    50,     0,     0,     0,
456       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
457       0,     0,    51,    52,     0,    53,     0,    54,    55,    85,
458       0,     0,     0,     0,    56,   101,    57,    58,    83,   539,
459      18,     0,    19,    20,    21,    22,    23,     0,     0,    24,
460      25,    26,    27,    28,     0,    29,    30,    31,    32,    33,
461      34,    86,   106,    87,    88,    89,    35,    36,    90,    91,
462      92,    93,    94,    95,     0,     0,     0,    96,    97,    98,
463      99,    37,     0,   100,    38,    39,    40,    41,    42,     0,
464       0,    43,    44,    45,    46,    47,    48,    49,     0,     0,
465       0,     0,     0,     0,     0,     0,     0,    50,     0,     0,
466       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
467       0,     0,     0,    51,    52,     0,    53,     0,    54,    55,
468      85,     0,     0,     0,     0,    56,   101,    57,    58,    83,
469     553,    18,     0,    19,    20,    21,    22,    23,     0,     0,
470      24,    25,    26,    27,    28,     0,    29,    30,    31,    32,
471      33,    34,    86,   106,    87,    88,    89,    35,    36,    90,
472      91,    92,    93,    94,    95,     0,     0,     0,    96,    97,
473      98,    99,    37,     0,   100,    38,    39,    40,    41,    42,
474       0,     0,    43,    44,    45,    46,    47,    48,    49,     0,
475       0,     0,     0,     0,     0,     0,     0,     0,    50,     0,
476       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
477       0,     0,     0,     0,    51,    52,     0,    53,     0,    54,
478      55,    85,     0,     0,     0,     0,    56,   101,    57,    58,
479      83,     0,    18,     0,    19,    20,    21,    22,    23,     0,
480       0,    24,    25,    26,    27,    28,     0,    29,    30,    31,
481      32,    33,    34,    86,   106,    87,    88,    89,    35,    36,
482      90,    91,    92,    93,    94,    95,     0,     0,     0,    96,
483      97,    98,    99,    37,     0,   100,    38,    39,    40,    41,
484      42,     0,     0,    43,    44,    45,    46,    47,    48,    49,
485       0,     0,   568,     0,     0,     0,     0,     0,     0,    50,
486       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
487       0,     0,     0,     0,     0,    51,    52,     0,    53,     0,
488      54,    55,    85,     0,     0,     0,     0,    56,   101,    57,
489      58,    83,     0,    18,     0,    19,    20,    21,    22,    23,
490       0,     0,    24,    25,    26,    27,    28,     0,    29,    30,
491      31,    32,    33,    34,    86,   106,    87,    88,    89,    35,
492      36,    90,    91,    92,    93,    94,    95,     0,     0,     0,
493      96,    97,    98,    99,    37,     0,   100,    38,    39,    40,
494      41,    42,     0,     0,    43,    44,    45,    46,    47,    48,
495      49,     0,     0,     0,     0,     0,     0,     0,     0,     0,
496      50,     0,     0,     0,     0,     0,     0,     0,     0,     0,
497       0,     0,     0,     0,     0,     0,    51,    52,     0,    53,
498       0,    54,    55,    85,     0,     0,     0,     0,    56,   101,
499      57,    58,    83,     0,    18,     0,    19,    20,    21,    22,
500      23,     0,     0,    24,    25,    26,    27,    28,     0,    29,
501      30,    31,    32,    33,    34,    86,     0,    87,    88,    89,
502      35,    36,    90,    91,    92,    93,    94,    95,     0,     0,
503       0,    96,    97,    98,    99,    37,     0,   100,    38,    39,
504      40,    41,    42,     0,     0,    43,    44,    45,    46,    47,
505      48,    49,     0,     0,     0,     0,     0,     0,     0,     0,
506       0,    50,     0,     0,     0,     0,     0,     0,     0,     0,
507       0,     0,     0,     0,     0,     0,     0,    51,    52,     0,
508      53,     0,    54,    55,    85,     0,     0,     0,     0,    56,
509     101,    57,    58,     0,     0,    18,     0,    19,    20,    21,
510      22,    23,     0,     0,    24,    25,    26,    27,    28,     0,
511      29,    30,    31,    32,    33,    34,     0,     0,     0,     0,
512       0,    35,    36,     0,     0,     0,     0,     0,   186,   187,
513       0,     0,     0,     0,     0,     0,    37,     0,     0,    38,
514      39,    40,    41,    42,     0,     0,    43,    44,    45,    46,
515      47,    48,    49,   192,   193,   194,   195,   196,   197,   198,
516     199,   200,    50,     0,     0,     0,   201,     0,     0,   202,
517     203,   204,   205,     0,     0,     0,     0,     0,    51,    52,
518       0,    53,     0,    54,    55,    85,     0,     0,     0,     0,
519      56,   -77,    57,    58,     0,     0,    18,     0,    19,    20,
520      21,    22,    23,     0,     0,    24,    25,    26,    27,    28,
521       0,    29,    30,    31,    32,    33,    34,     0,     0,     0,
522       0,     0,    35,    36,     0,     0,     0,     0,   186,   187,
523       0,     0,     0,     0,     0,     0,     0,    37,     0,     0,
524      38,    39,    40,    41,    42,     0,     0,    43,    44,    45,
525      46,    47,    48,    49,   193,   194,   195,   196,   197,   198,
526     199,   200,     0,    50,     0,     0,   201,     0,     0,   202,
527     203,   204,   205,     0,     0,     0,     0,     0,     0,    51,
528      52,     0,    53,     0,    54,    55,     0,     0,     0,     0,
529     -77,    56,     0,    57,    58,    83,     0,    18,     0,    19,
530      20,    21,    22,    23,     0,     0,   141,    25,    26,    27,
531      28,   119,    29,    30,    31,    32,    33,    34,     0,     0,
532       0,     0,     0,    35,    36,     0,     0,     0,   186,   187,
533       0,     0,     0,     0,     0,     0,     0,     0,    37,     0,
534       0,    38,    39,    40,    41,    42,     0,     0,    43,    44,
535      45,    46,    47,    48,    49,   194,   195,   196,   197,   198,
536     199,   200,     0,     0,    50,     0,   201,     0,     0,   202,
537     203,   204,   205,     0,     0,     0,     0,     0,     0,     0,
538      51,    52,     0,    53,     0,    54,    55,     0,     0,     0,
539       0,     0,    56,     0,    57,    58,    83,     0,    18,     0,
540      19,    20,    21,    22,    23,     0,     0,    24,    25,    26,
541      27,    28,     0,    29,    30,    31,    32,    33,    34,     0,
542       0,     0,     0,     0,    35,    36,   236,   237,   238,   239,
543       0,     0,     0,   240,     0,   241,     0,     0,     0,    37,
544       0,     0,    38,    39,    40,    41,    42,     0,     0,    43,
545      44,    45,    46,    47,    48,    49,     0,     0,     0,     0,
546     172,   173,   174,     0,     0,    50,     0,     0,     0,     0,
547       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
548       0,    51,    52,     0,    53,     0,    54,    55,     0,     0,
549       0,     0,     0,    56,     0,    57,    58,    18,   114,    19,
550      20,    21,    22,    23,     0,     0,    24,    25,    26,    27,
551      28,     0,    29,    30,    31,    32,    33,    34,     0,     0,
552       0,     0,     0,    35,    36,     0,     0,     0,     0,     0,
553       0,     0,     0,     0,     0,     0,     0,     0,    37,     0,
554       0,    38,    39,    40,    41,    42,     0,     0,    43,    44,
555      45,    46,    47,    48,    49,     0,     0,     0,     0,     0,
556       0,     0,     0,     0,    50,     0,     0,     0,     0,     0,
557       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
558      51,    52,     0,    53,     0,    54,    55,     0,     0,     0,
559       0,     0,    56,     0,    57,    58,    18,     0,    19,    20,
560      21,    22,    23,     0,     0,    24,    25,    26,    27,    28,
561       0,    29,    30,    31,    32,    33,    34,     0,     0,     0,
562       0,     0,    35,    36,     0,     0,     0,     0,     0,     0,
563       0,     0,     0,     0,     0,     0,     0,    37,     0,     0,
564      38,    39,    40,    41,    42,     0,     0,    43,    44,    45,
565      46,    47,    48,    49,     0,     0,     0,     0,     0,     0,
566       0,     0,     0,    50,     0,     0,     0,     0,     0,     0,
567       0,     0,     0,     0,     0,     0,     0,     0,     0,    51,
568      52,     0,    53,     0,    54,    55,     0,     0,     0,     0,
569       0,    56,   149,    57,    58,    18,     0,    19,    20,    21,
570      22,    23,     0,     0,    24,    25,    26,    27,    28,     0,
571      29,    30,    31,    32,    33,    34,     0,     0,     0,     0,
572       0,    35,    36,     0,     0,     0,     0,     0,     0,     0,
573       0,     0,     0,     0,     0,     0,    37,     0,     0,    38,
574      39,    40,    41,    42,     0,     0,    43,    44,    45,    46,
575      47,    48,    49,     0,     0,     0,     0,     0,     0,     0,
576       0,     0,    50,     0,     0,     0,     0,     0,     0,     0,
577       0,     0,     0,     0,     0,     0,     0,     0,    51,    52,
578       0,    53,     0,    54,    55,     0,     0,     0,     0,   168,
579      56,     0,    57,    58,    18,     0,    19,    20,    21,    22,
580      23,     0,     0,    24,    25,    26,    27,    28,     0,    29,
581      30,    31,    32,    33,    34,     0,     0,     0,     0,     0,
582      35,    36,     0,     0,     0,     0,     0,     0,     0,     0,
583       0,     0,     0,     0,     0,    37,     0,     0,    38,    39,
584      40,    41,    42,     0,     0,    43,    44,    45,    46,    47,
585      48,    49,     0,     0,     0,     0,     0,     0,     0,     0,
586       0,    50,     0,     0,     0,     0,     0,     0,     0,     0,
587       0,     0,     0,     0,     0,     0,     0,    51,    52,     0,
588      53,     0,    54,    55,     0,     0,     0,     0,   266,    56,
589       0,    57,    58,    18,     0,    19,    20,    21,    22,    23,
590       0,     0,    24,    25,    26,    27,    28,     0,    29,    30,
591      31,    32,    33,    34,     0,     0,     0,     0,     0,    35,
592      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
593       0,     0,     0,     0,    37,     0,     0,    38,    39,    40,
594      41,    42,     0,     0,    43,    44,    45,    46,    47,    48,
595      49,     0,     0,     0,     0,     0,     0,     0,     0,     0,
596      50,     0,     0,     0,     0,     0,     0,     0,     0,     0,
597       0,     0,     0,     0,     0,     0,    51,    52,     0,    53,
598       0,    54,    55,     0,     0,     0,     0,   281,    56,     0,
599      57,    58,    18,     0,    19,    20,    21,    22,    23,     0,
600       0,    24,    25,    26,    27,    28,     0,    29,    30,    31,
601      32,    33,    34,     0,     0,     0,     0,     0,    35,    36,
602       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
603       0,     0,     0,    37,     0,     0,    38,    39,    40,    41,
604      42,     0,     0,    43,    44,    45,    46,    47,    48,    49,
605       0,     0,     0,     0,     0,     0,     0,     0,     0,    50,
606       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
607       0,     0,     0,     0,     0,    51,    52,     0,    53,     0,
608      54,    55,     0,     0,     0,     0,   293,    56,     0,    57,
609      58,    18,     0,    19,    20,    21,    22,    23,     0,     0,
610      24,    25,    26,    27,    28,     0,    29,    30,    31,    32,
611      33,    34,     0,     0,     0,     0,     0,    35,    36,     0,
612       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
613       0,     0,    37,     0,     0,    38,    39,    40,    41,    42,
614       0,     0,    43,    44,    45,    46,    47,    48,    49,     0,
615       0,     0,     0,     0,     0,     0,     0,     0,    50,     0,
616       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
617       0,     0,     0,     0,    51,    52,     0,    53,     0,    54,
618      55,     0,     0,     0,     0,   326,    56,     0,    57,    58,
619      18,     0,    19,    20,    21,    22,    23,     0,     0,    24,
620      25,    26,    27,    28,     0,    29,    30,    31,    32,    33,
621      34,     0,     0,     0,     0,     0,    35,    36,     0,     0,
622       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
623       0,    37,     0,     0,    38,    39,    40,    41,    42,     0,
624       0,    43,    44,    45,    46,    47,    48,    49,     0,     0,
625       0,     0,     0,     0,     0,     0,     0,    50,     0,     0,
626       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
627       0,     0,     0,    51,    52,     0,    53,     0,    54,    55,
628       0,     0,     0,     0,   385,    56,     0,    57,    58,    18,
629       0,    19,    20,    21,    22,    23,     0,     0,    24,    25,
630      26,    27,    28,     0,    29,    30,    31,    32,    33,    34,
631       0,     0,     0,     0,     0,    35,    36,     0,     0,     0,
632       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
633      37,     0,     0,    38,    39,    40,    41,    42,     0,     0,
634      43,    44,    45,    46,    47,    48,    49,     0,     0,     0,
635       0,     0,     0,     0,     0,     0,    50,     0,     0,     0,
636       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
637       0,     0,    51,    52,     0,    53,     0,    54,    55,     0,
638       0,     0,     0,   402,    56,     0,    57,    58,    18,     0,
639      19,    20,    21,    22,    23,     0,     0,    24,    25,    26,
640      27,    28,     0,    29,    30,    31,    32,    33,    34,     0,
641       0,     0,     0,     0,    35,    36,     0,     0,     0,     0,
642       0,     0,     0,     0,     0,     0,     0,     0,     0,    37,
643       0,     0,    38,    39,    40,    41,    42,     0,     0,    43,
644      44,    45,    46,    47,    48,    49,     0,     0,     0,     0,
645       0,     0,     0,     0,     0,    50,     0,     0,     0,     0,
646       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
647       0,    51,    52,     0,    53,     0,    54,    55,     0,     0,
648       0,     0,     0,    56,     0,    57,    58,    18,     0,    19,
649      20,    21,    22,    23,     0,     0,    24,    25,    26,    27,
650      28,     0,    29,    30,    31,    32,    33,    34,     0,     0,
651       0,     0,     0,    35,    36,     0,     0,     0,     0,     0,
652       0,     0,     0,     0,     0,     0,     0,     0,    37,     0,
653       0,    38,    39,    40,    41,    42,     0,     0,    43,    44,
654      45,    46,    47,    48,    49,     0,     0,     0,     0,     0,
655       0,     0,     0,     0,    50,     0,     0,     0,     0,   185,
656       0,     0,     0,     0,     0,     0,   186,   187,     0,     0,
657      51,    52,     0,    53,     0,    54,    55,     0,     0,     0,
658       0,     0,   275,     0,    57,    58,   188,   189,   395,   190,
659     191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
660       0,     0,     0,     0,   201,   185,     0,   202,   203,   204,
661     205,     0,   186,   187,     0,     0,     0,     0,     0,     0,
662       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
663       0,     0,   188,   189,     0,   190,   191,   192,   193,   194,
664     195,   196,   197,   198,   199,   200,     0,     0,     0,     0,
665     201,   185,     0,   202,   203,   204,   205,     0,   186,   187,
666       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
667       0,     0,     0,     0,     0,     0,     0,     0,     0,   189,
668       0,   190,   191,   192,   193,   194,   195,   196,   197,   198,
669     199,   200,     0,     0,     0,     0,   201,  -290,     0,   202,
670     203,   204,   205,     0,   186,   187,     0,     0,     0,     0,
671       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
672       0,     0,     0,     0,     0,     0,     0,   190,   191,   192,
673     193,   194,   195,   196,   197,   198,   199,   200,     0,     0,
674       0,     0,   201,     0,     0,   202,   203,   204,   205
675};
676
677static const yytype_int16 yycheck[] =
678{
679      17,   125,    10,    48,     9,    42,    48,   137,   138,   345,
680      18,    10,    12,    50,    24,   355,    10,    12,   474,   355,
681     262,   505,   358,   359,    10,    21,    12,    21,     0,   153,
682      26,    12,    26,    10,    21,    22,    23,    45,    25,    26,
683      73,    80,    10,    10,    21,    12,    16,    17,    56,    26,
684      16,    17,    16,    17,    18,    42,    43,    91,    92,    21,
685      22,    23,    12,    25,    26,    10,    10,    12,    12,    89,
686      90,    58,   111,    80,   107,    70,   107,    10,    83,    12,
687      42,    43,   566,    46,    47,    10,    48,    12,   125,    70,
688      91,    16,    17,    18,   107,    57,    58,    22,   108,    16,
689      17,   557,   438,    70,    68,    10,   106,    12,   145,   108,
690     155,    89,    10,   155,    12,   109,   153,    76,    77,    78,
691     128,   107,    19,    20,    13,    70,   256,   107,   136,   137,
692     138,    13,   109,   110,    96,    32,   107,    70,    63,   109,
693      37,   477,   478,   109,    41,   109,    13,    44,   156,    13,
694      47,   138,    49,    21,    51,    52,    53,    54,    55,   102,
695     103,   104,   105,    10,   172,   173,   174,    10,   176,   177,
696     178,    13,   216,   217,   510,    13,   138,   419,    35,    36,
697     225,    98,   107,   225,   109,   110,   107,    76,    77,    78,
698     107,    13,   109,   155,    76,    77,    78,   214,   206,   207,
699     208,   209,   210,   211,   212,   213,    13,   107,   544,    76,
700      77,    78,    76,    77,    78,   220,   221,   222,   223,   224,
701     257,   226,   227,   563,   229,   230,   107,   469,   236,   237,
702     238,   239,   240,   241,    76,    77,    78,   107,    76,    77,
703      78,    99,    68,   205,   102,   103,   104,   105,   256,    88,
704      89,   375,    13,   107,    76,    77,    78,    10,   155,    12,
705     108,   107,   270,   225,    10,    48,    12,   275,   108,    76,
706      77,    78,    98,    76,    77,    78,   406,   285,   175,   107,
707      73,   107,   106,   109,   181,    24,    70,   184,   185,   186,
708     187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
709     197,   198,   199,   200,   201,   108,   314,   315,   106,    11,
710      11,   356,    70,   321,   356,    76,    77,    78,    12,    21,
711      22,    23,    98,    25,    26,    76,    77,    78,    21,    76,
712      77,    78,    21,   107,   342,   343,   344,   345,   375,    41,
713      42,    43,    44,    76,    77,    78,    26,   355,   472,   508,
714     358,   359,   357,    80,    24,    57,    58,   108,    74,    11,
715     322,   108,    61,    62,   523,   524,   106,   476,    24,    12,
716     479,   376,    78,   106,   483,   484,   535,   107,    76,    77,
717      78,   110,   110,   391,   110,   347,   545,   546,   110,   110,
718      61,    19,   501,   502,   356,    94,    21,    99,   406,   558,
719      99,   109,   511,   102,   103,   104,   105,    76,    77,    78,
720     108,   416,   107,    81,   106,   420,   107,   526,    76,    77,
721      78,   530,   531,    94,    61,    62,   431,    11,    99,   131,
722     438,   102,   103,   104,   105,   472,   138,   106,   446,   548,
723      76,    77,    78,    42,    43,    44,    45,    11,   106,    11,
724      49,    11,    51,   562,    91,    92,    93,    94,    11,   106,
725      21,   570,    99,   107,   106,   102,   103,   104,   105,   477,
726     478,   488,   108,   490,   106,   106,     0,    76,    77,    78,
727     106,   108,   499,    76,    77,    78,    10,   106,    12,    13,
728     495,    61,    62,   106,    76,    77,    78,    74,   395,    10,
729      10,   509,   510,    11,   106,   108,    10,   106,   525,    76,
730      77,    78,   108,   107,   106,   108,   106,    72,    42,    43,
731      44,    45,   108,    93,    94,    49,   108,    51,   108,    99,
732      54,   233,   102,   103,   104,   105,   544,    61,    62,   106,
733     106,   106,   559,    71,   441,   108,    76,    77,    78,   107,
734      74,    20,    76,    77,    78,   106,    80,    81,    82,    83,
735      84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
736      94,   106,     0,   106,    13,    99,   106,   106,   102,   103,
737     104,   105,   106,   509,   108,    13,   343,   111,    76,    77,
738      78,   418,    76,    77,    78,    76,    77,    78,    94,    61,
739      62,   277,   563,    99,   370,   495,   102,   103,   104,   105,
740     248,   371,   155,   356,    42,    43,    44,    45,   106,   451,
741     322,    49,   106,    51,   225,   106,    54,    89,    90,    91,
742      92,    93,    94,    61,    62,   470,    -1,    99,    -1,    -1,
743     102,   103,   104,   105,    -1,    -1,    74,    -1,    76,    77,
744      78,    -1,    80,    81,    82,    83,    84,    85,    86,    87,
745      88,    89,    90,    91,    92,    93,    94,    -1,    -1,    -1,
746      -1,    99,     0,     1,   102,   103,   104,   105,   106,    -1,
747     108,    -1,    10,   111,    12,    -1,    14,    15,    16,    17,
748      18,    -1,    -1,    21,    22,    23,    24,    25,    -1,    27,
749      28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
750      38,    39,    40,    41,    42,    43,    44,    45,    -1,    -1,
751      -1,    49,    50,    51,    52,    53,    -1,    55,    56,    57,
752      58,    59,    60,    -1,    -1,    63,    64,    65,    66,    67,
753      68,    69,     3,     4,     5,     6,     7,     8,     9,    -1,
754      -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
755      -1,    -1,    -1,    -1,    -1,    -1,    -1,    95,    96,    -1,
756      98,    -1,   100,   101,     0,     1,    -1,    -1,    -1,   107,
757     108,   109,   110,    -1,    10,    -1,    12,    -1,    14,    15,
758      16,    17,    18,    -1,    -1,    21,    22,    23,    24,    25,
759      -1,    27,    28,    29,    30,    31,    32,    33,    34,    35,
760      36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
761      -1,    -1,    -1,    49,    50,    51,    52,    53,    -1,    55,
762      56,    57,    58,    59,    60,    -1,    -1,    63,    64,    65,
763      66,    67,    68,    69,    -1,    -1,    -1,    -1,    -1,    -1,
764      -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,
765      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    95,
766      96,    -1,    98,    -1,   100,   101,     1,    -1,    -1,    -1,
767      -1,   107,   108,   109,   110,    10,    11,    12,    -1,    14,
768      15,    16,    17,    18,    -1,    -1,    21,    22,    23,    24,
769      25,    -1,    27,    28,    29,    30,    31,    32,    33,    34,
770      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
771      45,    -1,    -1,    -1,    49,    50,    51,    52,    53,    -1,
772      55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
773      65,    66,    67,    68,    69,    -1,    -1,    -1,    -1,    -1,
774      -1,    -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,
775      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
776      95,    96,    -1,    98,    -1,   100,   101,     1,    -1,    -1,
777      -1,    -1,   107,   108,   109,   110,    10,    11,    12,    -1,
778      14,    15,    16,    17,    18,    -1,    -1,    21,    22,    23,
779      24,    25,    -1,    27,    28,    29,    30,    31,    32,    33,
780      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
781      44,    45,    -1,    -1,    -1,    49,    50,    51,    52,    53,
782      -1,    55,    56,    57,    58,    59,    60,    -1,    -1,    63,
783      64,    65,    66,    67,    68,    69,    -1,    -1,    -1,    -1,
784      -1,    -1,    -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,
785      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
786      -1,    95,    96,    -1,    98,    -1,   100,   101,     1,    -1,
787      -1,    -1,    -1,   107,   108,   109,   110,    10,    11,    12,
788      -1,    14,    15,    16,    17,    18,    -1,    -1,    21,    22,
789      23,    24,    25,    -1,    27,    28,    29,    30,    31,    32,
790      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
791      43,    44,    45,    -1,    -1,    -1,    49,    50,    51,    52,
792      53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
793      63,    64,    65,    66,    67,    68,    69,    -1,    -1,    -1,
794      -1,    -1,    -1,    -1,    -1,    -1,    79,    -1,    -1,    -1,
795      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
796      -1,    -1,    95,    96,    -1,    98,    -1,   100,   101,     1,
797      -1,    -1,    -1,    -1,   107,   108,   109,   110,    10,    11,
798      12,    -1,    14,    15,    16,    17,    18,    -1,    -1,    21,
799      22,    23,    24,    25,    -1,    27,    28,    29,    30,    31,
800      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
801      42,    43,    44,    45,    -1,    -1,    -1,    49,    50,    51,
802      52,    53,    -1,    55,    56,    57,    58,    59,    60,    -1,
803      -1,    63,    64,    65,    66,    67,    68,    69,    -1,    -1,
804      -1,    -1,    -1,    -1,    -1,    -1,    -1,    79,    -1,    -1,
805      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
806      -1,    -1,    -1,    95,    96,    -1,    98,    -1,   100,   101,
807       1,    -1,    -1,    -1,    -1,   107,   108,   109,   110,    10,
808      11,    12,    -1,    14,    15,    16,    17,    18,    -1,    -1,
809      21,    22,    23,    24,    25,    -1,    27,    28,    29,    30,
810      31,    32,    33,    34,    35,    36,    37,    38,    39,    40,
811      41,    42,    43,    44,    45,    -1,    -1,    -1,    49,    50,
812      51,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
813      -1,    -1,    63,    64,    65,    66,    67,    68,    69,    -1,
814      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    79,    -1,
815      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
816      -1,    -1,    -1,    -1,    95,    96,    -1,    98,    -1,   100,
817     101,     1,    -1,    -1,    -1,    -1,   107,   108,   109,   110,
818      10,    -1,    12,    -1,    14,    15,    16,    17,    18,    -1,
819      -1,    21,    22,    23,    24,    25,    -1,    27,    28,    29,
820      30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
821      40,    41,    42,    43,    44,    45,    -1,    -1,    -1,    49,
822      50,    51,    52,    53,    -1,    55,    56,    57,    58,    59,
823      60,    -1,    -1,    63,    64,    65,    66,    67,    68,    69,
824      -1,    -1,    72,    -1,    -1,    -1,    -1,    -1,    -1,    79,
825      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
826      -1,    -1,    -1,    -1,    -1,    95,    96,    -1,    98,    -1,
827     100,   101,     1,    -1,    -1,    -1,    -1,   107,   108,   109,
828     110,    10,    -1,    12,    -1,    14,    15,    16,    17,    18,
829      -1,    -1,    21,    22,    23,    24,    25,    -1,    27,    28,
830      29,    30,    31,    32,    33,    34,    35,    36,    37,    38,
831      39,    40,    41,    42,    43,    44,    45,    -1,    -1,    -1,
832      49,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
833      59,    60,    -1,    -1,    63,    64,    65,    66,    67,    68,
834      69,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
835      79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
836      -1,    -1,    -1,    -1,    -1,    -1,    95,    96,    -1,    98,
837      -1,   100,   101,     1,    -1,    -1,    -1,    -1,   107,   108,
838     109,   110,    10,    -1,    12,    -1,    14,    15,    16,    17,
839      18,    -1,    -1,    21,    22,    23,    24,    25,    -1,    27,
840      28,    29,    30,    31,    32,    33,    -1,    35,    36,    37,
841      38,    39,    40,    41,    42,    43,    44,    45,    -1,    -1,
842      -1,    49,    50,    51,    52,    53,    -1,    55,    56,    57,
843      58,    59,    60,    -1,    -1,    63,    64,    65,    66,    67,
844      68,    69,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
845      -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
846      -1,    -1,    -1,    -1,    -1,    -1,    -1,    95,    96,    -1,
847      98,    -1,   100,   101,     1,    -1,    -1,    -1,    -1,   107,
848     108,   109,   110,    -1,    -1,    12,    -1,    14,    15,    16,
849      17,    18,    -1,    -1,    21,    22,    23,    24,    25,    -1,
850      27,    28,    29,    30,    31,    32,    -1,    -1,    -1,    -1,
851      -1,    38,    39,    -1,    -1,    -1,    -1,    -1,    61,    62,
852      -1,    -1,    -1,    -1,    -1,    -1,    53,    -1,    -1,    56,
853      57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
854      67,    68,    69,    86,    87,    88,    89,    90,    91,    92,
855      93,    94,    79,    -1,    -1,    -1,    99,    -1,    -1,   102,
856     103,   104,   105,    -1,    -1,    -1,    -1,    -1,    95,    96,
857      -1,    98,    -1,   100,   101,     1,    -1,    -1,    -1,    -1,
858     107,   108,   109,   110,    -1,    -1,    12,    -1,    14,    15,
859      16,    17,    18,    -1,    -1,    21,    22,    23,    24,    25,
860      -1,    27,    28,    29,    30,    31,    32,    -1,    -1,    -1,
861      -1,    -1,    38,    39,    -1,    -1,    -1,    -1,    61,    62,
862      -1,    -1,    -1,    -1,    -1,    -1,    -1,    53,    -1,    -1,
863      56,    57,    58,    59,    60,    -1,    -1,    63,    64,    65,
864      66,    67,    68,    69,    87,    88,    89,    90,    91,    92,
865      93,    94,    -1,    79,    -1,    -1,    99,    -1,    -1,   102,
866     103,   104,   105,    -1,    -1,    -1,    -1,    -1,    -1,    95,
867      96,    -1,    98,    -1,   100,   101,    -1,    -1,    -1,    -1,
868     106,   107,    -1,   109,   110,    10,    -1,    12,    -1,    14,
869      15,    16,    17,    18,    -1,    -1,    21,    22,    23,    24,
870      25,    26,    27,    28,    29,    30,    31,    32,    -1,    -1,
871      -1,    -1,    -1,    38,    39,    -1,    -1,    -1,    61,    62,
872      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    53,    -1,
873      -1,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
874      65,    66,    67,    68,    69,    88,    89,    90,    91,    92,
875      93,    94,    -1,    -1,    79,    -1,    99,    -1,    -1,   102,
876     103,   104,   105,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
877      95,    96,    -1,    98,    -1,   100,   101,    -1,    -1,    -1,
878      -1,    -1,   107,    -1,   109,   110,    10,    -1,    12,    -1,
879      14,    15,    16,    17,    18,    -1,    -1,    21,    22,    23,
880      24,    25,    -1,    27,    28,    29,    30,    31,    32,    -1,
881      -1,    -1,    -1,    -1,    38,    39,    42,    43,    44,    45,
882      -1,    -1,    -1,    49,    -1,    51,    -1,    -1,    -1,    53,
883      -1,    -1,    56,    57,    58,    59,    60,    -1,    -1,    63,
884      64,    65,    66,    67,    68,    69,    -1,    -1,    -1,    -1,
885      76,    77,    78,    -1,    -1,    79,    -1,    -1,    -1,    -1,
886      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
887      -1,    95,    96,    -1,    98,    -1,   100,   101,    -1,    -1,
888      -1,    -1,    -1,   107,    -1,   109,   110,    12,    13,    14,
889      15,    16,    17,    18,    -1,    -1,    21,    22,    23,    24,
890      25,    -1,    27,    28,    29,    30,    31,    32,    -1,    -1,
891      -1,    -1,    -1,    38,    39,    -1,    -1,    -1,    -1,    -1,
892      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    53,    -1,
893      -1,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
894      65,    66,    67,    68,    69,    -1,    -1,    -1,    -1,    -1,
895      -1,    -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,
896      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
897      95,    96,    -1,    98,    -1,   100,   101,    -1,    -1,    -1,
898      -1,    -1,   107,    -1,   109,   110,    12,    -1,    14,    15,
899      16,    17,    18,    -1,    -1,    21,    22,    23,    24,    25,
900      -1,    27,    28,    29,    30,    31,    32,    -1,    -1,    -1,
901      -1,    -1,    38,    39,    -1,    -1,    -1,    -1,    -1,    -1,
902      -1,    -1,    -1,    -1,    -1,    -1,    -1,    53,    -1,    -1,
903      56,    57,    58,    59,    60,    -1,    -1,    63,    64,    65,
904      66,    67,    68,    69,    -1,    -1,    -1,    -1,    -1,    -1,
905      -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,
906      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    95,
907      96,    -1,    98,    -1,   100,   101,    -1,    -1,    -1,    -1,
908      -1,   107,   108,   109,   110,    12,    -1,    14,    15,    16,
909      17,    18,    -1,    -1,    21,    22,    23,    24,    25,    -1,
910      27,    28,    29,    30,    31,    32,    -1,    -1,    -1,    -1,
911      -1,    38,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
912      -1,    -1,    -1,    -1,    -1,    -1,    53,    -1,    -1,    56,
913      57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
914      67,    68,    69,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
915      -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
916      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    95,    96,
917      -1,    98,    -1,   100,   101,    -1,    -1,    -1,    -1,   106,
918     107,    -1,   109,   110,    12,    -1,    14,    15,    16,    17,
919      18,    -1,    -1,    21,    22,    23,    24,    25,    -1,    27,
920      28,    29,    30,    31,    32,    -1,    -1,    -1,    -1,    -1,
921      38,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
922      -1,    -1,    -1,    -1,    -1,    53,    -1,    -1,    56,    57,
923      58,    59,    60,    -1,    -1,    63,    64,    65,    66,    67,
924      68,    69,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
925      -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
926      -1,    -1,    -1,    -1,    -1,    -1,    -1,    95,    96,    -1,
927      98,    -1,   100,   101,    -1,    -1,    -1,    -1,   106,   107,
928      -1,   109,   110,    12,    -1,    14,    15,    16,    17,    18,
929      -1,    -1,    21,    22,    23,    24,    25,    -1,    27,    28,
930      29,    30,    31,    32,    -1,    -1,    -1,    -1,    -1,    38,
931      39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
932      -1,    -1,    -1,    -1,    53,    -1,    -1,    56,    57,    58,
933      59,    60,    -1,    -1,    63,    64,    65,    66,    67,    68,
934      69,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
935      79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
936      -1,    -1,    -1,    -1,    -1,    -1,    95,    96,    -1,    98,
937      -1,   100,   101,    -1,    -1,    -1,    -1,   106,   107,    -1,
938     109,   110,    12,    -1,    14,    15,    16,    17,    18,    -1,
939      -1,    21,    22,    23,    24,    25,    -1,    27,    28,    29,
940      30,    31,    32,    -1,    -1,    -1,    -1,    -1,    38,    39,
941      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
942      -1,    -1,    -1,    53,    -1,    -1,    56,    57,    58,    59,
943      60,    -1,    -1,    63,    64,    65,    66,    67,    68,    69,
944      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    79,
945      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
946      -1,    -1,    -1,    -1,    -1,    95,    96,    -1,    98,    -1,
947     100,   101,    -1,    -1,    -1,    -1,   106,   107,    -1,   109,
948     110,    12,    -1,    14,    15,    16,    17,    18,    -1,    -1,
949      21,    22,    23,    24,    25,    -1,    27,    28,    29,    30,
950      31,    32,    -1,    -1,    -1,    -1,    -1,    38,    39,    -1,
951      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
952      -1,    -1,    53,    -1,    -1,    56,    57,    58,    59,    60,
953      -1,    -1,    63,    64,    65,    66,    67,    68,    69,    -1,
954      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    79,    -1,
955      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
956      -1,    -1,    -1,    -1,    95,    96,    -1,    98,    -1,   100,
957     101,    -1,    -1,    -1,    -1,   106,   107,    -1,   109,   110,
958      12,    -1,    14,    15,    16,    17,    18,    -1,    -1,    21,
959      22,    23,    24,    25,    -1,    27,    28,    29,    30,    31,
960      32,    -1,    -1,    -1,    -1,    -1,    38,    39,    -1,    -1,
961      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
962      -1,    53,    -1,    -1,    56,    57,    58,    59,    60,    -1,
963      -1,    63,    64,    65,    66,    67,    68,    69,    -1,    -1,
964      -1,    -1,    -1,    -1,    -1,    -1,    -1,    79,    -1,    -1,
965      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
966      -1,    -1,    -1,    95,    96,    -1,    98,    -1,   100,   101,
967      -1,    -1,    -1,    -1,   106,   107,    -1,   109,   110,    12,
968      -1,    14,    15,    16,    17,    18,    -1,    -1,    21,    22,
969      23,    24,    25,    -1,    27,    28,    29,    30,    31,    32,
970      -1,    -1,    -1,    -1,    -1,    38,    39,    -1,    -1,    -1,
971      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
972      53,    -1,    -1,    56,    57,    58,    59,    60,    -1,    -1,
973      63,    64,    65,    66,    67,    68,    69,    -1,    -1,    -1,
974      -1,    -1,    -1,    -1,    -1,    -1,    79,    -1,    -1,    -1,
975      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
976      -1,    -1,    95,    96,    -1,    98,    -1,   100,   101,    -1,
977      -1,    -1,    -1,   106,   107,    -1,   109,   110,    12,    -1,
978      14,    15,    16,    17,    18,    -1,    -1,    21,    22,    23,
979      24,    25,    -1,    27,    28,    29,    30,    31,    32,    -1,
980      -1,    -1,    -1,    -1,    38,    39,    -1,    -1,    -1,    -1,
981      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    53,
982      -1,    -1,    56,    57,    58,    59,    60,    -1,    -1,    63,
983      64,    65,    66,    67,    68,    69,    -1,    -1,    -1,    -1,
984      -1,    -1,    -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,
985      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
986      -1,    95,    96,    -1,    98,    -1,   100,   101,    -1,    -1,
987      -1,    -1,    -1,   107,    -1,   109,   110,    12,    -1,    14,
988      15,    16,    17,    18,    -1,    -1,    21,    22,    23,    24,
989      25,    -1,    27,    28,    29,    30,    31,    32,    -1,    -1,
990      -1,    -1,    -1,    38,    39,    -1,    -1,    -1,    -1,    -1,
991      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    53,    -1,
992      -1,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
993      65,    66,    67,    68,    69,    -1,    -1,    -1,    -1,    -1,
994      -1,    -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    54,
995      -1,    -1,    -1,    -1,    -1,    -1,    61,    62,    -1,    -1,
996      95,    96,    -1,    98,    -1,   100,   101,    -1,    -1,    -1,
997      -1,    -1,   107,    -1,   109,   110,    81,    82,    83,    84,
998      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
999      -1,    -1,    -1,    -1,    99,    54,    -1,   102,   103,   104,
1000     105,    -1,    61,    62,    -1,    -1,    -1,    -1,    -1,    -1,
1001      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1002      -1,    -1,    81,    82,    -1,    84,    85,    86,    87,    88,
1003      89,    90,    91,    92,    93,    94,    -1,    -1,    -1,    -1,
1004      99,    54,    -1,   102,   103,   104,   105,    -1,    61,    62,
1005      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1006      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    82,
1007      -1,    84,    85,    86,    87,    88,    89,    90,    91,    92,
1008      93,    94,    -1,    -1,    -1,    -1,    99,    54,    -1,   102,
1009     103,   104,   105,    -1,    61,    62,    -1,    -1,    -1,    -1,
1010      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1011      -1,    -1,    -1,    -1,    -1,    -1,    -1,    84,    85,    86,
1012      87,    88,    89,    90,    91,    92,    93,    94,    -1,    -1,
1013      -1,    -1,    99,    -1,    -1,   102,   103,   104,   105
1014};
1015
1016  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1017     symbol of state STATE-NUM.  */
1018static const yytype_uint8 yystos[] =
1019{
1020       0,     3,     4,     5,     6,     7,     8,     9,   113,   114,
1021     115,   116,   117,   118,   119,   120,     0,   123,    12,    14,
1022      15,    16,    17,    18,    21,    22,    23,    24,    25,    27,
1023      28,    29,    30,    31,    32,    38,    39,    53,    56,    57,
1024      58,    59,    60,    63,    64,    65,    66,    67,    68,    69,
1025      79,    95,    96,    98,   100,   101,   107,   109,   110,   173,
1026     174,   175,   178,   179,   180,   181,   182,   183,   184,   185,
1027     186,   187,   189,   192,   198,   199,   200,   201,   202,   203,
1028     204,   205,   206,    10,   121,     1,    33,    35,    36,    37,
1029      40,    41,    42,    43,    44,    45,    49,    50,    51,    52,
1030      55,   108,   121,   130,   140,   173,    34,   128,   129,   130,
1031     126,   167,   168,   126,    13,   173,   187,   187,    21,    26,
1032     121,   199,   207,   207,   207,   207,   207,   188,    12,   107,
1033     187,   151,   151,   151,   187,   107,   107,    73,   107,   121,
1034     187,    21,   174,   191,   199,   207,   207,   121,   187,   108,
1035     173,    21,    26,   153,   187,    98,   107,   190,   199,   200,
1036     201,   187,   174,   187,   187,   187,   187,   187,   106,   173,
1037     207,   207,    76,    77,    78,    80,    10,    12,   107,    91,
1038      92,    91,    89,    90,    89,    54,    61,    62,    81,    82,
1039      84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
1040      94,    99,   102,   103,   104,   105,   107,    10,    12,    10,
1041      12,    10,    12,    10,   123,   152,   153,   153,    21,   150,
1042     107,   107,   107,   107,    68,    98,   107,   197,   199,   107,
1043     107,   121,   108,    48,   142,   108,    42,    43,    44,    45,
1044      49,    51,   129,   130,   128,    16,    17,   109,   158,   159,
1045     161,   162,   163,   164,    13,   191,   107,    73,   173,   106,
1046     121,    24,   154,    70,   155,   106,   106,   173,   192,   192,
1047     207,   174,    11,   108,   191,   107,   187,   190,   199,   200,
1048     201,   106,   173,    70,   156,    12,   106,   173,   173,   173,
1049     187,   173,   173,   106,   173,   187,   187,   187,   187,   187,
1050     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
1051     187,   187,   187,   187,    10,    12,    16,    17,    18,    22,
1052      63,   107,   109,   110,   177,   199,   106,   173,   173,   173,
1053     173,   173,   173,   173,   173,   126,    21,   149,   150,   150,
1054      21,   133,   123,   123,   123,   123,    98,   123,    68,   195,
1055     196,   198,   199,   200,   201,   123,   123,   107,   123,   123,
1056     121,   173,   146,   173,   173,   173,   173,   173,    26,   157,
1057     157,    80,   192,   174,    13,   176,   155,    24,   123,   172,
1058     106,    74,   106,   173,    11,   106,   173,   156,   106,    24,
1059     173,    12,   108,    13,   106,    83,   173,   173,   110,   110,
1060     110,   110,   106,   173,   110,   110,   107,   106,   108,    13,
1061     108,    13,   108,    13,   108,    11,    19,   122,   131,   132,
1062      10,   108,    21,   145,   173,   146,   147,   173,   147,   194,
1063     199,   107,   140,   144,   147,   148,   173,   195,   123,   147,
1064     147,    81,   160,   160,   162,   106,   111,   193,   191,   123,
1065     170,   107,   165,   166,   106,   106,    13,   173,    11,   187,
1066     108,    13,   106,   192,    11,    11,    11,    11,   123,   154,
1067     155,   123,    21,   106,   106,   106,   106,   107,   123,   106,
1068     108,   136,   147,   106,   106,   187,   173,    74,    10,   167,
1069      10,    13,    11,   106,   108,   155,   108,   171,   172,   137,
1070     191,   143,   143,    10,   124,   124,   147,   147,   124,   134,
1071     107,   106,   124,   124,   126,   106,   126,    72,   108,   169,
1072     170,   126,   108,   124,   124,   125,    46,    47,   141,   141,
1073     106,   106,   142,   145,   147,   124,    11,    11,   127,    11,
1074     142,   142,   126,   124,   107,   124,   124,   108,   106,   142,
1075      24,   108,   138,    11,   147,   142,   142,   135,   124,    71,
1076     139,    20,   106,   143,   142,   126,   124,   148,    72,   141,
1077     106,   124
1078};
1079
1080  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
1081static const yytype_uint8 yyr1[] =
1082{
1083       0,   112,   114,   113,   115,   113,   116,   113,   117,   113,
1084     118,   113,   119,   113,   120,   113,   121,   122,   123,   124,
1085     125,   126,   126,   127,   127,   128,   128,   129,   129,   130,
1086     130,   131,   130,   132,   130,   130,   133,   130,   130,   130,
1087     130,   130,   130,   130,   130,   134,   135,   130,   130,   130,
1088     136,   130,   130,   130,   130,   137,   130,   130,   130,   130,
1089     138,   139,   139,   140,   140,   140,   140,   140,   140,   140,
1090     140,   141,   141,   141,   142,   142,   143,   144,   144,   145,
1091     145,   146,   147,   148,   149,   149,   150,   151,   152,   153,
1092     153,   154,   154,   155,   155,   155,   156,   156,   157,   157,
1093     158,   158,   159,   160,   160,   160,   161,   162,   162,   163,
1094     163,   163,   164,   164,   165,   165,   166,   168,   167,   169,
1095     169,   170,   171,   171,   172,   173,   173,   173,   173,   174,
1096     174,   174,   175,   175,   175,   175,   175,   175,   175,   175,
1097     175,   176,   175,   177,   177,   178,   178,   178,   178,   178,
1098     178,   178,   178,   178,   178,   178,   178,   178,   178,   179,
1099     179,   179,   179,   179,   179,   179,   179,   179,   179,   179,
1100     179,   179,   179,   180,   180,   180,   180,   181,   181,   182,
1101     182,   182,   182,   183,   183,   184,   184,   184,   184,   184,
1102     184,   184,   184,   184,   185,   185,   185,   185,   185,   185,
1103     186,   186,   187,   187,   187,   187,   187,   187,   187,   187,
1104     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
1105     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
1106     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
1107     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
1108     187,   188,   187,   187,   187,   187,   189,   189,   189,   190,
1109     190,   190,   190,   190,   191,   191,   192,   192,   193,   193,
1110     194,   195,   195,   195,   196,   196,   197,   197,   198,   199,
1111     200,   201,   202,   202,   203,   204,   204,   205,   205,   206,
1112     206,   207,   207,   207,   207
1113};
1114
1115  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
1116static const yytype_uint8 yyr2[] =
1117{
1118       0,     2,     0,     4,     0,     3,     0,     3,     0,     3,
1119       0,     3,     0,     3,     0,     3,     4,     7,     0,     4,
1120       0,     0,     2,     0,     2,     1,     1,     2,     2,     1,
1121       4,     0,     7,     0,     6,     4,     0,     7,     7,     7,
1122       6,     6,     2,     8,     8,     0,     0,    13,     9,     8,
1123       0,    10,     9,     7,     2,     0,     8,     2,     2,     1,
1124       2,     0,     3,     1,     1,     3,     3,     3,     3,     3,
1125       3,     0,     2,     6,     0,     2,     0,     0,     1,     0,
1126       1,     1,     1,     1,     1,     0,     0,     0,     0,     1,
1127       1,     0,     1,     0,     2,     1,     2,     1,     0,     1,
1128       1,     1,     3,     0,     1,     2,     3,     1,     1,     2,
1129       3,     1,     0,     1,     0,     1,     3,     0,     2,     1,
1130       1,     4,     1,     1,     5,     3,     3,     3,     1,     2,
1131       3,     1,     3,     5,     6,     3,     3,     5,     2,     4,
1132       4,     0,     5,     1,     1,     5,     4,     5,     4,     5,
1133       6,     5,     4,     5,     4,     3,     6,     4,     5,     3,
1134       3,     3,     3,     3,     1,     1,     3,     3,     3,     3,
1135       3,     3,     3,     1,     3,     2,     2,     3,     3,     1,
1136       3,     2,     2,     3,     3,     2,     2,     2,     2,     2,
1137       2,     2,     2,     2,     3,     2,     4,     3,     5,     4,
1138       2,     2,     1,     1,     1,     1,     5,     2,     3,     1,
1139       2,     3,     1,     2,     1,     1,     1,     1,     1,     1,
1140       4,     4,     5,     5,     1,     1,     3,     4,     3,     4,
1141       4,     4,     4,     4,     1,     2,     2,     1,     2,     2,
1142       1,     2,     1,     2,     1,     3,     1,     3,     1,     3,
1143       4,     0,     6,     1,     1,     1,     3,     2,     4,     3,
1144       2,     1,     1,     1,     0,     1,     0,     1,     0,     2,
1145       1,     1,     1,     1,     1,     1,     2,     2,     2,     2,
1146       2,     2,     2,     4,     2,     1,     3,     1,     3,     1,
1147       3,     1,     1,     1,     1
1148};
1149
1150typedef enum {
1151	toketype_ival, toketype_opval
1152} toketypes;
1153
1154/* type of each token/terminal */
1155static const toketypes yy_type_tab[] =
1156{
1157  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1158  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1159  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1160  toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
1161  toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
1162  toketype_opval, toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1163  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1164  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1165  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1166  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1167  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1168  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1169  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1170  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1171  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1172  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1173  toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_opval,
1174  toketype_opval, toketype_ival, toketype_opval, toketype_ival, toketype_opval, toketype_opval,
1175  toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
1176  toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
1177  toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
1178  toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval,
1179  toketype_opval, toketype_opval, toketype_opval, toketype_ival,
1180  toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
1181  toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival,
1182  toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
1183  toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval,
1184  toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
1185  toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval,
1186  toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
1187  toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
1188  toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval
1189};
1190
1191/* Generated from:
1192 * e5b801fdebce5c77dd8e644fc5a489cbea6af33db180e771dd9d669b12bbe0cf perly.y
1193 * 0947213b55d0ed11693554bea04987e886cf285f5c14cf9075fa1e7acc3f4061 regen_perly.pl
1194 * ex: set ro: */
1195