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