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