This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
another fix for bison 2.3
[perl5.git] / madly.tab
1 #define YYFINAL  3
2 /* YYLAST -- Last index in YYTABLE.  */
3 #define YYLAST   2024
4
5 /* YYNTOKENS -- Number of terminals. */
6 #define YYNTOKENS  90
7 /* YYNNTS -- Number of nonterminals. */
8 #define YYNNTS  66
9 /* YYNRULES -- Number of rules. */
10 #define YYNRULES  210
11 /* YYNRULES -- Number of states. */
12 #define YYNSTATES  420
13
14 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
15 #define YYUNDEFTOK  2
16 #define YYMAXUTOK   325
17
18 #define YYTRANSLATE(YYX)                                                \
19   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
20
21 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
22 static const unsigned char yytranslate[] =
23 {
24        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
25        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
26        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
27        2,     2,     2,    77,     2,     2,     9,    11,    59,     2,
28       88,    87,    12,     8,    66,     7,     2,     2,     2,     2,
29        2,     2,     2,     2,     2,     2,     2,     2,    69,    60,
30        2,     2,     2,    68,    10,     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,     5,     2,     6,     2,     2,     2,     2,     2,     2,
34        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
35        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
36        2,     2,     2,     3,     2,     4,    78,     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,     2,     2,     2,     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,     2,     2,     2,     2,     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,     1,     2,    13,    14,
50       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
51       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
52       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
53       45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
54       55,    56,    57,    58,    61,    62,    63,    64,    65,    67,
55       70,    71,    72,    73,    74,    75,    76,    79,    80,    81,
56       82,    83,    84,    85,    86,    89
57 };
58
59 #if YYDEBUG
60 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
61    YYRHS.  */
62 static const unsigned short int yyprhs[] =
63 {
64        0,     0,     3,     6,    11,    12,    13,    14,    19,    20,
65       21,    22,    25,    29,    32,    34,    36,    39,    42,    46,
66       48,    50,    54,    58,    62,    66,    70,    71,    74,    81,
67       89,    97,   104,   107,   108,   111,   121,   131,   142,   152,
68      161,   174,   178,   187,   188,   189,   191,   192,   194,   196,
69      198,   200,   202,   203,   205,   207,   209,   211,   213,   215,
70      217,   219,   224,   226,   227,   234,   241,   242,   243,   244,
71      246,   247,   249,   250,   253,   255,   258,   260,   262,   264,
72      268,   269,   277,   281,   285,   289,   291,   294,   298,   300,
73      304,   310,   317,   321,   325,   331,   334,   339,   340,   346,
74      348,   350,   356,   361,   367,   372,   378,   385,   391,   396,
75      402,   407,   411,   418,   424,   428,   432,   436,   440,   444,
76      448,   452,   456,   460,   464,   468,   472,   476,   480,   483,
77      486,   489,   492,   495,   498,   501,   504,   508,   511,   516,
78      520,   526,   529,   532,   537,   543,   548,   554,   556,   558,
79      560,   562,   568,   571,   573,   576,   580,   583,   585,   587,
80      589,   591,   593,   595,   600,   606,   608,   610,   614,   619,
81      623,   625,   628,   631,   633,   636,   639,   641,   644,   646,
82      649,   651,   655,   657,   661,   666,   671,   673,   675,   679,
83      682,   686,   689,   691,   693,   695,   696,   698,   699,   701,
84      704,   706,   709,   712,   715,   718,   721,   724,   726,   728,
85      730
86 };
87
88 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
89 static const short int yyrhs[] =
90 {
91       91,     0,    -1,    95,    99,    -1,     3,    93,    99,     4,
92       -1,    -1,    -1,    -1,     3,    97,    99,     4,    -1,    -1,
93       -1,    -1,    99,   116,    -1,    99,    98,   100,    -1,   115,
94      103,    -1,   106,    -1,   107,    -1,   115,   104,    -1,   115,
95       60,    -1,   115,   101,    60,    -1,     1,    -1,   133,    -1,
96      133,    30,   133,    -1,   133,    31,   133,    -1,   133,    28,
97      133,    -1,   133,    29,   111,    -1,   133,    35,   133,    -1,
98       -1,    32,    96,    -1,    33,    88,   112,    87,    96,   102,
99       -1,    30,    88,    93,   112,    87,    96,   102,    -1,    31,
100       88,    93,   114,    87,    96,   102,    -1,    37,    88,    93,
101      112,    87,    96,    -1,    38,    92,    -1,    -1,    34,    92,
102       -1,   115,    28,    88,    93,   110,    87,   108,    96,   105,
103       -1,   115,    29,    88,    93,   111,    87,   108,    96,   105,
104       -1,   115,    35,    55,    93,   148,    88,   112,    87,    96,
105      105,    -1,   115,    35,   150,    88,    93,   112,    87,    96,
106      105,    -1,   115,    35,    88,    93,   112,    87,    96,   105,
107       -1,   115,    35,    88,    93,   113,    60,   110,    60,   108,
108      113,    87,    96,    -1,   115,    92,   105,    -1,   115,    36,
109       88,    93,    94,   112,    87,    96,    -1,    -1,    -1,   101,
110       -1,    -1,   133,    -1,   133,    -1,   133,    -1,   109,    -1,
111      111,    -1,    -1,    22,    -1,   118,    -1,   121,    -1,   120,
112       -1,   130,    -1,   131,    -1,   117,    -1,    89,    -1,    23,
113      124,   119,    92,    -1,    13,    -1,    -1,    56,   122,   125,
114      126,   127,   129,    -1,    24,   122,   125,   126,   127,   129,
115       -1,    -1,    -1,    -1,    13,    -1,    -1,    16,    -1,    -1,
116       58,    16,    -1,    58,    -1,    58,    16,    -1,    58,    -1,
117       92,    -1,    60,    -1,    26,    13,    60,    -1,    -1,    27,
118      122,   132,    13,    13,   146,    60,    -1,   133,    64,   133,
119       -1,   133,    63,   133,    -1,   133,    62,   133,    -1,   134,
120       -1,   134,    66,    -1,   134,    66,   143,    -1,   143,    -1,
121       45,   155,   134,    -1,    43,    88,   155,   133,    87,    -1,
122      143,    86,   137,    88,   147,    87,    -1,   143,    86,   137,
123       -1,    14,   155,   146,    -1,    15,   155,    88,   147,    87,
124       -1,    45,   146,    -1,    43,    88,   147,    87,    -1,    -1,
125       21,   123,    92,   136,   146,    -1,    14,    -1,   150,    -1,
126      154,     3,   133,    60,     4,    -1,   150,     5,   133,     6,
127       -1,   143,    86,     5,   133,     6,    -1,   138,     5,   133,
128        6,    -1,   150,     3,   133,    60,     4,    -1,   143,    86,
129        3,   133,    60,     4,    -1,   138,     3,   133,    60,     4,
130       -1,   143,    86,    88,    87,    -1,   143,    86,    88,   133,
131       87,    -1,   138,    88,   133,    87,    -1,   138,    88,    87,
132       -1,    88,   133,    87,     5,   133,     6,    -1,    88,    87,
133        5,   133,     6,    -1,   143,    67,   143,    -1,   143,    81,
134      143,    -1,   143,    48,   143,    -1,   143,    49,   143,    -1,
135      143,    75,   143,    -1,   143,    46,   143,    -1,   143,    47,
136      143,    -1,   143,    74,   143,    -1,   143,    73,   143,    -1,
137      143,    40,   143,    -1,   143,    72,   143,    -1,   143,    71,
138      143,    -1,   143,    70,   143,    -1,   143,    76,   143,    -1,
139        7,   143,    -1,     8,   143,    -1,    77,   143,    -1,    78,
140      143,    -1,   143,    83,    -1,   143,    82,    -1,    85,   143,
141       -1,    84,   143,    -1,     5,   133,     6,    -1,     5,     6,
142       -1,    52,   133,    60,     4,    -1,    52,    60,     4,    -1,
143       25,   123,   126,   127,    92,    -1,    51,   143,    -1,    51,
144       92,    -1,    51,    13,    88,    87,    -1,    51,    13,    88,
145      133,    87,    -1,    51,   150,    88,    87,    -1,    51,   150,
146       88,   133,    87,    -1,   139,    -1,   140,    -1,   141,    -1,
147      142,    -1,   143,    68,   143,    69,   143,    -1,    79,   143,
148       -1,   144,    -1,    54,   143,    -1,    88,   133,    87,    -1,
149       88,    87,    -1,   150,    -1,   154,    -1,   152,    -1,   151,
150       -1,   153,    -1,   138,    -1,   151,     5,   133,     6,    -1,
151      151,     3,   133,    60,     4,    -1,    16,    -1,   149,    -1,
152      149,    88,    87,    -1,   149,    88,   133,    87,    -1,    53,
153       13,   146,    -1,    39,    -1,    39,   143,    -1,    65,   134,
154       -1,    44,    -1,    44,    92,    -1,    44,   143,    -1,    57,
155       -1,    57,   143,    -1,    20,    -1,    20,   143,    -1,    41,
156       -1,    41,    88,    87,    -1,    19,    -1,    42,    88,    87,
157       -1,    42,    88,   133,    87,    -1,    17,    88,   134,    87,
158       -1,    13,    -1,   135,    -1,    55,   145,   128,    -1,    55,
159      145,    -1,    88,   133,    87,    -1,    88,    87,    -1,   150,
160       -1,   152,    -1,   151,    -1,    -1,   134,    -1,    -1,   133,
161       -1,   133,    66,    -1,   150,    -1,    59,   155,    -1,     9,
162      155,    -1,    10,   155,    -1,    11,   155,    -1,    50,   155,
163       -1,    12,   155,    -1,    13,    -1,   150,    -1,    92,    -1,
164       18,    -1
165 };
166
167 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
168 static const unsigned short int yyrline[] =
169 {
170        0,   100,   100,   106,   116,   120,   124,   130,   140,   144,
171      148,   149,   153,   162,   165,   166,   168,   170,   185,   202,
172      204,   206,   210,   214,   218,   222,   231,   232,   236,   247,
173      255,   266,   269,   275,   276,   283,   296,   308,   318,   328,
174      337,   362,   370,   380,   386,   387,   392,   395,   399,   404,
175      408,   412,   418,   421,   425,   427,   429,   431,   433,   435,
176      439,   445,   454,   455,   459,   467,   483,   489,   494,   499,
177      509,   510,   515,   516,   520,   527,   531,   538,   539,   544,
178      552,   551,   564,   568,   572,   576,   580,   585,   591,   595,
179      600,   607,   616,   622,   628,   636,   640,   647,   646,   657,
180      658,   662,   671,   676,   684,   691,   698,   708,   717,   724,
181      733,   740,   746,   753,   763,   767,   771,   777,   781,   785,
182      789,   793,   797,   801,   810,   814,   818,   822,   832,   836,
183      840,   844,   848,   853,   858,   863,   872,   877,   882,   888,
184      894,   905,   909,   913,   925,   938,   946,   958,   959,   960,
185      961,   962,   967,   971,   973,   977,   982,   987,   989,   991,
186      993,   995,   997,   999,  1008,  1019,  1021,  1023,  1028,  1039,
187     1044,  1049,  1053,  1057,  1061,  1065,  1069,  1071,  1073,  1075,
188     1078,  1082,  1088,  1091,  1097,  1103,  1108,  1109,  1113,  1119,
189     1126,  1131,  1136,  1138,  1140,  1145,  1147,  1152,  1153,  1155,
190     1164,  1168,  1174,  1180,  1186,  1192,  1198,  1205,  1207,  1209,
191     1212
192 };
193 #endif
194
195 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
196 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
197    First, the terminals, then, starting at YYNTOKENS, nonterminals. */
198 static const char *const yytname[] =
199 {
200   "$end", "error", "$undefined", "'{'", "'}'", "'['", "']'", "'-'", "'+'",
201   "'$'", "'@'", "'%'", "'*'", "WORD", "METHOD", "FUNCMETH", "THING",
202   "PMFUNC", "PRIVATEREF", "FUNC0SUB", "UNIOPSUB", "LSTOPSUB", "LABEL",
203   "FORMAT", "SUB", "ANONSUB", "PACKAGE", "USE", "WHILE", "UNTIL", "IF",
204   "UNLESS", "ELSE", "ELSIF", "CONTINUE", "FOR", "GIVEN", "WHEN", "DEFAULT",
205   "LOOPEX", "DOTDOT", "FUNC0", "FUNC1", "FUNC", "UNIOP", "LSTOP", "RELOP",
206   "EQOP", "MULOP", "ADDOP", "DOLSHARP", "DO", "HASHBRACK", "NOAMP",
207   "LOCAL", "MY", "MYSUB", "REQUIRE", "COLONATTR", "'&'", "';'", "PREC_LOW",
208   "DOROP", "OROP", "ANDOP", "NOTOP", "','", "ASSIGNOP", "'?'", "':'",
209   "DORDOR", "OROR", "ANDAND", "BITOROP", "BITANDOP", "SHIFTOP", "MATCHOP",
210   "'!'", "'~'", "REFGEN", "UMINUS", "POWOP", "POSTDEC", "POSTINC",
211   "PREDEC", "PREINC", "ARROW", "')'", "'('", "PEG", "$accept", "prog",
212   "block", "remember", "mydefsv", "progstart", "mblock", "mremember",
213   "savescope", "lineseq", "line", "sideff", "else", "cond", "case", "cont",
214   "loop", "switch", "mintro", "nexpr", "texpr", "iexpr", "mexpr", "mnexpr",
215   "miexpr", "label", "decl", "peg", "format", "formname", "mysubrout",
216   "subrout", "startsub", "startanonsub", "startformsub", "subname",
217   "proto", "subattrlist", "myattrlist", "subbody", "package", "use", "@1",
218   "expr", "argexpr", "listop", "@2", "method", "subscripted", "termbinop",
219   "termunop", "anonymous", "termdo", "term", "myattrterm", "myterm",
220   "listexpr", "listexprcom", "my_scalar", "amper", "scalar", "ary", "hsh",
221   "arylen", "star", "indirob", 0
222 };
223 #endif
224
225 # ifdef YYPRINT
226 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
227    token YYLEX-NUM.  */
228 static const unsigned short int yytoknum[] =
229 {
230        0,   256,   257,   123,   125,    91,    93,    45,    43,    36,
231       64,    37,    42,   258,   259,   260,   261,   262,   263,   264,
232      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
233      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
234      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
235      295,   296,   297,   298,   299,   300,   301,   302,   303,    38,
236       59,   304,   305,   306,   307,   308,    44,   309,    63,    58,
237      310,   311,   312,   313,   314,   315,   316,    33,   126,   317,
238      318,   319,   320,   321,   322,   323,   324,    41,    40,   325
239 };
240 # endif
241
242 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
243 static const unsigned char yyr1[] =
244 {
245        0,    90,    91,    92,    93,    94,    95,    96,    97,    98,
246       99,    99,    99,   100,   100,   100,   100,   100,   100,   101,
247      101,   101,   101,   101,   101,   101,   102,   102,   102,   103,
248      103,   104,   104,   105,   105,   106,   106,   106,   106,   106,
249      106,   106,   107,   108,   109,   109,   110,   110,   111,   112,
250      113,   114,   115,   115,   116,   116,   116,   116,   116,   116,
251      117,   118,   119,   119,   120,   121,   122,   123,   124,   125,
252      126,   126,   127,   127,   127,   128,   128,   129,   129,   130,
253      132,   131,   133,   133,   133,   133,   134,   134,   134,   135,
254      135,   135,   135,   135,   135,   135,   135,   136,   135,   137,
255      137,   138,   138,   138,   138,   138,   138,   138,   138,   138,
256      138,   138,   138,   138,   139,   139,   139,   139,   139,   139,
257      139,   139,   139,   139,   139,   139,   139,   139,   140,   140,
258      140,   140,   140,   140,   140,   140,   141,   141,   141,   141,
259      141,   142,   142,   142,   142,   142,   142,   143,   143,   143,
260      143,   143,   143,   143,   143,   143,   143,   143,   143,   143,
261      143,   143,   143,   143,   143,   143,   143,   143,   143,   143,
262      143,   143,   143,   143,   143,   143,   143,   143,   143,   143,
263      143,   143,   143,   143,   143,   143,   143,   143,   144,   144,
264      145,   145,   145,   145,   145,   146,   146,   147,   147,   147,
265      148,   149,   150,   151,   152,   153,   154,   155,   155,   155,
266      155
267 };
268
269 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
270 static const unsigned char yyr2[] =
271 {
272        0,     2,     2,     4,     0,     0,     0,     4,     0,     0,
273        0,     2,     3,     2,     1,     1,     2,     2,     3,     1,
274        1,     3,     3,     3,     3,     3,     0,     2,     6,     7,
275        7,     6,     2,     0,     2,     9,     9,    10,     9,     8,
276       12,     3,     8,     0,     0,     1,     0,     1,     1,     1,
277        1,     1,     0,     1,     1,     1,     1,     1,     1,     1,
278        1,     4,     1,     0,     6,     6,     0,     0,     0,     1,
279        0,     1,     0,     2,     1,     2,     1,     1,     1,     3,
280        0,     7,     3,     3,     3,     1,     2,     3,     1,     3,
281        5,     6,     3,     3,     5,     2,     4,     0,     5,     1,
282        1,     5,     4,     5,     4,     5,     6,     5,     4,     5,
283        4,     3,     6,     5,     3,     3,     3,     3,     3,     3,
284        3,     3,     3,     3,     3,     3,     3,     3,     2,     2,
285        2,     2,     2,     2,     2,     2,     3,     2,     4,     3,
286        5,     2,     2,     4,     5,     4,     5,     1,     1,     1,
287        1,     5,     2,     1,     2,     3,     2,     1,     1,     1,
288        1,     1,     1,     4,     5,     1,     1,     3,     4,     3,
289        1,     2,     2,     1,     2,     2,     1,     2,     1,     2,
290        1,     3,     1,     3,     4,     4,     1,     1,     3,     2,
291        3,     2,     1,     1,     1,     0,     1,     0,     1,     2,
292        1,     2,     2,     2,     2,     2,     2,     1,     1,     1,
293        1
294 };
295
296 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
297    STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
298    means the default is an error.  */
299 static const unsigned char yydefact[] =
300 {
301        6,     0,    10,     1,     9,    68,    66,     0,    66,    66,
302       60,    52,    11,    59,    54,    56,    55,    57,    58,    63,
303        0,     0,    80,     0,    53,    12,    14,    15,     0,    62,
304        0,    69,    70,    79,     0,    70,    19,     4,     0,     0,
305        0,     0,     0,     0,     0,   186,     0,     0,   165,     0,
306      182,   178,    67,    67,     0,     0,     0,     0,     0,     0,
307        0,     0,   170,   180,     0,     0,   173,   195,     0,     0,
308        0,     0,     0,     0,   176,     0,    17,     0,     0,     0,
309        0,     0,     0,     0,    33,     0,    13,    16,    20,    85,
310      187,   162,   147,   148,   149,   150,    88,   153,   166,   157,
311      160,   159,   161,   158,    61,    71,    72,     0,    72,    10,
312      137,     0,   128,   129,   207,   210,   209,   208,   202,   203,
313      204,   206,   195,     0,     0,   179,     0,    70,     4,     4,
314        4,     4,     4,     4,     0,     4,     4,    32,   171,     0,
315        0,   197,   174,   175,   207,   196,    95,   208,     0,   205,
316      186,   142,   141,   157,     0,     0,   195,   154,     0,   189,
317      192,   194,   193,   177,   201,   172,   130,   131,   152,   135,
318      134,   156,     0,     0,    41,    18,     0,     0,     0,     0,
319        0,     0,     0,     0,    86,     0,     0,     0,     0,     0,
320        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
321        0,     0,     0,   133,   132,     0,     0,     0,     0,     0,
322        0,     0,    74,     0,   195,     0,     9,   136,    93,   197,
323        0,    97,    72,    46,     0,     0,     0,     0,     0,     4,
324        5,     0,   181,   183,     0,   198,     0,     0,    89,     0,
325        0,   139,     0,   169,   191,     0,    76,   188,     0,   155,
326       34,    23,    24,    48,    21,    22,    25,    84,    83,    82,
327       87,     0,     0,   111,     0,   123,   119,   120,   116,   117,
328      114,     0,   126,   125,   124,   122,   121,   118,   127,   115,
329        0,     0,    99,     0,    92,   100,   167,     0,     0,     0,
330        0,     0,     0,    73,    78,    77,    65,     0,    64,     3,
331        0,   185,   195,     0,     0,    47,     0,     0,    49,    51,
332        0,     0,   200,    45,    50,     0,     0,    20,     0,     0,
333        0,   184,   199,    96,     0,   143,     0,   145,     0,   138,
334      190,    75,     0,     0,     0,   104,   110,     0,     0,     0,
335      108,     0,   197,   168,     0,   102,     0,   163,     0,    81,
336       94,    98,   140,    43,    43,     0,     0,     0,     0,    46,
337        0,     0,     0,    90,   144,   146,   113,     0,   107,   151,
338        0,   103,   109,     0,   105,   164,   101,     0,     0,     8,
339       26,    26,     0,    33,     0,     0,     0,    31,   112,   106,
340       91,    33,    33,    10,     0,     0,    29,    30,     0,    39,
341       43,    33,    42,    35,    36,     9,    27,     0,    33,     0,
342       38,     7,     0,    37,     0,     0,     0,    26,    40,    28
343 };
344
345 /* YYDEFGOTO[NTERM-NUM]. */
346 static const short int yydefgoto[] =
347 {
348       -1,     1,   116,   109,   319,     2,   380,   393,    11,     4,
349       25,   313,   396,    86,    87,   174,    26,    27,   377,   314,
350      304,   252,   307,   316,   310,    28,    12,    13,    14,    30,
351       15,    16,    20,   126,    19,    32,   106,   213,   247,   296,
352       17,    18,    34,   308,    89,    90,   302,   284,    91,    92,
353       93,    94,    95,    96,    97,   159,   146,   236,   311,    98,
354       99,   100,   101,   102,   103,   118
355 };
356
357 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
358    STATE-NUM.  */
359 #define YYPACT_NINF -358
360 static const short int yypact[] =
361 {
362     -358,    15,  -358,  -358,     6,  -358,  -358,    18,  -358,  -358,
363     -358,    16,  -358,  -358,  -358,  -358,  -358,  -358,  -358,    28,
364       40,   -32,  -358,    40,  -358,  -358,  -358,  -358,   308,  -358,
365       88,  -358,    34,  -358,    95,    34,  -358,  -358,   870,  1706,
366     1706,   277,   277,   277,   277,  -358,   277,   277,  -358,    51,
367     -358,  1706,  -358,  -358,    98,   100,   104,   105,     8,   111,
368      117,    88,  1706,   120,   131,   155,   642,   558,   277,   726,
369      952,   112,  1706,    47,  1706,   277,  -358,  1706,  1706,  1706,
370     1706,  1706,  1706,  1034,    94,   185,  -358,  -358,   778,   196,
371     -358,    46,  -358,  -358,  -358,  -358,  1877,  -358,   163,    13,
372      102,  -358,  -358,   253,  -358,  -358,   207,   265,   207,  -358,
373     -358,    30,    41,    41,  -358,  -358,  -358,  -358,  -358,  -358,
374     -358,  -358,  1706,   203,  1706,   221,    88,    34,  -358,  -358,
375     -358,  -358,  -358,  -358,   206,  -358,  -358,  -358,  1877,   197,
376     1118,   558,  -358,   221,  1758,   196,  -358,   787,  1706,  -358,
377      213,  -358,   221,    56,   288,    19,  1706,   221,  1202,   250,
378     -358,  -358,  -358,   221,  -358,   196,    41,    41,    41,   380,
379      380,   305,    23,    88,  -358,  -358,  1706,  1706,  1706,  1706,
380     1706,  1706,  1706,  1706,  1706,  1706,  1706,  1286,  1706,  1706,
381     1706,  1706,  1706,  1706,  1706,  1706,  1706,  1706,  1706,  1706,
382     1706,  1706,  1706,  -358,  -358,    75,  1370,  1706,  1706,  1706,
383     1706,  1706,   316,     5,  1706,     5,   190,  -358,  -358,  1706,
384      -53,  -358,   207,  1706,  1706,  1706,  1706,   321,   390,  -358,
385     -358,  1706,  -358,  -358,    74,   314,   247,  1706,   196,  1454,
386     1538,  -358,   331,  -358,  -358,   225,   324,  -358,  1706,   336,
387     -358,   160,  -358,   160,   160,   160,   160,   278,   278,  -358,
388     1877,    69,   108,  -358,   292,  1938,   545,   627,   596,   121,
389     1877,  1833,   460,   460,   378,   506,   713,   816,    41,    41,
390     1706,  1706,  -358,  1622,   260,  -358,  -358,   307,   113,   195,
391      354,   204,   436,  -358,  -358,  -358,  -358,   297,  -358,  -358,
392      279,  -358,  1706,    88,   285,   160,   295,   296,   160,  -358,
393      332,   276,  -358,  -358,  -358,   335,   315,   219,  1706,  1706,
394      341,  -358,  -358,  -358,   326,  -358,   408,  -358,   441,  -358,
395     -358,  -358,   209,  1706,   404,  -358,  -358,  1706,   570,   212,
396     -358,   457,  1706,  -358,   419,  -358,   432,  -358,   434,  -358,
397     -358,  -358,  -358,  -358,  -358,   381,   381,  1706,   381,  1706,
398      352,   359,   381,  -358,  -358,  -358,  -358,   236,  -358,  1894,
399      444,  -358,  -358,   369,  -358,  -358,  -358,   381,   381,  -358,
400       12,    12,   370,    94,   398,   381,   381,  -358,  -358,  -358,
401     -358,    94,    94,  -358,   381,   377,  -358,  -358,   381,  -358,
402     -358,    94,  -358,  -358,  -358,   237,  -358,  1706,    94,   472,
403     -358,  -358,   389,  -358,   403,   381,   381,    12,  -358,  -358
404 };
405
406 /* YYPGOTO[NTERM-NUM].  */
407 static const short int yypgoto[] =
408 {
409     -358,  -358,   -26,   -61,  -358,  -358,  1480,  -358,  -358,  -108,
410     -358,   466,  -357,  -358,  -358,    29,  -358,  -358,  -327,  -358,
411      142,   -64,  -217,    93,  -358,  -358,  -358,  -358,  -358,  -358,
412     -358,  -358,   156,   459,  -358,   487,   -23,  -101,  -358,   303,
413     -358,  -358,  -358,   -28,   -58,  -358,  -358,  -358,  -358,  -358,
414     -358,  -358,  -358,    37,  -358,  -358,  -117,  -216,  -358,  -358,
415      -21,   465,   467,  -358,  -358,    99
416 };
417
418 /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
419    positive, shift that token.  If negative, reduce the rule which
420    number is the opposite.  If zero, do what YYDEFACT says.
421    If YYTABLE_NINF, syntax error.  */
422 #define YYTABLE_NINF -187
423 static const short int yytable[] =
424 {
425       88,   216,    84,   300,   104,   218,    -2,   215,    37,   145,
426      111,   315,   108,   184,   320,     3,   207,    41,   208,   165,
427      117,   117,   117,   117,   397,   117,   117,   378,    33,     5,
428        6,    21,     7,     8,   301,   137,   217,   134,    24,   243,
429      142,    29,   155,   151,   394,   395,   147,   117,   153,   185,
430      105,   186,   160,    31,   117,   172,    41,    42,    43,   207,
431      419,   208,     9,   132,   145,   294,   220,   223,   224,   225,
432      226,   227,   228,   409,   230,   231,   112,   113,   280,   242,
433      281,   181,   182,   183,    41,   181,   182,   183,   125,   282,
434      238,    37,   181,   182,   183,    10,   133,   297,   145,   138,
435      221,   360,   361,   143,   222,   209,   152,   210,   107,   157,
436      249,   163,   234,   235,   335,   166,   167,   168,   169,   170,
437      147,   303,   202,   203,   204,   156,   373,   205,   173,   334,
438      245,   181,   182,   183,   187,   158,   181,   182,   183,   124,
439      382,   119,   120,   121,   240,   122,   123,   250,   251,   253,
440      254,   255,   256,   257,   258,   259,   145,   261,   262,   264,
441      306,   321,   309,   283,    22,    23,   148,   149,   318,   191,
442      181,   182,   183,   344,   164,   181,   182,   183,   287,   288,
443      289,   290,   291,   292,   285,   351,   128,   295,   129,   295,
444      412,   235,   130,   131,   299,   305,   253,   201,   253,   135,
445      317,   345,   202,   203,   204,   136,   312,   205,   139,   324,
446      347,   326,   328,     5,     6,   366,     7,     8,   371,   140,
447      332,   260,   181,   182,   183,   265,   266,   267,   268,   269,
448      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
449      237,   411,   388,   141,   145,   175,     9,   176,   177,   178,
450      179,   206,   338,   339,   180,   341,   211,   181,   182,   183,
451        5,     6,   184,     7,     8,   212,   181,   182,   183,   191,
452      192,   181,   182,   183,   181,   182,   183,   352,   214,    10,
453       37,   181,   182,   183,   232,   405,    41,   181,   182,   183,
454      114,   219,   241,     9,   229,   115,   200,   201,   181,   182,
455      183,   239,   202,   203,   204,   367,   -49,   205,   246,    36,
456      248,    37,   330,    38,   235,    39,    40,    41,    42,    43,
457       44,    45,    46,    47,    48,    49,    10,    50,    51,    52,
458       41,   305,   293,    53,   323,   329,    54,    55,    56,    57,
459      331,   333,   183,    58,    59,    60,    61,    62,   342,    63,
460       64,    65,    66,    67,   181,   182,   183,   349,    68,    69,
461       70,    71,    72,    73,   357,    74,   350,    75,    76,   181,
462      182,   183,   353,    77,   369,   359,   181,   182,   183,   336,
463      322,    88,   354,   355,   379,    78,    79,    80,   181,   182,
464      183,    36,    81,    82,   343,    38,    83,    39,    40,    41,
465       42,    43,    44,    45,    46,    47,    48,    49,   368,    50,
466       51,    52,   399,   363,   346,    53,   181,   182,   183,   356,
467      403,   404,   358,   374,   189,   190,   191,   192,   362,    62,
468      410,    63,    64,    65,    66,    67,   375,   413,   376,   385,
469       68,    69,    70,    71,    72,    73,   386,    74,   389,    75,
470      -44,   198,   199,   200,   201,    77,   390,   398,   400,   202,
471      203,   204,  -187,  -187,   205,   407,   205,    78,    79,    80,
472      181,   182,   183,    36,    81,    82,   415,    38,    83,    39,
473       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
474      416,    50,    51,    52,    85,   364,   348,    53,   181,   182,
475      183,   384,   414,   181,   182,   183,   189,   190,   191,   192,
476       35,    62,   127,    63,    64,    65,    66,    67,   298,   181,
477      182,   183,    68,    69,    70,    71,    72,    73,   365,    74,
478        0,    75,   197,   198,   199,   200,   201,    77,   161,     0,
479      162,   202,   203,   204,   372,     0,   205,     0,     0,    78,
480       79,    80,   189,   190,   191,   192,    81,    82,     0,   -44,
481       83,    37,     0,    38,     0,    39,    40,    41,    42,    43,
482       44,   144,    46,    47,    48,    49,   115,    50,    51,    52,
483      199,   200,   201,    53,     0,     0,     0,   202,   203,   204,
484        0,  -187,   205,   191,   192,     0,     0,    62,     0,    63,
485       64,    65,    66,    67,     0,     0,     0,     0,    68,    69,
486       70,    71,    72,    73,     0,    74,     0,    75,     0,     0,
487      200,   201,     0,    77,     0,     0,   202,   203,   204,     0,
488      370,   205,   181,   182,   183,    78,    79,    80,     0,     0,
489        0,     0,    81,    82,     0,    37,    83,    38,     0,    39,
490       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
491        0,    50,    51,    52,     0,     0,     0,    53,     0,     0,
492        0,     0,   201,   189,  -187,   191,   192,   202,   203,   204,
493        0,    62,   205,    63,    64,    65,    66,    67,     0,     0,
494        0,     0,    68,    69,    70,    71,    72,    73,     0,    74,
495        0,    75,   200,   201,     0,     0,     0,    77,   202,   203,
496      204,     0,     0,   205,     0,     0,     0,     0,     0,    78,
497       79,    80,     0,     0,     0,     0,    81,    82,     0,    37,
498       83,    38,     0,    39,    40,    41,    42,    43,    44,   150,
499       46,    47,    48,    49,     0,    50,    51,    52,     0,     0,
500        0,    53,     0,     0,     0,     0,     0,     0,     0,   189,
501      190,   191,   192,     0,     0,    62,     0,    63,    64,    65,
502       66,    67,     0,     0,     0,     0,    68,    69,    70,    71,
503       72,    73,     0,    74,     0,    75,     0,     0,   200,   201,
504      207,    77,   208,  -157,   202,   203,   204,     0,     0,   205,
505        0,     0,     0,    78,    79,    80,   176,   177,   178,   179,
506       81,    82,     0,   180,    83,  -157,  -157,  -157,  -157,     0,
507        0,     0,  -157,     0,     0,     0,     0,  -157,     0,     0,
508        0,     0,     0,  -157,  -157,  -157,  -157,     0,     0,     0,
509      181,   182,   183,     0,     0,     0,     0,  -157,     0,  -157,
510     -157,  -157,     0,  -157,  -157,  -157,  -157,  -157,  -157,  -157,
511     -157,  -157,  -157,  -157,   191,   192,     0,     0,  -157,  -157,
512     -157,     0,     0,  -157,  -157,    38,   110,    39,    40,    41,
513       42,    43,    44,    45,    46,    47,    48,    49,     0,    50,
514       51,    52,   201,     0,     0,    53,     0,   202,   203,   204,
515        0,     0,   205,     0,     0,     0,     0,     0,     0,    62,
516        0,    63,    64,    65,    66,    67,     0,     0,     0,     0,
517       68,    69,    70,    71,    72,    73,     0,    74,     0,    75,
518        0,     0,     0,     0,     0,    77,     0,     0,     0,     0,
519        0,     0,     0,     0,     0,     0,     0,    78,    79,    80,
520        0,     0,     0,     0,    81,    82,     0,    38,    83,    39,
521       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
522        0,    50,    51,    52,     0,     0,     0,    53,     0,     0,
523        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
524        0,    62,     0,    63,    64,    65,    66,    67,     0,     0,
525        0,     0,    68,    69,    70,    71,    72,    73,     0,    74,
526        0,    75,   154,     0,     0,     0,     0,    77,     0,     0,
527        0,     0,     0,     0,     0,     0,     0,     0,     0,    78,
528       79,    80,     0,     0,     0,     0,    81,    82,     0,    38,
529       83,    39,    40,    41,    42,    43,    44,    45,    46,    47,
530       48,    49,     0,    50,    51,    52,     0,     0,     0,    53,
531        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
532        0,     0,     0,    62,     0,    63,    64,    65,    66,    67,
533        0,     0,     0,     0,    68,    69,    70,    71,    72,    73,
534        0,    74,     0,    75,     0,     0,     0,     0,     0,    77,
535        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
536        0,    78,    79,    80,     0,     0,     0,     0,    81,    82,
537        0,   171,    83,    38,     0,    39,    40,    41,    42,    43,
538       44,    45,    46,    47,    48,    49,     0,    50,    51,    52,
539        0,     0,     0,    53,     0,     0,     0,     0,     0,     0,
540        0,     0,     0,     0,     0,     0,     0,    62,     0,    63,
541       64,    65,    66,    67,     0,     0,     0,     0,    68,    69,
542       70,    71,    72,    73,     0,    74,     0,    75,     0,     0,
543        0,     0,     0,    77,     0,     0,     0,     0,     0,     0,
544        0,     0,     0,     0,     0,    78,    79,    80,     0,     0,
545        0,     0,    81,    82,     0,   233,    83,    38,     0,    39,
546       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
547        0,    50,    51,    52,     0,     0,     0,    53,     0,     0,
548        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
549        0,    62,     0,    63,    64,    65,    66,    67,     0,     0,
550        0,     0,    68,    69,    70,    71,    72,    73,     0,    74,
551        0,    75,     0,     0,     0,     0,     0,    77,     0,     0,
552        0,     0,     0,     0,     0,     0,     0,     0,     0,    78,
553       79,    80,     0,     0,     0,     0,    81,    82,     0,   244,
554       83,    38,     0,    39,    40,    41,    42,    43,    44,    45,
555       46,    47,    48,    49,     0,    50,    51,    52,     0,     0,
556        0,    53,     0,     0,     0,     0,     0,     0,     0,     0,
557        0,     0,     0,     0,     0,    62,     0,    63,    64,    65,
558       66,    67,     0,     0,     0,     0,    68,    69,    70,    71,
559       72,    73,     0,    74,     0,    75,     0,     0,     0,     0,
560        0,    77,     0,     0,     0,     0,     0,     0,     0,     0,
561        0,     0,     0,    78,    79,    80,     0,     0,     0,     0,
562       81,    82,     0,   263,    83,    38,     0,    39,    40,    41,
563       42,    43,    44,    45,    46,    47,    48,    49,     0,    50,
564       51,    52,     0,     0,     0,    53,     0,     0,     0,     0,
565        0,     0,     0,     0,     0,     0,     0,     0,     0,    62,
566        0,    63,    64,    65,    66,    67,     0,     0,     0,     0,
567       68,    69,    70,    71,    72,    73,     0,    74,     0,    75,
568        0,     0,     0,     0,     0,    77,     0,     0,     0,     0,
569        0,     0,     0,     0,     0,     0,     0,    78,    79,    80,
570        0,     0,     0,     0,    81,    82,     0,   286,    83,    38,
571        0,    39,    40,    41,    42,    43,    44,    45,    46,    47,
572       48,    49,     0,    50,    51,    52,     0,     0,     0,    53,
573        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
574        0,     0,     0,    62,     0,    63,    64,    65,    66,    67,
575        0,     0,     0,     0,    68,    69,    70,    71,    72,    73,
576        0,    74,     0,    75,     0,     0,     0,     0,     0,    77,
577        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
578        0,    78,    79,    80,     0,     0,     0,     0,    81,    82,
579        0,   325,    83,    38,     0,    39,    40,    41,    42,    43,
580       44,    45,    46,    47,    48,    49,     0,    50,    51,    52,
581        0,     0,     0,    53,     0,     0,     0,     0,     0,     0,
582        0,     0,     0,     0,     0,     0,     0,    62,     0,    63,
583       64,    65,    66,    67,     0,     0,     0,     0,    68,    69,
584       70,    71,    72,    73,     0,    74,     0,    75,     0,     0,
585        0,     0,     0,    77,     0,     0,     0,     0,     0,     0,
586        0,     0,     0,     0,     0,    78,    79,    80,     0,     0,
587        0,     0,    81,    82,     0,   327,    83,    38,     0,    39,
588       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
589        0,    50,    51,    52,     0,     0,     0,    53,     0,     0,
590        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
591        0,    62,     0,    63,    64,    65,    66,    67,     0,     0,
592        0,     0,    68,    69,    70,    71,    72,    73,     0,    74,
593        0,    75,     0,     0,     0,     0,     0,    77,     0,     0,
594        0,     0,     0,     0,     0,     0,     0,     0,     0,    78,
595       79,    80,     0,     0,     0,     0,    81,    82,     0,   340,
596       83,    38,     0,    39,    40,    41,    42,    43,    44,    45,
597       46,    47,    48,    49,     0,    50,    51,    52,     0,     0,
598        0,    53,     0,     0,     0,     0,     0,     0,     0,     0,
599        0,     0,     0,     0,     0,    62,     0,    63,    64,    65,
600       66,    67,     0,     0,     0,     0,    68,    69,    70,    71,
601       72,    73,     0,    74,  -186,    75,     0,     0,     0,     0,
602        0,    77,     0,     0,     0,     0,     0,     0,     0,     0,
603        0,     0,     0,    78,    79,    80,  -186,  -186,  -186,  -186,
604       81,    82,     0,  -186,    83,     0,     0,     0,  -186,     0,
605        0,     0,     0,     0,  -186,  -186,  -186,  -186,     0,     0,
606        0,     0,     0,     0,     0,     0,     0,     0,  -186,     0,
607     -186,  -186,  -186,     0,  -186,  -186,  -186,  -186,  -186,  -186,
608     -186,  -186,  -186,  -186,  -186,     0,   381,     0,   383,  -186,
609     -186,  -186,   387,     0,  -186,  -186,     0,     0,     0,     0,
610        0,     0,     0,     0,     0,     0,     0,   391,   392,     0,
611        0,     0,     0,     0,     0,   401,   402,     0,     0,     0,
612        0,     0,     0,   188,   406,     0,     0,     0,   408,   189,
613      190,   191,   192,     0,     0,     0,     0,     0,     0,     0,
614        0,     0,     0,     0,     0,   417,   418,     0,     0,     0,
615      193,   194,   337,   195,   196,   197,   198,   199,   200,   201,
616        0,     0,     0,     0,   202,   203,   204,   188,     0,   205,
617        0,     0,     0,   189,   190,   191,   192,     0,     0,     0,
618        0,     0,     0,     0,   188,     0,     0,     0,     0,     0,
619      189,   190,   191,   192,   193,   194,     0,   195,   196,   197,
620      198,   199,   200,   201,     0,     0,     0,     0,   202,   203,
621      204,     0,   194,   205,   195,   196,   197,   198,   199,   200,
622      201,     0,     0,     0,     0,   202,   203,   204,  -187,     0,
623      205,     0,     0,     0,   189,   190,   191,   192,     0,     0,
624        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
625        0,     0,     0,     0,     0,     0,     0,     0,   195,   196,
626      197,   198,   199,   200,   201,     0,     0,     0,     0,   202,
627      203,   204,     0,     0,   205
628 };
629
630 static const short int yycheck[] =
631 {
632       28,   109,    28,   219,    30,   122,     0,   108,     3,    67,
633       38,   228,    35,    66,   231,     0,     3,     9,     5,    77,
634       41,    42,    43,    44,   381,    46,    47,   354,    60,    23,
635       24,    13,    26,    27,    87,    61,     6,    58,    22,   156,
636       66,    13,    70,    69,    32,    33,    67,    68,    69,     3,
637       16,     5,    73,    13,    75,    83,     9,    10,    11,     3,
638      417,     5,    56,    55,   122,    60,   124,   128,   129,   130,
639      131,   132,   133,   400,   135,   136,    39,    40,     3,    60,
640        5,    62,    63,    64,     9,    62,    63,    64,    51,    14,
641      148,     3,    62,    63,    64,    89,    88,   214,   156,    62,
642      126,   318,   319,    66,   127,     3,    69,     5,    13,    72,
643       87,    74,   140,   141,     6,    78,    79,    80,    81,    82,
644      141,   222,    81,    82,    83,    13,   342,    86,    34,    60,
645      158,    62,    63,    64,    88,    88,    62,    63,    64,    88,
646      357,    42,    43,    44,    88,    46,    47,   173,   176,   177,
647      178,   179,   180,   181,   182,   183,   214,   185,   186,   187,
648      224,    87,   226,    88,     8,     9,    67,    68,   229,    48,
649       62,    63,    64,    60,    75,    62,    63,    64,   206,   207,
650      208,   209,   210,   211,   205,   302,    88,   213,    88,   215,
651      407,   219,    88,    88,     4,   223,   224,    76,   226,    88,
652      228,     6,    81,    82,    83,    88,   227,    86,    88,   237,
653        6,   239,   240,    23,    24,     6,    26,    27,     6,    88,
654      248,   184,    62,    63,    64,   188,   189,   190,   191,   192,
655      193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
656      141,     4,     6,    88,   302,    60,    56,    28,    29,    30,
657       31,    88,   280,   281,    35,   283,     3,    62,    63,    64,
658       23,    24,    66,    26,    27,    58,    62,    63,    64,    48,
659       49,    62,    63,    64,    62,    63,    64,   303,    13,    89,
660        3,    62,    63,    64,    87,   393,     9,    62,    63,    64,
661       13,    88,     4,    56,    88,    18,    75,    76,    62,    63,
662       64,    88,    81,    82,    83,   333,    87,    86,    58,     1,
663        5,     3,    87,     5,   342,     7,     8,     9,    10,    11,
664       12,    13,    14,    15,    16,    17,    89,    19,    20,    21,
665        9,   359,    16,    25,    87,     4,    28,    29,    30,    31,
666       16,     5,    64,    35,    36,    37,    38,    39,    88,    41,
667       42,    43,    44,    45,    62,    63,    64,    60,    50,    51,
668       52,    53,    54,    55,    88,    57,    87,    59,    60,    62,
669       63,    64,    87,    65,   337,    60,    62,    63,    64,    87,
670       66,   409,    87,    87,     3,    77,    78,    79,    62,    63,
671       64,     1,    84,    85,    87,     5,    88,     7,     8,     9,
672       10,    11,    12,    13,    14,    15,    16,    17,     4,    19,
673       20,    21,   383,    87,    60,    25,    62,    63,    64,    87,
674      391,   392,    87,     4,    46,    47,    48,    49,    87,    39,
675      401,    41,    42,    43,    44,    45,     4,   408,     4,    87,
676       50,    51,    52,    53,    54,    55,    87,    57,     4,    59,
677       60,    73,    74,    75,    76,    65,    87,    87,    60,    81,
678       82,    83,    82,    83,    86,    88,    86,    77,    78,    79,
679       62,    63,    64,     1,    84,    85,    87,     5,    88,     7,
680        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
681       87,    19,    20,    21,    28,    87,    60,    25,    62,    63,
682       64,   359,   409,    62,    63,    64,    46,    47,    48,    49,
683       23,    39,    53,    41,    42,    43,    44,    45,   215,    62,
684       63,    64,    50,    51,    52,    53,    54,    55,    87,    57,
685       -1,    59,    72,    73,    74,    75,    76,    65,    73,    -1,
686       73,    81,    82,    83,    87,    -1,    86,    -1,    -1,    77,
687       78,    79,    46,    47,    48,    49,    84,    85,    -1,    87,
688       88,     3,    -1,     5,    -1,     7,     8,     9,    10,    11,
689       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
690       74,    75,    76,    25,    -1,    -1,    -1,    81,    82,    83,
691       -1,    46,    86,    48,    49,    -1,    -1,    39,    -1,    41,
692       42,    43,    44,    45,    -1,    -1,    -1,    -1,    50,    51,
693       52,    53,    54,    55,    -1,    57,    -1,    59,    -1,    -1,
694       75,    76,    -1,    65,    -1,    -1,    81,    82,    83,    -1,
695       60,    86,    62,    63,    64,    77,    78,    79,    -1,    -1,
696       -1,    -1,    84,    85,    -1,     3,    88,     5,    -1,     7,
697        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
698       -1,    19,    20,    21,    -1,    -1,    -1,    25,    -1,    -1,
699       -1,    -1,    76,    46,    47,    48,    49,    81,    82,    83,
700       -1,    39,    86,    41,    42,    43,    44,    45,    -1,    -1,
701       -1,    -1,    50,    51,    52,    53,    54,    55,    -1,    57,
702       -1,    59,    75,    76,    -1,    -1,    -1,    65,    81,    82,
703       83,    -1,    -1,    86,    -1,    -1,    -1,    -1,    -1,    77,
704       78,    79,    -1,    -1,    -1,    -1,    84,    85,    -1,     3,
705       88,     5,    -1,     7,     8,     9,    10,    11,    12,    13,
706       14,    15,    16,    17,    -1,    19,    20,    21,    -1,    -1,
707       -1,    25,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    46,
708       47,    48,    49,    -1,    -1,    39,    -1,    41,    42,    43,
709       44,    45,    -1,    -1,    -1,    -1,    50,    51,    52,    53,
710       54,    55,    -1,    57,    -1,    59,    -1,    -1,    75,    76,
711        3,    65,     5,     6,    81,    82,    83,    -1,    -1,    86,
712       -1,    -1,    -1,    77,    78,    79,    28,    29,    30,    31,
713       84,    85,    -1,    35,    88,    28,    29,    30,    31,    -1,
714       -1,    -1,    35,    -1,    -1,    -1,    -1,    40,    -1,    -1,
715       -1,    -1,    -1,    46,    47,    48,    49,    -1,    -1,    -1,
716       62,    63,    64,    -1,    -1,    -1,    -1,    60,    -1,    62,
717       63,    64,    -1,    66,    67,    68,    69,    70,    71,    72,
718       73,    74,    75,    76,    48,    49,    -1,    -1,    81,    82,
719       83,    -1,    -1,    86,    87,     5,     6,     7,     8,     9,
720       10,    11,    12,    13,    14,    15,    16,    17,    -1,    19,
721       20,    21,    76,    -1,    -1,    25,    -1,    81,    82,    83,
722       -1,    -1,    86,    -1,    -1,    -1,    -1,    -1,    -1,    39,
723       -1,    41,    42,    43,    44,    45,    -1,    -1,    -1,    -1,
724       50,    51,    52,    53,    54,    55,    -1,    57,    -1,    59,
725       -1,    -1,    -1,    -1,    -1,    65,    -1,    -1,    -1,    -1,
726       -1,    -1,    -1,    -1,    -1,    -1,    -1,    77,    78,    79,
727       -1,    -1,    -1,    -1,    84,    85,    -1,     5,    88,     7,
728        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
729       -1,    19,    20,    21,    -1,    -1,    -1,    25,    -1,    -1,
730       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
731       -1,    39,    -1,    41,    42,    43,    44,    45,    -1,    -1,
732       -1,    -1,    50,    51,    52,    53,    54,    55,    -1,    57,
733       -1,    59,    60,    -1,    -1,    -1,    -1,    65,    -1,    -1,
734       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    77,
735       78,    79,    -1,    -1,    -1,    -1,    84,    85,    -1,     5,
736       88,     7,     8,     9,    10,    11,    12,    13,    14,    15,
737       16,    17,    -1,    19,    20,    21,    -1,    -1,    -1,    25,
738       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
739       -1,    -1,    -1,    39,    -1,    41,    42,    43,    44,    45,
740       -1,    -1,    -1,    -1,    50,    51,    52,    53,    54,    55,
741       -1,    57,    -1,    59,    -1,    -1,    -1,    -1,    -1,    65,
742       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
743       -1,    77,    78,    79,    -1,    -1,    -1,    -1,    84,    85,
744       -1,    87,    88,     5,    -1,     7,     8,     9,    10,    11,
745       12,    13,    14,    15,    16,    17,    -1,    19,    20,    21,
746       -1,    -1,    -1,    25,    -1,    -1,    -1,    -1,    -1,    -1,
747       -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    -1,    41,
748       42,    43,    44,    45,    -1,    -1,    -1,    -1,    50,    51,
749       52,    53,    54,    55,    -1,    57,    -1,    59,    -1,    -1,
750       -1,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,
751       -1,    -1,    -1,    -1,    -1,    77,    78,    79,    -1,    -1,
752       -1,    -1,    84,    85,    -1,    87,    88,     5,    -1,     7,
753        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
754       -1,    19,    20,    21,    -1,    -1,    -1,    25,    -1,    -1,
755       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
756       -1,    39,    -1,    41,    42,    43,    44,    45,    -1,    -1,
757       -1,    -1,    50,    51,    52,    53,    54,    55,    -1,    57,
758       -1,    59,    -1,    -1,    -1,    -1,    -1,    65,    -1,    -1,
759       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    77,
760       78,    79,    -1,    -1,    -1,    -1,    84,    85,    -1,    87,
761       88,     5,    -1,     7,     8,     9,    10,    11,    12,    13,
762       14,    15,    16,    17,    -1,    19,    20,    21,    -1,    -1,
763       -1,    25,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
764       -1,    -1,    -1,    -1,    -1,    39,    -1,    41,    42,    43,
765       44,    45,    -1,    -1,    -1,    -1,    50,    51,    52,    53,
766       54,    55,    -1,    57,    -1,    59,    -1,    -1,    -1,    -1,
767       -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
768       -1,    -1,    -1,    77,    78,    79,    -1,    -1,    -1,    -1,
769       84,    85,    -1,    87,    88,     5,    -1,     7,     8,     9,
770       10,    11,    12,    13,    14,    15,    16,    17,    -1,    19,
771       20,    21,    -1,    -1,    -1,    25,    -1,    -1,    -1,    -1,
772       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,
773       -1,    41,    42,    43,    44,    45,    -1,    -1,    -1,    -1,
774       50,    51,    52,    53,    54,    55,    -1,    57,    -1,    59,
775       -1,    -1,    -1,    -1,    -1,    65,    -1,    -1,    -1,    -1,
776       -1,    -1,    -1,    -1,    -1,    -1,    -1,    77,    78,    79,
777       -1,    -1,    -1,    -1,    84,    85,    -1,    87,    88,     5,
778       -1,     7,     8,     9,    10,    11,    12,    13,    14,    15,
779       16,    17,    -1,    19,    20,    21,    -1,    -1,    -1,    25,
780       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
781       -1,    -1,    -1,    39,    -1,    41,    42,    43,    44,    45,
782       -1,    -1,    -1,    -1,    50,    51,    52,    53,    54,    55,
783       -1,    57,    -1,    59,    -1,    -1,    -1,    -1,    -1,    65,
784       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
785       -1,    77,    78,    79,    -1,    -1,    -1,    -1,    84,    85,
786       -1,    87,    88,     5,    -1,     7,     8,     9,    10,    11,
787       12,    13,    14,    15,    16,    17,    -1,    19,    20,    21,
788       -1,    -1,    -1,    25,    -1,    -1,    -1,    -1,    -1,    -1,
789       -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    -1,    41,
790       42,    43,    44,    45,    -1,    -1,    -1,    -1,    50,    51,
791       52,    53,    54,    55,    -1,    57,    -1,    59,    -1,    -1,
792       -1,    -1,    -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,
793       -1,    -1,    -1,    -1,    -1,    77,    78,    79,    -1,    -1,
794       -1,    -1,    84,    85,    -1,    87,    88,     5,    -1,     7,
795        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
796       -1,    19,    20,    21,    -1,    -1,    -1,    25,    -1,    -1,
797       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
798       -1,    39,    -1,    41,    42,    43,    44,    45,    -1,    -1,
799       -1,    -1,    50,    51,    52,    53,    54,    55,    -1,    57,
800       -1,    59,    -1,    -1,    -1,    -1,    -1,    65,    -1,    -1,
801       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    77,
802       78,    79,    -1,    -1,    -1,    -1,    84,    85,    -1,    87,
803       88,     5,    -1,     7,     8,     9,    10,    11,    12,    13,
804       14,    15,    16,    17,    -1,    19,    20,    21,    -1,    -1,
805       -1,    25,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
806       -1,    -1,    -1,    -1,    -1,    39,    -1,    41,    42,    43,
807       44,    45,    -1,    -1,    -1,    -1,    50,    51,    52,    53,
808       54,    55,    -1,    57,     6,    59,    -1,    -1,    -1,    -1,
809       -1,    65,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
810       -1,    -1,    -1,    77,    78,    79,    28,    29,    30,    31,
811       84,    85,    -1,    35,    88,    -1,    -1,    -1,    40,    -1,
812       -1,    -1,    -1,    -1,    46,    47,    48,    49,    -1,    -1,
813       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    60,    -1,
814       62,    63,    64,    -1,    66,    67,    68,    69,    70,    71,
815       72,    73,    74,    75,    76,    -1,   356,    -1,   358,    81,
816       82,    83,   362,    -1,    86,    87,    -1,    -1,    -1,    -1,
817       -1,    -1,    -1,    -1,    -1,    -1,    -1,   377,   378,    -1,
818       -1,    -1,    -1,    -1,    -1,   385,   386,    -1,    -1,    -1,
819       -1,    -1,    -1,    40,   394,    -1,    -1,    -1,   398,    46,
820       47,    48,    49,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
821       -1,    -1,    -1,    -1,    -1,   415,   416,    -1,    -1,    -1,
822       67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
823       -1,    -1,    -1,    -1,    81,    82,    83,    40,    -1,    86,
824       -1,    -1,    -1,    46,    47,    48,    49,    -1,    -1,    -1,
825       -1,    -1,    -1,    -1,    40,    -1,    -1,    -1,    -1,    -1,
826       46,    47,    48,    49,    67,    68,    -1,    70,    71,    72,
827       73,    74,    75,    76,    -1,    -1,    -1,    -1,    81,    82,
828       83,    -1,    68,    86,    70,    71,    72,    73,    74,    75,
829       76,    -1,    -1,    -1,    -1,    81,    82,    83,    40,    -1,
830       86,    -1,    -1,    -1,    46,    47,    48,    49,    -1,    -1,
831       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
832       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    70,    71,
833       72,    73,    74,    75,    76,    -1,    -1,    -1,    -1,    81,
834       82,    83,    -1,    -1,    86
835 };
836
837 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
838    symbol of state STATE-NUM.  */
839 static const unsigned char yystos[] =
840 {
841        0,    91,    95,     0,    99,    23,    24,    26,    27,    56,
842       89,    98,   116,   117,   118,   120,   121,   130,   131,   124,
843      122,    13,   122,   122,    22,   100,   106,   107,   115,    13,
844      119,    13,   125,    60,   132,   125,     1,     3,     5,     7,
845        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
846       19,    20,    21,    25,    28,    29,    30,    31,    35,    36,
847       37,    38,    39,    41,    42,    43,    44,    45,    50,    51,
848       52,    53,    54,    55,    57,    59,    60,    65,    77,    78,
849       79,    84,    85,    88,    92,   101,   103,   104,   133,   134,
850      135,   138,   139,   140,   141,   142,   143,   144,   149,   150,
851      151,   152,   153,   154,    92,    16,   126,    13,   126,    93,
852        6,   133,   143,   143,    13,    18,    92,   150,   155,   155,
853      155,   155,   155,   155,    88,   143,   123,   123,    88,    88,
854       88,    88,    55,    88,   150,    88,    88,    92,   143,    88,
855       88,    88,    92,   143,    13,   134,   146,   150,   155,   155,
856       13,    92,   143,   150,    60,   133,    13,   143,    88,   145,
857      150,   151,   152,   143,   155,   134,   143,   143,   143,   143,
858      143,    87,   133,    34,   105,    60,    28,    29,    30,    31,
859       35,    62,    63,    64,    66,     3,     5,    88,    40,    46,
860       47,    48,    49,    67,    68,    70,    71,    72,    73,    74,
861       75,    76,    81,    82,    83,    86,    88,     3,     5,     3,
862        5,     3,    58,   127,    13,   127,    99,     6,   146,    88,
863      134,    92,   126,    93,    93,    93,    93,    93,    93,    88,
864       93,    93,    87,    87,   133,   133,   147,   155,   134,    88,
865       88,     4,    60,   146,    87,   133,    58,   128,     5,    87,
866       92,   133,   111,   133,   133,   133,   133,   133,   133,   133,
867      143,   133,   133,    87,   133,   143,   143,   143,   143,   143,
868      143,   143,   143,   143,   143,   143,   143,   143,   143,   143,
869        3,     5,    14,    88,   137,   150,    87,   133,   133,   133,
870      133,   133,   133,    16,    60,    92,   129,   146,   129,     4,
871      147,    87,   136,   127,   110,   133,   111,   112,   133,   111,
872      114,   148,   150,   101,   109,   112,   113,   133,    93,    94,
873      112,    87,    66,    87,   133,    87,   133,    87,   133,     4,
874       87,    16,   133,     5,    60,     6,    87,    69,   133,   133,
875       87,   133,    88,    87,    60,     6,    60,     6,    60,    60,
876       87,   146,    92,    87,    87,    87,    87,    88,    87,    60,
877      112,   112,    87,    87,    87,    87,     6,   133,     4,   143,
878       60,     6,    87,   147,     4,     4,     4,   108,   108,     3,
879       96,    96,   112,    96,   110,    87,    87,    96,     6,     4,
880       87,    96,    96,    97,    32,    33,   102,   102,    87,   105,
881       60,    96,    96,   105,   105,    99,    96,    88,    96,   108,
882      105,     4,   112,   105,   113,    87,    87,    96,    96,   102
883 };
884 /* which symbols are of type opval */
885 static const int yy_is_opval[] =
886 {
887   0, 0, 0, 0, 0, 0, 0, 0, 0,
888   0, 0, 0, 0, 1, 1, 1, 1,
889   1, 1, 1, 1, 1, 0,
890   0, 0, 0, 0, 0, 0, 0, 0,
891   0, 0, 0, 0, 0, 0, 0, 0,
892   0, 0, 0, 0, 0, 0, 0, 0,
893   0, 0, 0, 0, 0, 0, 0,
894   0, 0, 0, 0, 0, 0, 0, 0,
895   0, 0, 0, 0, 0, 0, 0, 0,
896   0, 0, 0, 0, 0, 0, 0,
897   0, 0, 0, 0, 0, 0, 0,
898   0, 0, 0, 0, 0, 0, 0, 0,
899   1, 0, 0, 0, 1, 0,
900   0, 1, 1, 1, 1, 1, 1, 1,
901   1, 1, 0, 1, 1, 1, 1, 1,
902   1, 0, 1, 1, 1, 1, 1,
903   1, 0, 0, 0, 1,
904   1, 1, 1, 1, 1, 1, 0,
905   1, 1, 1, 0, 1, 1, 1,
906   1, 1, 1, 1, 1, 1,
907   1, 1, 1, 1, 1, 1, 1,
908   1, 1, 1, 0
909
910 };