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