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