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