1 /* A Bison parser, made by GNU Bison 2.5. */
3 /* Bison implementation for Yacc-like parsers in C
5 Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
7 This program is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
20 /* As a special exception, you may create a larger work that contains
21 part or all of the Bison parser skeleton and distribute that work
22 under terms of your choice, so long as that work isn't itself a
23 parser generator using the skeleton or a modified version thereof
24 as a parser skeleton. Alternatively, if you modify or redistribute
25 the parser skeleton itself, you may (at your option) remove this
26 special exception, which will cause the skeleton and the resulting
27 Bison output files to be licensed under the GNU General Public
28 License without this special exception.
30 This special exception was added by the Free Software Foundation in
31 version 2.2 of Bison. */
33 /* C LALR(1) parser skeleton written by Richard Stallman, by
34 simplifying the original so-called "semantic" parser. */
36 /* All symbols defined below should begin with yy or YY, to avoid
37 infringing on user name space. This should be done even for local
38 variables, as they might otherwise be expanded by user macros.
39 There are some unavoidable exceptions within include files to
40 define necessary library symbols; they are noted "INFRINGES ON
41 USER NAME SPACE" below. */
43 /* Identify Bison output. */
47 #define YYBISON_VERSION "2.5"
50 #define YYSKELETON_NAME "yacc.c"
61 /* Using locations. */
62 #define YYLSP_NEEDED 1
64 /* Substitute the variable and function names. */
65 #define yyparse Compilerparse
66 #define yylex Compilerlex
67 #define yyerror Compilererror
68 #define yylval Compilerlval
69 #define yychar Compilerchar
70 #define yydebug Compilerdebug
71 #define yynerrs Compilernerrs
72 #define yylloc Compilerlloc
74 /* Copy the first part of user declarations. */
76 /* Line 268 of yacc.c */
80 #include "hphp/parser/xhpast2/parser.h"
82 #include "hphp/compiler/parser/parser.h"
84 #include "hphp/util/util.h"
85 #include "hphp/util/logger.h"
88 #define YYSTYPE HPHP::HPHP_PARSER_NS::Token
89 #define YYSTYPE_IS_TRIVIAL 1
90 #define YYLTYPE HPHP::Location
91 #define YYLTYPE_IS_TRIVIAL 1
92 #define YYERROR_VERBOSE
93 #define YYINITDEPTH 500
94 #define YYLEX_PARAM _p
99 #define yyerror(loc,p,msg) p->parseFatal(loc,msg)
101 #ifdef YYLLOC_DEFAULT
102 # undef YYLLOC_DEFAULT
104 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
105 #define YYLLOC_DEFAULT(Current, Rhs, N) \
108 (Current).first(YYRHSLOC (Rhs, 1)); \
109 (Current).last (YYRHSLOC (Rhs, N)); \
111 (Current).line0 = (Current).line1 = YYRHSLOC (Rhs, 0).line1; \
112 (Current).char0 = (Current).char1 = YYRHSLOC (Rhs, 0).char1; \
115 _p->setRuleLocation(&Current);
117 #define YYCOPY(To, From, Count) \
120 for (yyi = 0; yyi < (Count); yyi++) { \
121 (To)[yyi] = (From)[yyi]; \
123 if (From != From ## a) { \
124 YYSTACK_FREE (From); \
129 #define YYCOPY_RESET(To, From, Count) \
133 for (yyi = 0; yyi < (Count); yyi++) { \
134 (To)[yyi] = (From)[yyi]; \
135 (From)[yyi].reset(); \
137 if (From != From ## a) { \
138 YYSTACK_FREE (From); \
143 #define YYTOKEN_RESET(From, Count) \
147 for (yyi = 0; yyi < (Count); yyi++) { \
148 (From)[yyi].reset(); \
150 if (From != From ## a) { \
151 YYSTACK_FREE (From); \
156 # define YYSTACK_RELOCATE_RESET(Stack_alloc, Stack) \
159 YYSIZE_T yynewbytes; \
160 YYCOPY_RESET (&yyptr->Stack_alloc, Stack, yysize); \
161 Stack = &yyptr->Stack_alloc; \
162 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
163 yyptr += yynewbytes / sizeof (*yyptr); \
167 #define YYSTACK_CLEANUP \
168 YYTOKEN_RESET (yyvs, yystacksize); \
169 if (yyvs != yyvsa) { \
170 YYSTACK_FREE (yyvs); \
172 if (yyls != yylsa) { \
173 YYSTACK_FREE (yyls); \
178 #define BEXP(e...) _p->onBinaryOpExp(e);
179 #define UEXP(e...) _p->onUnaryOpExp(e);
181 using namespace HPHP::HPHP_PARSER_NS
;
183 typedef HPHP::ClosureType ClosureType
;
185 ///////////////////////////////////////////////////////////////////////////////
188 static void scalar_num(Parser
*_p
, Token
&out
, const char *num
) {
191 _p
->onScalar(out
, T_LNUMBER
, t
);
194 static void scalar_num(Parser
*_p
, Token
&out
, int num
) {
196 t
.setText(boost::lexical_cast
<std::string
>(num
));
197 _p
->onScalar(out
, T_LNUMBER
, t
);
200 static void scalar_null(Parser
*_p
, Token
&out
) {
201 Token tnull
; tnull
.setText("null");
202 _p
->onConstantValue(out
, tnull
);
205 static void scalar_file(Parser
*_p
, Token
&out
) {
206 Token file
; file
.setText("__FILE__");
207 _p
->onScalar(out
, T_FILE
, file
);
210 static void scalar_line(Parser
*_p
, Token
&out
) {
211 Token line
; line
.setText("__LINE__");
212 _p
->onScalar(out
, T_LINE
, line
);
215 ///////////////////////////////////////////////////////////////////////////////
216 // converting constant declartion to "define(name, value);"
218 static void on_constant(Parser
*_p
, Token
&out
, Token
&name
, Token
&value
) {
219 Token sname
; _p
->onScalar(sname
, T_CONSTANT_ENCAPSED_STRING
, name
);
221 Token fname
; fname
.setText("define");
222 Token params1
; _p
->onCallParam(params1
, NULL
, sname
, 0);
223 Token params2
; _p
->onCallParam(params2
, ¶ms1
, value
, 0);
224 Token call
; _p
->onCall(call
, 0, fname
, params2
, 0);
226 _p
->onExpStatement(out
, call
);
229 ///////////////////////////////////////////////////////////////////////////////
231 static void constant_ae(Parser
*_p
, Token
&out
, Token
&value
) {
232 const std::string
& valueStr
= value
.text();
233 if (valueStr
.size() < 3 || valueStr
.size() > 5 ||
234 (strcasecmp("true", valueStr
.c_str()) != 0 &&
235 strcasecmp("false", valueStr
.c_str()) != 0 &&
236 strcasecmp("null", valueStr
.c_str()) != 0 &&
237 strcasecmp("inf", valueStr
.c_str()) != 0 &&
238 strcasecmp("nan", valueStr
.c_str()) != 0)) {
239 HPHP_PARSER_ERROR("User-defined constants are not allowed in user "
240 "attribute expressions", _p
);
242 _p
->onConstantValue(out
, value
);
245 ///////////////////////////////////////////////////////////////////////////////
248 * XHP functions: They are defined here, so different parsers don't have to
249 * handle XHP rules at all.
252 static void xhp_tag(Parser
*_p
, Token
&out
, Token
&label
, Token
&body
) {
253 if (!body
.text().empty() && body
.text() != label
.text()) {
254 HPHP_PARSER_ERROR("XHP: mismatched tag: '%s' not the same as '%s'",
255 _p
, body
.text().c_str(), label
.text().c_str());
259 Token name
; _p
->onName(name
, label
, Parser::StringName
);
260 _p
->onNewObject(out
, name
, body
);
263 static void xhp_attribute(Parser
*_p
, Token
&out
, Token
&type
, Token
&label
,
264 Token
&def
, Token
&req
) {
266 * The basic builtin types "bool", "int", "double", and "string" all map to
267 * T_STRING in the parser, and the parser always uses type code 5 for
268 * T_STRING. However, XHP uses different type codes for these basic builtin
269 * types, so we need to fix up the type code here to make XHP happy.
271 if (type
.num() == 5 && type
.text().size() >= 3 && type
.text().size() <= 7) {
272 switch (type
.text()[0]) {
274 if ((type
.text().size() == 4 &&
275 strcasecmp(type
.text().c_str(), "bool") == 0) ||
276 (type
.text().size() == 7 &&
277 strcasecmp(type
.text().c_str(), "boolean") == 0)) {
283 if (type
.text().size() == 6 &&
284 strcasecmp(type
.text().c_str(), "double") == 0) {
290 if (type
.text().size() == 5 &&
291 strcasecmp(type
.text().c_str(), "float") == 0) {
297 if ((type
.text().size() == 3 &&
298 strcasecmp(type
.text().c_str(), "int") == 0) ||
299 (type
.text().size() == 7 &&
300 strcasecmp(type
.text().c_str(), "integer") == 0)) {
306 if ((type
.text().size() == 5 &&
307 strcasecmp(type
.text().c_str(), "mixed") == 0)) {
313 if (type
.text().size() == 4 &&
314 strcasecmp(type
.text().c_str(), "real") == 0) {
320 if (type
.text().size() == 6 &&
321 strcasecmp(type
.text().c_str(), "string") == 0) {
331 Token num
; scalar_num(_p
, num
, type
.num());
332 Token arr1
; _p
->onArrayPair(arr1
, 0, 0, num
, 0);
335 switch (type
.num()) {
336 case 5: /* class */ {
337 Token cls
; _p
->onScalar(cls
, T_CONSTANT_ENCAPSED_STRING
, type
);
338 _p
->onArrayPair(arr2
, &arr1
, 0, cls
, 0);
342 Token arr
; _p
->onArray(arr
, type
);
343 _p
->onArrayPair(arr2
, &arr1
, 0, arr
, 0);
347 Token tnull
; scalar_null(_p
, tnull
);
348 _p
->onArrayPair(arr2
, &arr1
, 0, tnull
, 0);
353 Token arr3
; _p
->onArrayPair(arr3
, &arr2
, 0, def
, 0);
354 Token arr4
; _p
->onArrayPair(arr4
, &arr3
, 0, req
, 0);
355 _p
->onArray(out
, arr4
);
359 static void xhp_attribute_list(Parser
*_p
, Token
&out
, Token
*list
,
361 if (decl
.num() == 0) {
365 out
.setText(list
->text() + ":" + decl
.text()); // avoiding vector<string>
370 Token name
; _p
->onScalar(name
, T_CONSTANT_ENCAPSED_STRING
, decl
);
371 _p
->onArrayPair(out
, list
, &name
, decl
, 0);
373 out
.setText(list
->text());
380 static void xhp_attribute_stmt(Parser
*_p
, Token
&out
, Token
&attributes
) {
382 Token fname
; fname
.setText("__xhpAttributeDeclaration");
385 Token m1
; m1
.setNum(T_PROTECTED
); _p
->onMemberModifier(m
, NULL
, m1
);
386 Token m2
; m2
.setNum(T_STATIC
); _p
->onMemberModifier(modifiers
, &m
, m2
);
388 _p
->pushFuncLocation();
389 _p
->onMethodStart(fname
, modifiers
);
391 std::vector
<std::string
> classes
;
392 HPHP::Util::split(':', attributes
.text().c_str(), classes
, true);
393 Token arrAttributes
; _p
->onArray(arrAttributes
, attributes
);
399 _p
->onStatementListStart(stmts0
);
404 Token one
; scalar_num(_p
, one
, "1");
405 Token mone
; UEXP(mone
, one
, '-', 1);
406 Token var
; var
.set(T_VARIABLE
, "_");
407 Token decl
; _p
->onStaticVariable(decl
, 0, var
, &mone
);
408 Token sdecl
; _p
->onStatic(sdecl
, decl
);
409 _p
->addStatement(stmts1
, stmts0
, sdecl
);
414 // $_ = array_merge(parent::__xhpAttributeDeclaration(),
417 Token parent
; parent
.set(T_STRING
, "parent");
418 Token cls
; _p
->onName(cls
, parent
, Parser::StringName
);
419 Token fname
; fname
.setText("__xhpAttributeDeclaration");
420 Token param1
; _p
->onCall(param1
, 0, fname
, dummy
, &cls
);
421 Token params1
; _p
->onCallParam(params1
, NULL
, param1
, 0);
423 for (unsigned int i
= 0; i
< classes
.size(); i
++) {
424 Token parent
; parent
.set(T_STRING
, classes
[i
]);
425 Token cls
; _p
->onName(cls
, parent
, Parser::StringName
);
426 Token fname
; fname
.setText("__xhpAttributeDeclaration");
427 Token param
; _p
->onCall(param
, 0, fname
, dummy
, &cls
);
429 Token params
; _p
->onCallParam(params
, ¶ms1
, param
, 0);
433 Token params2
; _p
->onCallParam(params2
, ¶ms1
, arrAttributes
, 0);
435 Token name
; name
.set(T_STRING
, "array_merge");
436 Token call
; _p
->onCall(call
, 0, name
, params2
, NULL
);
437 Token tvar
; tvar
.set(T_VARIABLE
, "_");
438 Token var
; _p
->onSimpleVariable(var
, tvar
);
439 Token assign
; _p
->onAssign(assign
, var
, call
, 0);
440 Token exp
; _p
->onExpStatement(exp
, assign
);
441 Token block
; _p
->onBlock(block
, exp
);
443 Token tvar2
; tvar2
.set(T_VARIABLE
, "_");
444 Token var2
; _p
->onSimpleVariable(var2
, tvar2
);
445 Token one
; scalar_num(_p
, one
, "1");
446 Token mone
; UEXP(mone
, one
, '-', 1);
447 Token cond
; BEXP(cond
, var2
, mone
, T_IS_IDENTICAL
);
448 Token dummy1
, dummy2
;
449 Token sif
; _p
->onIf(sif
, cond
, block
, dummy1
, dummy2
);
450 _p
->addStatement(stmts2
, stmts1
, sif
);
455 Token tvar
; tvar
.set(T_VARIABLE
, "_");
456 Token var
; _p
->onSimpleVariable(var
, tvar
);
457 Token ret
; _p
->onReturn(ret
, &var
);
458 _p
->addStatement(stmts3
, stmts2
, ret
);
462 _p
->finishStatement(stmt
, stmts3
);
466 Token params
, ret
, ref
; ref
= 1;
467 _p
->onMethod(out
, modifiers
, ret
, ref
, fname
, params
, stmt
, nullptr, false);
471 static void xhp_collect_attributes(Parser
*_p
, Token
&out
, Token
&stmts
) {
472 Token
*attr
= _p
->xhpGetAttributes();
475 xhp_attribute_stmt(_p
, stmt
, *attr
);
476 _p
->onClassStatement(out
, stmts
, stmt
);
482 static void xhp_category_stmt(Parser
*_p
, Token
&out
, Token
&categories
) {
483 Token fname
; fname
.setText("__xhpCategoryDeclaration");
484 Token m1
; m1
.setNum(T_PROTECTED
);
485 Token modifiers
; _p
->onMemberModifier(modifiers
, 0, m1
);
486 _p
->pushFuncLocation();
487 _p
->onMethodStart(fname
, modifiers
);
491 _p
->onStatementListStart(stmts0
);
495 // static $_ = categories;
496 Token arr
; _p
->onArray(arr
, categories
);
497 Token var
; var
.set(T_VARIABLE
, "_");
498 Token decl
; _p
->onStaticVariable(decl
, 0, var
, &arr
);
499 Token sdecl
; _p
->onStatic(sdecl
, decl
);
500 _p
->addStatement(stmts1
, stmts0
, sdecl
);
505 Token tvar
; tvar
.set(T_VARIABLE
, "_");
506 Token var
; _p
->onSimpleVariable(var
, tvar
);
507 Token ret
; _p
->onReturn(ret
, &var
);
508 _p
->addStatement(stmts2
, stmts1
, ret
);
512 _p
->finishStatement(stmt
, stmts2
);
516 Token params
, ret
, ref
; ref
= 1;
517 _p
->onMethod(out
, modifiers
, ret
, ref
, fname
, params
, stmt
, nullptr, false);
521 static void xhp_children_decl_tag(Parser
*_p
, Token
&arr
, Token
&tag
) {
522 Token num
; scalar_num(_p
, num
, tag
.num());
523 Token arr1
; _p
->onArrayPair(arr1
, &arr
, 0, num
, 0);
526 if (tag
.num() == 3 || tag
.num() == 4) {
527 _p
->onScalar(name
, T_CONSTANT_ENCAPSED_STRING
, tag
);
528 } else if (tag
.num() >= 0) {
529 scalar_null(_p
, name
);
531 HPHP_PARSER_ERROR("XHP: unknown children declaration", _p
);
533 Token arr2
; _p
->onArrayPair(arr2
, &arr1
, 0, name
, 0);
537 static void xhp_children_decl(Parser
*_p
, Token
&out
, Token
&op1
, int op
,
539 Token num
; scalar_num(_p
, num
, op
);
540 Token arr
; _p
->onArrayPair(arr
, 0, 0, num
, 0);
543 Token arr1
; _p
->onArrayPair(arr1
, &arr
, 0, op1
, 0);
544 Token arr2
; _p
->onArrayPair(arr2
, &arr1
, 0, *op2
, 0);
545 _p
->onArray(out
, arr2
);
547 xhp_children_decl_tag(_p
, arr
, op1
);
548 _p
->onArray(out
, arr
);
552 static void xhp_children_paren(Parser
*_p
, Token
&out
, Token exp
, int op
) {
553 Token num
; scalar_num(_p
, num
, op
);
554 Token arr1
; _p
->onArrayPair(arr1
, 0, 0, num
, 0);
556 Token num5
; scalar_num(_p
, num5
, 5);
557 Token arr2
; _p
->onArrayPair(arr2
, &arr1
, 0, num5
, 0);
559 Token arr3
; _p
->onArrayPair(arr3
, &arr2
, 0, exp
, 0);
560 _p
->onArray(out
, arr3
);
563 static void xhp_children_stmt(Parser
*_p
, Token
&out
, Token
&children
) {
564 Token fname
; fname
.setText("__xhpChildrenDeclaration");
565 Token m1
; m1
.setNum(T_PROTECTED
);
566 Token modifiers
; _p
->onMemberModifier(modifiers
, 0, m1
);
567 _p
->pushFuncLocation();
568 _p
->onMethodStart(fname
, modifiers
);
572 _p
->onStatementListStart(stmts0
);
576 // static $_ = children;
578 if (children
.num() == 2) {
580 } else if (children
.num() >= 0) {
581 scalar_num(_p
, arr
, children
.num());
583 HPHP_PARSER_ERROR("XHP: XHP unknown children declaration", _p
);
585 Token var
; var
.set(T_VARIABLE
, "_");
586 Token decl
; _p
->onStaticVariable(decl
, 0, var
, &arr
);
587 Token sdecl
; _p
->onStatic(sdecl
, decl
);
588 _p
->addStatement(stmts1
, stmts0
, sdecl
);
593 Token tvar
; tvar
.set(T_VARIABLE
, "_");
594 Token var
; _p
->onSimpleVariable(var
, tvar
);
595 Token ret
; _p
->onReturn(ret
, &var
);
596 _p
->addStatement(stmts2
, stmts1
, ret
);
600 _p
->finishStatement(stmt
, stmts2
);
604 Token params
, ret
, ref
; ref
= 1;
605 _p
->onMethod(out
, modifiers
, ret
, ref
, fname
, params
, stmt
, nullptr, false);
609 static void only_in_hh_syntax(Parser
*_p
) {
610 if (!_p
->scanner().isHHSyntaxEnabled()) {
612 "Syntax only allowed with -v Eval.EnableHipHopSyntax=true", _p
);
616 // Shapes may not have leading integers in key names, considered as a
617 // parse time error. This is because at runtime they are currently
618 // hphp arrays, which will treat leading integer keys as numbers.
619 static void validate_shape_keyname(Token
& tok
, Parser
* _p
) {
620 if (tok
.text().empty()) {
621 HPHP_PARSER_ERROR("Shape key names may not be empty", _p
);
623 if (isdigit(tok
.text()[0])) {
624 HPHP_PARSER_ERROR("Shape key names may not start with integers", _p
);
628 ///////////////////////////////////////////////////////////////////////////////
630 static int yylex(YYSTYPE
*token
, HPHP::Location
*loc
, Parser
*_p
) {
631 return _p
->scan(token
, loc
);
635 /* Line 268 of yacc.c */
636 #line 637 "hphp.tab.cpp"
638 /* Enabling traces. */
643 /* Enabling verbose error messages. */
644 #ifdef YYERROR_VERBOSE
645 # undef YYERROR_VERBOSE
646 # define YYERROR_VERBOSE 1
648 # define YYERROR_VERBOSE 0
651 /* Enabling the token table. */
652 #ifndef YYTOKEN_TABLE
653 # define YYTOKEN_TABLE 0
660 /* Put the tokens into the symbol table, so that GDB and other debuggers
663 T_REQUIRE_ONCE
= 258,
666 T_INCLUDE_ONCE
= 261,
668 T_LAMBDA_ARROW
= 263,
679 T_CONCAT_EQUAL
= 274,
686 T_IS_NOT_IDENTICAL
= 281,
687 T_IS_IDENTICAL
= 282,
688 T_IS_NOT_EQUAL
= 283,
690 T_IS_GREATER_OR_EQUAL
= 285,
691 T_IS_SMALLER_OR_EQUAL
= 286,
714 T_STRING_VARNAME
= 309,
719 T_BAD_CHARACTER
= 314,
720 T_ENCAPSED_AND_WHITESPACE
= 315,
721 T_CONSTANT_ENCAPSED_STRING
= 316,
758 T_HALT_COMPILER
= 353,
763 T_OBJECT_OPERATOR
= 358,
764 T_DOUBLE_ARROW
= 359,
775 T_OPEN_TAG_WITH_ECHO
= 370,
778 T_START_HEREDOC
= 373,
780 T_DOLLAR_OPEN_CURLY_BRACES
= 375,
782 T_DOUBLE_COLON
= 377,
786 T_NS_SEPARATOR
= 381,
790 T_XHP_ATTRIBUTE
= 385,
791 T_XHP_CATEGORY
= 386,
792 T_XHP_CATEGORY_LABEL
= 387,
793 T_XHP_CHILDREN
= 388,
795 T_XHP_REQUIRED
= 390,
806 T_UNRESOLVED_LT
= 401,
810 T_UNRESOLVED_TYPE
= 405,
812 T_UNRESOLVED_NEWTYPE
= 407,
813 T_COMPILER_HALT_OFFSET
= 408,
833 T_UNRESOLVED_OP
= 428
839 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
841 # define YYSTYPE_IS_TRIVIAL 1
842 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
843 # define YYSTYPE_IS_DECLARED 1
846 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
847 typedef struct YYLTYPE
854 # define yyltype YYLTYPE /* obsolescent; will be withdrawn */
855 # define YYLTYPE_IS_DECLARED 1
856 # define YYLTYPE_IS_TRIVIAL 1
860 /* Copy the second part of user declarations. */
863 /* Line 343 of yacc.c */
864 #line 865 "hphp.tab.cpp"
871 typedef YYTYPE_UINT8 yytype_uint8
;
873 typedef unsigned char yytype_uint8
;
877 typedef YYTYPE_INT8 yytype_int8
;
878 #elif (defined __STDC__ || defined __C99__FUNC__ \
879 || defined __cplusplus || defined _MSC_VER)
880 typedef signed char yytype_int8
;
882 typedef short int yytype_int8
;
886 typedef YYTYPE_UINT16 yytype_uint16
;
888 typedef unsigned short int yytype_uint16
;
892 typedef YYTYPE_INT16 yytype_int16
;
894 typedef short int yytype_int16
;
898 # ifdef __SIZE_TYPE__
899 # define YYSIZE_T __SIZE_TYPE__
900 # elif defined size_t
901 # define YYSIZE_T size_t
902 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
903 || defined __cplusplus || defined _MSC_VER)
904 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
905 # define YYSIZE_T size_t
907 # define YYSIZE_T unsigned int
911 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
914 # if defined YYENABLE_NLS && YYENABLE_NLS
916 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
917 # define YY_(msgid) dgettext ("bison-runtime", msgid)
921 # define YY_(msgid) msgid
925 /* Suppress unused-variable warnings by "using" E. */
926 #if ! defined lint || defined __GNUC__
927 # define YYUSE(e) ((void) (e))
929 # define YYUSE(e) /* empty */
932 /* Identity function, used to suppress warnings about constant conditions. */
936 #if (defined __STDC__ || defined __C99__FUNC__ \
937 || defined __cplusplus || defined _MSC_VER)
950 #if ! defined yyoverflow || YYERROR_VERBOSE
952 /* The parser invokes alloca or malloc; define the necessary symbols. */
954 # ifdef YYSTACK_USE_ALLOCA
955 # if YYSTACK_USE_ALLOCA
957 # define YYSTACK_ALLOC __builtin_alloca
958 # elif defined __BUILTIN_VA_ARG_INCR
959 # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
961 # define YYSTACK_ALLOC __alloca
962 # elif defined _MSC_VER
963 # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
964 # define alloca _alloca
966 # define YYSTACK_ALLOC alloca
967 # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
968 || defined __cplusplus || defined _MSC_VER)
969 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
970 # ifndef EXIT_SUCCESS
971 # define EXIT_SUCCESS 0
978 # ifdef YYSTACK_ALLOC
979 /* Pacify GCC's `empty if-body' warning. */
980 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
981 # ifndef YYSTACK_ALLOC_MAXIMUM
982 /* The OS might guarantee only one guard page at the bottom of the stack,
983 and a page size can be as small as 4096 bytes. So we cannot safely
984 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
985 to allow for a few compiler-allocated temporary stack slots. */
986 # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
989 # define YYSTACK_ALLOC YYMALLOC
990 # define YYSTACK_FREE YYFREE
991 # ifndef YYSTACK_ALLOC_MAXIMUM
992 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
994 # if (defined __cplusplus && ! defined EXIT_SUCCESS \
995 && ! ((defined YYMALLOC || defined malloc) \
996 && (defined YYFREE || defined free)))
997 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
998 # ifndef EXIT_SUCCESS
999 # define EXIT_SUCCESS 0
1003 # define YYMALLOC malloc
1004 # if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
1005 || defined __cplusplus || defined _MSC_VER)
1006 void *malloc (YYSIZE_T
); /* INFRINGES ON USER NAME SPACE */
1010 # define YYFREE free
1011 # if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
1012 || defined __cplusplus || defined _MSC_VER)
1013 void free (void *); /* INFRINGES ON USER NAME SPACE */
1017 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
1020 #if (! defined yyoverflow \
1021 && (! defined __cplusplus \
1022 || (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \
1023 && defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
1025 /* A type that is properly aligned for any stack member. */
1028 yytype_int16 yyss_alloc
;
1033 /* The size of the maximum gap between one aligned stack and the next. */
1034 # define YYSTACK_GAP_MAXIMUM (sizeof (struct yyalloc) - 1)
1036 /* The size of an array large to enough to hold all stacks, each with
1038 # define YYSTACK_BYTES(N) \
1039 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
1040 + 2 * YYSTACK_GAP_MAXIMUM)
1042 # define YYCOPY_NEEDED 1
1044 /* Relocate STACK from its old location to the new one. The
1045 local variables YYSIZE and YYSTACKSIZE give the old and new number of
1046 elements in the stack, and YYPTR gives the new location of the
1047 stack. Advance YYPTR to a properly aligned location for the next
1049 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
1052 YYSIZE_T yynewbytes; \
1053 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
1054 Stack = &yyptr->Stack_alloc; \
1055 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
1056 yyptr += yynewbytes / sizeof (*yyptr); \
1062 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
1063 /* Copy COUNT objects from FROM to TO. The source and destination do
1066 # if defined __GNUC__ && 1 < __GNUC__
1067 # define YYCOPY(To, From, Count) \
1068 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
1070 # define YYCOPY(To, From, Count) \
1074 for (yyi = 0; yyi < (Count); yyi++) \
1075 (To)[yyi] = (From)[yyi]; \
1080 #endif /* !YYCOPY_NEEDED */
1082 /* YYFINAL -- State number of the termination state. */
1084 /* YYLAST -- Last index in YYTABLE. */
1085 #define YYLAST 14553
1087 /* YYNTOKENS -- Number of terminals. */
1088 #define YYNTOKENS 203
1089 /* YYNNTS -- Number of nonterminals. */
1091 /* YYNRULES -- Number of rules. */
1092 #define YYNRULES 817
1093 /* YYNRULES -- Number of states. */
1094 #define YYNSTATES 1527
1096 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
1097 #define YYUNDEFTOK 2
1098 #define YYMAXUTOK 428
1100 #define YYTRANSLATE(YYX) \
1101 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
1103 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
1104 static const yytype_uint8 yytranslate
[] =
1106 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1107 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1108 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1109 2, 2, 2, 49, 201, 2, 198, 48, 32, 202,
1110 193, 194, 46, 43, 9, 44, 45, 47, 2, 2,
1111 2, 2, 2, 2, 2, 2, 2, 2, 27, 195,
1112 37, 14, 38, 26, 52, 2, 2, 2, 2, 2,
1113 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1114 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1115 2, 62, 2, 200, 31, 2, 199, 2, 2, 2,
1116 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1117 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1118 2, 2, 2, 196, 30, 197, 51, 2, 2, 2,
1119 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1120 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1121 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1122 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1123 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1124 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1125 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1126 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1127 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1128 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1129 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1130 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1131 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
1132 5, 6, 7, 8, 10, 11, 12, 13, 15, 16,
1133 17, 18, 19, 20, 21, 22, 23, 24, 25, 28,
1134 29, 33, 34, 35, 36, 39, 40, 41, 42, 50,
1135 53, 54, 55, 56, 57, 58, 59, 60, 61, 63,
1136 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1137 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
1138 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
1139 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1140 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1141 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
1142 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1143 134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
1144 144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
1145 154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
1146 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
1147 174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
1148 184, 185, 186, 187, 188, 189, 190, 191, 192
1152 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
1154 static const yytype_uint16 yyprhs
[] =
1156 0, 0, 3, 4, 7, 10, 11, 13, 15, 17,
1157 19, 21, 26, 30, 31, 38, 39, 45, 49, 52,
1158 54, 56, 58, 60, 62, 64, 66, 68, 70, 72,
1159 74, 76, 78, 80, 82, 84, 86, 88, 90, 92,
1160 96, 98, 100, 103, 107, 112, 114, 118, 120, 124,
1161 127, 129, 132, 135, 141, 146, 149, 150, 152, 154,
1162 156, 158, 162, 168, 177, 178, 183, 184, 191, 192,
1163 203, 204, 209, 212, 216, 219, 223, 226, 230, 234,
1164 238, 242, 246, 252, 254, 256, 257, 267, 273, 274,
1165 288, 289, 295, 299, 303, 306, 309, 312, 315, 318,
1166 321, 325, 328, 331, 335, 338, 339, 344, 354, 355,
1167 356, 361, 364, 365, 367, 368, 370, 371, 381, 382,
1168 393, 394, 406, 407, 416, 417, 427, 428, 436, 437,
1169 446, 447, 455, 456, 465, 467, 469, 471, 473, 475,
1170 478, 481, 484, 485, 488, 489, 492, 493, 495, 499,
1171 501, 505, 508, 509, 511, 514, 519, 521, 526, 528,
1172 533, 535, 540, 542, 547, 551, 557, 561, 566, 571,
1173 577, 583, 588, 589, 591, 593, 598, 599, 605, 606,
1174 609, 610, 614, 615, 619, 622, 624, 625, 630, 636,
1175 644, 651, 658, 666, 676, 685, 689, 692, 694, 695,
1176 699, 704, 711, 717, 723, 730, 739, 747, 750, 751,
1177 753, 756, 760, 765, 769, 771, 773, 776, 781, 785,
1178 791, 793, 797, 800, 801, 802, 807, 808, 814, 817,
1179 818, 829, 830, 842, 846, 850, 854, 859, 864, 868,
1180 874, 877, 880, 881, 888, 894, 899, 903, 905, 907,
1181 911, 916, 918, 920, 922, 924, 929, 931, 935, 938,
1182 939, 942, 943, 945, 949, 951, 953, 955, 957, 961,
1183 966, 971, 976, 978, 980, 983, 986, 989, 993, 997,
1184 999, 1001, 1003, 1005, 1009, 1011, 1015, 1017, 1019, 1021,
1185 1022, 1024, 1027, 1029, 1031, 1033, 1035, 1037, 1039, 1041,
1186 1043, 1044, 1046, 1048, 1050, 1054, 1060, 1062, 1066, 1072,
1187 1077, 1081, 1085, 1088, 1090, 1092, 1096, 1100, 1102, 1104,
1188 1105, 1108, 1113, 1117, 1124, 1127, 1131, 1138, 1140, 1142,
1189 1144, 1151, 1155, 1160, 1167, 1171, 1175, 1179, 1183, 1187,
1190 1191, 1195, 1199, 1203, 1207, 1211, 1214, 1217, 1220, 1223,
1191 1227, 1231, 1235, 1239, 1243, 1247, 1251, 1255, 1259, 1263,
1192 1267, 1271, 1275, 1279, 1283, 1287, 1290, 1293, 1296, 1299,
1193 1303, 1307, 1311, 1315, 1319, 1323, 1327, 1331, 1335, 1339,
1194 1345, 1350, 1352, 1355, 1358, 1361, 1364, 1367, 1370, 1373,
1195 1376, 1379, 1381, 1383, 1385, 1389, 1392, 1394, 1396, 1398,
1196 1404, 1405, 1406, 1418, 1419, 1432, 1433, 1437, 1438, 1445,
1197 1448, 1453, 1455, 1461, 1465, 1471, 1475, 1478, 1479, 1482,
1198 1483, 1488, 1493, 1497, 1502, 1507, 1512, 1517, 1519, 1521,
1199 1525, 1528, 1532, 1537, 1540, 1544, 1546, 1549, 1551, 1554,
1200 1556, 1558, 1560, 1562, 1564, 1566, 1571, 1576, 1579, 1588,
1201 1599, 1602, 1604, 1608, 1610, 1613, 1615, 1617, 1619, 1621,
1202 1624, 1629, 1633, 1637, 1642, 1644, 1647, 1652, 1655, 1662,
1203 1663, 1665, 1670, 1671, 1674, 1675, 1677, 1679, 1683, 1685,
1204 1689, 1691, 1693, 1697, 1701, 1703, 1705, 1707, 1709, 1711,
1205 1713, 1715, 1717, 1719, 1721, 1723, 1725, 1727, 1729, 1731,
1206 1733, 1735, 1737, 1739, 1741, 1743, 1745, 1747, 1749, 1751,
1207 1753, 1755, 1757, 1759, 1761, 1763, 1765, 1767, 1769, 1771,
1208 1773, 1775, 1777, 1779, 1781, 1783, 1785, 1787, 1789, 1791,
1209 1793, 1795, 1797, 1799, 1801, 1803, 1805, 1807, 1809, 1811,
1210 1813, 1815, 1817, 1819, 1821, 1823, 1825, 1827, 1829, 1831,
1211 1833, 1835, 1837, 1839, 1841, 1843, 1845, 1847, 1849, 1851,
1212 1853, 1855, 1857, 1859, 1861, 1866, 1868, 1870, 1872, 1874,
1213 1876, 1878, 1880, 1882, 1885, 1887, 1888, 1889, 1891, 1893,
1214 1897, 1898, 1900, 1902, 1904, 1906, 1908, 1910, 1912, 1914,
1215 1916, 1918, 1920, 1922, 1926, 1929, 1931, 1933, 1936, 1939,
1216 1944, 1949, 1953, 1958, 1960, 1962, 1966, 1970, 1972, 1974,
1217 1976, 1978, 1982, 1986, 1990, 1993, 1994, 1996, 1997, 1999,
1218 2000, 2006, 2010, 2014, 2016, 2018, 2020, 2022, 2026, 2029,
1219 2031, 2033, 2035, 2037, 2039, 2042, 2045, 2050, 2055, 2059,
1220 2064, 2067, 2068, 2074, 2078, 2082, 2084, 2088, 2090, 2093,
1221 2094, 2100, 2104, 2107, 2108, 2112, 2113, 2118, 2121, 2122,
1222 2126, 2130, 2132, 2133, 2135, 2138, 2141, 2146, 2150, 2154,
1223 2157, 2162, 2165, 2170, 2172, 2174, 2176, 2178, 2180, 2183,
1224 2188, 2192, 2197, 2201, 2203, 2205, 2207, 2209, 2212, 2217,
1225 2222, 2226, 2228, 2230, 2234, 2242, 2249, 2258, 2268, 2277,
1226 2288, 2296, 2303, 2312, 2314, 2317, 2322, 2327, 2329, 2331,
1227 2336, 2338, 2339, 2341, 2344, 2346, 2348, 2351, 2356, 2360,
1228 2364, 2365, 2367, 2370, 2375, 2379, 2382, 2386, 2393, 2394,
1229 2396, 2401, 2404, 2405, 2411, 2415, 2419, 2421, 2428, 2433,
1230 2438, 2441, 2444, 2445, 2451, 2455, 2459, 2461, 2464, 2465,
1231 2471, 2475, 2479, 2481, 2484, 2487, 2489, 2492, 2494, 2499,
1232 2503, 2507, 2514, 2518, 2520, 2522, 2524, 2529, 2534, 2539,
1233 2544, 2547, 2550, 2555, 2558, 2561, 2563, 2567, 2571, 2572,
1234 2575, 2581, 2588, 2590, 2593, 2595, 2600, 2604, 2605, 2607,
1235 2611, 2615, 2617, 2619, 2620, 2621, 2624, 2628, 2630, 2636,
1236 2640, 2644, 2648, 2650, 2653, 2654, 2659, 2662, 2665, 2667,
1237 2669, 2671, 2676, 2683, 2685, 2694, 2700, 2702
1240 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
1241 static const yytype_int16 yyrhs
[] =
1243 204, 0, -1, -1, 205, 206, -1, 206, 207, -1,
1244 -1, 221, -1, 237, -1, 241, -1, 246, -1, 435,
1245 -1, 117, 193, 194, 195, -1, 142, 213, 195, -1,
1246 -1, 142, 213, 196, 208, 206, 197, -1, -1, 142,
1247 196, 209, 206, 197, -1, 105, 211, 195, -1, 218,
1248 195, -1, 72, -1, 149, -1, 150, -1, 152, -1,
1249 154, -1, 153, -1, 175, -1, 177, -1, 178, -1,
1250 180, -1, 179, -1, 181, -1, 182, -1, 183, -1,
1251 184, -1, 185, -1, 186, -1, 187, -1, 188, -1,
1252 189, -1, 211, 9, 212, -1, 212, -1, 213, -1,
1253 145, 213, -1, 213, 91, 210, -1, 145, 213, 91,
1254 210, -1, 210, -1, 213, 145, 210, -1, 213, -1,
1255 142, 145, 213, -1, 145, 213, -1, 214, -1, 214,
1256 438, -1, 214, 438, -1, 218, 9, 436, 14, 382,
1257 -1, 100, 436, 14, 382, -1, 219, 220, -1, -1,
1258 221, -1, 237, -1, 241, -1, 246, -1, 196, 219,
1259 197, -1, 66, 314, 221, 268, 270, -1, 66, 314,
1260 27, 219, 269, 271, 69, 195, -1, -1, 83, 314,
1261 222, 262, -1, -1, 82, 223, 221, 83, 314, 195,
1262 -1, -1, 85, 193, 316, 195, 316, 195, 316, 194,
1263 224, 260, -1, -1, 92, 314, 225, 265, -1, 96,
1264 195, -1, 96, 323, 195, -1, 98, 195, -1, 98,
1265 323, 195, -1, 101, 195, -1, 101, 323, 195, -1,
1266 146, 96, 195, -1, 106, 278, 195, -1, 112, 280,
1267 195, -1, 81, 315, 195, -1, 114, 193, 432, 194,
1268 195, -1, 195, -1, 76, -1, -1, 87, 193, 323,
1269 91, 259, 258, 194, 226, 261, -1, 89, 193, 264,
1270 194, 263, -1, -1, 102, 229, 103, 193, 375, 74,
1271 194, 196, 219, 197, 231, 227, 234, -1, -1, 102,
1272 229, 160, 228, 232, -1, 104, 323, 195, -1, 97,
1273 210, 195, -1, 323, 195, -1, 317, 195, -1, 318,
1274 195, -1, 319, 195, -1, 320, 195, -1, 321, 195,
1275 -1, 101, 320, 195, -1, 322, 195, -1, 345, 195,
1276 -1, 101, 344, 195, -1, 210, 27, -1, -1, 196,
1277 230, 219, 197, -1, 231, 103, 193, 375, 74, 194,
1278 196, 219, 197, -1, -1, -1, 196, 233, 219, 197,
1279 -1, 160, 232, -1, -1, 32, -1, -1, 99, -1,
1280 -1, 236, 235, 437, 238, 193, 274, 194, 441, 303,
1281 -1, -1, 307, 236, 235, 437, 239, 193, 274, 194,
1282 441, 303, -1, -1, 402, 306, 236, 235, 437, 240,
1283 193, 274, 194, 441, 303, -1, -1, 252, 249, 242,
1284 253, 254, 196, 281, 197, -1, -1, 402, 252, 249,
1285 243, 253, 254, 196, 281, 197, -1, -1, 119, 250,
1286 244, 255, 196, 281, 197, -1, -1, 402, 119, 250,
1287 245, 255, 196, 281, 197, -1, -1, 155, 251, 247,
1288 254, 196, 281, 197, -1, -1, 402, 155, 251, 248,
1289 254, 196, 281, 197, -1, 437, -1, 147, -1, 437,
1290 -1, 437, -1, 118, -1, 111, 118, -1, 110, 118,
1291 -1, 120, 375, -1, -1, 121, 256, -1, -1, 120,
1292 256, -1, -1, 375, -1, 256, 9, 375, -1, 375,
1293 -1, 257, 9, 375, -1, 123, 259, -1, -1, 409,
1294 -1, 32, 409, -1, 124, 193, 421, 194, -1, 221,
1295 -1, 27, 219, 86, 195, -1, 221, -1, 27, 219,
1296 88, 195, -1, 221, -1, 27, 219, 84, 195, -1,
1297 221, -1, 27, 219, 90, 195, -1, 210, 14, 382,
1298 -1, 264, 9, 210, 14, 382, -1, 196, 266, 197,
1299 -1, 196, 195, 266, 197, -1, 27, 266, 93, 195,
1300 -1, 27, 195, 266, 93, 195, -1, 266, 94, 323,
1301 267, 219, -1, 266, 95, 267, 219, -1, -1, 27,
1302 -1, 195, -1, 268, 67, 314, 221, -1, -1, 269,
1303 67, 314, 27, 219, -1, -1, 68, 221, -1, -1,
1304 68, 27, 219, -1, -1, 273, 9, 158, -1, 273,
1305 387, -1, 158, -1, -1, 403, 309, 448, 74, -1,
1306 403, 309, 448, 32, 74, -1, 403, 309, 448, 32,
1307 74, 14, 382, -1, 403, 309, 448, 74, 14, 382,
1308 -1, 273, 9, 403, 309, 448, 74, -1, 273, 9,
1309 403, 309, 448, 32, 74, -1, 273, 9, 403, 309,
1310 448, 32, 74, 14, 382, -1, 273, 9, 403, 309,
1311 448, 74, 14, 382, -1, 275, 9, 158, -1, 275,
1312 387, -1, 158, -1, -1, 403, 448, 74, -1, 403,
1313 448, 32, 74, -1, 403, 448, 32, 74, 14, 382,
1314 -1, 403, 448, 74, 14, 382, -1, 275, 9, 403,
1315 448, 74, -1, 275, 9, 403, 448, 32, 74, -1,
1316 275, 9, 403, 448, 32, 74, 14, 382, -1, 275,
1317 9, 403, 448, 74, 14, 382, -1, 277, 387, -1,
1318 -1, 323, -1, 32, 409, -1, 277, 9, 323, -1,
1319 277, 9, 32, 409, -1, 278, 9, 279, -1, 279,
1320 -1, 74, -1, 198, 409, -1, 198, 196, 323, 197,
1321 -1, 280, 9, 74, -1, 280, 9, 74, 14, 382,
1322 -1, 74, -1, 74, 14, 382, -1, 281, 282, -1,
1323 -1, -1, 305, 283, 311, 195, -1, -1, 307, 447,
1324 284, 311, 195, -1, 312, 195, -1, -1, 306, 236,
1325 235, 437, 193, 285, 272, 194, 441, 304, -1, -1,
1326 402, 306, 236, 235, 437, 193, 286, 272, 194, 441,
1327 304, -1, 149, 291, 195, -1, 150, 297, 195, -1,
1328 152, 299, 195, -1, 4, 120, 375, 195, -1, 4,
1329 121, 375, 195, -1, 105, 257, 195, -1, 105, 257,
1330 196, 287, 197, -1, 287, 288, -1, 287, 289, -1,
1331 -1, 217, 141, 210, 156, 257, 195, -1, 290, 91,
1332 306, 210, 195, -1, 290, 91, 307, 195, -1, 217,
1333 141, 210, -1, 210, -1, 292, -1, 291, 9, 292,
1334 -1, 293, 372, 295, 296, -1, 147, -1, 125, -1,
1335 375, -1, 113, -1, 153, 196, 294, 197, -1, 381,
1336 -1, 294, 9, 381, -1, 14, 382, -1, -1, 52,
1337 154, -1, -1, 298, -1, 297, 9, 298, -1, 151,
1338 -1, 300, -1, 210, -1, 116, -1, 193, 301, 194,
1339 -1, 193, 301, 194, 46, -1, 193, 301, 194, 26,
1340 -1, 193, 301, 194, 43, -1, 300, -1, 302, -1,
1341 302, 46, -1, 302, 26, -1, 302, 43, -1, 301,
1342 9, 301, -1, 301, 30, 301, -1, 210, -1, 147,
1343 -1, 151, -1, 195, -1, 196, 219, 197, -1, 195,
1344 -1, 196, 219, 197, -1, 307, -1, 113, -1, 307,
1345 -1, -1, 308, -1, 307, 308, -1, 107, -1, 108,
1346 -1, 109, -1, 112, -1, 111, -1, 110, -1, 174,
1347 -1, 310, -1, -1, 107, -1, 108, -1, 109, -1,
1348 311, 9, 74, -1, 311, 9, 74, 14, 382, -1,
1349 74, -1, 74, 14, 382, -1, 312, 9, 436, 14,
1350 382, -1, 100, 436, 14, 382, -1, 193, 313, 194,
1351 -1, 64, 377, 380, -1, 63, 323, -1, 364, -1,
1352 340, -1, 193, 323, 194, -1, 315, 9, 323, -1,
1353 323, -1, 315, -1, -1, 146, 323, -1, 146, 323,
1354 123, 323, -1, 409, 14, 317, -1, 124, 193, 421,
1355 194, 14, 317, -1, 173, 323, -1, 409, 14, 320,
1356 -1, 124, 193, 421, 194, 14, 320, -1, 324, -1,
1357 409, -1, 313, -1, 124, 193, 421, 194, 14, 323,
1358 -1, 409, 14, 323, -1, 409, 14, 32, 409, -1,
1359 409, 14, 32, 64, 377, 380, -1, 409, 25, 323,
1360 -1, 409, 24, 323, -1, 409, 23, 323, -1, 409,
1361 22, 323, -1, 409, 21, 323, -1, 409, 20, 323,
1362 -1, 409, 19, 323, -1, 409, 18, 323, -1, 409,
1363 17, 323, -1, 409, 16, 323, -1, 409, 15, 323,
1364 -1, 409, 61, -1, 61, 409, -1, 409, 60, -1,
1365 60, 409, -1, 323, 28, 323, -1, 323, 29, 323,
1366 -1, 323, 10, 323, -1, 323, 12, 323, -1, 323,
1367 11, 323, -1, 323, 30, 323, -1, 323, 32, 323,
1368 -1, 323, 31, 323, -1, 323, 45, 323, -1, 323,
1369 43, 323, -1, 323, 44, 323, -1, 323, 46, 323,
1370 -1, 323, 47, 323, -1, 323, 48, 323, -1, 323,
1371 42, 323, -1, 323, 41, 323, -1, 43, 323, -1,
1372 44, 323, -1, 49, 323, -1, 51, 323, -1, 323,
1373 34, 323, -1, 323, 33, 323, -1, 323, 36, 323,
1374 -1, 323, 35, 323, -1, 323, 37, 323, -1, 323,
1375 40, 323, -1, 323, 38, 323, -1, 323, 39, 323,
1376 -1, 323, 50, 377, -1, 193, 324, 194, -1, 323,
1377 26, 323, 27, 323, -1, 323, 26, 27, 323, -1,
1378 431, -1, 59, 323, -1, 58, 323, -1, 57, 323,
1379 -1, 56, 323, -1, 55, 323, -1, 54, 323, -1,
1380 53, 323, -1, 65, 378, -1, 52, 323, -1, 384,
1381 -1, 339, -1, 338, -1, 199, 379, 199, -1, 13,
1382 323, -1, 326, -1, 329, -1, 342, -1, 105, 193,
1383 363, 387, 194, -1, -1, -1, 236, 235, 193, 327,
1384 274, 194, 441, 325, 196, 219, 197, -1, -1, 307,
1385 236, 235, 193, 328, 274, 194, 441, 325, 196, 219,
1386 197, -1, -1, 74, 330, 332, -1, -1, 190, 331,
1387 274, 191, 441, 332, -1, 8, 323, -1, 8, 196,
1388 219, 197, -1, 80, -1, 334, 9, 333, 123, 323,
1389 -1, 333, 123, 323, -1, 335, 9, 333, 123, 382,
1390 -1, 333, 123, 382, -1, 334, 386, -1, -1, 335,
1391 386, -1, -1, 167, 193, 336, 194, -1, 125, 193,
1392 422, 194, -1, 62, 422, 200, -1, 375, 196, 424,
1393 197, -1, 375, 196, 426, 197, -1, 342, 62, 417,
1394 200, -1, 343, 62, 417, 200, -1, 339, -1, 433,
1395 -1, 193, 324, 194, -1, 346, 347, -1, 409, 14,
1396 344, -1, 176, 74, 179, 323, -1, 348, 359, -1,
1397 348, 359, 362, -1, 359, -1, 359, 362, -1, 349,
1398 -1, 348, 349, -1, 350, -1, 351, -1, 352, -1,
1399 353, -1, 354, -1, 355, -1, 176, 74, 179, 323,
1400 -1, 183, 74, 14, 323, -1, 177, 323, -1, 178,
1401 74, 179, 323, 180, 323, 181, 323, -1, 178, 74,
1402 179, 323, 180, 323, 181, 323, 182, 74, -1, 184,
1403 356, -1, 357, -1, 356, 9, 357, -1, 323, -1,
1404 323, 358, -1, 185, -1, 186, -1, 360, -1, 361,
1405 -1, 187, 323, -1, 188, 323, 189, 323, -1, 182,
1406 74, 347, -1, 363, 9, 74, -1, 363, 9, 32,
1407 74, -1, 74, -1, 32, 74, -1, 161, 147, 365,
1408 162, -1, 367, 47, -1, 367, 162, 368, 161, 47,
1409 366, -1, -1, 147, -1, 367, 369, 14, 370, -1,
1410 -1, 368, 371, -1, -1, 147, -1, 148, -1, 196,
1411 323, 197, -1, 148, -1, 196, 323, 197, -1, 364,
1412 -1, 373, -1, 372, 27, 373, -1, 372, 44, 373,
1413 -1, 210, -1, 65, -1, 99, -1, 100, -1, 101,
1414 -1, 146, -1, 173, -1, 102, -1, 103, -1, 160,
1415 -1, 104, -1, 66, -1, 67, -1, 69, -1, 68,
1416 -1, 83, -1, 84, -1, 82, -1, 85, -1, 86,
1417 -1, 87, -1, 88, -1, 89, -1, 90, -1, 50,
1418 -1, 91, -1, 92, -1, 93, -1, 94, -1, 95,
1419 -1, 96, -1, 98, -1, 97, -1, 81, -1, 13,
1420 -1, 118, -1, 119, -1, 120, -1, 121, -1, 64,
1421 -1, 63, -1, 113, -1, 5, -1, 7, -1, 6,
1422 -1, 4, -1, 3, -1, 142, -1, 105, -1, 106,
1423 -1, 115, -1, 116, -1, 117, -1, 112, -1, 111,
1424 -1, 110, -1, 109, -1, 108, -1, 107, -1, 174,
1425 -1, 114, -1, 124, -1, 125, -1, 10, -1, 12,
1426 -1, 11, -1, 126, -1, 128, -1, 127, -1, 129,
1427 -1, 130, -1, 144, -1, 143, -1, 172, -1, 155,
1428 -1, 157, -1, 156, -1, 168, -1, 170, -1, 167,
1429 -1, 216, 193, 276, 194, -1, 217, -1, 147, -1,
1430 375, -1, 112, -1, 415, -1, 375, -1, 112, -1,
1431 419, -1, 193, 194, -1, 314, -1, -1, -1, 79,
1432 -1, 428, -1, 193, 276, 194, -1, -1, 70, -1,
1433 71, -1, 80, -1, 129, -1, 130, -1, 144, -1,
1434 126, -1, 157, -1, 127, -1, 128, -1, 143, -1,
1435 172, -1, 137, 79, 138, -1, 137, 138, -1, 381,
1436 -1, 215, -1, 43, 382, -1, 44, 382, -1, 125,
1437 193, 385, 194, -1, 175, 193, 385, 194, -1, 62,
1438 385, 200, -1, 167, 193, 337, 194, -1, 383, -1,
1439 341, -1, 217, 141, 210, -1, 147, 141, 210, -1,
1440 215, -1, 73, -1, 433, -1, 381, -1, 201, 428,
1441 201, -1, 202, 428, 202, -1, 137, 428, 138, -1,
1442 388, 386, -1, -1, 9, -1, -1, 9, -1, -1,
1443 388, 9, 382, 123, 382, -1, 388, 9, 382, -1,
1444 382, 123, 382, -1, 382, -1, 70, -1, 71, -1,
1445 80, -1, 137, 79, 138, -1, 137, 138, -1, 70,
1446 -1, 71, -1, 210, -1, 389, -1, 210, -1, 43,
1447 390, -1, 44, 390, -1, 125, 193, 392, 194, -1,
1448 175, 193, 392, 194, -1, 62, 392, 200, -1, 167,
1449 193, 395, 194, -1, 393, 386, -1, -1, 393, 9,
1450 391, 123, 391, -1, 393, 9, 391, -1, 391, 123,
1451 391, -1, 391, -1, 394, 9, 391, -1, 391, -1,
1452 396, 386, -1, -1, 396, 9, 333, 123, 391, -1,
1453 333, 123, 391, -1, 394, 386, -1, -1, 193, 397,
1454 194, -1, -1, 399, 9, 210, 398, -1, 210, 398,
1455 -1, -1, 401, 399, 386, -1, 42, 400, 41, -1,
1456 402, -1, -1, 405, -1, 122, 414, -1, 122, 210,
1457 -1, 122, 196, 323, 197, -1, 62, 417, 200, -1,
1458 196, 323, 197, -1, 410, 406, -1, 193, 313, 194,
1459 406, -1, 420, 406, -1, 193, 313, 194, 406, -1,
1460 414, -1, 374, -1, 412, -1, 413, -1, 407, -1,
1461 409, 404, -1, 193, 313, 194, 404, -1, 376, 141,
1462 414, -1, 411, 193, 276, 194, -1, 193, 409, 194,
1463 -1, 374, -1, 412, -1, 413, -1, 407, -1, 409,
1464 405, -1, 193, 313, 194, 405, -1, 411, 193, 276,
1465 194, -1, 193, 409, 194, -1, 414, -1, 407, -1,
1466 193, 409, 194, -1, 409, 122, 210, 438, 193, 276,
1467 194, -1, 409, 122, 414, 193, 276, 194, -1, 409,
1468 122, 196, 323, 197, 193, 276, 194, -1, 193, 313,
1469 194, 122, 210, 438, 193, 276, 194, -1, 193, 313,
1470 194, 122, 414, 193, 276, 194, -1, 193, 313, 194,
1471 122, 196, 323, 197, 193, 276, 194, -1, 376, 141,
1472 210, 438, 193, 276, 194, -1, 376, 141, 414, 193,
1473 276, 194, -1, 376, 141, 196, 323, 197, 193, 276,
1474 194, -1, 415, -1, 418, 415, -1, 415, 62, 417,
1475 200, -1, 415, 196, 323, 197, -1, 416, -1, 74,
1476 -1, 198, 196, 323, 197, -1, 323, -1, -1, 198,
1477 -1, 418, 198, -1, 414, -1, 408, -1, 419, 404,
1478 -1, 193, 313, 194, 404, -1, 376, 141, 414, -1,
1479 193, 409, 194, -1, -1, 408, -1, 419, 405, -1,
1480 193, 313, 194, 405, -1, 193, 409, 194, -1, 421,
1481 9, -1, 421, 9, 409, -1, 421, 9, 124, 193,
1482 421, 194, -1, -1, 409, -1, 124, 193, 421, 194,
1483 -1, 423, 386, -1, -1, 423, 9, 323, 123, 323,
1484 -1, 423, 9, 323, -1, 323, 123, 323, -1, 323,
1485 -1, 423, 9, 323, 123, 32, 409, -1, 423, 9,
1486 32, 409, -1, 323, 123, 32, 409, -1, 32, 409,
1487 -1, 425, 386, -1, -1, 425, 9, 323, 123, 323,
1488 -1, 425, 9, 323, -1, 323, 123, 323, -1, 323,
1489 -1, 427, 386, -1, -1, 427, 9, 382, 123, 382,
1490 -1, 427, 9, 382, -1, 382, 123, 382, -1, 382,
1491 -1, 428, 429, -1, 428, 79, -1, 429, -1, 79,
1492 429, -1, 74, -1, 74, 62, 430, 200, -1, 74,
1493 122, 210, -1, 139, 323, 197, -1, 139, 73, 62,
1494 323, 200, 197, -1, 140, 409, 197, -1, 210, -1,
1495 75, -1, 74, -1, 115, 193, 432, 194, -1, 116,
1496 193, 409, 194, -1, 116, 193, 324, 194, -1, 116,
1497 193, 313, 194, -1, 7, 323, -1, 6, 323, -1,
1498 5, 193, 323, 194, -1, 4, 323, -1, 3, 323,
1499 -1, 409, -1, 432, 9, 409, -1, 376, 141, 210,
1500 -1, -1, 91, 447, -1, 168, 437, 14, 447, 195,
1501 -1, 170, 437, 434, 14, 447, 195, -1, 210, -1,
1502 447, 210, -1, 210, -1, 210, 163, 442, 164, -1,
1503 163, 439, 164, -1, -1, 447, -1, 439, 9, 447,
1504 -1, 439, 9, 158, -1, 439, -1, 158, -1, -1,
1505 -1, 27, 447, -1, 442, 9, 210, -1, 210, -1,
1506 442, 9, 210, 91, 447, -1, 210, 91, 447, -1,
1507 80, 123, 447, -1, 444, 9, 443, -1, 443, -1,
1508 444, 386, -1, -1, 167, 193, 445, 194, -1, 26,
1509 447, -1, 52, 447, -1, 217, -1, 125, -1, 446,
1510 -1, 125, 163, 447, 164, -1, 125, 163, 447, 9,
1511 447, 164, -1, 147, -1, 193, 99, 193, 440, 194,
1512 27, 447, 194, -1, 193, 439, 9, 447, 194, -1,
1516 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
1517 static const yytype_uint16 yyrline
[] =
1519 0, 723, 723, 723, 732, 734, 737, 738, 739, 740,
1520 741, 742, 745, 747, 747, 749, 749, 751, 752, 757,
1521 758, 759, 760, 761, 762, 763, 764, 765, 766, 767,
1522 768, 769, 770, 771, 772, 773, 774, 775, 776, 780,
1523 782, 785, 786, 787, 788, 793, 794, 798, 799, 801,
1524 804, 810, 817, 824, 828, 834, 836, 839, 840, 841,
1525 842, 845, 846, 850, 855, 855, 861, 861, 868, 867,
1526 873, 873, 878, 879, 880, 881, 882, 883, 884, 885,
1527 886, 887, 888, 889, 890, 893, 891, 898, 906, 900,
1528 910, 908, 912, 913, 917, 918, 919, 920, 921, 922,
1529 923, 924, 925, 926, 927, 935, 935, 940, 946, 950,
1530 950, 958, 959, 963, 964, 968, 973, 972, 985, 983,
1531 997, 995, 1011, 1010, 1029, 1027, 1046, 1045, 1054, 1052,
1532 1064, 1063, 1075, 1073, 1086, 1087, 1091, 1094, 1097, 1098,
1533 1099, 1102, 1104, 1107, 1108, 1111, 1112, 1115, 1116, 1120,
1534 1121, 1126, 1127, 1130, 1131, 1132, 1136, 1137, 1141, 1142,
1535 1146, 1147, 1151, 1152, 1157, 1158, 1163, 1164, 1165, 1166,
1536 1169, 1172, 1174, 1177, 1178, 1182, 1184, 1187, 1190, 1193,
1537 1194, 1197, 1198, 1202, 1204, 1206, 1207, 1211, 1215, 1219,
1538 1224, 1229, 1234, 1239, 1245, 1254, 1256, 1258, 1259, 1263,
1539 1266, 1269, 1273, 1277, 1281, 1285, 1290, 1298, 1300, 1303,
1540 1304, 1305, 1307, 1312, 1313, 1316, 1317, 1318, 1322, 1323,
1541 1325, 1326, 1330, 1332, 1335, 1335, 1339, 1338, 1342, 1346,
1542 1344, 1359, 1356, 1369, 1371, 1373, 1375, 1377, 1379, 1381,
1543 1385, 1386, 1387, 1390, 1396, 1399, 1405, 1408, 1413, 1415,
1544 1420, 1425, 1429, 1430, 1436, 1437, 1442, 1443, 1448, 1449,
1545 1453, 1454, 1458, 1460, 1466, 1471, 1472, 1474, 1478, 1479,
1546 1480, 1481, 1485, 1486, 1487, 1488, 1489, 1490, 1492, 1497,
1547 1500, 1501, 1505, 1506, 1510, 1511, 1514, 1515, 1518, 1519,
1548 1522, 1523, 1527, 1528, 1529, 1530, 1531, 1532, 1533, 1537,
1549 1538, 1541, 1542, 1543, 1546, 1548, 1550, 1551, 1554, 1556,
1550 1560, 1561, 1563, 1564, 1565, 1568, 1572, 1573, 1577, 1578,
1551 1582, 1583, 1587, 1591, 1596, 1600, 1604, 1609, 1610, 1611,
1552 1614, 1616, 1617, 1618, 1621, 1622, 1623, 1624, 1625, 1626,
1553 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1635, 1636,
1554 1637, 1638, 1639, 1640, 1641, 1642, 1643, 1644, 1645, 1646,
1555 1647, 1648, 1649, 1650, 1651, 1652, 1653, 1654, 1655, 1656,
1556 1657, 1658, 1659, 1660, 1661, 1663, 1664, 1666, 1668, 1669,
1557 1670, 1671, 1672, 1673, 1674, 1675, 1676, 1677, 1678, 1679,
1558 1680, 1681, 1682, 1683, 1684, 1685, 1686, 1687, 1688, 1692,
1559 1696, 1701, 1700, 1715, 1713, 1730, 1730, 1745, 1745, 1763,
1560 1764, 1769, 1774, 1778, 1784, 1788, 1794, 1796, 1800, 1802,
1561 1806, 1810, 1811, 1815, 1822, 1829, 1831, 1836, 1837, 1838,
1562 1842, 1846, 1850, 1854, 1856, 1858, 1860, 1865, 1866, 1871,
1563 1872, 1873, 1874, 1875, 1876, 1880, 1884, 1888, 1892, 1897,
1564 1902, 1906, 1907, 1911, 1912, 1916, 1917, 1921, 1922, 1926,
1565 1930, 1934, 1938, 1939, 1940, 1941, 1945, 1951, 1960, 1973,
1566 1974, 1977, 1980, 1983, 1984, 1987, 1991, 1994, 1997, 2004,
1567 2005, 2009, 2010, 2012, 2016, 2017, 2018, 2019, 2020, 2021,
1568 2022, 2023, 2024, 2025, 2026, 2027, 2028, 2029, 2030, 2031,
1569 2032, 2033, 2034, 2035, 2036, 2037, 2038, 2039, 2040, 2041,
1570 2042, 2043, 2044, 2045, 2046, 2047, 2048, 2049, 2050, 2051,
1571 2052, 2053, 2054, 2055, 2056, 2057, 2058, 2059, 2060, 2061,
1572 2062, 2063, 2064, 2065, 2066, 2067, 2068, 2069, 2070, 2071,
1573 2072, 2073, 2074, 2075, 2076, 2077, 2078, 2079, 2080, 2081,
1574 2082, 2083, 2084, 2085, 2086, 2087, 2088, 2089, 2090, 2091,
1575 2092, 2093, 2094, 2095, 2099, 2104, 2105, 2108, 2109, 2110,
1576 2114, 2115, 2116, 2120, 2121, 2122, 2126, 2127, 2128, 2131,
1577 2133, 2137, 2138, 2139, 2141, 2142, 2143, 2144, 2145, 2146,
1578 2147, 2148, 2149, 2150, 2153, 2158, 2159, 2160, 2161, 2162,
1579 2164, 2166, 2167, 2169, 2170, 2174, 2177, 2183, 2184, 2185,
1580 2186, 2187, 2188, 2189, 2194, 2196, 2200, 2201, 2204, 2205,
1581 2209, 2212, 2214, 2216, 2220, 2221, 2222, 2224, 2227, 2231,
1582 2232, 2233, 2236, 2237, 2238, 2239, 2240, 2242, 2244, 2245,
1583 2250, 2252, 2255, 2258, 2260, 2262, 2265, 2267, 2271, 2273,
1584 2276, 2279, 2285, 2287, 2290, 2291, 2296, 2299, 2303, 2303,
1585 2308, 2311, 2312, 2316, 2317, 2322, 2323, 2327, 2328, 2332,
1586 2333, 2338, 2340, 2345, 2346, 2347, 2348, 2349, 2350, 2351,
1587 2353, 2356, 2358, 2362, 2363, 2364, 2365, 2366, 2368, 2370,
1588 2372, 2376, 2377, 2378, 2382, 2385, 2388, 2391, 2395, 2399,
1589 2406, 2410, 2414, 2421, 2422, 2427, 2429, 2430, 2433, 2434,
1590 2437, 2438, 2442, 2443, 2447, 2448, 2449, 2450, 2452, 2455,
1591 2458, 2459, 2460, 2462, 2464, 2468, 2469, 2470, 2472, 2473,
1592 2474, 2478, 2480, 2483, 2485, 2486, 2487, 2488, 2491, 2493,
1593 2494, 2498, 2500, 2503, 2505, 2506, 2507, 2511, 2513, 2516,
1594 2519, 2521, 2523, 2527, 2528, 2530, 2531, 2537, 2538, 2540,
1595 2542, 2544, 2546, 2549, 2550, 2551, 2555, 2556, 2557, 2558,
1596 2559, 2560, 2561, 2562, 2563, 2567, 2568, 2572, 2580, 2582,
1597 2586, 2589, 2595, 2596, 2602, 2603, 2610, 2613, 2617, 2620,
1598 2625, 2626, 2627, 2628, 2632, 2633, 2637, 2639, 2640, 2642,
1599 2646, 2652, 2654, 2658, 2661, 2664, 2672, 2675, 2678, 2679,
1600 2682, 2683, 2686, 2690, 2694, 2700, 2708, 2709
1604 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
1605 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
1606 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
1607 static const char *const yytname
[] =
1609 "$end", "error", "$undefined", "T_REQUIRE_ONCE", "T_REQUIRE", "T_EVAL",
1610 "T_INCLUDE_ONCE", "T_INCLUDE", "T_LAMBDA_ARROW", "','", "T_LOGICAL_OR",
1611 "T_LOGICAL_XOR", "T_LOGICAL_AND", "T_PRINT", "'='", "T_SR_EQUAL",
1612 "T_SL_EQUAL", "T_XOR_EQUAL", "T_OR_EQUAL", "T_AND_EQUAL", "T_MOD_EQUAL",
1613 "T_CONCAT_EQUAL", "T_DIV_EQUAL", "T_MUL_EQUAL", "T_MINUS_EQUAL",
1614 "T_PLUS_EQUAL", "'?'", "':'", "T_BOOLEAN_OR", "T_BOOLEAN_AND", "'|'",
1615 "'^'", "'&'", "T_IS_NOT_IDENTICAL", "T_IS_IDENTICAL", "T_IS_NOT_EQUAL",
1616 "T_IS_EQUAL", "'<'", "'>'", "T_IS_GREATER_OR_EQUAL",
1617 "T_IS_SMALLER_OR_EQUAL", "T_SR", "T_SL", "'+'", "'-'", "'.'", "'*'",
1618 "'/'", "'%'", "'!'", "T_INSTANCEOF", "'~'", "'@'", "T_UNSET_CAST",
1619 "T_BOOL_CAST", "T_OBJECT_CAST", "T_ARRAY_CAST", "T_STRING_CAST",
1620 "T_DOUBLE_CAST", "T_INT_CAST", "T_DEC", "T_INC", "'['", "T_CLONE",
1621 "T_NEW", "T_EXIT", "T_IF", "T_ELSEIF", "T_ELSE", "T_ENDIF", "T_LNUMBER",
1622 "T_DNUMBER", "T_STRING", "T_STRING_VARNAME", "T_VARIABLE",
1623 "T_NUM_STRING", "T_INLINE_HTML", "T_CHARACTER", "T_BAD_CHARACTER",
1624 "T_ENCAPSED_AND_WHITESPACE", "T_CONSTANT_ENCAPSED_STRING", "T_ECHO",
1625 "T_DO", "T_WHILE", "T_ENDWHILE", "T_FOR", "T_ENDFOR", "T_FOREACH",
1626 "T_ENDFOREACH", "T_DECLARE", "T_ENDDECLARE", "T_AS", "T_SWITCH",
1627 "T_ENDSWITCH", "T_CASE", "T_DEFAULT", "T_BREAK", "T_GOTO", "T_CONTINUE",
1628 "T_FUNCTION", "T_CONST", "T_RETURN", "T_TRY", "T_CATCH", "T_THROW",
1629 "T_USE", "T_GLOBAL", "T_PUBLIC", "T_PROTECTED", "T_PRIVATE", "T_FINAL",
1630 "T_ABSTRACT", "T_STATIC", "T_VAR", "T_UNSET", "T_ISSET", "T_EMPTY",
1631 "T_HALT_COMPILER", "T_CLASS", "T_INTERFACE", "T_EXTENDS", "T_IMPLEMENTS",
1632 "T_OBJECT_OPERATOR", "T_DOUBLE_ARROW", "T_LIST", "T_ARRAY", "T_CLASS_C",
1633 "T_METHOD_C", "T_FUNC_C", "T_LINE", "T_FILE", "T_COMMENT",
1634 "T_DOC_COMMENT", "T_OPEN_TAG", "T_OPEN_TAG_WITH_ECHO", "T_CLOSE_TAG",
1635 "T_WHITESPACE", "T_START_HEREDOC", "T_END_HEREDOC",
1636 "T_DOLLAR_OPEN_CURLY_BRACES", "T_CURLY_OPEN", "T_DOUBLE_COLON",
1637 "T_NAMESPACE", "T_NS_C", "T_DIR", "T_NS_SEPARATOR", "T_YIELD",
1638 "T_XHP_LABEL", "T_XHP_TEXT", "T_XHP_ATTRIBUTE", "T_XHP_CATEGORY",
1639 "T_XHP_CATEGORY_LABEL", "T_XHP_CHILDREN", "T_XHP_ENUM", "T_XHP_REQUIRED",
1640 "T_TRAIT", "T_INSTEADOF", "T_TRAIT_C", "T_VARARG", "T_HH_ERROR",
1641 "T_FINALLY", "T_XHP_TAG_LT", "T_XHP_TAG_GT", "T_TYPELIST_LT",
1642 "T_TYPELIST_GT", "T_UNRESOLVED_LT", "T_COLLECTION", "T_SHAPE", "T_TYPE",
1643 "T_UNRESOLVED_TYPE", "T_NEWTYPE", "T_UNRESOLVED_NEWTYPE",
1644 "T_COMPILER_HALT_OFFSET", "T_AWAIT", "T_ASYNC", "T_TUPLE", "T_FROM",
1645 "T_WHERE", "T_JOIN", "T_IN", "T_ON", "T_EQUALS", "T_INTO", "T_LET",
1646 "T_ORDERBY", "T_ASCENDING", "T_DESCENDING", "T_SELECT", "T_GROUP",
1647 "T_BY", "T_LAMBDA_OP", "T_LAMBDA_CP", "T_UNRESOLVED_OP", "'('", "')'",
1648 "';'", "'{'", "'}'", "'$'", "'`'", "']'", "'\"'", "'\\''", "$accept",
1649 "start", "$@1", "top_statement_list", "top_statement", "$@2", "$@3",
1650 "ident", "use_declarations", "use_declaration", "namespace_name",
1651 "namespace_string_base", "namespace_string", "namespace_string_typeargs",
1652 "class_namespace_string_typeargs", "constant_declaration",
1653 "inner_statement_list", "inner_statement", "statement", "$@4", "$@5",
1654 "$@6", "$@7", "$@8", "$@9", "$@10", "try_statement_list", "$@11",
1655 "additional_catches", "finally_statement_list", "$@12",
1656 "optional_finally", "is_reference", "function_loc",
1657 "function_declaration_statement", "$@13", "$@14", "$@15",
1658 "class_declaration_statement", "$@16", "$@17", "$@18", "$@19",
1659 "trait_declaration_statement", "$@20", "$@21", "class_decl_name",
1660 "interface_decl_name", "trait_decl_name", "class_entry_type",
1661 "extends_from", "implements_list", "interface_extends_list",
1662 "interface_list", "trait_list", "foreach_optional_arg",
1663 "foreach_variable", "for_statement", "foreach_statement",
1664 "while_statement", "declare_statement", "declare_list",
1665 "switch_case_list", "case_list", "case_separator", "elseif_list",
1666 "new_elseif_list", "else_single", "new_else_single",
1667 "method_parameter_list", "non_empty_method_parameter_list",
1668 "parameter_list", "non_empty_parameter_list",
1669 "function_call_parameter_list", "non_empty_fcall_parameter_list",
1670 "global_var_list", "global_var", "static_var_list",
1671 "class_statement_list", "class_statement", "$@22", "$@23", "$@24",
1672 "$@25", "trait_rules", "trait_precedence_rule", "trait_alias_rule",
1673 "trait_alias_rule_method", "xhp_attribute_stmt", "xhp_attribute_decl",
1674 "xhp_attribute_decl_type", "xhp_attribute_enum", "xhp_attribute_default",
1675 "xhp_attribute_is_required", "xhp_category_stmt", "xhp_category_decl",
1676 "xhp_children_stmt", "xhp_children_paren_expr", "xhp_children_decl_expr",
1677 "xhp_children_decl_tag", "function_body", "method_body",
1678 "variable_modifiers", "method_modifiers", "non_empty_member_modifiers",
1679 "member_modifier", "parameter_modifiers", "parameter_modifier",
1680 "class_variable_declaration", "class_constant_declaration",
1681 "expr_with_parens", "parenthesis_expr", "expr_list", "for_expr",
1682 "yield_expr", "yield_assign_expr", "yield_list_assign_expr",
1683 "await_expr", "await_assign_expr", "await_list_assign_expr", "expr",
1684 "expr_no_variable", "lambda_use_vars", "closure_expression", "$@26",
1685 "$@27", "lambda_expression", "$@28", "$@29", "lambda_body",
1686 "shape_keyname", "non_empty_shape_pair_list",
1687 "non_empty_static_shape_pair_list", "shape_pair_list",
1688 "static_shape_pair_list", "shape_literal", "array_literal",
1689 "collection_literal", "static_collection_literal", "dim_expr",
1690 "dim_expr_base", "query_expr", "query_assign_expr", "query_head",
1691 "query_body", "query_body_clauses", "query_body_clause", "from_clause",
1692 "let_clause", "where_clause", "join_clause", "join_into_clause",
1693 "orderby_clause", "orderings", "ordering", "ordering_direction",
1694 "select_or_group_clause", "select_clause", "group_clause",
1695 "query_continuation", "lexical_var_list", "xhp_tag", "xhp_tag_body",
1696 "xhp_opt_end_label", "xhp_attributes", "xhp_children",
1697 "xhp_attribute_name", "xhp_attribute_value", "xhp_child", "xhp_label_ws",
1698 "xhp_bareword", "simple_function_call", "fully_qualified_class_name",
1699 "static_class_name", "class_name_reference", "exit_expr",
1700 "backticks_expr", "ctor_arguments", "common_scalar", "static_scalar",
1701 "static_class_constant", "scalar", "static_array_pair_list",
1702 "possible_comma", "hh_possible_comma",
1703 "non_empty_static_array_pair_list", "common_scalar_ae",
1704 "static_numeric_scalar_ae", "static_scalar_ae",
1705 "static_array_pair_list_ae", "non_empty_static_array_pair_list_ae",
1706 "non_empty_static_scalar_list_ae", "static_shape_pair_list_ae",
1707 "non_empty_static_shape_pair_list_ae", "static_scalar_list_ae",
1708 "attribute_static_scalar_list", "non_empty_user_attribute_list",
1709 "user_attribute_list", "$@30", "non_empty_user_attributes",
1710 "optional_user_attributes", "property_access",
1711 "property_access_without_variables", "array_access",
1712 "dimmable_variable_access", "dimmable_variable_no_calls_access",
1713 "variable", "dimmable_variable", "callable_variable",
1714 "object_method_call", "class_method_call", "variable_without_objects",
1715 "reference_variable", "compound_variable", "dim_offset",
1716 "simple_indirect_reference", "variable_no_calls",
1717 "dimmable_variable_no_calls", "assignment_list", "array_pair_list",
1718 "non_empty_array_pair_list", "collection_init",
1719 "non_empty_collection_init", "static_collection_init",
1720 "non_empty_static_collection_init", "encaps_list", "encaps_var",
1721 "encaps_var_offset", "internal_functions", "variable_list",
1722 "class_constant", "hh_opt_constraint", "hh_type_alias_statement",
1723 "hh_name_with_type", "hh_name_with_typevar", "hh_typeargs_opt",
1724 "hh_type_list", "hh_func_type_list", "hh_opt_return_type",
1725 "hh_typevar_list", "hh_shape_member_type",
1726 "hh_non_empty_shape_member_list", "hh_shape_member_list",
1727 "hh_shape_type", "hh_type", "hh_type_opt", 0
1732 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
1734 static const yytype_uint16 yytoknum
[] =
1736 0, 256, 257, 258, 259, 260, 261, 262, 263, 44,
1737 264, 265, 266, 267, 61, 268, 269, 270, 271, 272,
1738 273, 274, 275, 276, 277, 278, 63, 58, 279, 280,
1739 124, 94, 38, 281, 282, 283, 284, 60, 62, 285,
1740 286, 287, 288, 43, 45, 46, 42, 47, 37, 33,
1741 289, 126, 64, 290, 291, 292, 293, 294, 295, 296,
1742 297, 298, 91, 299, 300, 301, 302, 303, 304, 305,
1743 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
1744 316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
1745 326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
1746 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
1747 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
1748 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
1749 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
1750 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
1751 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
1752 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
1753 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
1754 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
1755 426, 427, 428, 40, 41, 59, 123, 125, 36, 96,
1760 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
1761 static const yytype_uint16 yyr1
[] =
1763 0, 203, 205, 204, 206, 206, 207, 207, 207, 207,
1764 207, 207, 207, 208, 207, 209, 207, 207, 207, 210,
1765 210, 210, 210, 210, 210, 210, 210, 210, 210, 210,
1766 210, 210, 210, 210, 210, 210, 210, 210, 210, 211,
1767 211, 212, 212, 212, 212, 213, 213, 214, 214, 214,
1768 215, 216, 217, 218, 218, 219, 219, 220, 220, 220,
1769 220, 221, 221, 221, 222, 221, 223, 221, 224, 221,
1770 225, 221, 221, 221, 221, 221, 221, 221, 221, 221,
1771 221, 221, 221, 221, 221, 226, 221, 221, 227, 221,
1772 228, 221, 221, 221, 221, 221, 221, 221, 221, 221,
1773 221, 221, 221, 221, 221, 230, 229, 231, 231, 233,
1774 232, 234, 234, 235, 235, 236, 238, 237, 239, 237,
1775 240, 237, 242, 241, 243, 241, 244, 241, 245, 241,
1776 247, 246, 248, 246, 249, 249, 250, 251, 252, 252,
1777 252, 253, 253, 254, 254, 255, 255, 256, 256, 257,
1778 257, 258, 258, 259, 259, 259, 260, 260, 261, 261,
1779 262, 262, 263, 263, 264, 264, 265, 265, 265, 265,
1780 266, 266, 266, 267, 267, 268, 268, 269, 269, 270,
1781 270, 271, 271, 272, 272, 272, 272, 273, 273, 273,
1782 273, 273, 273, 273, 273, 274, 274, 274, 274, 275,
1783 275, 275, 275, 275, 275, 275, 275, 276, 276, 277,
1784 277, 277, 277, 278, 278, 279, 279, 279, 280, 280,
1785 280, 280, 281, 281, 283, 282, 284, 282, 282, 285,
1786 282, 286, 282, 282, 282, 282, 282, 282, 282, 282,
1787 287, 287, 287, 288, 289, 289, 290, 290, 291, 291,
1788 292, 292, 293, 293, 293, 293, 294, 294, 295, 295,
1789 296, 296, 297, 297, 298, 299, 299, 299, 300, 300,
1790 300, 300, 301, 301, 301, 301, 301, 301, 301, 302,
1791 302, 302, 303, 303, 304, 304, 305, 305, 306, 306,
1792 307, 307, 308, 308, 308, 308, 308, 308, 308, 309,
1793 309, 310, 310, 310, 311, 311, 311, 311, 312, 312,
1794 313, 313, 313, 313, 313, 314, 315, 315, 316, 316,
1795 317, 317, 318, 319, 320, 321, 322, 323, 323, 323,
1796 324, 324, 324, 324, 324, 324, 324, 324, 324, 324,
1797 324, 324, 324, 324, 324, 324, 324, 324, 324, 324,
1798 324, 324, 324, 324, 324, 324, 324, 324, 324, 324,
1799 324, 324, 324, 324, 324, 324, 324, 324, 324, 324,
1800 324, 324, 324, 324, 324, 324, 324, 324, 324, 324,
1801 324, 324, 324, 324, 324, 324, 324, 324, 324, 324,
1802 324, 324, 324, 324, 324, 324, 324, 324, 324, 325,
1803 325, 327, 326, 328, 326, 330, 329, 331, 329, 332,
1804 332, 333, 334, 334, 335, 335, 336, 336, 337, 337,
1805 338, 339, 339, 340, 341, 342, 342, 343, 343, 343,
1806 344, 345, 346, 347, 347, 347, 347, 348, 348, 349,
1807 349, 349, 349, 349, 349, 350, 351, 352, 353, 354,
1808 355, 356, 356, 357, 357, 358, 358, 359, 359, 360,
1809 361, 362, 363, 363, 363, 363, 364, 365, 365, 366,
1810 366, 367, 367, 368, 368, 369, 370, 370, 371, 371,
1811 371, 372, 372, 372, 373, 373, 373, 373, 373, 373,
1812 373, 373, 373, 373, 373, 373, 373, 373, 373, 373,
1813 373, 373, 373, 373, 373, 373, 373, 373, 373, 373,
1814 373, 373, 373, 373, 373, 373, 373, 373, 373, 373,
1815 373, 373, 373, 373, 373, 373, 373, 373, 373, 373,
1816 373, 373, 373, 373, 373, 373, 373, 373, 373, 373,
1817 373, 373, 373, 373, 373, 373, 373, 373, 373, 373,
1818 373, 373, 373, 373, 373, 373, 373, 373, 373, 373,
1819 373, 373, 373, 373, 374, 375, 375, 376, 376, 376,
1820 377, 377, 377, 378, 378, 378, 379, 379, 379, 380,
1821 380, 381, 381, 381, 381, 381, 381, 381, 381, 381,
1822 381, 381, 381, 381, 381, 382, 382, 382, 382, 382,
1823 382, 382, 382, 382, 382, 383, 383, 384, 384, 384,
1824 384, 384, 384, 384, 385, 385, 386, 386, 387, 387,
1825 388, 388, 388, 388, 389, 389, 389, 389, 389, 390,
1826 390, 390, 391, 391, 391, 391, 391, 391, 391, 391,
1827 392, 392, 393, 393, 393, 393, 394, 394, 395, 395,
1828 396, 396, 397, 397, 398, 398, 399, 399, 401, 400,
1829 402, 403, 403, 404, 404, 405, 405, 406, 406, 407,
1830 407, 408, 408, 409, 409, 409, 409, 409, 409, 409,
1831 409, 409, 409, 410, 410, 410, 410, 410, 410, 410,
1832 410, 411, 411, 411, 412, 412, 412, 412, 412, 412,
1833 413, 413, 413, 414, 414, 415, 415, 415, 416, 416,
1834 417, 417, 418, 418, 419, 419, 419, 419, 419, 419,
1835 420, 420, 420, 420, 420, 421, 421, 421, 421, 421,
1836 421, 422, 422, 423, 423, 423, 423, 423, 423, 423,
1837 423, 424, 424, 425, 425, 425, 425, 426, 426, 427,
1838 427, 427, 427, 428, 428, 428, 428, 429, 429, 429,
1839 429, 429, 429, 430, 430, 430, 431, 431, 431, 431,
1840 431, 431, 431, 431, 431, 432, 432, 433, 434, 434,
1841 435, 435, 436, 436, 437, 437, 438, 438, 439, 439,
1842 440, 440, 440, 440, 441, 441, 442, 442, 442, 442,
1843 443, 444, 444, 445, 445, 446, 447, 447, 447, 447,
1844 447, 447, 447, 447, 447, 447, 448, 448
1847 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
1848 static const yytype_uint8 yyr2
[] =
1850 0, 2, 0, 2, 2, 0, 1, 1, 1, 1,
1851 1, 4, 3, 0, 6, 0, 5, 3, 2, 1,
1852 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1853 1, 1, 1, 1, 1, 1, 1, 1, 1, 3,
1854 1, 1, 2, 3, 4, 1, 3, 1, 3, 2,
1855 1, 2, 2, 5, 4, 2, 0, 1, 1, 1,
1856 1, 3, 5, 8, 0, 4, 0, 6, 0, 10,
1857 0, 4, 2, 3, 2, 3, 2, 3, 3, 3,
1858 3, 3, 5, 1, 1, 0, 9, 5, 0, 13,
1859 0, 5, 3, 3, 2, 2, 2, 2, 2, 2,
1860 3, 2, 2, 3, 2, 0, 4, 9, 0, 0,
1861 4, 2, 0, 1, 0, 1, 0, 9, 0, 10,
1862 0, 11, 0, 8, 0, 9, 0, 7, 0, 8,
1863 0, 7, 0, 8, 1, 1, 1, 1, 1, 2,
1864 2, 2, 0, 2, 0, 2, 0, 1, 3, 1,
1865 3, 2, 0, 1, 2, 4, 1, 4, 1, 4,
1866 1, 4, 1, 4, 3, 5, 3, 4, 4, 5,
1867 5, 4, 0, 1, 1, 4, 0, 5, 0, 2,
1868 0, 3, 0, 3, 2, 1, 0, 4, 5, 7,
1869 6, 6, 7, 9, 8, 3, 2, 1, 0, 3,
1870 4, 6, 5, 5, 6, 8, 7, 2, 0, 1,
1871 2, 3, 4, 3, 1, 1, 2, 4, 3, 5,
1872 1, 3, 2, 0, 0, 4, 0, 5, 2, 0,
1873 10, 0, 11, 3, 3, 3, 4, 4, 3, 5,
1874 2, 2, 0, 6, 5, 4, 3, 1, 1, 3,
1875 4, 1, 1, 1, 1, 4, 1, 3, 2, 0,
1876 2, 0, 1, 3, 1, 1, 1, 1, 3, 4,
1877 4, 4, 1, 1, 2, 2, 2, 3, 3, 1,
1878 1, 1, 1, 3, 1, 3, 1, 1, 1, 0,
1879 1, 2, 1, 1, 1, 1, 1, 1, 1, 1,
1880 0, 1, 1, 1, 3, 5, 1, 3, 5, 4,
1881 3, 3, 2, 1, 1, 3, 3, 1, 1, 0,
1882 2, 4, 3, 6, 2, 3, 6, 1, 1, 1,
1883 6, 3, 4, 6, 3, 3, 3, 3, 3, 3,
1884 3, 3, 3, 3, 3, 2, 2, 2, 2, 3,
1885 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1886 3, 3, 3, 3, 3, 2, 2, 2, 2, 3,
1887 3, 3, 3, 3, 3, 3, 3, 3, 3, 5,
1888 4, 1, 2, 2, 2, 2, 2, 2, 2, 2,
1889 2, 1, 1, 1, 3, 2, 1, 1, 1, 5,
1890 0, 0, 11, 0, 12, 0, 3, 0, 6, 2,
1891 4, 1, 5, 3, 5, 3, 2, 0, 2, 0,
1892 4, 4, 3, 4, 4, 4, 4, 1, 1, 3,
1893 2, 3, 4, 2, 3, 1, 2, 1, 2, 1,
1894 1, 1, 1, 1, 1, 4, 4, 2, 8, 10,
1895 2, 1, 3, 1, 2, 1, 1, 1, 1, 2,
1896 4, 3, 3, 4, 1, 2, 4, 2, 6, 0,
1897 1, 4, 0, 2, 0, 1, 1, 3, 1, 3,
1898 1, 1, 3, 3, 1, 1, 1, 1, 1, 1,
1899 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1900 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1901 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1902 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1903 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1904 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1905 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1906 1, 1, 1, 1, 4, 1, 1, 1, 1, 1,
1907 1, 1, 1, 2, 1, 0, 0, 1, 1, 3,
1908 0, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1909 1, 1, 1, 3, 2, 1, 1, 2, 2, 4,
1910 4, 3, 4, 1, 1, 3, 3, 1, 1, 1,
1911 1, 3, 3, 3, 2, 0, 1, 0, 1, 0,
1912 5, 3, 3, 1, 1, 1, 1, 3, 2, 1,
1913 1, 1, 1, 1, 2, 2, 4, 4, 3, 4,
1914 2, 0, 5, 3, 3, 1, 3, 1, 2, 0,
1915 5, 3, 2, 0, 3, 0, 4, 2, 0, 3,
1916 3, 1, 0, 1, 2, 2, 4, 3, 3, 2,
1917 4, 2, 4, 1, 1, 1, 1, 1, 2, 4,
1918 3, 4, 3, 1, 1, 1, 1, 2, 4, 4,
1919 3, 1, 1, 3, 7, 6, 8, 9, 8, 10,
1920 7, 6, 8, 1, 2, 4, 4, 1, 1, 4,
1921 1, 0, 1, 2, 1, 1, 2, 4, 3, 3,
1922 0, 1, 2, 4, 3, 2, 3, 6, 0, 1,
1923 4, 2, 0, 5, 3, 3, 1, 6, 4, 4,
1924 2, 2, 0, 5, 3, 3, 1, 2, 0, 5,
1925 3, 3, 1, 2, 2, 1, 2, 1, 4, 3,
1926 3, 6, 3, 1, 1, 1, 4, 4, 4, 4,
1927 2, 2, 4, 2, 2, 1, 3, 3, 0, 2,
1928 5, 6, 1, 2, 1, 4, 3, 0, 1, 3,
1929 3, 1, 1, 0, 0, 2, 3, 1, 5, 3,
1930 3, 3, 1, 2, 0, 4, 2, 2, 1, 1,
1931 1, 4, 6, 1, 8, 5, 1, 0
1934 /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
1935 Performed when YYTABLE doesn't specify something else to do. Zero
1936 means the default is an error. */
1937 static const yytype_uint16 yydefact
[] =
1939 2, 0, 5, 1, 3, 0, 0, 0, 0, 0,
1940 0, 658, 0, 0, 0, 0, 0, 0, 0, 0,
1941 0, 0, 0, 0, 0, 0, 732, 0, 720, 575,
1942 0, 581, 582, 19, 608, 708, 84, 583, 0, 66,
1943 0, 0, 0, 0, 0, 0, 0, 0, 115, 0,
1944 0, 0, 0, 0, 0, 292, 293, 294, 297, 296,
1945 295, 0, 0, 0, 0, 138, 0, 0, 0, 587,
1946 589, 590, 584, 585, 0, 0, 591, 586, 0, 0,
1947 566, 20, 21, 22, 24, 23, 0, 588, 0, 0,
1948 0, 0, 592, 0, 298, 25, 26, 27, 29, 28,
1949 30, 31, 32, 33, 34, 35, 36, 37, 38, 407,
1950 0, 83, 56, 712, 576, 0, 0, 4, 45, 47,
1951 50, 607, 0, 565, 0, 6, 114, 7, 8, 9,
1952 0, 0, 290, 329, 0, 0, 0, 0, 0, 0,
1953 0, 327, 396, 397, 393, 392, 314, 398, 0, 0,
1954 313, 674, 567, 0, 610, 391, 289, 677, 328, 0,
1955 0, 675, 676, 673, 703, 707, 0, 381, 609, 10,
1956 297, 296, 295, 0, 0, 45, 114, 0, 774, 328,
1957 773, 0, 771, 770, 395, 0, 0, 365, 366, 367,
1958 368, 390, 388, 387, 386, 385, 384, 383, 382, 708,
1959 568, 0, 787, 567, 0, 348, 346, 0, 736, 0,
1960 617, 312, 571, 0, 787, 570, 0, 580, 715, 714,
1961 572, 0, 0, 574, 389, 0, 0, 0, 0, 317,
1962 0, 64, 319, 0, 0, 70, 72, 0, 0, 74,
1963 0, 0, 0, 809, 813, 0, 0, 45, 808, 0,
1964 810, 0, 0, 76, 0, 0, 0, 0, 105, 0,
1965 0, 0, 0, 40, 41, 215, 0, 0, 214, 140,
1966 139, 220, 0, 0, 0, 0, 0, 784, 126, 136,
1967 728, 732, 757, 0, 594, 0, 0, 0, 755, 0,
1968 15, 0, 49, 0, 320, 130, 137, 472, 417, 0,
1969 778, 324, 662, 329, 0, 327, 328, 0, 0, 577,
1970 0, 578, 0, 0, 0, 104, 0, 0, 52, 208,
1971 0, 18, 113, 0, 135, 122, 134, 295, 114, 291,
1972 95, 96, 97, 98, 99, 101, 0, 0, 0, 0,
1973 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1974 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1975 0, 720, 94, 711, 711, 102, 742, 0, 0, 0,
1976 0, 0, 288, 0, 0, 0, 0, 0, 0, 0,
1977 0, 0, 0, 0, 0, 347, 345, 0, 678, 663,
1978 711, 0, 669, 208, 711, 0, 713, 704, 728, 0,
1979 114, 0, 0, 660, 655, 617, 0, 0, 0, 0,
1980 740, 0, 422, 616, 731, 0, 0, 52, 0, 208,
1981 311, 0, 716, 663, 671, 573, 0, 56, 176, 0,
1982 406, 0, 81, 0, 0, 318, 0, 0, 0, 0,
1983 0, 73, 93, 75, 806, 807, 0, 804, 0, 0,
1984 788, 0, 783, 0, 100, 77, 103, 0, 0, 0,
1985 0, 0, 0, 0, 430, 0, 437, 439, 440, 441,
1986 442, 443, 444, 435, 457, 458, 56, 0, 90, 92,
1987 42, 0, 17, 0, 0, 216, 0, 79, 0, 0,
1988 80, 775, 0, 0, 329, 327, 328, 0, 0, 146,
1989 0, 729, 0, 0, 0, 0, 593, 756, 608, 0,
1990 0, 754, 613, 753, 48, 5, 12, 13, 78, 0,
1991 144, 0, 0, 411, 0, 617, 0, 0, 0, 0,
1992 197, 0, 619, 661, 817, 310, 378, 682, 61, 55,
1993 57, 58, 59, 60, 0, 394, 611, 612, 46, 0,
1994 0, 0, 619, 209, 0, 401, 116, 142, 0, 351,
1995 353, 352, 0, 0, 349, 350, 354, 356, 355, 370,
1996 369, 372, 371, 373, 375, 376, 374, 364, 363, 358,
1997 359, 357, 360, 361, 362, 377, 710, 0, 0, 746,
1998 0, 617, 0, 777, 680, 703, 128, 132, 124, 114,
1999 0, 0, 322, 325, 331, 431, 344, 343, 342, 341,
2000 340, 339, 338, 337, 336, 335, 334, 0, 665, 664,
2001 0, 0, 0, 0, 0, 0, 0, 772, 653, 657,
2002 616, 659, 0, 0, 787, 0, 735, 0, 734, 0,
2003 719, 718, 0, 0, 665, 664, 315, 178, 180, 56,
2004 409, 316, 0, 56, 160, 65, 319, 0, 0, 0,
2005 0, 172, 172, 71, 0, 0, 802, 617, 0, 793,
2006 0, 0, 0, 615, 0, 0, 566, 0, 25, 50,
2007 596, 565, 604, 0, 595, 54, 603, 0, 0, 447,
2008 0, 0, 453, 450, 451, 459, 0, 438, 433, 0,
2009 436, 0, 0, 0, 0, 39, 43, 0, 213, 221,
2010 218, 0, 0, 766, 769, 768, 767, 11, 797, 0,
2011 0, 0, 728, 725, 0, 421, 765, 764, 763, 0,
2012 759, 0, 760, 762, 0, 5, 321, 0, 0, 466,
2013 467, 475, 474, 0, 0, 616, 416, 420, 0, 779,
2014 0, 794, 662, 196, 816, 0, 0, 679, 663, 670,
2015 709, 0, 786, 210, 564, 618, 207, 0, 662, 0,
2016 0, 144, 403, 118, 380, 0, 425, 426, 0, 423,
2017 616, 741, 0, 0, 208, 146, 144, 142, 0, 720,
2018 332, 0, 0, 208, 667, 668, 681, 705, 706, 0,
2019 0, 0, 641, 624, 625, 626, 0, 0, 0, 25,
2020 633, 632, 647, 617, 0, 655, 739, 738, 0, 717,
2021 663, 672, 579, 0, 182, 0, 0, 62, 0, 0,
2022 0, 0, 0, 0, 152, 153, 164, 0, 56, 162,
2023 87, 172, 0, 172, 0, 0, 811, 0, 616, 803,
2024 805, 792, 791, 0, 789, 597, 598, 623, 0, 617,
2025 615, 0, 0, 419, 615, 0, 748, 432, 0, 0,
2026 0, 455, 456, 454, 0, 0, 434, 0, 106, 0,
2027 109, 91, 44, 217, 0, 776, 82, 0, 0, 785,
2028 145, 147, 223, 0, 0, 726, 0, 758, 0, 16,
2029 0, 143, 223, 0, 0, 413, 0, 780, 0, 0,
2030 0, 195, 817, 0, 199, 0, 665, 664, 789, 0,
2031 211, 53, 0, 662, 141, 0, 662, 0, 379, 745,
2032 744, 0, 208, 0, 0, 0, 144, 120, 580, 666,
2033 208, 0, 0, 629, 630, 631, 634, 635, 645, 0,
2034 617, 641, 0, 628, 649, 641, 616, 652, 654, 656,
2035 0, 733, 666, 0, 0, 0, 0, 179, 410, 67,
2036 0, 319, 154, 728, 0, 0, 0, 0, 0, 0,
2037 0, 0, 0, 166, 0, 800, 801, 0, 0, 815,
2038 0, 601, 616, 614, 0, 606, 0, 617, 0, 0,
2039 605, 752, 0, 617, 445, 0, 446, 452, 460, 461,
2040 0, 56, 219, 799, 796, 0, 289, 730, 728, 323,
2041 326, 330, 0, 14, 289, 478, 0, 0, 480, 473,
2042 476, 0, 471, 0, 781, 795, 408, 0, 200, 0,
2043 0, 0, 208, 212, 794, 0, 223, 0, 662, 0,
2044 208, 0, 701, 223, 223, 0, 0, 333, 208, 0,
2045 695, 0, 638, 616, 640, 0, 627, 0, 0, 617,
2046 0, 646, 737, 0, 56, 0, 175, 161, 0, 0,
2047 151, 85, 165, 0, 0, 168, 0, 173, 174, 56,
2048 167, 812, 790, 0, 622, 621, 599, 0, 616, 418,
2049 602, 600, 0, 424, 616, 747, 0, 0, 0, 0,
2050 148, 0, 0, 0, 287, 0, 0, 0, 127, 222,
2051 224, 0, 286, 0, 289, 0, 761, 131, 469, 0,
2052 0, 412, 0, 203, 0, 202, 666, 208, 0, 400,
2053 794, 289, 794, 0, 743, 0, 700, 289, 289, 223,
2054 662, 0, 694, 644, 643, 636, 0, 639, 616, 648,
2055 637, 56, 181, 63, 68, 155, 0, 163, 169, 56,
2056 171, 0, 0, 415, 0, 751, 750, 0, 56, 110,
2057 798, 0, 0, 0, 0, 149, 254, 252, 566, 24,
2058 0, 248, 0, 253, 264, 0, 262, 267, 0, 266,
2059 0, 265, 0, 114, 226, 0, 228, 0, 727, 470,
2060 468, 479, 477, 204, 0, 201, 208, 0, 698, 0,
2061 0, 0, 123, 400, 794, 702, 129, 133, 289, 0,
2062 696, 0, 651, 0, 177, 0, 56, 158, 86, 170,
2063 814, 620, 0, 0, 0, 0, 0, 0, 0, 0,
2064 238, 242, 0, 0, 233, 530, 529, 526, 528, 527,
2065 547, 549, 548, 518, 508, 524, 523, 485, 495, 496,
2066 498, 497, 517, 501, 499, 500, 502, 503, 504, 505,
2067 506, 507, 509, 510, 511, 512, 513, 514, 516, 515,
2068 486, 487, 488, 491, 492, 494, 532, 533, 542, 541,
2069 540, 539, 538, 537, 525, 544, 534, 535, 536, 519,
2070 520, 521, 522, 545, 546, 550, 552, 551, 553, 554,
2071 531, 556, 555, 489, 558, 560, 559, 493, 563, 561,
2072 562, 557, 490, 543, 484, 259, 481, 0, 234, 280,
2073 281, 279, 272, 0, 273, 235, 306, 0, 0, 0,
2074 0, 114, 0, 206, 0, 697, 0, 56, 282, 56,
2075 117, 0, 0, 125, 794, 642, 0, 56, 156, 69,
2076 0, 414, 749, 448, 108, 236, 237, 309, 150, 0,
2077 0, 256, 249, 0, 0, 0, 261, 263, 0, 0,
2078 268, 275, 276, 274, 0, 0, 225, 0, 0, 0,
2079 0, 205, 699, 0, 464, 619, 0, 0, 56, 119,
2080 0, 650, 0, 0, 0, 88, 239, 45, 0, 240,
2081 241, 0, 0, 255, 258, 482, 483, 0, 250, 277,
2082 278, 270, 271, 269, 307, 304, 229, 227, 308, 0,
2083 465, 618, 0, 402, 283, 0, 121, 0, 159, 449,
2084 0, 112, 0, 289, 257, 260, 0, 662, 231, 0,
2085 462, 399, 404, 157, 0, 0, 89, 246, 0, 288,
2086 305, 185, 0, 619, 300, 662, 463, 0, 111, 0,
2087 0, 245, 794, 662, 184, 301, 302, 303, 817, 299,
2088 0, 0, 0, 244, 0, 183, 300, 0, 794, 0,
2089 243, 284, 56, 230, 817, 0, 187, 0, 56, 0,
2090 0, 188, 0, 232, 0, 285, 0, 191, 0, 190,
2091 107, 192, 0, 189, 0, 194, 193
2094 /* YYDEFGOTO[NTERM-NUM]. */
2095 static const yytype_int16 yydefgoto
[] =
2097 -1, 1, 2, 4, 117, 735, 515, 175, 262, 263,
2098 119, 120, 121, 122, 123, 124, 307, 539, 540, 434,
2099 230, 1235, 440, 1166, 1451, 703, 259, 476, 1415, 881,
2100 1011, 1466, 323, 176, 541, 769, 927, 1056, 542, 557,
2101 787, 499, 785, 543, 520, 786, 325, 278, 295, 130,
2102 771, 738, 721, 890, 1184, 975, 834, 1369, 1238, 655,
2103 840, 439, 663, 842, 1089, 648, 824, 827, 965, 1472,
2104 1473, 531, 532, 551, 552, 267, 268, 272, 1016, 1119,
2105 1202, 1349, 1457, 1475, 1379, 1419, 1420, 1421, 1190, 1191,
2106 1192, 1380, 1386, 1428, 1195, 1196, 1200, 1342, 1343, 1344,
2107 1360, 1503, 1120, 1121, 177, 132, 1488, 1489, 1347, 1123,
2108 133, 223, 435, 436, 134, 135, 136, 137, 138, 139,
2109 140, 141, 1220, 142, 768, 926, 143, 227, 302, 430,
2110 524, 525, 997, 526, 998, 144, 145, 146, 682, 147,
2111 148, 256, 149, 257, 464, 465, 466, 467, 468, 469,
2112 470, 471, 472, 693, 694, 873, 473, 474, 475, 700,
2113 1405, 150, 521, 1210, 522, 903, 743, 1032, 1029, 1335,
2114 1336, 151, 152, 153, 217, 224, 310, 420, 154, 857,
2115 686, 155, 858, 414, 753, 859, 811, 946, 948, 949,
2116 950, 813, 1068, 1069, 814, 629, 405, 185, 186, 156,
2117 534, 388, 389, 759, 157, 218, 179, 159, 160, 161,
2118 162, 163, 164, 165, 587, 166, 220, 221, 502, 209,
2119 210, 590, 591, 1002, 1003, 287, 288, 729, 167, 492,
2120 168, 529, 169, 249, 279, 318, 449, 853, 910, 719,
2121 666, 667, 668, 250, 251, 755
2124 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
2126 #define YYPACT_NINF -1217
2127 static const yytype_int16 yypact
[] =
2129 -1217, 129, -1217, -1217, 4090, 11690, 11690, -59, 11690, 11690,
2130 11690, -1217, 11690, 11690, 11690, 11690, 11690, 11690, 11690, 11690,
2131 11690, 11690, 11690, 11690, 13661, 13661, 9090, 11690, 13725, -57,
2132 -37, -1217, -1217, -1217, -1217, 150, -1217, -1217, 11690, -1217,
2133 -37, -20, 105, 124, -37, 9290, 8932, 9490, -1217, 13089,
2134 8690, 112, 11690, 13928, 26, -1217, -1217, -1217, 243, 263,
2135 54, 193, 205, 207, 223, -1217, 8932, 245, 248, -1217,
2136 -1217, -1217, -1217, -1217, 332, 13779, -1217, -1217, 8932, 9690,
2137 -1217, -1217, -1217, -1217, -1217, -1217, 8932, -1217, 198, 292,
2138 8932, 8932, -1217, 11690, -1217, -1217, -1217, -1217, -1217, -1217,
2139 -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217,
2140 11690, -1217, -1217, 302, 320, 347, 347, -1217, 475, 299,
2141 396, -1217, 328, -1217, 32, -1217, 504, -1217, -1217, -1217,
2142 13943, 454, -1217, -1217, 363, 372, 385, 406, 414, 423,
2143 12582, -1217, -1217, -1217, -1217, 477, -1217, 480, 490, 427,
2144 -1217, 98, 433, 482, -1217, -1217, 768, 8, 510, 115,
2145 440, 118, 119, 444, 143, -1217, 33, -1217, 569, -1217,
2146 -1217, -1217, 506, 458, 507, -1217, 504, 454, 14463, 1331,
2147 14463, 11690, 14463, 14463, 4076, 612, 8932, -1217, -1217, 613,
2148 -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217,
2149 -1217, 13374, 502, -1217, 525, 547, 547, 13661, 14123, 472,
2150 666, -1217, 506, 13374, 502, 535, 538, 488, 127, -1217,
2151 560, 115, 9890, -1217, -1217, 11690, 7290, 675, 50, 14463,
2152 8290, -1217, 11690, 11690, 8932, -1217, -1217, 12623, 497, -1217,
2153 12664, 13089, 13089, 522, -1217, 500, 2137, 676, -1217, 681,
2154 -1217, 8932, 622, -1217, 503, 12705, 508, 462, -1217, 2,
2155 12750, 8932, 64, -1217, 62, -1217, 13474, 65, -1217, -1217,
2156 -1217, 685, 67, 13661, 13661, 11690, 511, 539, -1217, -1217,
2157 13524, 9090, 300, 251, -1217, 11890, 13661, 344, -1217, 8932,
2158 -1217, 309, 299, 512, 14164, -1217, -1217, -1217, 621, 692,
2159 617, 14463, 133, 515, 14463, 517, 94, 4290, 11690, 275,
2160 524, 357, 275, 268, 264, -1217, 8932, 13089, 519, 10090,
2161 13089, -1217, -1217, 2356, -1217, -1217, -1217, -1217, 504, -1217,
2162 -1217, -1217, -1217, -1217, -1217, -1217, 11690, 11690, 11690, 10290,
2163 11690, 11690, 11690, 11690, 11690, 11690, 11690, 11690, 11690, 11690,
2164 11690, 11690, 11690, 11690, 11690, 11690, 11690, 11690, 11690, 11690,
2165 11690, 13725, -1217, 11690, 11690, -1217, 11690, 885, 8932, 8932,
2166 13943, 614, 266, 8490, 11690, 11690, 11690, 11690, 11690, 11690,
2167 11690, 11690, 11690, 11690, 11690, -1217, -1217, 2260, -1217, 134,
2168 11690, 11690, -1217, 10090, 11690, 11690, 302, 135, 13524, 533,
2169 504, 10490, 12791, -1217, 534, 722, 13374, 542, -16, 885,
2170 547, 10690, -1217, 10890, -1217, 545, -1, -1217, 51, 10090,
2171 -1217, 3397, -1217, 136, -1217, -1217, 12832, -1217, -1217, 11090,
2172 -1217, 11690, -1217, 650, 7490, 733, 548, 14356, 730, 44,
2173 21, -1217, -1217, -1217, -1217, -1217, 13089, 673, 563, 737,
2174 -1217, 13237, -1217, 578, -1217, -1217, -1217, 684, 11690, 690,
2175 691, 11690, 11690, 11690, -1217, 462, -1217, -1217, -1217, -1217,
2176 -1217, -1217, -1217, 577, -1217, -1217, -1217, 574, -1217, -1217,
2177 237, 13928, -1217, 8932, 11690, 547, 26, -1217, 13237, 695,
2178 -1217, 547, 57, 79, 581, 582, 495, 576, 8932, 652,
2179 586, 547, 80, 588, 13172, 8932, -1217, -1217, 718, 2696,
2180 -54, -1217, -1217, -1217, 299, -1217, -1217, -1217, -1217, 11690,
2181 662, 623, 233, -1217, 663, 778, 594, 13089, 13089, 775,
2182 -1217, 599, 782, -1217, 13089, 10, 731, 103, -1217, -1217,
2183 -1217, -1217, -1217, -1217, 2785, -1217, -1217, -1217, -1217, 48,
2184 13661, 598, 785, 14463, 781, -1217, -1217, 679, 8532, 14503,
2185 3878, 4076, 11690, 14422, 4475, 4674, 1652, 2742, 2803, 3090,
2186 3090, 3090, 3090, 1456, 1456, 1456, 1456, 672, 672, 611,
2187 611, 611, 613, 613, 613, -1217, 14463, 600, 601, 14219,
2188 608, 797, 11690, 142, 615, 135, -1217, -1217, -1217, 504,
2189 13424, 11690, -1217, -1217, 4076, -1217, 4076, 4076, 4076, 4076,
2190 4076, 4076, 4076, 4076, 4076, 4076, 4076, 11690, 142, 616,
2191 607, 3072, 618, 619, 3370, 82, 620, -1217, 13326, -1217,
2192 8932, -1217, 515, 10, 502, 13661, 14463, 13661, 14260, 99,
2193 137, -1217, 624, 11690, -1217, -1217, -1217, 7090, 395, -1217,
2194 14463, 14463, -37, -1217, -1217, -1217, 11690, 13108, 13237, 8932,
2195 7690, 626, 628, -1217, 86, 688, -1217, 805, 640, 3023,
2196 13089, 13237, 13237, 13237, 643, 41, 674, 645, 646, 327,
2197 -1217, 699, -1217, 648, -1217, -1217, -1217, 11690, 637, 14463,
2198 638, 828, 12918, 836, -1217, 14463, 12873, -1217, 577, 772,
2199 -1217, 4490, 13864, 651, 8932, -1217, -1217, 3492, -1217, -1217,
2200 835, 13661, 656, -1217, -1217, -1217, -1217, -1217, 763, 90,
2201 13864, 660, 13524, 13607, 849, -1217, -1217, -1217, -1217, 664,
2202 -1217, 11690, -1217, -1217, 3690, -1217, 14463, 13864, 669, -1217,
2203 -1217, -1217, -1217, 852, 11690, 621, -1217, -1217, 678, -1217,
2204 13089, 840, 29, -1217, -1217, 272, 12903, -1217, 140, -1217,
2205 -1217, 13089, -1217, 547, -1217, 11290, -1217, 13237, 25, 689,
2206 13864, 662, -1217, -1217, 4276, 11690, -1217, -1217, 11690, -1217,
2207 11690, -1217, 12074, 696, 10090, 652, 662, 679, 8932, 13725,
2208 547, 12115, 697, 10090, -1217, -1217, 148, -1217, -1217, 854,
2209 13708, 13708, 13326, -1217, -1217, -1217, 698, 250, 700, 705,
2210 -1217, -1217, -1217, 862, 680, 534, 547, 547, 11490, -1217,
2211 152, -1217, -1217, 12156, 408, -37, 8290, -1217, 4690, 686,
2212 4890, 693, 13661, 706, 760, 547, -1217, 871, -1217, -1217,
2213 -1217, -1217, 55, -1217, 3, 13089, -1217, 13089, 673, -1217,
2214 -1217, -1217, 883, 709, 711, -1217, -1217, 786, 708, 903,
2215 13237, 776, 8932, 621, 13237, 8932, 13237, 14463, 11690, 11690,
2216 11690, -1217, -1217, -1217, 11690, 11690, -1217, 462, -1217, 841,
2217 -1217, -1217, -1217, -1217, 13237, 547, -1217, 13089, 8932, -1217,
2218 910, -1217, -1217, 83, 728, 547, 8890, -1217, 2028, -1217,
2219 3890, 910, -1217, 271, -10, 14463, 799, -1217, 729, 13089,
2220 675, -1217, 13089, 851, 914, 11690, 142, 736, -1217, 13661,
2221 14463, -1217, 732, 25, -1217, 735, 25, 740, 4276, 14463,
2222 14315, 741, 10090, 744, 739, 743, 662, -1217, 488, 750,
2223 10090, 755, 11690, -1217, -1217, -1217, -1217, -1217, 821, 753,
2224 941, 13326, 816, -1217, 621, 13326, 13326, -1217, -1217, -1217,
2225 13661, 14463, -1217, -37, 928, 891, 8290, -1217, -1217, -1217,
2226 766, 11690, 547, 13524, 13108, 769, 13237, 5090, 513, 770,
2227 11690, 23, 227, -1217, 800, -1217, -1217, 3489, 940, -1217,
2228 13237, -1217, 13237, -1217, 780, -1217, 846, 961, 784, 787,
2229 -1217, 853, 783, 963, 14463, 13001, 14463, -1217, 14463, -1217,
2230 789, -1217, -1217, -1217, 884, 13864, 59, -1217, 13524, -1217,
2231 -1217, 4076, 788, -1217, 438, -1217, 56, 11690, -1217, -1217,
2232 -1217, 11690, -1217, 11690, -1217, -1217, -1217, 286, 965, 13237,
2233 12197, 791, 10090, 547, 840, 792, -1217, 794, 25, 11690,
2234 10090, 795, -1217, -1217, -1217, 798, 802, -1217, 10090, 804,
2235 -1217, 13326, -1217, 13326, -1217, 808, -1217, 868, 814, 987,
2236 815, -1217, 547, 972, -1217, 817, -1217, -1217, 826, 84,
2237 -1217, -1217, -1217, 827, 829, -1217, 12329, -1217, -1217, -1217,
2238 -1217, -1217, -1217, 13089, -1217, 887, -1217, 13237, 621, -1217,
2239 -1217, -1217, 13237, -1217, 13237, -1217, 11690, 825, 5290, 13089,
2240 -1217, 465, 13089, 13864, -1217, 13883, 872, 3145, -1217, -1217,
2241 -1217, 614, 13024, 68, 266, 85, -1217, -1217, 879, 12244,
2242 12285, 14463, 955, 1016, 13237, -1217, 847, 10090, 839, 936,
2243 840, 720, 840, 848, 14463, 855, -1217, 906, 1369, -1217,
2244 25, 856, -1217, -1217, 920, -1217, 13326, -1217, 621, -1217,
2245 -1217, -1217, 7090, -1217, -1217, -1217, 7890, -1217, -1217, -1217,
2246 7090, 857, 13237, -1217, 923, -1217, 924, 12390, -1217, -1217,
2247 -1217, 13864, 13864, 1034, 40, -1217, -1217, -1217, 69, 858,
2248 70, -1217, 12402, -1217, -1217, 71, -1217, -1217, 13799, -1217,
2249 866, -1217, 979, 504, -1217, 13089, -1217, 614, -1217, -1217,
2250 -1217, -1217, -1217, 1061, 13237, -1217, 10090, 882, -1217, 889,
2251 881, 387, -1217, 936, 840, -1217, -1217, -1217, 1481, 890,
2252 -1217, 13326, -1217, 962, 7090, 8090, -1217, -1217, -1217, 7090,
2253 -1217, -1217, 13237, 13237, 11690, 5490, 892, 893, 13237, 13864,
2254 -1217, -1217, 1287, 13883, -1217, -1217, -1217, -1217, -1217, -1217,
2255 -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217,
2256 -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217,
2257 -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217,
2258 -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217,
2259 -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217,
2260 -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217,
2261 -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217,
2262 -1217, -1217, -1217, -1217, -1217, 451, -1217, 872, -1217, -1217,
2263 -1217, -1217, -1217, 74, 514, -1217, 1064, 72, 8932, 979,
2264 1072, 504, 13237, -1217, 895, -1217, 365, -1217, -1217, -1217,
2265 -1217, 896, 387, -1217, 840, -1217, 13326, -1217, -1217, -1217,
2266 5690, -1217, -1217, 12960, -1217, -1217, -1217, -1217, -1217, 3095,
2267 35, -1217, -1217, 13237, 12402, 12402, 1041, -1217, 13799, 13799,
2268 553, -1217, -1217, -1217, 13237, 1020, -1217, 902, 75, 13237,
2269 8932, -1217, -1217, 1022, -1217, 1088, 5890, 6090, -1217, -1217,
2270 387, -1217, 6290, 904, 1024, 997, -1217, 1011, 964, -1217,
2271 -1217, 1015, 1287, -1217, -1217, -1217, -1217, 956, -1217, 1079,
2272 -1217, -1217, -1217, -1217, -1217, 1097, -1217, -1217, -1217, 919,
2273 -1217, 377, 921, -1217, -1217, 6490, -1217, 922, -1217, -1217,
2274 925, 954, 8932, 266, -1217, -1217, 13237, 88, -1217, 1042,
2275 -1217, -1217, -1217, -1217, 13864, 651, -1217, 966, 8932, 260,
2276 -1217, -1217, 926, 1114, 15, 88, -1217, 1050, -1217, 13864,
2277 930, -1217, 840, 132, -1217, -1217, -1217, -1217, 13089, -1217,
2278 932, 933, 76, -1217, 398, -1217, 15, 417, 840, 934,
2279 -1217, -1217, -1217, -1217, 13089, 1055, 1117, 398, -1217, 6690,
2280 425, 1118, 13237, -1217, 6890, -1217, 1059, 1122, 13237, -1217,
2281 -1217, 1123, 13237, -1217, 13237, -1217, -1217
2284 /* YYPGOTO[NTERM-NUM]. */
2285 static const yytype_int16 yypgoto
[] =
2287 -1217, -1217, -1217, -477, -1217, -1217, -1217, -4, -1217, 657,
2288 -17, 1003, 1907, -1217, 1509, -1217, -401, -1217, 11, -1217,
2289 -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -326,
2290 -1217, -1217, -171, 13, 0, -1217, -1217, -1217, 6, -1217,
2291 -1217, -1217, -1217, 7, -1217, -1217, 771, 774, 777, 984,
2292 356, -644, 360, 410, -331, -1217, 175, -1217, -1217, -1217,
2293 -1217, -1217, -1217, -560, 73, -1217, -1217, -1217, -1217, -325,
2294 -1217, -738, -1217, -364, -1217, -1217, 665, -1217, -862, -1217,
2295 -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -100,
2296 -1217, -1217, -1217, -1217, -1217, -182, -1217, 37, -791, -1217,
2297 -1216, -351, -1217, -153, 20, -130, -333, -1217, -189, -1217,
2298 -50, -22, 1126, -613, -352, -1217, -1217, -36, -1217, -1217,
2299 2577, -14, -58, -1217, -1217, -1217, -1217, -1217, -1217, 259,
2300 -711, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217,
2301 -1217, 801, -1217, -1217, 293, -1217, 707, -1217, -1217, -1217,
2302 -1217, -1217, -1217, -1217, 297, -1217, 714, -1217, -1217, 478,
2303 -1217, 270, -1217, -1217, -1217, -1217, -1217, -1217, -1217, -1217,
2304 -764, -1217, 912, 368, -336, -1217, -1217, 246, 948, 2207,
2305 -1217, -1217, -725, -378, -543, -1217, -1217, 380, -615, -810,
2306 -1217, -1217, -1217, -1217, -1217, 376, -1217, -1217, -1217, -246,
2307 -720, -183, -181, -131, -1217, -1217, 27, -1217, -1217, -1217,
2308 -1217, -8, -112, -1217, 113, -1217, -1217, -1217, -382, 915,
2309 -1217, -1217, -1217, -1217, -1217, 499, 291, -1217, -1217, 913,
2310 -1217, -1217, -1217, -308, -84, -191, -284, -1217, -1009, -1217,
2311 351, -1217, -1217, -1217, -177, -893
2314 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
2315 positive, shift that token. If negative, reduce the rule which
2316 number is the opposite. If YYTABLE_NINF, syntax error. */
2317 #define YYTABLE_NINF -788
2318 static const yytype_int16 yytable
[] =
2320 118, 329, 296, 371, 127, 399, 299, 300, 226, 766,
2321 128, 129, 554, 812, 254, 125, 625, 126, 231, 1037,
2322 219, 602, 235, 417, 131, 585, 647, 631, 392, 622,
2323 922, 158, 912, 549, 906, 1139, 264, 422, 734, 423,
2324 1024, 320, 238, 831, 1422, 247, 326, 329, 661, 1249,
2325 1087, 205, 206, 659, 397, 642, 533, 761, 291, 431,
2326 303, 292, 277, 1111, 444, 445, 711, 11, 387, 450,
2327 -686, 11, 390, 481, 486, 701, 489, 1205, -251, 1253,
2328 1337, 1395, 277, 1388, 1395, 1249, 277, 277, 711, 723,
2329 424, 723, 723, 723, 723, 845, 305, 980, 981, 888,
2330 265, 11, 844, 1128, 1389, 477, 387, 199, 401, 374,
2331 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
2332 861, 387, 1485, 1486, 1487, 199, 277, 925, 271, 3,
2333 11, 1221, 756, 1223, 181, 994, 222, 306, 1030, 999,
2334 450, 1065, 935, 733, 328, 1070, 1409, 746, 979, 980,
2335 981, 407, 996, 483, 385, 386, 225, 558, -405, 1112,
2336 -683, 390, 478, 415, 1113, -690, 55, 56, 57, 170,
2337 171, 327, 1114, 232, 11, 11, 372, 390, 537, 284,
2338 -684, -685, 404, 530, 1141, 1045, 1031, 911, 1047, -721,
2339 400, 1147, 1148, 640, 1446, -568, -687, 394, -722, -724,
2340 983, -692, -688, 297, -686, 394, 391, 316, 1115, 1116,
2341 -689, 1117, 762, 781, -723, 1362, 387, 662, 1088, -198,
2342 -618, 421, 118, -618, 266, 494, 118, 321, 408, 626,
2343 438, 396, 1423, 94, 410, 1250, 1251, 428, 660, 556,
2344 416, 433, 329, 1067, 480, 432, 1471, 452, 828, 113,
2345 846, 712, 830, 158, 889, 595, 1118, 158, 900, 482,
2346 487, 495, 490, 1206, -251, 1254, 1338, 1396, 1390, 664,
2347 1437, 1500, 514, 713, 724, 595, 799, 1017, 1165, 1208,
2348 740, 978, -186, 982, -569, 296, 326, 1228, 537, 849,
2349 1495, 530, 1055, 485, -683, 391, -693, 595, 233, -690,
2350 491, 491, 496, 118, 913, 317, 595, 501, 258, 595,
2351 1143, 391, 548, 510, -684, -685, 247, 234, 1132, 277,
2352 126, 980, 981, -721, -198, 282, -618, 131, 704, 952,
2353 -687, 395, -722, -724, 158, -787, -688, 603, 282, 395,
2354 893, 1071, 282, 511, -689, 297, 914, 511, -723, 282,
2355 748, 749, 757, 219, 758, 1410, 632, 754, 1078, 594,
2356 1133, 269, 504, 593, 277, 277, 277, 55, 56, 57,
2357 170, 171, 327, 55, 56, 57, 170, 171, 327, 619,
2358 741, 270, 316, 618, 599, 852, 273, 1174, 953, 506,
2359 285, 286, 204, 204, 282, 742, 216, 1403, 274, 309,
2360 275, 594, 783, 285, 286, 634, 282, 285, 286, 1459,
2361 641, 283, 1229, 645, 285, 286, 276, 644, 282, 1025,
2362 933, 282, 505, 511, 1090, 501, 312, 792, 788, 941,
2363 118, 282, 1026, 408, 94, 957, 511, 977, 280, 1404,
2364 94, 281, 1111, 783, 316, 654, 1153, 1233, 1154, 1505,
2365 757, 1460, 758, 938, 316, 1481, 819, 1516, 820, 285,
2366 286, 158, 825, 826, 264, 1383, 547, 1027, -787, 546,
2367 284, 285, 286, 1494, 773, 963, 964, 588, 1384, 706,
2368 11, 993, 512, 285, 286, 298, 285, 286, 417, 1507,
2369 317, 1506, 450, 854, 718, 1385, 285, 286, 308, 1517,
2370 728, 730, 315, 620, 516, 517, 533, 623, 821, 401,
2371 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
2372 384, 319, 533, -787, 373, 374, 375, 376, 377, 378,
2373 379, 380, 381, 382, 383, 384, 322, -787, 1112, -427,
2374 1391, 1232, 363, 1113, 1019, 55, 56, 57, 170, 171,
2375 327, 1114, 364, 48, 277, 385, 386, 1392, 330, 317,
2376 1393, 55, 56, 57, 170, 171, 327, 331, 1051, 204,
2377 385, 386, 1064, 908, 507, 204, 1059, 763, 513, 1431,
2378 332, 204, 1358, 1359, 918, 1181, 1182, 1115, 1116, -787,
2379 1117, 1079, -787, 1501, 1502, 1497, 1432, 1429, 1430, 1433,
2380 507, 333, 513, 507, 513, 513, 1084, 980, 981, 334,
2381 1108, 1510, 94, 311, 313, 314, 1365, 387, 335, 1099,
2382 1425, 1426, 365, 367, 810, 1105, 815, 790, 94, 366,
2383 829, -428, 387, 393, 204, 1127, 1125, -691, 457, 458,
2384 459, 204, 204, 118, 595, 460, 461, -568, 204, 462,
2385 463, 398, 289, 403, 204, 837, 118, 358, 359, 360,
2386 126, 361, 816, 361, 817, 317, 409, 131, 984, 387,
2387 985, 839, 412, 1162, 158, 413, -567, 533, 1138, 418,
2388 533, 419, 421, 429, 835, 446, 1145, 158, 1170, 716,
2389 -782, 1159, 442, 447, 1151, 451, 453, 118, 454, 488,
2390 882, 523, 498, 456, 937, 497, 527, 518, 528, 535,
2391 1013, 536, -51, 48, 126, 355, 356, 357, 358, 359,
2392 360, 131, 361, 545, 1111, 1041, 555, 628, 158, 216,
2393 118, 630, 1035, 652, 127, 754, 633, 1474, 885, 639,
2394 128, 129, 431, 656, 658, 125, 670, 126, 917, 501,
2395 895, 1411, 916, 665, 131, 1474, 669, 687, 688, 699,
2396 1234, 158, 11, 1496, 690, 691, 204, 702, 1239, 710,
2397 1124, 717, 720, 1217, 204, 714, 715, 1245, 1124, 722,
2398 731, 219, 725, 737, 277, 739, 744, 745, 747, 750,
2399 751, 752, 764, -429, 765, 767, 945, 945, 810, 770,
2400 776, 777, 533, 966, 1183, 779, 780, 794, 784, 793,
2401 918, 847, 796, 772, 848, 862, 868, 869, 822, 797,
2402 1112, 841, 118, 843, 118, 1113, 118, 55, 56, 57,
2403 170, 171, 327, 1114, 850, 1370, 860, 967, 863, 864,
2404 865, 126, 870, 126, 866, 874, 877, 880, 131, 884,
2405 131, 886, 1354, 158, 887, 158, 892, 158, 995, 972,
2406 1020, 1000, 1442, 896, 897, 902, 904, 909, 942, 1115,
2407 1116, 956, 1117, 907, 958, 55, 56, 57, 58, 59,
2408 327, 969, 923, 974, 1014, 976, 65, 368, 971, 932,
2409 940, 951, 987, 954, 94, 1124, 118, 1350, 955, 973,
2410 127, 1124, 1124, 988, 533, 989, 128, 129, 991, 990,
2411 1111, 125, 992, 126, 506, 1010, 1171, 1222, 204, 1015,
2412 131, 1018, 1033, 369, 1034, 1038, 1044, 158, 1039, 1042,
2413 1484, 1046, 1180, 1048, 1050, 1053, 203, 203, 1052, 1054,
2414 215, 1073, 94, 1058, 1061, 1204, 1043, 810, 11, 1060,
2415 1063, 810, 810, 1062, 1066, 1074, 1406, 33, 1407, 199,
2416 1075, 1077, 118, 1081, 1091, 1085, 1412, 1093, 204, 1097,
2417 1098, 1207, 1104, 118, 1096, 1109, 1102, 1076, 1100, 1134,
2418 1103, 1101, 1124, 1107, 1137, 1126, 1140, 1072, 1142, 1146,
2419 126, 1156, 329, 158, 1149, 1150, 1158, 131, 1152, 1161,
2420 501, 835, 1155, 204, 158, 204, 1112, 1445, 1157, 1160,
2421 1172, 1113, 1163, 55, 56, 57, 170, 171, 327, 1114,
2422 1164, 1178, 1167, 1194, 1168, 204, 1209, 202, 202, 1213,
2423 1214, 214, 1348, 1218, 81, 82, 1122, 83, 84, 85,
2424 1216, 1219, 1224, 1231, 1122, 501, 1242, 1243, 1248, 1225,
2425 1230, 1240, 214, 1346, 1252, 1115, 1116, 810, 1117, 810,
2426 95, 1345, 96, 97, 98, 99, 100, 101, 102, 103,
2427 104, 105, 106, 107, 108, 1352, 1355, 1357, 1394, 204,
2428 94, 592, 1356, 113, 1364, 1366, 1399, 1375, 1376, 1402,
2429 204, 204, 1408, 1427, 1435, 1436, 1440, 1441, 1449, 1448,
2430 1450, 1509, -247, 1226, 118, 1452, 1453, 1514, 247, 1389,
2431 1455, 1456, 1458, 1199, 1465, 1461, 1476, 1463, 1464, 203,
2432 1482, 126, 1479, 1483, 1491, 1493, 1498, 1499, 131, 1511,
2433 1508, 1512, 1518, 1521, 1203, 158, 1522, 1524, 705, 1478,
2434 370, 598, 596, 936, 372, 934, 597, 901, 1492, 1080,
2435 1490, 708, 810, 1382, 1201, 1387, 1513, 216, 118, 1169,
2436 1398, 1122, 118, 1504, 228, 1361, 118, 1122, 1122, 1036,
2437 1009, 1007, 697, 1028, 605, 126, 876, 1237, 203, 698,
2438 1400, 947, 131, 126, 1057, 203, 203, 493, 1334, 158,
2439 131, 959, 203, 158, 1341, 0, 503, 158, 203, 986,
2440 204, 247, 0, 0, 202, 0, 0, 0, 0, 0,
2441 202, 533, 0, 0, 0, 0, 202, 0, 0, 0,
2442 1351, 0, 0, 0, 0, 0, 0, 810, 0, 533,
2443 118, 118, 0, 0, 0, 118, 0, 533, 0, 0,
2444 0, 118, 0, 0, 214, 214, 1368, 126, 1122, 214,
2445 0, 0, 126, 0, 131, 0, 0, 0, 126, 131,
2446 0, 158, 158, 0, 1397, 131, 158, 0, 0, 202,
2447 0, 0, 158, 215, 0, 0, 202, 202, 0, 0,
2448 0, 0, 0, 202, 0, 0, 0, 204, 0, 202,
2449 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2450 1468, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2451 203, 754, 0, 0, 0, 0, 1439, 0, 0, 0,
2452 214, 0, 0, 214, 0, 0, 0, 754, 204, 0,
2453 0, 0, 0, 0, 0, 0, 0, 0, 0, 329,
2454 0, 204, 204, 0, 277, 401, 374, 375, 376, 377,
2455 378, 379, 380, 381, 382, 383, 384, 31, 32, 0,
2456 0, 0, 810, 683, 214, 0, 118, 37, 0, 0,
2457 0, 0, 0, 1111, 0, 1417, 0, 0, 0, 0,
2458 1334, 1334, 0, 126, 1341, 1341, 204, 0, 0, 0,
2459 131, 385, 386, 0, 0, 0, 277, 158, 0, 684,
2460 683, 202, 118, 118, 0, 0, 0, 0, 118, 202,
2461 0, 11, 0, 69, 70, 71, 72, 73, 0, 126,
2462 126, 0, 0, 0, 675, 126, 131, 131, 0, 0,
2463 76, 77, 131, 158, 158, 0, 684, 0, 0, 158,
2464 0, 118, 0, 0, 87, 0, 0, 0, 1467, 214,
2465 0, 0, 0, 387, 679, 0, 0, 0, 126, 92,
2466 0, 0, 203, 0, 1480, 131, 0, 0, 0, 1112,
2467 0, 0, 158, 1469, 1113, 0, 55, 56, 57, 170,
2468 171, 327, 1114, 0, 0, 1111, 0, 0, 0, 0,
2469 0, 679, 0, -788, -788, -788, -788, 353, 354, 355,
2470 356, 357, 358, 359, 360, 118, 361, 0, 0, 0,
2471 118, 0, 203, 0, 0, 0, 0, 0, 1115, 1116,
2472 0, 1117, 126, 11, 0, 0, 0, 126, 0, 131,
2473 214, 214, 0, 0, 131, 0, 158, 214, 0, 0,
2474 0, 158, 0, 94, 0, 0, 0, 203, 0, 203,
2475 0, 0, 0, 202, 0, 0, 0, 0, 248, 0,
2476 0, 0, 0, 0, 0, 0, 1227, 0, 0, 203,
2477 683, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2478 0, 1112, 0, 683, 683, 683, 1113, 0, 55, 56,
2479 57, 170, 171, 327, 1114, 0, 0, 0, 0, 0,
2480 0, 0, 0, 202, 0, 0, 684, 0, 0, 0,
2481 0, 0, 0, 0, 879, 0, 0, 0, 0, 684,
2482 684, 684, 0, 203, 0, 0, 0, 0, 0, 0,
2483 1115, 1116, 891, 1117, 203, 203, 0, 0, 202, 0,
2484 202, 0, 0, 0, 0, 0, 0, 0, 0, 891,
2485 0, 0, 0, 0, 0, 94, 0, 0, 0, 0,
2486 202, 679, 0, 0, 0, 0, 0, 0, 0, 0,
2487 0, 0, 214, 214, 679, 679, 679, 0, 1363, 683,
2488 0, 0, 924, 343, 344, 345, 346, 347, 348, 349,
2489 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
2490 360, 215, 361, 0, 0, 214, 0, 0, 0, 0,
2491 0, 0, 0, 0, 202, 684, 0, 0, 0, 0,
2492 0, 0, 0, 214, 0, 202, 202, 0, 0, 0,
2493 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2494 214, 0, 0, 0, 203, 0, 0, 0, 0, 0,
2495 248, 248, 0, 214, 0, 248, 0, 0, 0, 0,
2496 0, 0, 0, 0, 214, 0, 0, 0, 0, 0,
2497 679, 0, 683, 214, 0, 0, 683, 0, 683, 0,
2498 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2499 0, 0, 214, 0, 0, 0, 683, 0, 0, 0,
2500 0, 0, 0, 0, 0, 0, 0, 0, 684, 0,
2501 0, 0, 684, 0, 684, 0, 0, 0, 0, 0,
2502 0, 0, 0, 0, 0, 0, 248, 0, 0, 248,
2503 0, 203, 684, 0, 0, 202, 0, 0, 0, 0,
2504 0, 0, 0, 0, 0, 0, 0, 0, 214, 0,
2505 214, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2506 0, 0, 0, 679, 0, 0, 0, 679, 0, 679,
2507 0, 0, 203, 0, 0, 0, 0, 0, 0, 0,
2508 0, 0, 0, 0, 0, 203, 203, 679, 683, 0,
2509 214, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2510 0, 0, 683, 0, 683, 0, 0, 0, 0, 0,
2511 0, 0, 214, 0, 0, 214, 0, 0, 0, 0,
2512 0, 0, 202, 0, 684, 0, 0, 1110, 0, 0,
2513 203, 0, 0, 0, 0, 0, 0, 0, 684, 0,
2514 684, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2515 0, 683, 0, 0, 0, 248, 0, 0, 0, 0,
2516 681, 0, 0, 202, 0, 0, 0, 0, 0, 0,
2517 0, 0, 0, 0, 0, 0, 202, 202, 0, 679,
2518 0, 0, 0, 0, 0, 0, 0, 684, 0, 0,
2519 214, 0, 0, 679, 0, 679, 0, 681, 0, 0,
2520 0, 0, 0, 0, 0, 0, 0, 0, 0, 683,
2521 0, 0, 0, 0, 683, 0, 683, 0, 214, 0,
2522 0, 202, 0, 0, 0, 1185, 0, 1193, 0, 0,
2523 0, 0, 0, 0, 0, 0, 248, 248, 336, 337,
2524 338, 0, 679, 248, 0, 684, 683, 0, 0, 0,
2525 684, 0, 684, 0, 339, 0, 340, 341, 342, 343,
2526 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
2527 354, 355, 356, 357, 358, 359, 360, 0, 361, 0,
2528 0, 0, 684, 0, 683, 0, 0, 0, 0, 0,
2529 0, 0, 0, 1246, 1247, 0, 214, 0, 0, 0,
2530 679, 0, 0, 0, 0, 679, 0, 679, 0, 0,
2531 0, 0, 214, 0, 0, 214, 214, 0, 214, 0,
2532 684, 0, 0, 0, 0, 214, 683, 0, 0, 0,
2533 0, 0, 0, 0, 0, 0, 0, 679, 0, 0,
2534 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2535 0, 0, 0, 0, 683, 683, 0, 0, 0, 0,
2536 683, 1378, 684, 241, 0, 1193, 0, 681, 0, 0,
2537 0, 0, 0, 0, 0, 679, 0, 0, 248, 248,
2538 681, 681, 681, 0, 214, 214, 0, 0, 0, 242,
2539 684, 684, 0, 0, 0, 0, 684, 0, 0, 0,
2540 1381, 0, 0, 0, 0, 0, 0, 0, 214, 33,
2541 0, 0, 0, 0, 0, 0, 0, 679, 0, 0,
2542 0, 0, 0, 0, 0, 0, 0, 0, 1022, 0,
2543 0, 0, 0, 0, 0, 0, 448, 0, 0, 0,
2544 0, 0, 0, 0, 0, 679, 679, 0, 0, 0,
2545 0, 679, 214, 0, 0, 0, 214, 0, 0, 248,
2546 0, 0, 243, 0, 683, 0, 0, 0, 0, 0,
2547 248, 0, 0, 0, 0, 0, 681, 0, 0, 174,
2548 0, 0, 78, 0, 244, 0, 81, 82, 0, 83,
2549 84, 85, 0, 0, 0, 683, 0, 0, 0, 0,
2550 684, 0, 0, 0, 245, 0, 683, 0, 0, 0,
2551 0, 683, 95, 0, 96, 97, 98, 99, 100, 101,
2552 102, 103, 104, 105, 106, 107, 108, 0, 0, 0,
2553 246, 684, 33, 0, 199, 0, 0, 0, 0, 0,
2554 0, 0, 684, 0, 0, 0, 0, 684, 0, 0,
2555 0, 0, 0, 0, 248, 679, 248, 0, 680, 0,
2556 0, 0, 0, 0, 0, 0, 0, 0, 683, 681,
2557 1454, 0, 0, 681, 0, 681, 1477, 0, 0, 0,
2558 0, 0, 214, 0, 0, 0, 679, 0, 0, 0,
2559 0, 1185, 0, 681, 0, 680, 248, 679, 0, 0,
2560 0, 0, 679, 0, 684, 0, 0, 0, 0, 81,
2561 82, 0, 83, 84, 85, 0, 0, 0, 248, 0,
2562 0, 248, 0, 0, 683, 0, 0, 0, 33, 0,
2563 683, 0, 0, 0, 683, 95, 683, 96, 97, 98,
2564 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2565 0, 0, 0, 0, 0, 0, 617, 0, 113, 679,
2566 684, 0, 0, 0, 0, 0, 684, 214, 0, 0,
2567 684, 0, 684, 0, 0, 0, 0, 0, 0, 0,
2568 0, 0, 214, 0, 0, 681, 0, 0, 0, 0,
2569 0, 214, 0, 0, 0, 0, 248, 0, 0, 681,
2570 0, 681, 0, 0, 0, 81, 82, 214, 83, 84,
2571 85, 0, 0, 0, 0, 679, 0, 0, 0, 0,
2572 0, 679, 0, 0, 0, 679, 0, 679, 0, 0,
2573 0, 95, 0, 96, 97, 98, 99, 100, 101, 102,
2574 103, 104, 105, 106, 107, 108, 0, 0, 681, 555,
2575 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2576 0, 0, 0, 0, 0, 680, 0, 0, 0, 0,
2577 0, 0, 0, 0, 0, 0, 0, 0, 680, 680,
2578 680, 0, 178, 180, 0, 182, 183, 184, 0, 187,
2579 188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
2580 198, 0, 248, 208, 211, 0, 681, 0, 0, 0,
2581 0, 681, 0, 681, 0, 229, 0, 0, 248, 0,
2582 0, 248, 237, 0, 240, 0, 0, 255, 0, 260,
2583 0, 248, 0, 0, 0, 0, 0, 0, 0, 0,
2584 0, 0, 0, 681, 0, 0, 0, 0, 0, 0,
2585 0, 0, 0, 0, 0, 0, 294, 0, 685, 0,
2586 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2587 301, 0, 0, 0, 680, 0, 0, 0, 0, 0,
2588 0, 681, 0, 0, 0, 0, 0, 304, 0, 0,
2589 0, 0, 0, 0, 0, 709, 0, 0, 0, 0,
2590 0, 0, 0, 0, 0, 0, 336, 337, 338, 0,
2591 0, 0, 0, 0, 248, 0, 0, 0, 0, 0,
2592 0, 0, 339, 681, 340, 341, 342, 343, 344, 345,
2593 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
2594 356, 357, 358, 359, 360, 0, 361, 0, 0, 0,
2595 0, 681, 681, 0, 0, 0, 0, 681, 402, 0,
2596 0, 0, 0, 0, 0, 0, 0, 680, 0, 0,
2597 0, 680, 0, 680, 344, 345, 346, 347, 348, 349,
2598 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
2599 360, 680, 361, 0, 0, 336, 337, 338, 0, 426,
2600 0, 0, 426, 0, 0, 0, 0, 0, 0, 229,
2601 437, 339, 0, 340, 341, 342, 343, 344, 345, 346,
2602 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
2603 357, 358, 359, 360, 0, 361, 345, 346, 347, 348,
2604 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
2605 359, 360, 304, 361, 0, 0, 0, 0, 208, 0,
2606 0, 681, 509, 0, 0, 836, 0, 0, 0, 0,
2607 0, 0, 0, 0, 0, 0, 0, 0, 855, 856,
2608 0, 0, 0, 680, 0, 544, 0, 0, 1418, 0,
2609 0, 0, 681, 732, 0, 0, 553, 680, 0, 680,
2610 0, 0, 0, 681, 0, 0, 0, 0, 681, 0,
2611 0, 0, 0, 559, 560, 561, 563, 564, 565, 566,
2612 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
2613 577, 578, 579, 580, 581, 582, 583, 584, 0, 0,
2614 586, 586, 0, 589, 0, 0, 680, 0, 0, 0,
2615 604, 606, 607, 608, 609, 610, 611, 612, 613, 614,
2616 615, 616, 0, 0, 0, 681, 0, 586, 621, 0,
2617 553, 586, 624, 0, 921, 0, 0, 0, 604, 0,
2618 0, 0, 760, 0, 0, 0, 0, 0, 636, 0,
2619 638, 0, 0, 0, 0, 0, 553, 248, 0, 0,
2620 0, 0, 0, 0, 680, 0, 650, 0, 651, 680,
2621 0, 680, 0, 248, 0, 0, 0, 0, 0, 0,
2622 0, 681, 0, 0, 0, 0, 0, 681, 0, 0,
2623 0, 681, 0, 681, 0, 689, 0, 0, 692, 695,
2624 696, 680, 0, 0, 0, 0, 0, 0, 0, 241,
2625 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2626 0, 707, 0, 0, 0, 0, 0, 0, 0, 0,
2627 0, 0, 0, 1001, 0, 242, 0, 0, 0, 680,
2628 0, 0, 336, 337, 338, 0, 0, 0, 0, 0,
2629 0, 1012, 0, 0, 0, 33, 736, 0, 339, 0,
2630 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
2631 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
2632 360, 680, 361, -788, -788, -788, -788, 349, 350, 351,
2633 352, 353, 354, 355, 356, 357, 358, 359, 360, 774,
2634 361, 0, 0, 0, 0, 0, 0, 0, 243, 680,
2635 680, 0, 0, 0, 0, 680, 0, 0, 0, 0,
2636 0, 0, 0, 0, 0, 174, 0, 33, 78, 782,
2637 244, 0, 81, 82, 0, 83, 84, 85, 294, 0,
2638 0, 851, 0, 1082, 0, 0, 0, 0, 0, 0,
2639 245, 0, 0, 0, 791, 0, 0, 1094, 95, 1095,
2640 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
2641 106, 107, 108, 0, 0, 0, 246, 33, 0, 0,
2642 823, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2643 0, 0, 0, 229, 0, 0, 0, 174, 0, 0,
2644 78, 0, 0, 0, 81, 82, 1135, 83, 84, 85,
2645 0, 0, 0, 0, 0, 0, 0, 0, 0, 680,
2646 0, 1197, 0, 0, 867, 0, 0, 0, 0, 795,
2647 95, 0, 96, 97, 98, 99, 100, 101, 102, 103,
2648 104, 105, 106, 107, 108, 0, 0, 0, 0, 0,
2649 680, 0, 1416, 0, 81, 82, 0, 83, 84, 85,
2650 0, 680, 0, 0, 1173, 0, 680, 0, 898, 1175,
2651 0, 1176, 0, 0, 0, 0, 0, 0, 0, 0,
2652 95, 905, 96, 97, 98, 99, 100, 101, 102, 103,
2653 104, 105, 106, 107, 108, 0, 0, 0, 1198, 0,
2654 0, 1215, 920, 0, 0, 0, 0, 0, 0, 0,
2655 0, 0, 928, 0, 0, 929, 0, 930, 0, 0,
2656 0, 553, 0, 680, 0, 0, 0, 0, 0, 0,
2657 553, 0, 0, 0, 0, 0, 0, 0, 0, 1241,
2658 336, 337, 338, 0, 0, 0, 0, 0, 0, 0,
2659 0, 0, 0, 0, 0, 961, 339, 0, 340, 341,
2660 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
2661 352, 353, 354, 355, 356, 357, 358, 359, 360, 680,
2662 361, 1353, 0, 0, 0, 680, 0, 0, 0, 680,
2663 0, 680, 0, 0, 0, 0, 0, 0, 0, 0,
2664 0, 0, 0, 0, 0, 1004, 1005, 1006, 0, 1371,
2665 1372, 692, 1008, 0, 0, 1377, 0, 0, 0, 0,
2666 0, 0, 0, 0, 0, 0, 0, 0, 0, 33,
2667 0, 199, 0, 1021, 0, 0, 0, 0, 0, 0,
2668 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2669 0, 0, 1040, 0, 0, 0, 0, 0, 0, 0,
2670 0, 0, 336, 337, 338, 0, 0, 0, 0, 553,
2671 0, 0, 0, 0, 0, 241, 0, 553, 339, 1021,
2672 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
2673 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
2674 360, 242, 361, 0, 0, 0, 81, 82, 229, 83,
2675 84, 85, 0, 0, 0, 0, 0, 1086, 0, 1401,
2676 0, 33, 0, 0, 0, 0, 0, 798, 0, 0,
2677 0, 0, 95, 0, 96, 97, 98, 99, 100, 101,
2678 102, 103, 104, 105, 106, 107, 108, 0, 0, 0,
2679 1424, 0, 0, 643, 0, 113, 0, 0, 0, 0,
2680 0, 1434, 0, 0, 1129, 0, 1438, 0, 1130, 0,
2681 1131, 0, 0, 0, 243, 0, 0, 0, 0, 553,
2682 0, 0, 0, 0, 0, 0, 1144, 553, 0, 0,
2683 0, 174, 0, 0, 78, 553, 244, 0, 81, 82,
2684 0, 83, 84, 85, 0, 0, 0, 1092, 0, 0,
2685 0, 0, 0, 0, 0, 0, 245, 0, 0, 0,
2686 0, 0, 0, 1470, 95, 0, 96, 97, 98, 99,
2687 100, 101, 102, 103, 104, 105, 106, 107, 108, 0,
2688 0, 0, 246, 1177, 0, 0, 0, 0, 0, 883,
2689 0, 0, 0, 5, 6, 7, 8, 9, 0, 0,
2690 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2691 0, 0, 0, 0, 553, 0, 0, 0, 0, 1519,
2692 0, 0, 0, 0, 0, 1523, 0, 0, 0, 1525,
2693 0, 1526, 11, 12, 13, 0, 0, 0, 0, 14,
2694 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2695 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2696 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2697 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2698 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2699 49, 50, 51, 553, 52, 53, 54, 55, 56, 57,
2700 58, 59, 60, 0, 61, 62, 63, 64, 65, 66,
2701 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2702 73, 1373, 0, 0, 0, 0, 0, 74, 0, 0,
2703 0, 0, 75, 76, 77, 78, 79, 80, 0, 81,
2704 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2705 0, 88, 0, 0, 0, 0, 0, 89, 90, 0,
2706 91, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2707 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2708 109, 0, 0, 110, 0, 111, 112, 899, 113, 114,
2709 338, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2710 0, 0, 0, 10, 339, 0, 340, 341, 342, 343,
2711 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
2712 354, 355, 356, 357, 358, 359, 360, 0, 361, 0,
2713 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2714 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2715 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2716 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2717 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2718 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2719 49, 50, 51, 0, 52, 53, 54, 55, 56, 57,
2720 58, 59, 60, 0, 61, 62, 63, 64, 65, 66,
2721 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2722 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2723 0, 0, 75, 76, 77, 78, 79, 80, 0, 81,
2724 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2725 0, 88, 0, 0, 0, 0, 0, 89, 90, 0,
2726 91, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2727 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2728 109, 0, 0, 110, 0, 111, 112, 1023, 113, 114,
2729 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2730 0, 0, 339, 10, 340, 341, 342, 343, 344, 345,
2731 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
2732 356, 357, 358, 359, 360, 0, 361, 0, 0, 0,
2733 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2734 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2735 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2736 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2737 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2738 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2739 49, 50, 51, 0, 52, 53, 54, 55, 56, 57,
2740 58, 59, 60, 0, 61, 62, 63, 64, 65, 66,
2741 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2742 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2743 0, 0, 75, 76, 77, 78, 79, 80, 0, 81,
2744 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2745 0, 88, 0, 0, 0, 0, 0, 89, 90, 0,
2746 91, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2747 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2748 109, 0, 0, 110, 0, 111, 112, 0, 113, 114,
2749 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2750 0, 0, 0, 10, 340, 341, 342, 343, 344, 345,
2751 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
2752 356, 357, 358, 359, 360, 0, 361, 0, 0, 0,
2753 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2754 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2755 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2756 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2757 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2758 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2759 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
2760 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
2761 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2762 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2763 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
2764 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2765 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
2766 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2767 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2768 109, 0, 0, 110, 0, 111, 112, 538, 113, 114,
2769 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2770 0, 0, 0, 10, 341, 342, 343, 344, 345, 346,
2771 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
2772 357, 358, 359, 360, 0, 361, 0, 0, 0, 0,
2773 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2774 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2775 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2776 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2777 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2778 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2779 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
2780 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
2781 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2782 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2783 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
2784 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2785 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
2786 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2787 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2788 109, 0, 0, 110, 0, 111, 112, 878, 113, 114,
2789 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2790 0, 0, 0, 10, 342, 343, 344, 345, 346, 347,
2791 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
2792 358, 359, 360, 0, 361, 0, 0, 0, 0, 0,
2793 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2794 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2795 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2796 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2797 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2798 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2799 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
2800 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
2801 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2802 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2803 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
2804 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2805 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
2806 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2807 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2808 109, 0, 0, 110, 0, 111, 112, 968, 113, 114,
2809 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2810 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2811 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2812 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2813 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2814 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2815 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2816 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2817 37, 38, 39, 40, 970, 41, 0, 42, 0, 43,
2818 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2819 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
2820 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
2821 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2822 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2823 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
2824 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2825 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
2826 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2827 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2828 109, 0, 0, 110, 0, 111, 112, 0, 113, 114,
2829 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2830 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2831 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2832 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2833 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2834 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2835 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2836 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2837 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2838 1083, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2839 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
2840 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
2841 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2842 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2843 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
2844 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2845 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
2846 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2847 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2848 109, 0, 0, 110, 0, 111, 112, 0, 113, 114,
2849 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2850 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2851 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2852 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2853 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2854 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2855 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2856 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2857 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2858 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2859 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
2860 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
2861 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2862 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2863 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
2864 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2865 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
2866 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2867 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2868 109, 0, 0, 110, 0, 111, 112, 1179, 113, 114,
2869 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2870 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2871 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2872 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2873 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2874 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2875 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2876 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2877 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2878 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2879 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
2880 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
2881 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2882 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2883 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
2884 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2885 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
2886 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2887 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2888 109, 0, 0, 110, 0, 111, 112, 1374, 113, 114,
2889 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2890 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2891 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2892 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2893 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2894 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2895 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2896 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2897 37, 38, 39, 40, 0, 41, 0, 42, 1413, 43,
2898 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2899 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
2900 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
2901 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2902 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2903 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
2904 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2905 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
2906 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2907 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2908 109, 0, 0, 110, 0, 111, 112, 0, 113, 114,
2909 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2910 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2911 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2912 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2913 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2914 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2915 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2916 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2917 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2918 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2919 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
2920 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
2921 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2922 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2923 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
2924 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2925 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
2926 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2927 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2928 109, 0, 0, 110, 0, 111, 112, 1443, 113, 114,
2929 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2930 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2931 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2932 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2933 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2934 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2935 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2936 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2937 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2938 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2939 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
2940 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
2941 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2942 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2943 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
2944 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2945 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
2946 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2947 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2948 109, 0, 0, 110, 0, 111, 112, 1444, 113, 114,
2949 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2950 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2951 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2952 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2953 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2954 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2955 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2956 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2957 37, 38, 39, 40, 0, 41, 1447, 42, 0, 43,
2958 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2959 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
2960 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
2961 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2962 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2963 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
2964 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2965 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
2966 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2967 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2968 109, 0, 0, 110, 0, 111, 112, 0, 113, 114,
2969 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2970 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2971 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2972 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2973 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2974 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2975 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2976 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2977 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2978 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2979 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
2980 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
2981 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
2982 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
2983 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
2984 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
2985 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
2986 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
2987 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
2988 109, 0, 0, 110, 0, 111, 112, 1462, 113, 114,
2989 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
2990 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2991 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2992 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2993 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
2994 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2995 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
2996 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
2997 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
2998 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
2999 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
3000 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
3001 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
3002 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3003 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
3004 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
3005 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3006 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
3007 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3008 109, 0, 0, 110, 0, 111, 112, 1515, 113, 114,
3009 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3010 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3011 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3012 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3013 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
3014 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3015 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
3016 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
3017 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
3018 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
3019 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
3020 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
3021 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
3022 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3023 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
3024 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
3025 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3026 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
3027 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3028 109, 0, 0, 110, 0, 111, 112, 1520, 113, 114,
3029 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3030 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3031 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3032 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3033 0, 0, 11, 12, 13, 0, 0, 0, 0, 14,
3034 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3035 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
3036 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
3037 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
3038 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
3039 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
3040 58, 59, 60, 0, 61, 62, 63, 0, 65, 66,
3041 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
3042 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3043 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
3044 82, 0, 83, 84, 85, 86, 0, 87, 0, 0,
3045 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3046 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
3047 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3048 109, 0, 0, 110, 0, 111, 112, 0, 113, 114,
3049 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3050 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3051 0, 0, 0, 0, 0, 0, 0, 427, 0, 0,
3052 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3053 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3054 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3055 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
3056 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
3057 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
3058 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
3059 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
3060 170, 171, 60, 0, 61, 62, 63, 0, 0, 0,
3061 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
3062 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3063 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
3064 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3065 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3066 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
3067 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3068 109, 0, 0, 110, 0, 111, 112, 0, 113, 114,
3069 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3070 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3071 0, 0, 0, 0, 0, 0, 0, 653, 0, 0,
3072 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3073 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3074 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3075 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
3076 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
3077 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
3078 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
3079 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
3080 170, 171, 60, 0, 61, 62, 63, 0, 0, 0,
3081 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
3082 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3083 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
3084 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3085 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3086 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
3087 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3088 109, 0, 0, 110, 0, 111, 112, 0, 113, 114,
3089 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3090 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3091 0, 0, 0, 0, 0, 0, 0, 838, 0, 0,
3092 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3093 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3094 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3095 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
3096 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
3097 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
3098 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
3099 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
3100 170, 171, 60, 0, 61, 62, 63, 0, 0, 0,
3101 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
3102 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3103 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
3104 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3105 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3106 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
3107 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3108 109, 0, 0, 110, 0, 111, 112, 0, 113, 114,
3109 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3110 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3111 0, 0, 0, 0, 0, 0, 0, 1236, 0, 0,
3112 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3113 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3114 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3115 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
3116 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
3117 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
3118 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
3119 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
3120 170, 171, 60, 0, 61, 62, 63, 0, 0, 0,
3121 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
3122 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3123 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
3124 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3125 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3126 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
3127 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3128 109, 0, 0, 110, 0, 111, 112, 0, 113, 114,
3129 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3130 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3131 0, 0, 0, 0, 0, 0, 0, 1367, 0, 0,
3132 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3133 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3134 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3135 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
3136 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
3137 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
3138 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
3139 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
3140 170, 171, 60, 0, 61, 62, 63, 0, 0, 0,
3141 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
3142 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3143 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
3144 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3145 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3146 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
3147 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3148 109, 0, 0, 110, 0, 111, 112, 0, 113, 114,
3149 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3150 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3151 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3152 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3153 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3154 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3155 24, 25, 26, 27, 28, 29, 30, 0, 0, 0,
3156 31, 32, 33, 34, 35, 0, 36, 0, 0, 0,
3157 37, 38, 39, 40, 0, 41, 0, 42, 0, 43,
3158 0, 0, 44, 0, 0, 0, 45, 46, 47, 48,
3159 0, 50, 51, 0, 52, 0, 54, 55, 56, 57,
3160 170, 171, 60, 0, 61, 62, 63, 0, 0, 0,
3161 0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
3162 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3163 0, 0, 174, 76, 77, 78, 79, 80, 0, 81,
3164 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3165 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3166 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
3167 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3168 109, 0, 0, 110, 0, 111, 112, 0, 113, 114,
3169 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3170 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3171 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3172 0, 0, 600, 0, 0, 0, 0, 0, 0, 0,
3173 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3174 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3175 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3176 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3177 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3178 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3179 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3180 170, 171, 172, 0, 33, 62, 63, 0, 0, 0,
3181 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3182 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3183 0, 0, 174, 76, 77, 78, 601, 80, 0, 81,
3184 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3185 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3186 0, 0, 92, 93, 94, 95, 252, 96, 97, 98,
3187 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3188 109, 81, 82, 110, 83, 84, 85, 0, 113, 114,
3189 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3190 0, 0, 0, 10, 0, 0, 0, 95, 0, 96,
3191 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
3192 107, 108, 0, 0, 0, 772, 0, 0, 0, 0,
3193 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3194 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3195 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3196 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3197 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3198 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3199 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3200 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3201 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3202 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3203 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3204 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3205 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3206 0, 0, 92, 93, 94, 95, 252, 96, 97, 98,
3207 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3208 109, 0, 0, 110, 0, 253, 0, 0, 113, 114,
3209 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3210 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3211 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3212 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3213 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3214 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3215 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3216 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3217 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3218 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3219 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3220 170, 171, 172, 0, 33, 62, 63, 0, 0, 0,
3221 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3222 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3223 0, 0, 174, 76, 77, 78, 601, 80, 0, 81,
3224 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3225 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3226 0, 0, 92, 93, 94, 95, 0, 96, 97, 98,
3227 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3228 109, 81, 82, 110, 83, 84, 85, 0, 113, 114,
3229 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3230 0, 0, 0, 10, 0, 0, 0, 95, 0, 96,
3231 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
3232 107, 108, 207, 0, 0, 0, 0, 0, 0, 0,
3233 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3234 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3235 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3236 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3237 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3238 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3239 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3240 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3241 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3242 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3243 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3244 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3245 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3246 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3247 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3248 109, 0, 0, 110, 0, 0, 0, 0, 113, 114,
3249 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3250 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3251 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3252 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3253 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3254 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3255 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3256 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3257 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3258 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3259 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3260 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3261 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3262 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3263 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3264 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3265 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3266 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3267 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3268 109, 0, 0, 110, 0, 236, 0, 0, 113, 114,
3269 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3270 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3271 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3272 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3273 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3274 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3275 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3276 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3277 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3278 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3279 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3280 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3281 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3282 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3283 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3284 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3285 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3286 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3287 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3288 109, 0, 0, 110, 0, 239, 0, 0, 113, 114,
3289 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3290 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3291 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3292 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3293 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3294 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3295 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3296 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3297 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3298 0, 0, 0, 0, 0, 0, 293, 0, 0, 48,
3299 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3300 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3301 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3302 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3303 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3304 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3305 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3306 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3307 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3308 109, 0, 0, 110, 0, 0, 0, 0, 113, 114,
3309 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3310 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3311 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3312 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3313 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3314 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3315 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3316 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3317 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3318 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3319 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3320 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3321 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3322 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3323 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3324 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3325 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3326 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3327 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3328 109, 0, 0, 110, 425, 0, 0, 0, 113, 114,
3329 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3330 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3331 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3332 0, 0, 550, 0, 0, 0, 0, 0, 0, 0,
3333 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3334 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3335 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3336 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3337 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3338 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3339 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3340 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3341 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3342 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3343 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3344 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3345 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3346 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3347 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3348 109, 0, 0, 110, 0, 0, 0, 0, 113, 114,
3349 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3350 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3351 0, 0, 0, 0, 0, 0, 0, 562, 0, 0,
3352 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3353 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3354 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3355 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3356 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3357 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3358 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3359 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3360 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3361 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3362 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3363 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3364 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3365 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3366 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3367 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3368 109, 0, 0, 110, 0, 0, 0, 0, 113, 114,
3369 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3370 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3371 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3372 0, 0, 600, 0, 0, 0, 0, 0, 0, 0,
3373 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3374 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3375 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3376 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3377 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3378 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3379 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3380 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3381 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3382 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3383 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3384 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3385 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3386 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3387 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3388 109, 0, 0, 110, 0, 0, 0, 0, 113, 114,
3389 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3390 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3391 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3392 0, 0, 635, 0, 0, 0, 0, 0, 0, 0,
3393 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3394 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3395 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3396 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3397 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3398 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3399 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3400 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3401 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3402 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3403 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3404 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3405 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3406 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3407 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3408 109, 0, 0, 110, 0, 0, 0, 0, 113, 114,
3409 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3410 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3411 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3412 0, 0, 637, 0, 0, 0, 0, 0, 0, 0,
3413 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3414 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3415 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3416 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3417 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3418 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3419 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3420 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3421 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3422 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3423 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3424 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3425 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3426 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3427 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3428 109, 0, 0, 110, 0, 0, 0, 0, 113, 114,
3429 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3430 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3431 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3432 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3433 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3434 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3435 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3436 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3437 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3438 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3439 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3440 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3441 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3442 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3443 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3444 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3445 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3446 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3447 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3448 109, 0, 0, 110, 0, 0, 649, 0, 113, 114,
3449 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3450 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3451 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3452 0, 0, 919, 0, 0, 0, 0, 0, 0, 0,
3453 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3454 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3455 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3456 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3457 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3458 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3459 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3460 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3461 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3462 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3463 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3464 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3465 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3466 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3467 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3468 109, 0, 0, 110, 0, 0, 0, 0, 113, 114,
3469 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3470 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3471 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3472 0, 0, 960, 0, 0, 0, 0, 0, 0, 0,
3473 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3474 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3475 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3476 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3477 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3478 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3479 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3480 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3481 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3482 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3483 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3484 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3485 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3486 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3487 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3488 109, 0, 0, 110, 0, 0, 0, 0, 113, 114,
3489 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3490 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3491 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3492 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3493 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3494 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3495 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3496 31, 32, 33, 34, 35, 0, 0, 0, 0, 0,
3497 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3498 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3499 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3500 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3501 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3502 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3503 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3504 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3505 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3506 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3507 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3508 109, 0, 0, 110, 0, 0, 0, 0, 113, 114,
3509 0, 115, 116, 5, 6, 7, 8, 9, 0, 0,
3510 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3511 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3512 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3513 0, 0, 0, 12, 13, 0, 0, 0, 0, 14,
3514 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
3515 24, 25, 26, 27, 28, 29, 0, 0, 0, 0,
3516 31, 32, 33, 508, 35, 0, 0, 0, 0, 0,
3517 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3518 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
3519 0, 0, 0, 0, 0, 0, 0, 55, 56, 57,
3520 170, 171, 172, 0, 0, 62, 63, 0, 0, 0,
3521 0, 0, 0, 0, 173, 68, 69, 70, 71, 72,
3522 73, 0, 0, 0, 0, 0, 0, 74, 0, 0,
3523 0, 0, 174, 76, 77, 78, 0, 80, 0, 81,
3524 82, 0, 83, 84, 85, 0, 0, 87, 0, 0,
3525 0, 88, 0, 0, 0, 0, 0, 89, 0, 0,
3526 0, 0, 92, 0, 94, 95, 0, 96, 97, 98,
3527 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
3528 109, 0, 0, 110, 336, 337, 338, 0, 113, 114,
3529 0, 115, 116, 0, 0, 0, 0, 0, 0, 0,
3530 339, 0, 340, 341, 342, 343, 344, 345, 346, 347,
3531 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
3532 358, 359, 360, 0, 361, 336, 337, 338, 0, 0,
3533 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3534 0, 339, 0, 340, 341, 342, 343, 344, 345, 346,
3535 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
3536 357, 358, 359, 360, 0, 361, 336, 337, 338, 0,
3537 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3538 0, 0, 339, 0, 340, 341, 342, 343, 344, 345,
3539 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
3540 356, 357, 358, 359, 360, 0, 361, 336, 337, 338,
3541 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3542 0, 0, 0, 339, 0, 340, 341, 342, 343, 344,
3543 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
3544 355, 356, 357, 358, 359, 360, 0, 361, 0, 0,
3545 0, 0, 0, 0, 336, 337, 338, 0, 0, 0,
3546 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3547 339, 931, 340, 341, 342, 343, 344, 345, 346, 347,
3548 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
3549 358, 359, 360, 0, 361, 336, 337, 338, 0, 0,
3550 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3551 0, 339, 939, 340, 341, 342, 343, 344, 345, 346,
3552 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
3553 357, 358, 359, 360, 0, 361, 0, 0, 0, 336,
3554 337, 338, 0, 0, 0, 0, 0, 0, 0, 0,
3555 0, 0, 0, 962, 0, 339, 1087, 340, 341, 342,
3556 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
3557 353, 354, 355, 356, 357, 358, 359, 360, 0, 361,
3558 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3559 0, 0, 0, 0, 1136, 0, 0, 0, 0, 0,
3560 336, 337, 338, 0, 0, 1255, 1256, 1257, 1258, 1259,
3561 0, 0, 1260, 1261, 1262, 1263, 339, 0, 340, 341,
3562 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
3563 352, 353, 354, 355, 356, 357, 358, 359, 360, 0,
3564 361, 1211, 0, 0, 0, 0, 0, 0, 0, 0,
3565 0, 0, 1264, 0, 0, 0, 0, 0, 0, 0,
3566 0, 0, 0, 0, 0, 1265, 1266, 1267, 1268, 1269,
3567 1270, 1271, 0, 0, 33, 0, 0, 0, 0, 0,
3568 0, 0, 1212, 1272, 1273, 1274, 1275, 1276, 1277, 1278,
3569 1279, 1280, 1281, 1282, 1283, 1284, 1285, 1286, 1287, 1288,
3570 1289, 1290, 1291, 1292, 1293, 1294, 1295, 1296, 1297, 1298,
3571 1299, 1300, 1301, 1302, 1303, 1304, 1305, 1306, 1307, 1308,
3572 1309, 1310, 1311, 1312, 1088, 0, 1313, 1314, 1315, 1316,
3573 1317, 1318, 1319, 0, 0, 0, 0, 0, 0, 0,
3574 0, 0, 0, 0, 1320, 1321, 1322, 0, 1323, 0,
3575 0, 81, 82, 0, 83, 84, 85, 1324, 1325, 1326,
3576 0, 0, 1327, 0, 0, 0, 0, 0, 0, 1328,
3577 1329, 1244, 1330, 0, 1331, 1332, 1333, 95, 0, 96,
3578 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
3579 107, 108, 336, 337, 338, 0, 0, 0, 0, 0,
3580 0, 0, 0, 0, 0, 0, 0, 0, 339, 0,
3581 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
3582 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
3583 360, 0, 361, 336, 337, 338, 0, 0, 0, 0,
3584 0, 0, 0, 0, 0, 0, 0, 0, 0, 339,
3585 0, 340, 341, 342, 343, 344, 345, 346, 347, 348,
3586 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
3587 359, 360, 0, 361, 336, 337, 338, 0, 0, 0,
3588 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3589 339, 0, 340, 341, 342, 343, 344, 345, 346, 347,
3590 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
3591 358, 359, 360, 0, 361, 336, 337, 338, 0, 0,
3592 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3593 0, 339, 0, 340, 341, 342, 343, 344, 345, 346,
3594 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
3595 357, 358, 359, 360, 0, 361, 0, 0, 0, 0,
3596 336, 337, 338, 0, 0, 0, 0, 0, 0, 0,
3597 0, 0, 0, 0, 0, 0, 339, 362, 340, 341,
3598 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
3599 352, 353, 354, 355, 356, 357, 358, 359, 360, 0,
3600 361, 336, 337, 338, 0, 0, 0, 0, 0, 0,
3601 0, 0, 0, 0, 0, 0, 0, 339, 441, 340,
3602 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
3603 351, 352, 353, 354, 355, 356, 357, 358, 359, 360,
3604 0, 361, 336, 337, 338, 0, 0, 0, 0, 0,
3605 0, 0, 0, 0, 0, 0, 0, 0, 339, 443,
3606 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
3607 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
3608 360, 0, 361, 336, 337, 338, 0, 0, 0, 0,
3609 0, 0, 0, 0, 0, 0, 0, 0, 0, 339,
3610 455, 340, 341, 342, 343, 344, 345, 346, 347, 348,
3611 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
3612 359, 360, 0, 361, 0, 0, 0, 0, 336, 337,
3613 338, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3614 0, 0, 0, 0, 339, 479, 340, 341, 342, 343,
3615 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
3616 354, 355, 356, 357, 358, 359, 360, 0, 361, 0,
3617 336, 337, 338, 0, 0, 33, 0, 199, 0, 0,
3618 0, 0, 0, 0, 0, 627, 339, 0, 340, 341,
3619 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
3620 352, 353, 354, 355, 356, 357, 358, 359, 360, 0,
3621 361, 336, 337, 338, 0, 0, 0, 0, 0, 0,
3622 0, 0, 0, 0, 0, 0, 646, 339, 0, 340,
3623 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
3624 351, 352, 353, 354, 355, 356, 357, 358, 359, 360,
3625 241, 361, 81, 82, 0, 83, 84, 85, 0, 0,
3626 0, 0, 875, 0, 0, 0, 0, 0, 0, 0,
3627 0, 0, 0, 0, 0, 0, 242, 0, 95, 0,
3628 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
3629 106, 107, 108, 0, 0, 0, 33, 0, 0, 915,
3630 0, 113, 0, 871, 872, 0, 0, 0, 0, 0,
3631 0, 0, 0, 0, 0, 241, 0, 0, 0, 0,
3632 0, 0, 0, -288, 0, 0, 0, 0, 0, 0,
3633 0, 55, 56, 57, 170, 171, 327, 0, 0, 0,
3634 832, 242, 1414, 0, 0, 0, 0, 0, 0, 243,
3635 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3636 0, 33, 0, 0, 0, 0, 174, 0, 0, 78,
3637 0, 244, 0, 81, 82, 0, 83, 84, 85, 0,
3638 33, 1106, 199, 0, 0, 0, 0, 0, 0, 0,
3639 0, 245, 0, 0, 0, 0, 0, 0, 94, 95,
3640 0, 96, 97, 98, 99, 100, 101, 102, 103, 104,
3641 105, 106, 107, 108, 243, 0, 0, 246, 0, 0,
3642 200, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3643 0, 174, 833, 0, 78, 0, 244, 0, 81, 82,
3644 0, 83, 84, 85, 33, 0, 726, 727, 0, 0,
3645 174, 0, 0, 78, 0, 80, 245, 81, 82, 0,
3646 83, 84, 85, 0, 95, 0, 96, 97, 98, 99,
3647 100, 101, 102, 103, 104, 105, 106, 107, 108, 0,
3648 671, 672, 246, 95, 0, 96, 97, 98, 99, 100,
3649 101, 102, 103, 104, 105, 106, 107, 108, 0, 673,
3650 0, 201, 0, 0, 0, 0, 113, 31, 32, 33,
3651 0, 0, 0, 0, 0, 0, 0, 37, 0, 0,
3652 0, 81, 82, 0, 83, 84, 85, 0, 0, 0,
3653 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3654 0, 0, 0, 0, 0, 0, 0, 95, 0, 96,
3655 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
3656 107, 108, 674, 69, 70, 71, 72, 73, 0, 800,
3657 801, 0, 0, 0, 675, 0, 0, 0, 0, 174,
3658 76, 77, 78, 0, 676, 0, 81, 82, 802, 83,
3659 84, 85, 0, 0, 87, 0, 803, 804, 33, 0,
3660 0, 0, 0, 0, 677, 0, 805, 0, 0, 92,
3661 0, 0, 678, 0, 96, 97, 98, 99, 100, 101,
3662 102, 103, 104, 105, 106, 107, 108, 0, 0, 0,
3663 0, 0, 0, 0, 0, 0, 0, 27, 28, 0,
3664 0, 0, 0, 0, 0, 0, 33, 0, 199, 0,
3665 0, 806, 0, 0, 0, 0, 0, 0, 0, 0,
3666 0, 0, 0, 807, 0, 0, 0, 0, 0, 0,
3667 0, 0, 0, 0, 0, 81, 82, 0, 83, 84,
3668 85, 0, 0, 0, 0, 0, 200, 0, 789, 0,
3669 0, 0, 0, 808, 0, 0, 33, 0, 199, 0,
3670 0, 809, 0, 96, 97, 98, 99, 100, 101, 102,
3671 103, 104, 105, 106, 107, 108, 174, 0, 0, 78,
3672 0, 80, 0, 81, 82, 0, 83, 84, 85, 0,
3673 0, 0, 0, 0, 0, 88, 200, 0, 0, 0,
3674 0, 0, 0, 0, 0, 0, 33, 0, 199, 95,
3675 0, 96, 97, 98, 99, 100, 101, 102, 103, 104,
3676 105, 106, 107, 108, 0, 0, 174, 406, 0, 78,
3677 0, 80, 113, 81, 82, 0, 83, 84, 85, 0,
3678 0, 0, 0, 0, 0, 0, 200, 0, 0, 0,
3679 0, 0, 0, 0, 0, 0, 33, 0, 199, 95,
3680 0, 96, 97, 98, 99, 100, 101, 102, 103, 104,
3681 105, 106, 107, 108, 0, 0, 174, 201, 0, 78,
3682 0, 80, 113, 81, 82, 0, 83, 84, 85, 0,
3683 0, 0, 0, 0, 0, 0, 200, 0, 0, 0,
3684 0, 0, 0, 0, 0, 0, 0, 0, 500, 95,
3685 0, 96, 97, 98, 99, 100, 101, 102, 103, 104,
3686 105, 106, 107, 108, 0, 0, 174, 201, 0, 78,
3687 484, 80, 113, 81, 82, 0, 83, 84, 85, 33,
3688 0, 199, 0, 0, 0, 0, 0, 0, 0, 0,
3689 0, 0, 0, 0, 0, 0, 0, 0, 0, 95,
3690 0, 96, 97, 98, 99, 100, 101, 102, 103, 104,
3691 105, 106, 107, 108, 0, 0, 0, 201, 0, 200,
3692 0, 0, 113, 0, 0, 0, 0, 0, 0, 0,
3693 0, 894, 0, 33, 0, 199, 0, 0, 0, 0,
3694 0, 0, 0, 0, 0, 0, 0, 0, 0, 174,
3695 0, 0, 78, 0, 80, 0, 81, 82, 0, 83,
3696 84, 85, 0, 0, 0, 0, 0, 0, 0, 0,
3697 0, 0, 0, 200, 0, 0, 0, 0, 943, 944,
3698 33, 0, 95, 0, 96, 97, 98, 99, 100, 101,
3699 102, 103, 104, 105, 106, 107, 108, 33, 0, 199,
3700 201, 0, 0, 174, 0, 113, 78, 0, 80, 0,
3701 81, 82, 0, 83, 84, 85, 0, 0, 0, 0,
3702 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3703 0, 0, 0, 0, 0, 0, 95, 212, 96, 97,
3704 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
3705 108, 33, 0, 0, 201, 0, 0, 81, 82, 113,
3706 83, 84, 85, 0, 0, 0, 0, 174, 0, 0,
3707 78, 33, 80, 0, 81, 82, 0, 83, 84, 85,
3708 0, 0, 0, 95, 0, 96, 97, 98, 99, 100,
3709 101, 102, 103, 104, 105, 106, 107, 108, 0, 0,
3710 95, 0, 96, 97, 98, 99, 100, 101, 102, 103,
3711 104, 105, 106, 107, 108, 0, 0, 0, 213, 0,
3712 0, 0, 0, 113, 289, 0, 0, 0, 81, 82,
3713 0, 83, 84, 85, 0, 0, 33, 0, 0, 0,
3714 0, 0, 0, 0, 0, 0, 1339, 0, 81, 82,
3715 1340, 83, 84, 85, 95, 33, 96, 97, 98, 99,
3716 100, 101, 102, 103, 104, 105, 106, 107, 108, 0,
3717 0, 0, 0, 0, 95, 290, 96, 97, 98, 99,
3718 100, 101, 102, 103, 104, 105, 106, 107, 108, 0,
3719 0, 0, 1198, 0, 0, 0, 1186, 0, 0, 0,
3720 33, 0, 0, 0, 0, 0, 174, 0, 1187, 78,
3721 0, 80, 0, 81, 82, 33, 83, 84, 85, 0,
3722 0, 0, 0, 0, 0, 174, 0, 0, 78, 0,
3723 1188, 0, 81, 82, 0, 83, 1189, 85, 0, 95,
3724 0, 96, 97, 98, 99, 100, 101, 102, 103, 104,
3725 105, 106, 107, 108, 0, 0, 0, 0, 95, 0,
3726 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
3727 106, 107, 108, 261, 0, 0, 0, 81, 82, 0,
3728 83, 84, 85, 0, 0, 0, 0, 0, 0, 0,
3729 324, 0, 81, 82, 0, 83, 84, 85, 0, 0,
3730 0, 0, 0, 95, 0, 96, 97, 98, 99, 100,
3731 101, 102, 103, 104, 105, 106, 107, 108, 95, 0,
3732 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
3733 106, 107, 108, 336, 337, 338, 0, 0, 0, 0,
3734 0, 0, 0, 0, 0, 0, 0, 0, 0, 339,
3735 0, 340, 341, 342, 343, 344, 345, 346, 347, 348,
3736 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
3737 359, 360, 0, 361, 336, 337, 338, 0, 0, 0,
3738 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3739 339, 0, 340, 341, 342, 343, 344, 345, 346, 347,
3740 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
3741 358, 359, 360, 0, 361, 0, 0, 0, 0, 0,
3742 0, 0, 0, 0, 0, 0, 0, 0, 0, 336,
3743 337, 338, 0, 0, 0, 0, 0, 0, 0, 0,
3744 0, 0, 0, 0, 0, 339, 411, 340, 341, 342,
3745 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
3746 353, 354, 355, 356, 357, 358, 359, 360, 0, 361,
3747 336, 337, 338, 0, 0, 0, 0, 0, 0, 0,
3748 0, 0, 0, 0, 0, 0, 339, 519, 340, 341,
3749 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
3750 352, 353, 354, 355, 356, 357, 358, 359, 360, 0,
3751 361, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3752 0, 0, 0, 0, 0, 336, 337, 338, 0, 0,
3753 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3754 0, 339, 778, 340, 341, 342, 343, 344, 345, 346,
3755 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
3756 357, 358, 359, 360, 0, 361, 336, 337, 338, 0,
3757 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3758 0, 0, 339, 818, 340, 341, 342, 343, 344, 345,
3759 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
3760 356, 357, 358, 359, 360, 0, 361, 0, 0, 0,
3761 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3762 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3763 0, 0, 336, 337, 338, 0, 0, 0, 1049, 0,
3764 0, 0, 0, 0, 0, 0, 0, 657, 339, 775,
3765 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
3766 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
3767 360, 0, 361, 336, 337, 338, 0, 0, 0, 0,
3768 0, 0, 0, 0, 0, 0, 0, 0, 0, 339,
3769 0, 340, 341, 342, 343, 344, 345, 346, 347, 348,
3770 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
3771 359, 360, 0, 361, 337, 338, 0, 0, 0, 0,
3772 0, 0, 0, 0, 0, 0, 0, 0, 0, 339,
3773 0, 340, 341, 342, 343, 344, 345, 346, 347, 348,
3774 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
3778 #define yypact_value_is_default(yystate) \
3779 ((yystate) == (-1217))
3781 #define yytable_value_is_error(yytable_value) \
3782 ((yytable_value) == (-788))
3784 static const yytype_int16 yycheck
[] =
3786 4, 131, 86, 156, 4, 176, 90, 91, 30, 552,
3787 4, 4, 320, 628, 50, 4, 398, 4, 40, 912,
3788 28, 373, 44, 214, 4, 361, 427, 405, 159, 393,
3789 768, 4, 752, 317, 745, 1044, 53, 220, 515, 220,
3790 902, 9, 46, 656, 9, 49, 130, 177, 27, 9,
3791 27, 24, 25, 9, 166, 419, 302, 9, 75, 9,
3792 110, 78, 66, 4, 241, 242, 9, 42, 122, 246,
3793 62, 42, 62, 9, 9, 476, 9, 9, 9, 9,
3794 9, 9, 86, 9, 9, 9, 90, 91, 9, 9,
3795 221, 9, 9, 9, 9, 9, 110, 94, 95, 9,
3796 74, 42, 662, 47, 30, 103, 122, 74, 14, 15,
3797 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
3798 79, 122, 107, 108, 109, 74, 130, 771, 74, 0,
3799 42, 1140, 122, 1142, 193, 860, 193, 110, 148, 864,
3800 317, 951, 786, 197, 131, 955, 1362, 525, 93, 94,
3801 95, 201, 863, 91, 60, 61, 193, 328, 8, 100,
3802 62, 62, 160, 213, 105, 62, 107, 108, 109, 110,
3803 111, 112, 113, 193, 42, 42, 156, 62, 194, 138,
3804 62, 62, 186, 158, 1046, 923, 196, 158, 926, 62,
3805 177, 1053, 1054, 194, 1410, 141, 62, 62, 62, 62,
3806 197, 193, 62, 147, 196, 62, 196, 145, 149, 150,
3807 62, 152, 164, 591, 62, 1224, 122, 196, 195, 194,
3808 191, 122, 226, 194, 198, 275, 230, 195, 201, 400,
3809 234, 198, 197, 174, 207, 195, 196, 226, 194, 323,
3810 213, 230, 372, 954, 261, 195, 158, 251, 649, 198,
3811 164, 194, 653, 226, 164, 367, 197, 230, 735, 195,
3812 195, 275, 195, 195, 195, 195, 195, 195, 194, 446,
3813 195, 195, 289, 194, 194, 387, 194, 194, 194, 194,
3814 47, 841, 194, 843, 141, 369, 370, 1149, 194, 667,
3815 158, 158, 936, 266, 196, 196, 193, 409, 193, 196,
3816 273, 274, 275, 307, 32, 163, 418, 280, 196, 421,
3817 1048, 196, 316, 286, 196, 196, 320, 193, 32, 323,
3818 307, 94, 95, 196, 191, 74, 194, 307, 91, 79,
3819 196, 196, 196, 196, 307, 193, 196, 373, 74, 196,
3820 722, 956, 74, 79, 196, 147, 74, 79, 196, 74,
3821 527, 528, 535, 361, 535, 1364, 406, 534, 971, 367,
3822 74, 118, 62, 367, 368, 369, 370, 107, 108, 109,
3823 110, 111, 112, 107, 108, 109, 110, 111, 112, 387,
3824 147, 118, 145, 387, 371, 669, 193, 1098, 138, 138,
3825 139, 140, 24, 25, 74, 162, 28, 32, 193, 79,
3826 193, 409, 593, 139, 140, 409, 74, 139, 140, 32,
3827 418, 79, 1150, 421, 139, 140, 193, 421, 74, 148,
3828 784, 74, 122, 79, 197, 398, 79, 618, 599, 793,
3829 434, 74, 161, 406, 174, 813, 79, 838, 193, 74,
3830 174, 193, 4, 634, 145, 434, 1061, 1158, 1063, 32,
3831 633, 74, 633, 789, 145, 195, 639, 32, 639, 139,
3832 140, 434, 67, 68, 481, 14, 202, 196, 141, 201,
3833 138, 139, 140, 1482, 558, 67, 68, 364, 27, 483,
3834 42, 859, 138, 139, 140, 193, 139, 140, 679, 1498,
3835 163, 74, 669, 670, 498, 44, 139, 140, 196, 74,
3836 504, 505, 27, 390, 195, 196, 752, 394, 639, 14,
3837 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
3838 25, 193, 768, 196, 14, 15, 16, 17, 18, 19,
3839 20, 21, 22, 23, 24, 25, 32, 141, 100, 62,
3840 26, 1156, 62, 105, 896, 107, 108, 109, 110, 111,
3841 112, 113, 62, 99, 558, 60, 61, 43, 195, 163,
3842 46, 107, 108, 109, 110, 111, 112, 195, 932, 201,
3843 60, 61, 950, 750, 283, 207, 940, 550, 287, 26,
3844 195, 213, 195, 196, 761, 120, 121, 149, 150, 193,
3845 152, 973, 196, 195, 196, 1488, 43, 1388, 1389, 46,
3846 309, 195, 311, 312, 313, 314, 93, 94, 95, 195,
3847 1011, 1504, 174, 114, 115, 116, 1231, 122, 195, 997,
3848 1384, 1385, 195, 141, 628, 1003, 630, 600, 174, 196,
3849 652, 62, 122, 193, 266, 197, 1018, 193, 176, 177,
3850 178, 273, 274, 647, 756, 183, 184, 141, 280, 187,
3851 188, 193, 145, 41, 286, 659, 660, 46, 47, 48,
3852 647, 50, 635, 50, 637, 163, 141, 647, 845, 122,
3853 847, 660, 200, 1074, 647, 9, 141, 923, 1042, 141,
3854 926, 193, 122, 8, 657, 163, 1050, 660, 1089, 194,
3855 14, 1069, 195, 193, 1058, 14, 74, 701, 195, 14,
3856 704, 80, 163, 195, 788, 194, 14, 195, 91, 194,
3857 887, 194, 193, 99, 701, 43, 44, 45, 46, 47,
3858 48, 701, 50, 199, 4, 916, 193, 193, 701, 361,
3859 734, 9, 909, 83, 734, 912, 194, 1457, 711, 194,
3860 734, 734, 9, 195, 14, 734, 9, 734, 756, 722,
3861 723, 1366, 756, 80, 734, 1475, 193, 179, 74, 182,
3862 1161, 734, 42, 1483, 74, 74, 398, 193, 1169, 74,
3863 1016, 195, 120, 1137, 406, 194, 194, 1178, 1024, 193,
3864 62, 789, 194, 121, 788, 162, 123, 9, 194, 14,
3865 191, 9, 194, 62, 9, 14, 800, 801, 802, 120,
3866 200, 200, 1048, 825, 1112, 197, 9, 200, 193, 193,
3867 987, 123, 194, 193, 9, 141, 179, 179, 194, 200,
3868 100, 195, 826, 195, 828, 105, 830, 107, 108, 109,
3869 110, 111, 112, 113, 194, 1236, 193, 826, 193, 193,
3870 141, 828, 14, 830, 196, 9, 74, 196, 828, 14,
3871 830, 195, 1216, 826, 91, 828, 196, 830, 862, 832,
3872 896, 865, 1405, 14, 200, 196, 14, 27, 14, 149,
3873 150, 9, 152, 195, 194, 107, 108, 109, 110, 111,
3874 112, 195, 193, 123, 888, 14, 118, 119, 195, 193,
3875 193, 193, 9, 193, 174, 1141, 900, 1205, 193, 193,
3876 900, 1147, 1148, 194, 1150, 194, 900, 900, 200, 123,
3877 4, 900, 9, 900, 138, 74, 1093, 197, 550, 9,
3878 900, 193, 123, 155, 195, 74, 194, 900, 14, 193,
3879 1473, 196, 1109, 193, 193, 196, 24, 25, 194, 196,
3880 28, 963, 174, 193, 123, 1122, 919, 951, 42, 194,
3881 9, 955, 956, 200, 138, 27, 1357, 72, 1359, 74,
3882 69, 195, 966, 194, 164, 195, 1367, 27, 600, 123,
3883 9, 1124, 9, 977, 194, 91, 123, 966, 194, 14,
3884 197, 194, 1228, 194, 193, 197, 194, 960, 194, 194,
3885 977, 123, 1122, 966, 196, 193, 9, 977, 194, 27,
3886 973, 974, 194, 635, 977, 637, 100, 1408, 194, 194,
3887 123, 105, 195, 107, 108, 109, 110, 111, 112, 113,
3888 194, 196, 195, 151, 195, 657, 147, 24, 25, 74,
3889 14, 28, 1203, 194, 149, 150, 1016, 152, 153, 154,
3890 193, 105, 194, 123, 1024, 1018, 123, 123, 14, 194,
3891 194, 194, 49, 74, 196, 149, 150, 1061, 152, 1063,
3892 175, 195, 177, 178, 179, 180, 181, 182, 183, 184,
3893 185, 186, 187, 188, 189, 14, 194, 196, 14, 711,
3894 174, 196, 193, 198, 194, 123, 14, 195, 195, 194,
3895 722, 723, 196, 52, 74, 193, 74, 9, 74, 195,
3896 103, 1502, 91, 197, 1108, 141, 91, 1508, 1112, 30,
3897 154, 14, 193, 1117, 160, 194, 74, 195, 193, 207,
3898 194, 1108, 156, 9, 74, 195, 194, 194, 1108, 74,
3899 196, 14, 14, 74, 1121, 1108, 14, 14, 481, 1465,
3900 156, 370, 368, 787, 1124, 785, 369, 737, 1479, 974,
3901 1475, 486, 1156, 1253, 1117, 1337, 1507, 789, 1162, 1086,
3902 1349, 1141, 1166, 1496, 38, 1223, 1170, 1147, 1148, 910,
3903 877, 874, 465, 903, 373, 1162, 698, 1166, 266, 465,
3904 1351, 801, 1162, 1170, 938, 273, 274, 274, 1192, 1162,
3905 1170, 815, 280, 1166, 1198, -1, 281, 1170, 286, 848,
3906 832, 1205, -1, -1, 201, -1, -1, -1, -1, -1,
3907 207, 1457, -1, -1, -1, -1, 213, -1, -1, -1,
3908 1207, -1, -1, -1, -1, -1, -1, 1231, -1, 1475,
3909 1234, 1235, -1, -1, -1, 1239, -1, 1483, -1, -1,
3910 -1, 1245, -1, -1, 241, 242, 1235, 1234, 1228, 246,
3911 -1, -1, 1239, -1, 1234, -1, -1, -1, 1245, 1239,
3912 -1, 1234, 1235, -1, 1348, 1245, 1239, -1, -1, 266,
3913 -1, -1, 1245, 361, -1, -1, 273, 274, -1, -1,
3914 -1, -1, -1, 280, -1, -1, -1, 919, -1, 286,
3915 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3916 1453, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3917 398, 1488, -1, -1, -1, -1, 1400, -1, -1, -1,
3918 317, -1, -1, 320, -1, -1, -1, 1504, 960, -1,
3919 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1469,
3920 -1, 973, 974, -1, 1348, 14, 15, 16, 17, 18,
3921 19, 20, 21, 22, 23, 24, 25, 70, 71, -1,
3922 -1, -1, 1366, 451, 361, -1, 1370, 80, -1, -1,
3923 -1, -1, -1, 4, -1, 1379, -1, -1, -1, -1,
3924 1384, 1385, -1, 1370, 1388, 1389, 1018, -1, -1, -1,
3925 1370, 60, 61, -1, -1, -1, 1400, 1370, -1, 451,
3926 488, 398, 1406, 1407, -1, -1, -1, -1, 1412, 406,
3927 -1, 42, -1, 126, 127, 128, 129, 130, -1, 1406,
3928 1407, -1, -1, -1, 137, 1412, 1406, 1407, -1, -1,
3929 143, 144, 1412, 1406, 1407, -1, 488, -1, -1, 1412,
3930 -1, 1445, -1, -1, 157, -1, -1, -1, 1452, 446,
3931 -1, -1, -1, 122, 451, -1, -1, -1, 1445, 172,
3932 -1, -1, 550, -1, 1468, 1445, -1, -1, -1, 100,
3933 -1, -1, 1445, 1453, 105, -1, 107, 108, 109, 110,
3934 111, 112, 113, -1, -1, 4, -1, -1, -1, -1,
3935 -1, 488, -1, 37, 38, 39, 40, 41, 42, 43,
3936 44, 45, 46, 47, 48, 1509, 50, -1, -1, -1,
3937 1514, -1, 600, -1, -1, -1, -1, -1, 149, 150,
3938 -1, 152, 1509, 42, -1, -1, -1, 1514, -1, 1509,
3939 527, 528, -1, -1, 1514, -1, 1509, 534, -1, -1,
3940 -1, 1514, -1, 174, -1, -1, -1, 635, -1, 637,
3941 -1, -1, -1, 550, -1, -1, -1, -1, 49, -1,
3942 -1, -1, -1, -1, -1, -1, 197, -1, -1, 657,
3943 658, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3944 -1, 100, -1, 671, 672, 673, 105, -1, 107, 108,
3945 109, 110, 111, 112, 113, -1, -1, -1, -1, -1,
3946 -1, -1, -1, 600, -1, -1, 658, -1, -1, -1,
3947 -1, -1, -1, -1, 702, -1, -1, -1, -1, 671,
3948 672, 673, -1, 711, -1, -1, -1, -1, -1, -1,
3949 149, 150, 720, 152, 722, 723, -1, -1, 635, -1,
3950 637, -1, -1, -1, -1, -1, -1, -1, -1, 737,
3951 -1, -1, -1, -1, -1, 174, -1, -1, -1, -1,
3952 657, 658, -1, -1, -1, -1, -1, -1, -1, -1,
3953 -1, -1, 669, 670, 671, 672, 673, -1, 197, 767,
3954 -1, -1, 770, 31, 32, 33, 34, 35, 36, 37,
3955 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
3956 48, 789, 50, -1, -1, 702, -1, -1, -1, -1,
3957 -1, -1, -1, -1, 711, 767, -1, -1, -1, -1,
3958 -1, -1, -1, 720, -1, 722, 723, -1, -1, -1,
3959 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3960 737, -1, -1, -1, 832, -1, -1, -1, -1, -1,
3961 241, 242, -1, 750, -1, 246, -1, -1, -1, -1,
3962 -1, -1, -1, -1, 761, -1, -1, -1, -1, -1,
3963 767, -1, 860, 770, -1, -1, 864, -1, 866, -1,
3964 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3965 -1, -1, 789, -1, -1, -1, 884, -1, -1, -1,
3966 -1, -1, -1, -1, -1, -1, -1, -1, 860, -1,
3967 -1, -1, 864, -1, 866, -1, -1, -1, -1, -1,
3968 -1, -1, -1, -1, -1, -1, 317, -1, -1, 320,
3969 -1, 919, 884, -1, -1, 832, -1, -1, -1, -1,
3970 -1, -1, -1, -1, -1, -1, -1, -1, 845, -1,
3971 847, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3972 -1, -1, -1, 860, -1, -1, -1, 864, -1, 866,
3973 -1, -1, 960, -1, -1, -1, -1, -1, -1, -1,
3974 -1, -1, -1, -1, -1, 973, 974, 884, 976, -1,
3975 887, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3976 -1, -1, 990, -1, 992, -1, -1, -1, -1, -1,
3977 -1, -1, 909, -1, -1, 912, -1, -1, -1, -1,
3978 -1, -1, 919, -1, 976, -1, -1, 1015, -1, -1,
3979 1018, -1, -1, -1, -1, -1, -1, -1, 990, -1,
3980 992, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3981 -1, 1039, -1, -1, -1, 446, -1, -1, -1, -1,
3982 451, -1, -1, 960, -1, -1, -1, -1, -1, -1,
3983 -1, -1, -1, -1, -1, -1, 973, 974, -1, 976,
3984 -1, -1, -1, -1, -1, -1, -1, 1039, -1, -1,
3985 987, -1, -1, 990, -1, 992, -1, 488, -1, -1,
3986 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1097,
3987 -1, -1, -1, -1, 1102, -1, 1104, -1, 1015, -1,
3988 -1, 1018, -1, -1, -1, 1113, -1, 1115, -1, -1,
3989 -1, -1, -1, -1, -1, -1, 527, 528, 10, 11,
3990 12, -1, 1039, 534, -1, 1097, 1134, -1, -1, -1,
3991 1102, -1, 1104, -1, 26, -1, 28, 29, 30, 31,
3992 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
3993 42, 43, 44, 45, 46, 47, 48, -1, 50, -1,
3994 -1, -1, 1134, -1, 1172, -1, -1, -1, -1, -1,
3995 -1, -1, -1, 1181, 1182, -1, 1093, -1, -1, -1,
3996 1097, -1, -1, -1, -1, 1102, -1, 1104, -1, -1,
3997 -1, -1, 1109, -1, -1, 1112, 1113, -1, 1115, -1,
3998 1172, -1, -1, -1, -1, 1122, 1214, -1, -1, -1,
3999 -1, -1, -1, -1, -1, -1, -1, 1134, -1, -1,
4000 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4001 -1, -1, -1, -1, 1242, 1243, -1, -1, -1, -1,
4002 1248, 1249, 1214, 26, -1, 1253, -1, 658, -1, -1,
4003 -1, -1, -1, -1, -1, 1172, -1, -1, 669, 670,
4004 671, 672, 673, -1, 1181, 1182, -1, -1, -1, 52,
4005 1242, 1243, -1, -1, -1, -1, 1248, -1, -1, -1,
4006 1252, -1, -1, -1, -1, -1, -1, -1, 1205, 72,
4007 -1, -1, -1, -1, -1, -1, -1, 1214, -1, -1,
4008 -1, -1, -1, -1, -1, -1, -1, -1, 200, -1,
4009 -1, -1, -1, -1, -1, -1, 99, -1, -1, -1,
4010 -1, -1, -1, -1, -1, 1242, 1243, -1, -1, -1,
4011 -1, 1248, 1249, -1, -1, -1, 1253, -1, -1, 750,
4012 -1, -1, 125, -1, 1352, -1, -1, -1, -1, -1,
4013 761, -1, -1, -1, -1, -1, 767, -1, -1, 142,
4014 -1, -1, 145, -1, 147, -1, 149, 150, -1, 152,
4015 153, 154, -1, -1, -1, 1383, -1, -1, -1, -1,
4016 1352, -1, -1, -1, 167, -1, 1394, -1, -1, -1,
4017 -1, 1399, 175, -1, 177, 178, 179, 180, 181, 182,
4018 183, 184, 185, 186, 187, 188, 189, -1, -1, -1,
4019 193, 1383, 72, -1, 74, -1, -1, -1, -1, -1,
4020 -1, -1, 1394, -1, -1, -1, -1, 1399, -1, -1,
4021 -1, -1, -1, -1, 845, 1352, 847, -1, 451, -1,
4022 -1, -1, -1, -1, -1, -1, -1, -1, 1456, 860,
4023 1422, -1, -1, 864, -1, 866, 1464, -1, -1, -1,
4024 -1, -1, 1379, -1, -1, -1, 1383, -1, -1, -1,
4025 -1, 1479, -1, 884, -1, 488, 887, 1394, -1, -1,
4026 -1, -1, 1399, -1, 1456, -1, -1, -1, -1, 149,
4027 150, -1, 152, 153, 154, -1, -1, -1, 909, -1,
4028 -1, 912, -1, -1, 1512, -1, -1, -1, 72, -1,
4029 1518, -1, -1, -1, 1522, 175, 1524, 177, 178, 179,
4030 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4031 -1, -1, -1, -1, -1, -1, 196, -1, 198, 1456,
4032 1512, -1, -1, -1, -1, -1, 1518, 1464, -1, -1,
4033 1522, -1, 1524, -1, -1, -1, -1, -1, -1, -1,
4034 -1, -1, 1479, -1, -1, 976, -1, -1, -1, -1,
4035 -1, 1488, -1, -1, -1, -1, 987, -1, -1, 990,
4036 -1, 992, -1, -1, -1, 149, 150, 1504, 152, 153,
4037 154, -1, -1, -1, -1, 1512, -1, -1, -1, -1,
4038 -1, 1518, -1, -1, -1, 1522, -1, 1524, -1, -1,
4039 -1, 175, -1, 177, 178, 179, 180, 181, 182, 183,
4040 184, 185, 186, 187, 188, 189, -1, -1, 1039, 193,
4041 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4042 -1, -1, -1, -1, -1, 658, -1, -1, -1, -1,
4043 -1, -1, -1, -1, -1, -1, -1, -1, 671, 672,
4044 673, -1, 5, 6, -1, 8, 9, 10, -1, 12,
4045 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
4046 23, -1, 1093, 26, 27, -1, 1097, -1, -1, -1,
4047 -1, 1102, -1, 1104, -1, 38, -1, -1, 1109, -1,
4048 -1, 1112, 45, -1, 47, -1, -1, 50, -1, 52,
4049 -1, 1122, -1, -1, -1, -1, -1, -1, -1, -1,
4050 -1, -1, -1, 1134, -1, -1, -1, -1, -1, -1,
4051 -1, -1, -1, -1, -1, -1, 79, -1, 451, -1,
4052 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4053 93, -1, -1, -1, 767, -1, -1, -1, -1, -1,
4054 -1, 1172, -1, -1, -1, -1, -1, 110, -1, -1,
4055 -1, -1, -1, -1, -1, 488, -1, -1, -1, -1,
4056 -1, -1, -1, -1, -1, -1, 10, 11, 12, -1,
4057 -1, -1, -1, -1, 1205, -1, -1, -1, -1, -1,
4058 -1, -1, 26, 1214, 28, 29, 30, 31, 32, 33,
4059 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
4060 44, 45, 46, 47, 48, -1, 50, -1, -1, -1,
4061 -1, 1242, 1243, -1, -1, -1, -1, 1248, 181, -1,
4062 -1, -1, -1, -1, -1, -1, -1, 860, -1, -1,
4063 -1, 864, -1, 866, 32, 33, 34, 35, 36, 37,
4064 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
4065 48, 884, 50, -1, -1, 10, 11, 12, -1, 222,
4066 -1, -1, 225, -1, -1, -1, -1, -1, -1, 232,
4067 233, 26, -1, 28, 29, 30, 31, 32, 33, 34,
4068 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
4069 45, 46, 47, 48, -1, 50, 33, 34, 35, 36,
4070 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
4071 47, 48, 275, 50, -1, -1, -1, -1, 281, -1,
4072 -1, 1352, 285, -1, -1, 658, -1, -1, -1, -1,
4073 -1, -1, -1, -1, -1, -1, -1, -1, 671, 672,
4074 -1, -1, -1, 976, -1, 308, -1, -1, 1379, -1,
4075 -1, -1, 1383, 197, -1, -1, 319, 990, -1, 992,
4076 -1, -1, -1, 1394, -1, -1, -1, -1, 1399, -1,
4077 -1, -1, -1, 336, 337, 338, 339, 340, 341, 342,
4078 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
4079 353, 354, 355, 356, 357, 358, 359, 360, -1, -1,
4080 363, 364, -1, 366, -1, -1, 1039, -1, -1, -1,
4081 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
4082 383, 384, -1, -1, -1, 1456, -1, 390, 391, -1,
4083 393, 394, 395, -1, 767, -1, -1, -1, 401, -1,
4084 -1, -1, 197, -1, -1, -1, -1, -1, 411, -1,
4085 413, -1, -1, -1, -1, -1, 419, 1488, -1, -1,
4086 -1, -1, -1, -1, 1097, -1, 429, -1, 431, 1102,
4087 -1, 1104, -1, 1504, -1, -1, -1, -1, -1, -1,
4088 -1, 1512, -1, -1, -1, -1, -1, 1518, -1, -1,
4089 -1, 1522, -1, 1524, -1, 458, -1, -1, 461, 462,
4090 463, 1134, -1, -1, -1, -1, -1, -1, -1, 26,
4091 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4092 -1, 484, -1, -1, -1, -1, -1, -1, -1, -1,
4093 -1, -1, -1, 866, -1, 52, -1, -1, -1, 1172,
4094 -1, -1, 10, 11, 12, -1, -1, -1, -1, -1,
4095 -1, 884, -1, -1, -1, 72, 519, -1, 26, -1,
4096 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
4097 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
4098 48, 1214, 50, 33, 34, 35, 36, 37, 38, 39,
4099 40, 41, 42, 43, 44, 45, 46, 47, 48, 562,
4100 50, -1, -1, -1, -1, -1, -1, -1, 125, 1242,
4101 1243, -1, -1, -1, -1, 1248, -1, -1, -1, -1,
4102 -1, -1, -1, -1, -1, 142, -1, 72, 145, 592,
4103 147, -1, 149, 150, -1, 152, 153, 154, 601, -1,
4104 -1, 158, -1, 976, -1, -1, -1, -1, -1, -1,
4105 167, -1, -1, -1, 617, -1, -1, 990, 175, 992,
4106 177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
4107 187, 188, 189, -1, -1, -1, 193, 72, -1, -1,
4108 643, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4109 -1, -1, -1, 656, -1, -1, -1, 142, -1, -1,
4110 145, -1, -1, -1, 149, 150, 1039, 152, 153, 154,
4111 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1352,
4112 -1, 116, -1, -1, 687, -1, -1, -1, -1, 197,
4113 175, -1, 177, 178, 179, 180, 181, 182, 183, 184,
4114 185, 186, 187, 188, 189, -1, -1, -1, -1, -1,
4115 1383, -1, 197, -1, 149, 150, -1, 152, 153, 154,
4116 -1, 1394, -1, -1, 1097, -1, 1399, -1, 731, 1102,
4117 -1, 1104, -1, -1, -1, -1, -1, -1, -1, -1,
4118 175, 744, 177, 178, 179, 180, 181, 182, 183, 184,
4119 185, 186, 187, 188, 189, -1, -1, -1, 193, -1,
4120 -1, 1134, 765, -1, -1, -1, -1, -1, -1, -1,
4121 -1, -1, 775, -1, -1, 778, -1, 780, -1, -1,
4122 -1, 784, -1, 1456, -1, -1, -1, -1, -1, -1,
4123 793, -1, -1, -1, -1, -1, -1, -1, -1, 1172,
4124 10, 11, 12, -1, -1, -1, -1, -1, -1, -1,
4125 -1, -1, -1, -1, -1, 818, 26, -1, 28, 29,
4126 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
4127 40, 41, 42, 43, 44, 45, 46, 47, 48, 1512,
4128 50, 1214, -1, -1, -1, 1518, -1, -1, -1, 1522,
4129 -1, 1524, -1, -1, -1, -1, -1, -1, -1, -1,
4130 -1, -1, -1, -1, -1, 868, 869, 870, -1, 1242,
4131 1243, 874, 875, -1, -1, 1248, -1, -1, -1, -1,
4132 -1, -1, -1, -1, -1, -1, -1, -1, -1, 72,
4133 -1, 74, -1, 896, -1, -1, -1, -1, -1, -1,
4134 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4135 -1, -1, 915, -1, -1, -1, -1, -1, -1, -1,
4136 -1, -1, 10, 11, 12, -1, -1, -1, -1, 932,
4137 -1, -1, -1, -1, -1, 26, -1, 940, 26, 942,
4138 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
4139 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
4140 48, 52, 50, -1, -1, -1, 149, 150, 971, 152,
4141 153, 154, -1, -1, -1, -1, -1, 980, -1, 1352,
4142 -1, 72, -1, -1, -1, -1, -1, 197, -1, -1,
4143 -1, -1, 175, -1, 177, 178, 179, 180, 181, 182,
4144 183, 184, 185, 186, 187, 188, 189, -1, -1, -1,
4145 1383, -1, -1, 196, -1, 198, -1, -1, -1, -1,
4146 -1, 1394, -1, -1, 1027, -1, 1399, -1, 1031, -1,
4147 1033, -1, -1, -1, 125, -1, -1, -1, -1, 1042,
4148 -1, -1, -1, -1, -1, -1, 1049, 1050, -1, -1,
4149 -1, 142, -1, -1, 145, 1058, 147, -1, 149, 150,
4150 -1, 152, 153, 154, -1, -1, -1, 158, -1, -1,
4151 -1, -1, -1, -1, -1, -1, 167, -1, -1, -1,
4152 -1, -1, -1, 1456, 175, -1, 177, 178, 179, 180,
4153 181, 182, 183, 184, 185, 186, 187, 188, 189, -1,
4154 -1, -1, 193, 1106, -1, -1, -1, -1, -1, 197,
4155 -1, -1, -1, 3, 4, 5, 6, 7, -1, -1,
4156 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4157 -1, -1, -1, -1, 1137, -1, -1, -1, -1, 1512,
4158 -1, -1, -1, -1, -1, 1518, -1, -1, -1, 1522,
4159 -1, 1524, 42, 43, 44, -1, -1, -1, -1, 49,
4160 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4161 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4162 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4163 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4164 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4165 100, 101, 102, 1216, 104, 105, 106, 107, 108, 109,
4166 110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
4167 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4168 130, 1244, -1, -1, -1, -1, -1, 137, -1, -1,
4169 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4170 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4171 -1, 161, -1, -1, -1, -1, -1, 167, 168, -1,
4172 170, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4173 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4174 190, -1, -1, 193, -1, 195, 196, 197, 198, 199,
4175 12, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4176 -1, -1, -1, 13, 26, -1, 28, 29, 30, 31,
4177 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
4178 42, 43, 44, 45, 46, 47, 48, -1, 50, -1,
4179 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4180 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4181 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4182 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4183 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4184 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4185 100, 101, 102, -1, 104, 105, 106, 107, 108, 109,
4186 110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
4187 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4188 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4189 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4190 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4191 -1, 161, -1, -1, -1, -1, -1, 167, 168, -1,
4192 170, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4193 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4194 190, -1, -1, 193, -1, 195, 196, 197, 198, 199,
4195 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4196 -1, -1, 26, 13, 28, 29, 30, 31, 32, 33,
4197 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
4198 44, 45, 46, 47, 48, -1, 50, -1, -1, -1,
4199 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4200 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4201 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4202 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4203 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4204 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4205 100, 101, 102, -1, 104, 105, 106, 107, 108, 109,
4206 110, 111, 112, -1, 114, 115, 116, 117, 118, 119,
4207 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4208 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4209 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4210 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4211 -1, 161, -1, -1, -1, -1, -1, 167, 168, -1,
4212 170, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4213 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4214 190, -1, -1, 193, -1, 195, 196, -1, 198, 199,
4215 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4216 -1, -1, -1, 13, 28, 29, 30, 31, 32, 33,
4217 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
4218 44, 45, 46, 47, 48, -1, 50, -1, -1, -1,
4219 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4220 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4221 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4222 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4223 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4224 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4225 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4226 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4227 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4228 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4229 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4230 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4231 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4232 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4233 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4234 190, -1, -1, 193, -1, 195, 196, 197, 198, 199,
4235 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4236 -1, -1, -1, 13, 29, 30, 31, 32, 33, 34,
4237 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
4238 45, 46, 47, 48, -1, 50, -1, -1, -1, -1,
4239 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4240 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4241 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4242 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4243 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4244 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4245 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4246 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4247 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4248 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4249 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4250 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4251 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4252 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4253 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4254 190, -1, -1, 193, -1, 195, 196, 197, 198, 199,
4255 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4256 -1, -1, -1, 13, 30, 31, 32, 33, 34, 35,
4257 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
4258 46, 47, 48, -1, 50, -1, -1, -1, -1, -1,
4259 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4260 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4261 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4262 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4263 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4264 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4265 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4266 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4267 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4268 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4269 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4270 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4271 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4272 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4273 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4274 190, -1, -1, 193, -1, 195, 196, 197, 198, 199,
4275 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4276 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4277 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4278 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4279 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4280 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4281 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4282 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4283 80, 81, 82, 83, 84, 85, -1, 87, -1, 89,
4284 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4285 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4286 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4287 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4288 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4289 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4290 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4291 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4292 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4293 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4294 190, -1, -1, 193, -1, 195, 196, -1, 198, 199,
4295 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4296 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4297 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4298 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4299 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4300 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4301 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4302 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4303 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4304 90, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4305 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4306 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4307 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4308 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4309 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4310 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4311 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4312 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4313 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4314 190, -1, -1, 193, -1, 195, 196, -1, 198, 199,
4315 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4316 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4317 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4318 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4319 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4320 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4321 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4322 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4323 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4324 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4325 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4326 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4327 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4328 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4329 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4330 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4331 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4332 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4333 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4334 190, -1, -1, 193, -1, 195, 196, 197, 198, 199,
4335 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4336 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4337 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4338 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4339 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4340 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4341 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4342 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4343 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4344 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4345 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4346 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4347 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4348 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4349 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4350 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4351 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4352 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4353 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4354 190, -1, -1, 193, -1, 195, 196, 197, 198, 199,
4355 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4356 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4357 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4358 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4359 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4360 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4361 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4362 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4363 80, 81, 82, 83, -1, 85, -1, 87, 88, 89,
4364 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4365 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4366 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4367 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4368 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4369 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4370 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4371 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4372 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4373 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4374 190, -1, -1, 193, -1, 195, 196, -1, 198, 199,
4375 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4376 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4377 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4378 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4379 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4380 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4381 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4382 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4383 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4384 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4385 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4386 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4387 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4388 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4389 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4390 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4391 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4392 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4393 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4394 190, -1, -1, 193, -1, 195, 196, 197, 198, 199,
4395 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4396 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4397 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4398 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4399 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4400 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4401 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4402 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4403 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4404 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4405 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4406 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4407 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4408 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4409 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4410 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4411 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4412 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4413 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4414 190, -1, -1, 193, -1, 195, 196, 197, 198, 199,
4415 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4416 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4417 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4418 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4419 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4420 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4421 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4422 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4423 80, 81, 82, 83, -1, 85, 86, 87, -1, 89,
4424 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4425 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4426 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4427 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4428 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4429 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4430 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4431 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4432 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4433 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4434 190, -1, -1, 193, -1, 195, 196, -1, 198, 199,
4435 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4436 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4437 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4438 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4439 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4440 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4441 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4442 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4443 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4444 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4445 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4446 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4447 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4448 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4449 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4450 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4451 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4452 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4453 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4454 190, -1, -1, 193, -1, 195, 196, 197, 198, 199,
4455 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4456 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4457 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4458 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4459 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4460 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4461 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4462 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4463 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4464 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4465 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4466 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4467 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4468 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4469 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4470 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4471 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4472 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4473 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4474 190, -1, -1, 193, -1, 195, 196, 197, 198, 199,
4475 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4476 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4477 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4478 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4479 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4480 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4481 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4482 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4483 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4484 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4485 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4486 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4487 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4488 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4489 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4490 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4491 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4492 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4493 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4494 190, -1, -1, 193, -1, 195, 196, 197, 198, 199,
4495 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4496 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4497 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4498 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4499 -1, -1, 42, 43, 44, -1, -1, -1, -1, 49,
4500 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4501 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4502 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4503 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4504 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4505 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4506 110, 111, 112, -1, 114, 115, 116, -1, 118, 119,
4507 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4508 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4509 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4510 150, -1, 152, 153, 154, 155, -1, 157, -1, -1,
4511 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4512 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4513 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4514 190, -1, -1, 193, -1, 195, 196, -1, 198, 199,
4515 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4516 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4517 -1, -1, -1, -1, -1, -1, -1, 27, -1, -1,
4518 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4519 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4520 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4521 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4522 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4523 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4524 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4525 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4526 110, 111, 112, -1, 114, 115, 116, -1, -1, -1,
4527 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4528 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4529 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4530 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4531 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4532 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4533 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4534 190, -1, -1, 193, -1, 195, 196, -1, 198, 199,
4535 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4536 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4537 -1, -1, -1, -1, -1, -1, -1, 27, -1, -1,
4538 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4539 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4540 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4541 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4542 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4543 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4544 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4545 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4546 110, 111, 112, -1, 114, 115, 116, -1, -1, -1,
4547 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4548 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4549 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4550 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4551 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4552 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4553 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4554 190, -1, -1, 193, -1, 195, 196, -1, 198, 199,
4555 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4556 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4557 -1, -1, -1, -1, -1, -1, -1, 27, -1, -1,
4558 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4559 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4560 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4561 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4562 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4563 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4564 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4565 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4566 110, 111, 112, -1, 114, 115, 116, -1, -1, -1,
4567 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4568 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4569 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4570 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4571 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4572 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4573 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4574 190, -1, -1, 193, -1, 195, 196, -1, 198, 199,
4575 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4576 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4577 -1, -1, -1, -1, -1, -1, -1, 27, -1, -1,
4578 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4579 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4580 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4581 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4582 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4583 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4584 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4585 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4586 110, 111, 112, -1, 114, 115, 116, -1, -1, -1,
4587 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4588 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4589 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4590 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4591 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4592 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4593 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4594 190, -1, -1, 193, -1, 195, 196, -1, 198, 199,
4595 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4596 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4597 -1, -1, -1, -1, -1, -1, -1, 27, -1, -1,
4598 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4599 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4600 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4601 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4602 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4603 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4604 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4605 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4606 110, 111, 112, -1, 114, 115, 116, -1, -1, -1,
4607 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4608 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4609 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4610 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4611 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4612 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4613 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4614 190, -1, -1, 193, -1, 195, 196, -1, 198, 199,
4615 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4616 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4617 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4618 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4619 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4620 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4621 60, 61, 62, 63, 64, 65, 66, -1, -1, -1,
4622 70, 71, 72, 73, 74, -1, 76, -1, -1, -1,
4623 80, 81, 82, 83, -1, 85, -1, 87, -1, 89,
4624 -1, -1, 92, -1, -1, -1, 96, 97, 98, 99,
4625 -1, 101, 102, -1, 104, -1, 106, 107, 108, 109,
4626 110, 111, 112, -1, 114, 115, 116, -1, -1, -1,
4627 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4628 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4629 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4630 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4631 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4632 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4633 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4634 190, -1, -1, 193, -1, 195, 196, -1, 198, 199,
4635 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4636 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4637 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4638 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
4639 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4640 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4641 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4642 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4643 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4644 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4645 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4646 110, 111, 112, -1, 72, 115, 116, -1, -1, -1,
4647 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4648 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4649 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4650 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4651 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4652 -1, -1, 172, 173, 174, 175, 176, 177, 178, 179,
4653 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4654 190, 149, 150, 193, 152, 153, 154, -1, 198, 199,
4655 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4656 -1, -1, -1, 13, -1, -1, -1, 175, -1, 177,
4657 178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
4658 188, 189, -1, -1, -1, 193, -1, -1, -1, -1,
4659 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4660 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4661 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4662 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4663 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4664 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4665 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4666 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4667 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4668 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4669 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4670 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4671 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4672 -1, -1, 172, 173, 174, 175, 176, 177, 178, 179,
4673 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4674 190, -1, -1, 193, -1, 195, -1, -1, 198, 199,
4675 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4676 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4677 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4678 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4679 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4680 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4681 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4682 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4683 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4684 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4685 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4686 110, 111, 112, -1, 72, 115, 116, -1, -1, -1,
4687 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4688 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4689 -1, -1, 142, 143, 144, 145, 146, 147, -1, 149,
4690 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4691 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4692 -1, -1, 172, 173, 174, 175, -1, 177, 178, 179,
4693 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4694 190, 149, 150, 193, 152, 153, 154, -1, 198, 199,
4695 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4696 -1, -1, -1, 13, -1, -1, -1, 175, -1, 177,
4697 178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
4698 188, 189, 32, -1, -1, -1, -1, -1, -1, -1,
4699 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4700 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4701 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4702 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4703 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4704 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4705 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4706 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4707 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4708 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4709 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4710 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4711 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4712 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4713 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4714 190, -1, -1, 193, -1, -1, -1, -1, 198, 199,
4715 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4716 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4717 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4718 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4719 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4720 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4721 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4722 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4723 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4724 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4725 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4726 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4727 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4728 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4729 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4730 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4731 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4732 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4733 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4734 190, -1, -1, 193, -1, 195, -1, -1, 198, 199,
4735 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4736 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4737 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4738 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4739 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4740 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4741 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4742 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4743 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4744 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4745 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4746 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4747 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4748 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4749 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4750 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4751 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4752 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4753 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4754 190, -1, -1, 193, -1, 195, -1, -1, 198, 199,
4755 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4756 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4757 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4758 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4759 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4760 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4761 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4762 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4763 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4764 -1, -1, -1, -1, -1, -1, 96, -1, -1, 99,
4765 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4766 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4767 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4768 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4769 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4770 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4771 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4772 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4773 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4774 190, -1, -1, 193, -1, -1, -1, -1, 198, 199,
4775 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4776 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4777 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4778 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4779 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4780 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4781 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4782 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4783 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4784 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4785 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4786 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4787 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4788 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4789 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4790 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4791 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4792 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4793 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4794 190, -1, -1, 193, 194, -1, -1, -1, 198, 199,
4795 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4796 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4797 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4798 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
4799 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4800 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4801 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4802 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4803 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4804 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4805 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4806 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4807 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4808 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4809 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4810 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4811 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4812 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4813 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4814 190, -1, -1, 193, -1, -1, -1, -1, 198, 199,
4815 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4816 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4817 -1, -1, -1, -1, -1, -1, -1, 27, -1, -1,
4818 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4819 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4820 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4821 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4822 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4823 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4824 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4825 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4826 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4827 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4828 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4829 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4830 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4831 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4832 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4833 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4834 190, -1, -1, 193, -1, -1, -1, -1, 198, 199,
4835 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4836 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4837 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4838 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
4839 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4840 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4841 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4842 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4843 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4844 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4845 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4846 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4847 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4848 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4849 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4850 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4851 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4852 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4853 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4854 190, -1, -1, 193, -1, -1, -1, -1, 198, 199,
4855 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4856 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4857 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4858 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
4859 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4860 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4861 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4862 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4863 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4864 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4865 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4866 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4867 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4868 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4869 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4870 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4871 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4872 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4873 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4874 190, -1, -1, 193, -1, -1, -1, -1, 198, 199,
4875 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4876 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4877 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4878 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
4879 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4880 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4881 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4882 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4883 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4884 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4885 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4886 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4887 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4888 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4889 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4890 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4891 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4892 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4893 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4894 190, -1, -1, 193, -1, -1, -1, -1, 198, 199,
4895 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4896 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4897 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4898 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4899 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4900 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4901 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4902 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4903 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4904 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4905 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4906 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4907 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4908 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4909 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4910 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4911 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4912 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4913 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4914 190, -1, -1, 193, -1, -1, 196, -1, 198, 199,
4915 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4916 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4917 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4918 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
4919 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4920 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4921 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4922 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4923 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4924 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4925 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4926 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4927 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4928 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4929 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4930 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4931 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4932 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4933 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4934 190, -1, -1, 193, -1, -1, -1, -1, 198, 199,
4935 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4936 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4937 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4938 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
4939 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4940 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4941 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4942 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4943 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4944 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4945 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4946 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4947 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4948 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4949 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4950 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4951 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4952 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4953 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4954 190, -1, -1, 193, -1, -1, -1, -1, 198, 199,
4955 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4956 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4957 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4958 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4959 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4960 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4961 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4962 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4963 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4964 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4965 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4966 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4967 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4968 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4969 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4970 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4971 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4972 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4973 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4974 190, -1, -1, 193, -1, -1, -1, -1, 198, 199,
4975 -1, 201, 202, 3, 4, 5, 6, 7, -1, -1,
4976 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4977 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4978 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4979 -1, -1, -1, 43, 44, -1, -1, -1, -1, 49,
4980 -1, 51, 52, 53, 54, 55, 56, 57, 58, 59,
4981 60, 61, 62, 63, 64, 65, -1, -1, -1, -1,
4982 70, 71, 72, 73, 74, -1, -1, -1, -1, -1,
4983 80, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4984 -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
4985 -1, -1, -1, -1, -1, -1, -1, 107, 108, 109,
4986 110, 111, 112, -1, -1, 115, 116, -1, -1, -1,
4987 -1, -1, -1, -1, 124, 125, 126, 127, 128, 129,
4988 130, -1, -1, -1, -1, -1, -1, 137, -1, -1,
4989 -1, -1, 142, 143, 144, 145, -1, 147, -1, 149,
4990 150, -1, 152, 153, 154, -1, -1, 157, -1, -1,
4991 -1, 161, -1, -1, -1, -1, -1, 167, -1, -1,
4992 -1, -1, 172, -1, 174, 175, -1, 177, 178, 179,
4993 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
4994 190, -1, -1, 193, 10, 11, 12, -1, 198, 199,
4995 -1, 201, 202, -1, -1, -1, -1, -1, -1, -1,
4996 26, -1, 28, 29, 30, 31, 32, 33, 34, 35,
4997 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
4998 46, 47, 48, -1, 50, 10, 11, 12, -1, -1,
4999 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5000 -1, 26, -1, 28, 29, 30, 31, 32, 33, 34,
5001 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5002 45, 46, 47, 48, -1, 50, 10, 11, 12, -1,
5003 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5004 -1, -1, 26, -1, 28, 29, 30, 31, 32, 33,
5005 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
5006 44, 45, 46, 47, 48, -1, 50, 10, 11, 12,
5007 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5008 -1, -1, -1, 26, -1, 28, 29, 30, 31, 32,
5009 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
5010 43, 44, 45, 46, 47, 48, -1, 50, -1, -1,
5011 -1, -1, -1, -1, 10, 11, 12, -1, -1, -1,
5012 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5013 26, 197, 28, 29, 30, 31, 32, 33, 34, 35,
5014 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
5015 46, 47, 48, -1, 50, 10, 11, 12, -1, -1,
5016 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5017 -1, 26, 197, 28, 29, 30, 31, 32, 33, 34,
5018 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5019 45, 46, 47, 48, -1, 50, -1, -1, -1, 10,
5020 11, 12, -1, -1, -1, -1, -1, -1, -1, -1,
5021 -1, -1, -1, 197, -1, 26, 27, 28, 29, 30,
5022 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
5023 41, 42, 43, 44, 45, 46, 47, 48, -1, 50,
5024 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5025 -1, -1, -1, -1, 197, -1, -1, -1, -1, -1,
5026 10, 11, 12, -1, -1, 3, 4, 5, 6, 7,
5027 -1, -1, 10, 11, 12, 13, 26, -1, 28, 29,
5028 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
5029 40, 41, 42, 43, 44, 45, 46, 47, 48, -1,
5030 50, 197, -1, -1, -1, -1, -1, -1, -1, -1,
5031 -1, -1, 50, -1, -1, -1, -1, -1, -1, -1,
5032 -1, -1, -1, -1, -1, 63, 64, 65, 66, 67,
5033 68, 69, -1, -1, 72, -1, -1, -1, -1, -1,
5034 -1, -1, 197, 81, 82, 83, 84, 85, 86, 87,
5035 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
5036 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
5037 108, 109, 110, 111, 112, 113, 114, 115, 116, 117,
5038 118, 119, 120, 121, 195, -1, 124, 125, 126, 127,
5039 128, 129, 130, -1, -1, -1, -1, -1, -1, -1,
5040 -1, -1, -1, -1, 142, 143, 144, -1, 146, -1,
5041 -1, 149, 150, -1, 152, 153, 154, 155, 156, 157,
5042 -1, -1, 160, -1, -1, -1, -1, -1, -1, 167,
5043 168, 181, 170, -1, 172, 173, 174, 175, -1, 177,
5044 178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
5045 188, 189, 10, 11, 12, -1, -1, -1, -1, -1,
5046 -1, -1, -1, -1, -1, -1, -1, -1, 26, -1,
5047 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
5048 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
5049 48, -1, 50, 10, 11, 12, -1, -1, -1, -1,
5050 -1, -1, -1, -1, -1, -1, -1, -1, -1, 26,
5051 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
5052 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
5053 47, 48, -1, 50, 10, 11, 12, -1, -1, -1,
5054 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5055 26, -1, 28, 29, 30, 31, 32, 33, 34, 35,
5056 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
5057 46, 47, 48, -1, 50, 10, 11, 12, -1, -1,
5058 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5059 -1, 26, -1, 28, 29, 30, 31, 32, 33, 34,
5060 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5061 45, 46, 47, 48, -1, 50, -1, -1, -1, -1,
5062 10, 11, 12, -1, -1, -1, -1, -1, -1, -1,
5063 -1, -1, -1, -1, -1, -1, 26, 195, 28, 29,
5064 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
5065 40, 41, 42, 43, 44, 45, 46, 47, 48, -1,
5066 50, 10, 11, 12, -1, -1, -1, -1, -1, -1,
5067 -1, -1, -1, -1, -1, -1, -1, 26, 195, 28,
5068 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
5069 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
5070 -1, 50, 10, 11, 12, -1, -1, -1, -1, -1,
5071 -1, -1, -1, -1, -1, -1, -1, -1, 26, 195,
5072 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
5073 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
5074 48, -1, 50, 10, 11, 12, -1, -1, -1, -1,
5075 -1, -1, -1, -1, -1, -1, -1, -1, -1, 26,
5076 195, 28, 29, 30, 31, 32, 33, 34, 35, 36,
5077 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
5078 47, 48, -1, 50, -1, -1, -1, -1, 10, 11,
5079 12, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5080 -1, -1, -1, -1, 26, 195, 28, 29, 30, 31,
5081 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
5082 42, 43, 44, 45, 46, 47, 48, -1, 50, -1,
5083 10, 11, 12, -1, -1, 72, -1, 74, -1, -1,
5084 -1, -1, -1, -1, -1, 194, 26, -1, 28, 29,
5085 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
5086 40, 41, 42, 43, 44, 45, 46, 47, 48, -1,
5087 50, 10, 11, 12, -1, -1, -1, -1, -1, -1,
5088 -1, -1, -1, -1, -1, -1, 194, 26, -1, 28,
5089 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
5090 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
5091 26, 50, 149, 150, -1, 152, 153, 154, -1, -1,
5092 -1, -1, 189, -1, -1, -1, -1, -1, -1, -1,
5093 -1, -1, -1, -1, -1, -1, 52, -1, 175, -1,
5094 177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
5095 187, 188, 189, -1, -1, -1, 72, -1, -1, 196,
5096 -1, 198, -1, 185, 186, -1, -1, -1, -1, -1,
5097 -1, -1, -1, -1, -1, 26, -1, -1, -1, -1,
5098 -1, -1, -1, 99, -1, -1, -1, -1, -1, -1,
5099 -1, 107, 108, 109, 110, 111, 112, -1, -1, -1,
5100 32, 52, 182, -1, -1, -1, -1, -1, -1, 125,
5101 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5102 -1, 72, -1, -1, -1, -1, 142, -1, -1, 145,
5103 -1, 147, -1, 149, 150, -1, 152, 153, 154, -1,
5104 72, 180, 74, -1, -1, -1, -1, -1, -1, -1,
5105 -1, 167, -1, -1, -1, -1, -1, -1, 174, 175,
5106 -1, 177, 178, 179, 180, 181, 182, 183, 184, 185,
5107 186, 187, 188, 189, 125, -1, -1, 193, -1, -1,
5108 112, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5109 -1, 142, 124, -1, 145, -1, 147, -1, 149, 150,
5110 -1, 152, 153, 154, 72, -1, 74, 75, -1, -1,
5111 142, -1, -1, 145, -1, 147, 167, 149, 150, -1,
5112 152, 153, 154, -1, 175, -1, 177, 178, 179, 180,
5113 181, 182, 183, 184, 185, 186, 187, 188, 189, -1,
5114 43, 44, 193, 175, -1, 177, 178, 179, 180, 181,
5115 182, 183, 184, 185, 186, 187, 188, 189, -1, 62,
5116 -1, 193, -1, -1, -1, -1, 198, 70, 71, 72,
5117 -1, -1, -1, -1, -1, -1, -1, 80, -1, -1,
5118 -1, 149, 150, -1, 152, 153, 154, -1, -1, -1,
5119 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5120 -1, -1, -1, -1, -1, -1, -1, 175, -1, 177,
5121 178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
5122 188, 189, 125, 126, 127, 128, 129, 130, -1, 43,
5123 44, -1, -1, -1, 137, -1, -1, -1, -1, 142,
5124 143, 144, 145, -1, 147, -1, 149, 150, 62, 152,
5125 153, 154, -1, -1, 157, -1, 70, 71, 72, -1,
5126 -1, -1, -1, -1, 167, -1, 80, -1, -1, 172,
5127 -1, -1, 175, -1, 177, 178, 179, 180, 181, 182,
5128 183, 184, 185, 186, 187, 188, 189, -1, -1, -1,
5129 -1, -1, -1, -1, -1, -1, -1, 63, 64, -1,
5130 -1, -1, -1, -1, -1, -1, 72, -1, 74, -1,
5131 -1, 125, -1, -1, -1, -1, -1, -1, -1, -1,
5132 -1, -1, -1, 137, -1, -1, -1, -1, -1, -1,
5133 -1, -1, -1, -1, -1, 149, 150, -1, 152, 153,
5134 154, -1, -1, -1, -1, -1, 112, -1, 64, -1,
5135 -1, -1, -1, 167, -1, -1, 72, -1, 74, -1,
5136 -1, 175, -1, 177, 178, 179, 180, 181, 182, 183,
5137 184, 185, 186, 187, 188, 189, 142, -1, -1, 145,
5138 -1, 147, -1, 149, 150, -1, 152, 153, 154, -1,
5139 -1, -1, -1, -1, -1, 161, 112, -1, -1, -1,
5140 -1, -1, -1, -1, -1, -1, 72, -1, 74, 175,
5141 -1, 177, 178, 179, 180, 181, 182, 183, 184, 185,
5142 186, 187, 188, 189, -1, -1, 142, 193, -1, 145,
5143 -1, 147, 198, 149, 150, -1, 152, 153, 154, -1,
5144 -1, -1, -1, -1, -1, -1, 112, -1, -1, -1,
5145 -1, -1, -1, -1, -1, -1, 72, -1, 74, 175,
5146 -1, 177, 178, 179, 180, 181, 182, 183, 184, 185,
5147 186, 187, 188, 189, -1, -1, 142, 193, -1, 145,
5148 -1, 147, 198, 149, 150, -1, 152, 153, 154, -1,
5149 -1, -1, -1, -1, -1, -1, 112, -1, -1, -1,
5150 -1, -1, -1, -1, -1, -1, -1, -1, 124, 175,
5151 -1, 177, 178, 179, 180, 181, 182, 183, 184, 185,
5152 186, 187, 188, 189, -1, -1, 142, 193, -1, 145,
5153 196, 147, 198, 149, 150, -1, 152, 153, 154, 72,
5154 -1, 74, -1, -1, -1, -1, -1, -1, -1, -1,
5155 -1, -1, -1, -1, -1, -1, -1, -1, -1, 175,
5156 -1, 177, 178, 179, 180, 181, 182, 183, 184, 185,
5157 186, 187, 188, 189, -1, -1, -1, 193, -1, 112,
5158 -1, -1, 198, -1, -1, -1, -1, -1, -1, -1,
5159 -1, 124, -1, 72, -1, 74, -1, -1, -1, -1,
5160 -1, -1, -1, -1, -1, -1, -1, -1, -1, 142,
5161 -1, -1, 145, -1, 147, -1, 149, 150, -1, 152,
5162 153, 154, -1, -1, -1, -1, -1, -1, -1, -1,
5163 -1, -1, -1, 112, -1, -1, -1, -1, 70, 71,
5164 72, -1, 175, -1, 177, 178, 179, 180, 181, 182,
5165 183, 184, 185, 186, 187, 188, 189, 72, -1, 74,
5166 193, -1, -1, 142, -1, 198, 145, -1, 147, -1,
5167 149, 150, -1, 152, 153, 154, -1, -1, -1, -1,
5168 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5169 -1, -1, -1, -1, -1, -1, 175, 112, 177, 178,
5170 179, 180, 181, 182, 183, 184, 185, 186, 187, 188,
5171 189, 72, -1, -1, 193, -1, -1, 149, 150, 198,
5172 152, 153, 154, -1, -1, -1, -1, 142, -1, -1,
5173 145, 72, 147, -1, 149, 150, -1, 152, 153, 154,
5174 -1, -1, -1, 175, -1, 177, 178, 179, 180, 181,
5175 182, 183, 184, 185, 186, 187, 188, 189, -1, -1,
5176 175, -1, 177, 178, 179, 180, 181, 182, 183, 184,
5177 185, 186, 187, 188, 189, -1, -1, -1, 193, -1,
5178 -1, -1, -1, 198, 145, -1, -1, -1, 149, 150,
5179 -1, 152, 153, 154, -1, -1, 72, -1, -1, -1,
5180 -1, -1, -1, -1, -1, -1, 147, -1, 149, 150,
5181 151, 152, 153, 154, 175, 72, 177, 178, 179, 180,
5182 181, 182, 183, 184, 185, 186, 187, 188, 189, -1,
5183 -1, -1, -1, -1, 175, 196, 177, 178, 179, 180,
5184 181, 182, 183, 184, 185, 186, 187, 188, 189, -1,
5185 -1, -1, 193, -1, -1, -1, 113, -1, -1, -1,
5186 72, -1, -1, -1, -1, -1, 142, -1, 125, 145,
5187 -1, 147, -1, 149, 150, 72, 152, 153, 154, -1,
5188 -1, -1, -1, -1, -1, 142, -1, -1, 145, -1,
5189 147, -1, 149, 150, -1, 152, 153, 154, -1, 175,
5190 -1, 177, 178, 179, 180, 181, 182, 183, 184, 185,
5191 186, 187, 188, 189, -1, -1, -1, -1, 175, -1,
5192 177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
5193 187, 188, 189, 145, -1, -1, -1, 149, 150, -1,
5194 152, 153, 154, -1, -1, -1, -1, -1, -1, -1,
5195 147, -1, 149, 150, -1, 152, 153, 154, -1, -1,
5196 -1, -1, -1, 175, -1, 177, 178, 179, 180, 181,
5197 182, 183, 184, 185, 186, 187, 188, 189, 175, -1,
5198 177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
5199 187, 188, 189, 10, 11, 12, -1, -1, -1, -1,
5200 -1, -1, -1, -1, -1, -1, -1, -1, -1, 26,
5201 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
5202 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
5203 47, 48, -1, 50, 10, 11, 12, -1, -1, -1,
5204 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5205 26, -1, 28, 29, 30, 31, 32, 33, 34, 35,
5206 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
5207 46, 47, 48, -1, 50, -1, -1, -1, -1, -1,
5208 -1, -1, -1, -1, -1, -1, -1, -1, -1, 10,
5209 11, 12, -1, -1, -1, -1, -1, -1, -1, -1,
5210 -1, -1, -1, -1, -1, 26, 123, 28, 29, 30,
5211 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
5212 41, 42, 43, 44, 45, 46, 47, 48, -1, 50,
5213 10, 11, 12, -1, -1, -1, -1, -1, -1, -1,
5214 -1, -1, -1, -1, -1, -1, 26, 123, 28, 29,
5215 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
5216 40, 41, 42, 43, 44, 45, 46, 47, 48, -1,
5217 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5218 -1, -1, -1, -1, -1, 10, 11, 12, -1, -1,
5219 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5220 -1, 26, 123, 28, 29, 30, 31, 32, 33, 34,
5221 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5222 45, 46, 47, 48, -1, 50, 10, 11, 12, -1,
5223 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5224 -1, -1, 26, 123, 28, 29, 30, 31, 32, 33,
5225 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
5226 44, 45, 46, 47, 48, -1, 50, -1, -1, -1,
5227 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5228 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5229 -1, -1, 10, 11, 12, -1, -1, -1, 123, -1,
5230 -1, -1, -1, -1, -1, -1, -1, 91, 26, 27,
5231 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
5232 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
5233 48, -1, 50, 10, 11, 12, -1, -1, -1, -1,
5234 -1, -1, -1, -1, -1, -1, -1, -1, -1, 26,
5235 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
5236 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
5237 47, 48, -1, 50, 11, 12, -1, -1, -1, -1,
5238 -1, -1, -1, -1, -1, -1, -1, -1, -1, 26,
5239 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
5240 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
5244 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
5245 symbol of state STATE-NUM. */
5246 static const yytype_uint16 yystos
[] =
5248 0, 204, 205, 0, 206, 3, 4, 5, 6, 7,
5249 13, 42, 43, 44, 49, 51, 52, 53, 54, 55,
5250 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
5251 66, 70, 71, 72, 73, 74, 76, 80, 81, 82,
5252 83, 85, 87, 89, 92, 96, 97, 98, 99, 100,
5253 101, 102, 104, 105, 106, 107, 108, 109, 110, 111,
5254 112, 114, 115, 116, 117, 118, 119, 124, 125, 126,
5255 127, 128, 129, 130, 137, 142, 143, 144, 145, 146,
5256 147, 149, 150, 152, 153, 154, 155, 157, 161, 167,
5257 168, 170, 172, 173, 174, 175, 177, 178, 179, 180,
5258 181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
5259 193, 195, 196, 198, 199, 201, 202, 207, 210, 213,
5260 214, 215, 216, 217, 218, 221, 236, 237, 241, 246,
5261 252, 307, 308, 313, 317, 318, 319, 320, 321, 322,
5262 323, 324, 326, 329, 338, 339, 340, 342, 343, 345,
5263 364, 374, 375, 376, 381, 384, 402, 407, 409, 410,
5264 411, 412, 413, 414, 415, 416, 418, 431, 433, 435,
5265 110, 111, 112, 124, 142, 210, 236, 307, 323, 409,
5266 323, 193, 323, 323, 323, 400, 401, 323, 323, 323,
5267 323, 323, 323, 323, 323, 323, 323, 323, 323, 74,
5268 112, 193, 214, 375, 376, 409, 409, 32, 323, 422,
5269 423, 323, 112, 193, 214, 375, 376, 377, 408, 414,
5270 419, 420, 193, 314, 378, 193, 314, 330, 315, 323,
5271 223, 314, 193, 193, 193, 314, 195, 323, 210, 195,
5272 323, 26, 52, 125, 147, 167, 193, 210, 217, 436,
5273 446, 447, 176, 195, 320, 323, 344, 346, 196, 229,
5274 323, 145, 211, 212, 213, 74, 198, 278, 279, 118,
5275 118, 74, 280, 193, 193, 193, 193, 210, 250, 437,
5276 193, 193, 74, 79, 138, 139, 140, 428, 429, 145,
5277 196, 213, 213, 96, 323, 251, 437, 147, 193, 437,
5278 437, 323, 331, 313, 323, 324, 409, 219, 196, 79,
5279 379, 428, 79, 428, 428, 27, 145, 163, 438, 193,
5280 9, 195, 32, 235, 147, 249, 437, 112, 236, 308,
5281 195, 195, 195, 195, 195, 195, 10, 11, 12, 26,
5282 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
5283 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
5284 48, 50, 195, 62, 62, 195, 196, 141, 119, 155,
5285 252, 306, 307, 14, 15, 16, 17, 18, 19, 20,
5286 21, 22, 23, 24, 25, 60, 61, 122, 404, 405,
5287 62, 196, 406, 193, 62, 196, 198, 415, 193, 235,
5288 236, 14, 323, 41, 210, 399, 193, 313, 409, 141,
5289 409, 123, 200, 9, 386, 313, 409, 438, 141, 193,
5290 380, 122, 404, 405, 406, 194, 323, 27, 221, 8,
5291 332, 9, 195, 221, 222, 315, 316, 323, 210, 264,
5292 225, 195, 195, 195, 447, 447, 163, 193, 99, 439,
5293 447, 14, 210, 74, 195, 195, 195, 176, 177, 178,
5294 183, 184, 187, 188, 347, 348, 349, 350, 351, 352,
5295 353, 354, 355, 359, 360, 361, 230, 103, 160, 195,
5296 213, 9, 195, 91, 196, 409, 9, 195, 14, 9,
5297 195, 409, 432, 432, 313, 324, 409, 194, 163, 244,
5298 124, 409, 421, 422, 62, 122, 138, 429, 73, 323,
5299 409, 79, 138, 429, 213, 209, 195, 196, 195, 123,
5300 247, 365, 367, 80, 333, 334, 336, 14, 91, 434,
5301 158, 274, 275, 402, 403, 194, 194, 194, 197, 220,
5302 221, 237, 241, 246, 323, 199, 201, 202, 210, 439,
5303 32, 276, 277, 323, 436, 193, 437, 242, 235, 323,
5304 323, 323, 27, 323, 323, 323, 323, 323, 323, 323,
5305 323, 323, 323, 323, 323, 323, 323, 323, 323, 323,
5306 323, 323, 323, 323, 323, 377, 323, 417, 417, 323,
5307 424, 425, 196, 210, 414, 415, 250, 251, 249, 236,
5308 32, 146, 317, 320, 323, 344, 323, 323, 323, 323,
5309 323, 323, 323, 323, 323, 323, 323, 196, 210, 414,
5310 417, 323, 276, 417, 323, 421, 235, 194, 193, 398,
5311 9, 386, 313, 194, 210, 32, 323, 32, 323, 194,
5312 194, 414, 276, 196, 210, 414, 194, 219, 268, 196,
5313 323, 323, 83, 27, 221, 262, 195, 91, 14, 9,
5314 194, 27, 196, 265, 447, 80, 443, 444, 445, 193,
5315 9, 43, 44, 62, 125, 137, 147, 167, 175, 214,
5316 215, 217, 341, 375, 381, 382, 383, 179, 74, 323,
5317 74, 74, 323, 356, 357, 323, 323, 349, 359, 182,
5318 362, 219, 193, 228, 91, 212, 210, 323, 279, 382,
5319 74, 9, 194, 194, 194, 194, 194, 195, 210, 442,
5320 120, 255, 193, 9, 194, 194, 74, 75, 210, 430,
5321 210, 62, 197, 197, 206, 208, 323, 121, 254, 162,
5322 47, 147, 162, 369, 123, 9, 386, 194, 447, 447,
5323 14, 191, 9, 387, 447, 448, 122, 404, 405, 406,
5324 197, 9, 164, 409, 194, 9, 387, 14, 327, 238,
5325 120, 253, 193, 437, 323, 27, 200, 200, 123, 197,
5326 9, 386, 323, 438, 193, 245, 248, 243, 235, 64,
5327 409, 323, 438, 193, 200, 197, 194, 200, 197, 194,
5328 43, 44, 62, 70, 71, 80, 125, 137, 167, 175,
5329 210, 389, 391, 394, 397, 210, 409, 409, 123, 404,
5330 405, 406, 194, 323, 269, 67, 68, 270, 219, 314,
5331 219, 316, 32, 124, 259, 409, 382, 210, 27, 221,
5332 263, 195, 266, 195, 266, 9, 164, 123, 9, 386,
5333 194, 158, 439, 440, 447, 382, 382, 382, 385, 388,
5334 193, 79, 141, 193, 193, 141, 196, 323, 179, 179,
5335 14, 185, 186, 358, 9, 189, 362, 74, 197, 375,
5336 196, 232, 210, 197, 14, 409, 195, 91, 9, 164,
5337 256, 375, 196, 421, 124, 409, 14, 200, 323, 197,
5338 206, 256, 196, 368, 14, 323, 333, 195, 447, 27,
5339 441, 158, 403, 32, 74, 196, 210, 414, 447, 32,
5340 323, 382, 274, 193, 375, 254, 328, 239, 323, 323,
5341 323, 197, 193, 276, 255, 254, 253, 437, 377, 197,
5342 193, 276, 14, 70, 71, 210, 390, 390, 391, 392,
5343 393, 193, 79, 138, 193, 193, 9, 386, 194, 398,
5344 32, 323, 197, 67, 68, 271, 314, 221, 197, 195,
5345 84, 195, 409, 193, 123, 258, 14, 219, 266, 93,
5346 94, 95, 266, 197, 447, 447, 443, 9, 194, 194,
5347 123, 200, 9, 386, 385, 210, 333, 335, 337, 385,
5348 210, 382, 426, 427, 323, 323, 323, 357, 323, 347,
5349 74, 233, 382, 447, 210, 9, 281, 194, 193, 317,
5350 320, 323, 200, 197, 281, 148, 161, 196, 364, 371,
5351 148, 196, 370, 123, 195, 447, 332, 448, 74, 14,
5352 323, 438, 193, 409, 194, 274, 196, 274, 193, 123,
5353 193, 276, 194, 196, 196, 254, 240, 380, 193, 276,
5354 194, 123, 200, 9, 386, 392, 138, 333, 395, 396,
5355 392, 391, 409, 314, 27, 69, 221, 195, 316, 421,
5356 259, 194, 382, 90, 93, 195, 323, 27, 195, 267,
5357 197, 164, 158, 27, 382, 382, 194, 123, 9, 386,
5358 194, 194, 123, 197, 9, 386, 180, 194, 219, 91,
5359 375, 4, 100, 105, 113, 149, 150, 152, 197, 282,
5360 305, 306, 307, 312, 402, 421, 197, 197, 47, 323,
5361 323, 323, 32, 74, 14, 382, 197, 193, 276, 441,
5362 194, 281, 194, 274, 323, 276, 194, 281, 281, 196,
5363 193, 276, 194, 391, 391, 194, 123, 194, 9, 386,
5364 194, 27, 219, 195, 194, 194, 226, 195, 195, 267,
5365 219, 447, 123, 382, 333, 382, 382, 323, 196, 197,
5366 447, 120, 121, 436, 257, 375, 113, 125, 147, 153,
5367 291, 292, 293, 375, 151, 297, 298, 116, 193, 210,
5368 299, 300, 283, 236, 447, 9, 195, 306, 194, 147,
5369 366, 197, 197, 74, 14, 382, 193, 276, 194, 105,
5370 325, 441, 197, 441, 194, 194, 197, 197, 281, 274,
5371 194, 123, 391, 333, 219, 224, 27, 221, 261, 219,
5372 194, 382, 123, 123, 181, 219, 375, 375, 14, 9,
5373 195, 196, 196, 9, 195, 3, 4, 5, 6, 7,
5374 10, 11, 12, 13, 50, 63, 64, 65, 66, 67,
5375 68, 69, 81, 82, 83, 84, 85, 86, 87, 88,
5376 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
5377 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
5378 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
5379 119, 120, 121, 124, 125, 126, 127, 128, 129, 130,
5380 142, 143, 144, 146, 155, 156, 157, 160, 167, 168,
5381 170, 172, 173, 174, 210, 372, 373, 9, 195, 147,
5382 151, 210, 300, 301, 302, 195, 74, 311, 235, 284,
5383 436, 236, 14, 382, 276, 194, 193, 196, 195, 196,
5384 303, 325, 441, 197, 194, 391, 123, 27, 221, 260,
5385 219, 382, 382, 323, 197, 195, 195, 382, 375, 287,
5386 294, 381, 292, 14, 27, 44, 295, 298, 9, 30,
5387 194, 26, 43, 46, 14, 9, 195, 437, 311, 14,
5388 235, 382, 194, 32, 74, 363, 219, 219, 196, 303,
5389 441, 391, 219, 88, 182, 231, 197, 210, 217, 288,
5390 289, 290, 9, 197, 382, 373, 373, 52, 296, 301,
5391 301, 26, 43, 46, 382, 74, 193, 195, 382, 437,
5392 74, 9, 387, 197, 197, 219, 303, 86, 195, 74,
5393 103, 227, 141, 91, 381, 154, 14, 285, 193, 32,
5394 74, 194, 197, 195, 193, 160, 234, 210, 306, 307,
5395 382, 158, 272, 273, 403, 286, 74, 375, 232, 156,
5396 210, 195, 194, 9, 387, 107, 108, 109, 309, 310,
5397 272, 74, 257, 195, 441, 158, 403, 448, 194, 194,
5398 195, 195, 196, 304, 309, 32, 74, 441, 196, 219,
5399 448, 74, 14, 304, 219, 197, 32, 74, 14, 382,
5400 197, 74, 14, 382, 14, 382, 382
5403 #define yyerrok (yyerrstatus = 0)
5404 #define yyclearin (yychar = YYEMPTY)
5405 #define YYEMPTY (-2)
5408 #define YYACCEPT goto yyacceptlab
5409 #define YYABORT goto yyabortlab
5410 #define YYERROR goto yyerrorlab
5413 /* Like YYERROR except do call yyerror. This remains here temporarily
5414 to ease the transition to the new meaning of YYERROR, for GCC.
5415 Once GCC version 2 has supplanted version 1, this can go. However,
5416 YYFAIL appears to be in use. Nevertheless, it is formally deprecated
5417 in Bison 2.4.2's NEWS entry, where a plan to phase it out is
5420 #define YYFAIL goto yyerrlab
5422 /* This is here to suppress warnings from the GCC cpp's
5423 -Wunused-macros. Normally we don't worry about that warning, but
5424 some users do, and we want to make it easy for users to remove
5425 YYFAIL uses, which will produce warnings from Bison 2.5. */
5428 #define YYRECOVERING() (!!yyerrstatus)
5430 #define YYBACKUP(Token, Value) \
5432 if (yychar == YYEMPTY && yylen == 1) \
5441 yyerror (&yylloc, _p, YY_("syntax error: cannot back up")); \
5448 #define YYERRCODE 256
5451 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
5452 If N is 0, then set CURRENT to the empty location which ends
5453 the previous symbol: RHS[0] (always defined). */
5455 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
5456 #ifndef YYLLOC_DEFAULT
5457 # define YYLLOC_DEFAULT(Current, Rhs, N) \
5461 (Current).line0 = YYRHSLOC (Rhs, 1).line0; \
5462 (Current).char0 = YYRHSLOC (Rhs, 1).char0; \
5463 (Current).line1 = YYRHSLOC (Rhs, N).line1; \
5464 (Current).char1 = YYRHSLOC (Rhs, N).char1; \
5468 (Current).line0 = (Current).line1 = \
5469 YYRHSLOC (Rhs, 0).line1; \
5470 (Current).char0 = (Current).char1 = \
5471 YYRHSLOC (Rhs, 0).char1; \
5477 /* YY_LOCATION_PRINT -- Print the location on the stream.
5478 This macro was not mandated originally: define only if we know
5479 we won't break user code: when these are the locations we know. */
5481 #ifndef YY_LOCATION_PRINT
5482 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
5483 # define YY_LOCATION_PRINT(File, Loc) \
5484 fprintf (File, "%d.%d-%d.%d", \
5485 (Loc).line0, (Loc).char0, \
5486 (Loc).line1, (Loc).char1)
5488 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
5493 /* YYLEX -- calling `yylex' with the right arguments. */
5496 # define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM)
5498 # define YYLEX yylex (&yylval, &yylloc)
5501 /* Enable debugging if requested. */
5505 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
5506 # define YYFPRINTF fprintf
5509 # define YYDPRINTF(Args) \
5515 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
5519 YYFPRINTF (stderr, "%s ", Title); \
5520 yy_symbol_print (stderr, \
5521 Type, Value, Location, _p); \
5522 YYFPRINTF (stderr, "\n"); \
5527 /*--------------------------------.
5528 | Print this symbol on YYOUTPUT. |
5529 `--------------------------------*/
5532 #if (defined __STDC__ || defined __C99__FUNC__ \
5533 || defined __cplusplus || defined _MSC_VER)
5535 yy_symbol_value_print (FILE *yyoutput
, int yytype
, YYSTYPE
const * const yyvaluep
, YYLTYPE
const * const yylocationp
, HPHP::HPHP_PARSER_NS::Parser
*_p
)
5538 yy_symbol_value_print (yyoutput
, yytype
, yyvaluep
, yylocationp
, _p
)
5541 YYSTYPE
const * const yyvaluep
;
5542 YYLTYPE
const * const yylocationp
;
5543 HPHP::HPHP_PARSER_NS::Parser
*_p
;
5548 YYUSE (yylocationp
);
5551 if (yytype
< YYNTOKENS
)
5552 YYPRINT (yyoutput
, yytoknum
[yytype
], *yyvaluep
);
5564 /*--------------------------------.
5565 | Print this symbol on YYOUTPUT. |
5566 `--------------------------------*/
5568 #if (defined __STDC__ || defined __C99__FUNC__ \
5569 || defined __cplusplus || defined _MSC_VER)
5571 yy_symbol_print (FILE *yyoutput
, int yytype
, YYSTYPE
const * const yyvaluep
, YYLTYPE
const * const yylocationp
, HPHP::HPHP_PARSER_NS::Parser
*_p
)
5574 yy_symbol_print (yyoutput
, yytype
, yyvaluep
, yylocationp
, _p
)
5577 YYSTYPE
const * const yyvaluep
;
5578 YYLTYPE
const * const yylocationp
;
5579 HPHP::HPHP_PARSER_NS::Parser
*_p
;
5582 if (yytype
< YYNTOKENS
)
5583 YYFPRINTF (yyoutput
, "token %s (", yytname
[yytype
]);
5585 YYFPRINTF (yyoutput
, "nterm %s (", yytname
[yytype
]);
5587 YY_LOCATION_PRINT (yyoutput
, *yylocationp
);
5588 YYFPRINTF (yyoutput
, ": ");
5589 yy_symbol_value_print (yyoutput
, yytype
, yyvaluep
, yylocationp
, _p
);
5590 YYFPRINTF (yyoutput
, ")");
5593 /*------------------------------------------------------------------.
5594 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
5596 `------------------------------------------------------------------*/
5598 #if (defined __STDC__ || defined __C99__FUNC__ \
5599 || defined __cplusplus || defined _MSC_VER)
5601 yy_stack_print (yytype_int16
*yybottom
, yytype_int16
*yytop
)
5604 yy_stack_print (yybottom
, yytop
)
5605 yytype_int16
*yybottom
;
5606 yytype_int16
*yytop
;
5609 YYFPRINTF (stderr
, "Stack now");
5610 for (; yybottom
<= yytop
; yybottom
++)
5612 int yybot
= *yybottom
;
5613 YYFPRINTF (stderr
, " %d", yybot
);
5615 YYFPRINTF (stderr
, "\n");
5618 # define YY_STACK_PRINT(Bottom, Top) \
5621 yy_stack_print ((Bottom), (Top)); \
5625 /*------------------------------------------------.
5626 | Report that the YYRULE is going to be reduced. |
5627 `------------------------------------------------*/
5629 #if (defined __STDC__ || defined __C99__FUNC__ \
5630 || defined __cplusplus || defined _MSC_VER)
5632 yy_reduce_print (YYSTYPE
*yyvsp
, YYLTYPE
*yylsp
, int yyrule
, HPHP::HPHP_PARSER_NS::Parser
*_p
)
5635 yy_reduce_print (yyvsp
, yylsp
, yyrule
, _p
)
5639 HPHP::HPHP_PARSER_NS::Parser
*_p
;
5642 int yynrhs
= yyr2
[yyrule
];
5644 unsigned long int yylno
= yyrline
[yyrule
];
5645 YYFPRINTF (stderr
, "Reducing stack by rule %d (line %lu):\n",
5647 /* The symbols being reduced. */
5648 for (yyi
= 0; yyi
< yynrhs
; yyi
++)
5650 YYFPRINTF (stderr
, " $%d = ", yyi
+ 1);
5651 yy_symbol_print (stderr
, yyrhs
[yyprhs
[yyrule
] + yyi
],
5652 &(yyvsp
[(yyi
+ 1) - (yynrhs
)])
5653 , &(yylsp
[(yyi
+ 1) - (yynrhs
)]) , _p
);
5654 YYFPRINTF (stderr
, "\n");
5658 # define YY_REDUCE_PRINT(Rule) \
5661 yy_reduce_print (yyvsp, yylsp, Rule, _p); \
5664 /* Nonzero means print parse trace. It is left uninitialized so that
5665 multiple parsers can coexist. */
5667 #else /* !YYDEBUG */
5668 # define YYDPRINTF(Args)
5669 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
5670 # define YY_STACK_PRINT(Bottom, Top)
5671 # define YY_REDUCE_PRINT(Rule)
5672 #endif /* !YYDEBUG */
5675 /* YYINITDEPTH -- initial size of the parser's stacks. */
5677 # define YYINITDEPTH 200
5680 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
5681 if the built-in stack extension method is used).
5683 Do not make this value too large; the results are undefined if
5684 YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
5685 evaluated with infinite-precision integer arithmetic. */
5688 # define YYMAXDEPTH 10000
5695 # if defined __GLIBC__ && defined _STRING_H
5696 # define yystrlen strlen
5698 /* Return the length of YYSTR. */
5699 #if (defined __STDC__ || defined __C99__FUNC__ \
5700 || defined __cplusplus || defined _MSC_VER)
5702 yystrlen (const char *yystr
)
5710 for (yylen
= 0; yystr
[yylen
]; yylen
++)
5718 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
5719 # define yystpcpy stpcpy
5721 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
5723 #if (defined __STDC__ || defined __C99__FUNC__ \
5724 || defined __cplusplus || defined _MSC_VER)
5726 yystpcpy (char *yydest
, const char *yysrc
)
5729 yystpcpy (yydest
, yysrc
)
5735 const char *yys
= yysrc
;
5737 while ((*yyd
++ = *yys
++) != '\0')
5746 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
5747 quotes and backslashes, so that it's suitable for yyerror. The
5748 heuristic is that double-quoting is unnecessary unless the string
5749 contains an apostrophe, a comma, or backslash (other than
5750 backslash-backslash). YYSTR is taken from yytname. If YYRES is
5751 null, do not copy; instead, return the length of what the result
5754 yytnamerr (char *yyres
, const char *yystr
)
5759 char const *yyp
= yystr
;
5766 goto do_not_strip_quotes
;
5770 goto do_not_strip_quotes
;
5783 do_not_strip_quotes
: ;
5787 return yystrlen (yystr
);
5789 return yystpcpy (yyres
, yystr
) - yyres
;
5793 /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
5794 about the unexpected token YYTOKEN for the state stack whose top is
5797 Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is
5798 not large enough to hold the message. In that case, also set
5799 *YYMSG_ALLOC to the required number of bytes. Return 2 if the
5800 required number of bytes is too large to store. */
5802 yysyntax_error (YYSIZE_T
*yymsg_alloc
, char **yymsg
,
5803 yytype_int16
*yyssp
, int yytoken
)
5805 YYSIZE_T yysize0
= yytnamerr (0, yytname
[yytoken
]);
5806 YYSIZE_T yysize
= yysize0
;
5808 enum { YYERROR_VERBOSE_ARGS_MAXIMUM
= 5 };
5809 /* Internationalized format string. */
5810 const char *yyformat
= 0;
5811 /* Arguments of yyformat. */
5812 char const *yyarg
[YYERROR_VERBOSE_ARGS_MAXIMUM
];
5813 /* Number of reported tokens (one for the "unexpected", one per
5817 /* There are many possibilities here to consider:
5818 - Assume YYFAIL is not used. It's too flawed to consider. See
5819 <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html>
5820 for details. YYERROR is fine as it does not invoke this
5822 - If this state is a consistent state with a default action, then
5823 the only way this function was invoked is if the default action
5824 is an error action. In that case, don't check for expected
5825 tokens because there are none.
5826 - The only way there can be no lookahead present (in yychar) is if
5827 this state is a consistent state with a default action. Thus,
5828 detecting the absence of a lookahead is sufficient to determine
5829 that there is no unexpected or expected token to report. In that
5830 case, just report a simple "syntax error".
5831 - Don't assume there isn't a lookahead just because this state is a
5832 consistent state with a default action. There might have been a
5833 previous inconsistent state, consistent state with a non-default
5834 action, or user semantic action that manipulated yychar.
5835 - Of course, the expected token list depends on states to have
5836 correct lookahead information, and it depends on the parser not
5837 to perform extra reductions after fetching a lookahead from the
5838 scanner and before detecting a syntax error. Thus, state merging
5839 (from LALR or IELR) and default reductions corrupt the expected
5840 token list. However, the list is correct for canonical LR with
5841 one exception: it will still contain any token that will not be
5842 accepted due to an error action in a later state.
5844 if (yytoken
!= YYEMPTY
)
5846 int yyn
= yypact
[*yyssp
];
5847 yyarg
[yycount
++] = yytname
[yytoken
];
5848 if (!yypact_value_is_default (yyn
))
5850 /* Start YYX at -YYN if negative to avoid negative indexes in
5851 YYCHECK. In other words, skip the first -YYN actions for
5852 this state because they are default actions. */
5853 int yyxbegin
= yyn
< 0 ? -yyn
: 0;
5854 /* Stay within bounds of both yycheck and yytname. */
5855 int yychecklim
= YYLAST
- yyn
+ 1;
5856 int yyxend
= yychecklim
< YYNTOKENS
? yychecklim
: YYNTOKENS
;
5859 for (yyx
= yyxbegin
; yyx
< yyxend
; ++yyx
)
5860 if (yycheck
[yyx
+ yyn
] == yyx
&& yyx
!= YYTERROR
5861 && !yytable_value_is_error (yytable
[yyx
+ yyn
]))
5863 if (yycount
== YYERROR_VERBOSE_ARGS_MAXIMUM
)
5869 yyarg
[yycount
++] = yytname
[yyx
];
5870 yysize1
= yysize
+ yytnamerr (0, yytname
[yyx
]);
5871 if (! (yysize
<= yysize1
5872 && yysize1
<= YYSTACK_ALLOC_MAXIMUM
))
5881 # define YYCASE_(N, S) \
5885 YYCASE_(0, YY_("syntax error"));
5886 YYCASE_(1, YY_("syntax error, unexpected %s"));
5887 YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
5888 YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
5889 YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
5890 YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
5894 yysize1
= yysize
+ yystrlen (yyformat
);
5895 if (! (yysize
<= yysize1
&& yysize1
<= YYSTACK_ALLOC_MAXIMUM
))
5899 if (*yymsg_alloc
< yysize
)
5901 *yymsg_alloc
= 2 * yysize
;
5902 if (! (yysize
<= *yymsg_alloc
5903 && *yymsg_alloc
<= YYSTACK_ALLOC_MAXIMUM
))
5904 *yymsg_alloc
= YYSTACK_ALLOC_MAXIMUM
;
5908 /* Avoid sprintf, as that infringes on the user's name space.
5909 Don't have undefined behavior even if the translation
5910 produced a string with the wrong number of "%s"s. */
5914 while ((*yyp
= *yyformat
) != '\0')
5915 if (*yyp
== '%' && yyformat
[1] == 's' && yyi
< yycount
)
5917 yyp
+= yytnamerr (yyp
, yyarg
[yyi
++]);
5928 #endif /* YYERROR_VERBOSE */
5930 /*-----------------------------------------------.
5931 | Release the memory associated to this symbol. |
5932 `-----------------------------------------------*/
5935 #if (defined __STDC__ || defined __C99__FUNC__ \
5936 || defined __cplusplus || defined _MSC_VER)
5938 yydestruct (const char *yymsg
, int yytype
, YYSTYPE
*yyvaluep
, YYLTYPE
*yylocationp
, HPHP::HPHP_PARSER_NS::Parser
*_p
)
5941 yydestruct (yymsg
, yytype
, yyvaluep
, yylocationp
, _p
)
5945 YYLTYPE
*yylocationp
;
5946 HPHP::HPHP_PARSER_NS::Parser
*_p
;
5950 YYUSE (yylocationp
);
5955 YY_SYMBOL_PRINT (yymsg
, yytype
, yyvaluep
, yylocationp
);
5966 /* Prevent warnings from -Wmissing-prototypes. */
5967 #ifdef YYPARSE_PARAM
5968 #if defined __STDC__ || defined __cplusplus
5969 int yyparse (void *YYPARSE_PARAM
);
5973 #else /* ! YYPARSE_PARAM */
5974 #if defined __STDC__ || defined __cplusplus
5975 int yyparse (HPHP::HPHP_PARSER_NS::Parser
*_p
);
5979 #endif /* ! YYPARSE_PARAM */
5986 #ifdef YYPARSE_PARAM
5987 #if (defined __STDC__ || defined __C99__FUNC__ \
5988 || defined __cplusplus || defined _MSC_VER)
5990 yyparse (void *YYPARSE_PARAM
)
5993 yyparse (YYPARSE_PARAM
)
5994 void *YYPARSE_PARAM
;
5996 #else /* ! YYPARSE_PARAM */
5997 #if (defined __STDC__ || defined __C99__FUNC__ \
5998 || defined __cplusplus || defined _MSC_VER)
6000 yyparse (HPHP::HPHP_PARSER_NS::Parser
*_p
)
6004 HPHP::HPHP_PARSER_NS::Parser
*_p
;
6008 /* The lookahead symbol. */
6011 /* The semantic value of the lookahead symbol. */
6014 /* Location data for the lookahead symbol. */
6017 /* Number of syntax errors so far. */
6021 /* Number of tokens to shift before error messages enabled. */
6024 /* The stacks and their tools:
6025 `yyss': related to states.
6026 `yyvs': related to semantic values.
6027 `yyls': related to locations.
6029 Refer to the stacks thru separate pointers, to allow yyoverflow
6030 to reallocate them elsewhere. */
6032 /* The state stack. */
6033 yytype_int16 yyssa
[YYINITDEPTH
];
6035 yytype_int16
*yyssp
;
6037 /* The semantic value stack. */
6038 YYSTYPE yyvsa
[YYINITDEPTH
];
6042 /* The location stack. */
6043 YYLTYPE yylsa
[YYINITDEPTH
];
6047 /* The locations where the error started and ended. */
6048 YYLTYPE yyerror_range
[3];
6050 YYSIZE_T yystacksize
;
6054 /* Lookahead token as an internal (translated) token number. */
6056 /* The variables used to return semantic value and location from the
6062 /* Buffer for error messages, and its allocated size. */
6064 char *yymsg
= yymsgbuf
;
6065 YYSIZE_T yymsg_alloc
= sizeof yymsgbuf
;
6068 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
6070 /* The number of symbols on the RHS of the reduced rule.
6071 Keep to zero when no symbol should be popped. */
6078 yystacksize
= YYINITDEPTH
;
6080 YYDPRINTF ((stderr
, "Starting parse\n"));
6085 yychar
= YYEMPTY
; /* Cause a token to be read. */
6087 /* Initialize stack pointers.
6088 Waste one element of value and location stack
6089 so that they stay on the same level as the state stack.
6090 The wasted elements are never initialized. */
6095 #if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
6096 /* Initialize the default location before parsing starts. */
6097 yylloc
.line0
= yylloc
.line1
= 1;
6098 yylloc
.char0
= yylloc
.char1
= 1;
6103 /*------------------------------------------------------------.
6104 | yynewstate -- Push a new state, which is found in yystate. |
6105 `------------------------------------------------------------*/
6107 /* In all cases, when you get here, the value and location stacks
6108 have just been pushed. So pushing a state here evens the stacks. */
6114 if (yyss
+ yystacksize
- 1 <= yyssp
)
6116 /* Get the current used size of the three stacks, in elements. */
6117 YYSIZE_T yysize
= yyssp
- yyss
+ 1;
6121 /* Give user a chance to reallocate the stack. Use copies of
6122 these so that the &'s don't force the real ones into
6124 YYSTYPE
*yyvs1
= yyvs
;
6125 yytype_int16
*yyss1
= yyss
;
6126 YYLTYPE
*yyls1
= yyls
;
6128 /* Each stack pointer address is followed by the size of the
6129 data in use in that stack, in bytes. This used to be a
6130 conditional around just the two extra args, but that might
6131 be undefined if yyoverflow is a macro. */
6132 yyoverflow (YY_("memory exhausted"),
6133 &yyss1
, yysize
* sizeof (*yyssp
),
6134 &yyvs1
, yysize
* sizeof (*yyvsp
),
6135 &yyls1
, yysize
* sizeof (*yylsp
),
6142 #else /* no yyoverflow */
6143 # ifndef YYSTACK_RELOCATE
6144 goto yyexhaustedlab
;
6146 /* Extend the stack our own way. */
6147 if (YYMAXDEPTH
<= yystacksize
)
6148 goto yyexhaustedlab
;
6150 if (YYMAXDEPTH
< yystacksize
)
6151 yystacksize
= YYMAXDEPTH
;
6154 yytype_int16
*yyss1
= yyss
;
6155 struct yyalloc
*yyptr
=
6156 (struct yyalloc
*) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize
));
6157 memset(yyptr
, 0, YYSTACK_BYTES (yystacksize
));
6159 goto yyexhaustedlab
;
6160 YYSTACK_RELOCATE (yyss_alloc
, yyss
);
6161 YYSTACK_RELOCATE_RESET (yyvs_alloc
, yyvs
);
6162 YYSTACK_RELOCATE (yyls_alloc
, yyls
);
6163 # undef YYSTACK_RELOCATE
6165 YYSTACK_FREE (yyss1
);
6168 #endif /* no yyoverflow */
6170 yyssp
= yyss
+ yysize
- 1;
6171 yyvsp
= yyvs
+ yysize
- 1;
6172 yylsp
= yyls
+ yysize
- 1;
6174 YYDPRINTF ((stderr
, "Stack size increased to %lu\n",
6175 (unsigned long int) yystacksize
));
6177 if (yyss
+ yystacksize
- 1 <= yyssp
)
6181 YYDPRINTF ((stderr
, "Entering state %d\n", yystate
));
6183 if (yystate
== YYFINAL
)
6193 /* Do appropriate processing given the current state. Read a
6194 lookahead token if we need one and don't already have one. */
6196 /* First try to decide what to do without reference to lookahead token. */
6197 yyn
= yypact
[yystate
];
6198 if (yypact_value_is_default (yyn
))
6201 /* Not known => get a lookahead token if don't already have one. */
6203 /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
6204 if (yychar
== YYEMPTY
)
6206 YYDPRINTF ((stderr
, "Reading a token: "));
6210 if (yychar
<= YYEOF
)
6212 yychar
= yytoken
= YYEOF
;
6213 YYDPRINTF ((stderr
, "Now at end of input.\n"));
6217 yytoken
= YYTRANSLATE (yychar
);
6218 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
6221 /* If the proper action on seeing token YYTOKEN is to reduce or to
6222 detect an error, take that action. */
6224 if (yyn
< 0 || YYLAST
< yyn
|| yycheck
[yyn
] != yytoken
)
6229 if (yytable_value_is_error (yyn
))
6235 /* Count tokens shifted since error; after three, turn off error
6240 /* Shift the lookahead token. */
6241 YY_SYMBOL_PRINT ("Shifting", yytoken
, &yylval
, &yylloc
);
6243 /* Discard the shifted token. */
6252 /*-----------------------------------------------------------.
6253 | yydefault -- do the default action for the current state. |
6254 `-----------------------------------------------------------*/
6256 yyn
= yydefact
[yystate
];
6262 /*-----------------------------.
6263 | yyreduce -- Do a reduction. |
6264 `-----------------------------*/
6266 /* yyn is the number of a rule to reduce with. */
6269 /* If YYLEN is nonzero, implement the default value of the action:
6272 Otherwise, the following line sets YYVAL to garbage.
6273 This behavior is undocumented and Bison
6274 users should not rely upon it. Assigning to YYVAL
6275 unconditionally makes the parser a bit smaller, and it avoids a
6276 GCC warning that YYVAL may be used uninitialized. */
6277 yyval
= yyvsp
[1-yylen
];
6279 /* Default location. */
6280 YYLLOC_DEFAULT (yyloc
, (yylsp
- yylen
), yylen
);
6281 YY_REDUCE_PRINT (yyn
);
6286 /* Line 1806 of yacc.c */
6288 { _p
->onNewLabelScope(true);
6289 _p
->initParseTree();}
6294 /* Line 1806 of yacc.c */
6296 { _p
->popLabelInfo();
6297 _p
->finiParseTree();
6298 _p
->onCompleteLabelScope(true);}
6303 /* Line 1806 of yacc.c */
6305 { _p
->addTopStatement((yyvsp
[(2) - (2)]));}
6310 /* Line 1806 of yacc.c */
6317 /* Line 1806 of yacc.c */
6319 { _p
->nns((yyvsp
[(1) - (1)]).num()); (yyval
) = (yyvsp
[(1) - (1)]);}
6324 /* Line 1806 of yacc.c */
6326 { _p
->nns(); (yyval
) = (yyvsp
[(1) - (1)]);}
6331 /* Line 1806 of yacc.c */
6333 { _p
->nns(); (yyval
) = (yyvsp
[(1) - (1)]);}
6338 /* Line 1806 of yacc.c */
6340 { _p
->nns(); (yyval
) = (yyvsp
[(1) - (1)]);}
6345 /* Line 1806 of yacc.c */
6347 { (yyval
) = (yyvsp
[(1) - (1)]); }
6352 /* Line 1806 of yacc.c */
6354 { _p
->onHaltCompiler();
6355 _p
->finiParseTree();
6361 /* Line 1806 of yacc.c */
6363 { _p
->onNamespaceStart((yyvsp
[(2) - (3)]).text(), true);
6369 /* Line 1806 of yacc.c */
6371 { _p
->onNamespaceStart((yyvsp
[(2) - (3)]).text());}
6376 /* Line 1806 of yacc.c */
6378 { _p
->onNamespaceEnd(); (yyval
) = (yyvsp
[(5) - (6)]);}
6383 /* Line 1806 of yacc.c */
6385 { _p
->onNamespaceStart("");}
6390 /* Line 1806 of yacc.c */
6392 { _p
->onNamespaceEnd(); (yyval
) = (yyvsp
[(4) - (5)]);}
6397 /* Line 1806 of yacc.c */
6399 { _p
->nns(); (yyval
).reset();}
6404 /* Line 1806 of yacc.c */
6407 _p
->finishStatement((yyval
), (yyvsp
[(1) - (2)])); (yyval
) = 1;}
6412 /* Line 1806 of yacc.c */
6414 { (yyval
) = (yyvsp
[(1) - (1)]);}
6419 /* Line 1806 of yacc.c */
6421 { (yyval
) = (yyvsp
[(1) - (1)]);}
6426 /* Line 1806 of yacc.c */
6428 { (yyval
) = (yyvsp
[(1) - (1)]);}
6433 /* Line 1806 of yacc.c */
6435 { (yyval
) = (yyvsp
[(1) - (1)]);}
6440 /* Line 1806 of yacc.c */
6442 { (yyval
) = (yyvsp
[(1) - (1)]);}
6447 /* Line 1806 of yacc.c */
6449 { (yyval
) = (yyvsp
[(1) - (1)]);}
6454 /* Line 1806 of yacc.c */
6456 { (yyval
) = (yyvsp
[(1) - (1)]);}
6461 /* Line 1806 of yacc.c */
6463 { (yyval
) = (yyvsp
[(1) - (1)]);}
6468 /* Line 1806 of yacc.c */
6470 { (yyval
) = (yyvsp
[(1) - (1)]);}
6475 /* Line 1806 of yacc.c */
6477 { (yyval
) = (yyvsp
[(1) - (1)]);}
6482 /* Line 1806 of yacc.c */
6484 { (yyval
) = (yyvsp
[(1) - (1)]);}
6489 /* Line 1806 of yacc.c */
6491 { (yyval
) = (yyvsp
[(1) - (1)]);}
6496 /* Line 1806 of yacc.c */
6498 { (yyval
) = (yyvsp
[(1) - (1)]);}
6503 /* Line 1806 of yacc.c */
6505 { (yyval
) = (yyvsp
[(1) - (1)]);}
6510 /* Line 1806 of yacc.c */
6512 { (yyval
) = (yyvsp
[(1) - (1)]);}
6517 /* Line 1806 of yacc.c */
6519 { (yyval
) = (yyvsp
[(1) - (1)]);}
6524 /* Line 1806 of yacc.c */
6526 { (yyval
) = (yyvsp
[(1) - (1)]);}
6531 /* Line 1806 of yacc.c */
6533 { (yyval
) = (yyvsp
[(1) - (1)]);}
6538 /* Line 1806 of yacc.c */
6540 { (yyval
) = (yyvsp
[(1) - (1)]);}
6545 /* Line 1806 of yacc.c */
6547 { (yyval
) = (yyvsp
[(1) - (1)]);}
6552 /* Line 1806 of yacc.c */
6559 /* Line 1806 of yacc.c */
6566 /* Line 1806 of yacc.c */
6568 { _p
->onUse((yyvsp
[(1) - (1)]).text(),"");}
6573 /* Line 1806 of yacc.c */
6575 { _p
->onUse((yyvsp
[(2) - (2)]).text(),"");}
6580 /* Line 1806 of yacc.c */
6582 { _p
->onUse((yyvsp
[(1) - (3)]).text(),(yyvsp
[(3) - (3)]).text());}
6587 /* Line 1806 of yacc.c */
6589 { _p
->onUse((yyvsp
[(2) - (4)]).text(),(yyvsp
[(4) - (4)]).text());}
6594 /* Line 1806 of yacc.c */
6596 { (yyval
) = (yyvsp
[(1) - (1)]);}
6601 /* Line 1806 of yacc.c */
6603 { (yyval
) = (yyvsp
[(1) - (3)]) + (yyvsp
[(2) - (3)]) + (yyvsp
[(3) - (3)]); (yyval
) = (yyvsp
[(1) - (3)]).num() | 2;}
6608 /* Line 1806 of yacc.c */
6610 { (yyval
) = (yyvsp
[(1) - (1)]); (yyval
) = (yyval
).num() | 1;}
6615 /* Line 1806 of yacc.c */
6617 { (yyval
).set((yyvsp
[(3) - (3)]).num() | 2, _p
->nsDecl((yyvsp
[(3) - (3)]).text()));}
6622 /* Line 1806 of yacc.c */
6624 { (yyval
) = (yyvsp
[(2) - (2)]); (yyval
) = (yyval
).num() | 2;}
6629 /* Line 1806 of yacc.c */
6631 { if ((yyvsp
[(1) - (1)]).num() & 1) {
6632 (yyvsp
[(1) - (1)]).setText(_p
->resolve((yyvsp
[(1) - (1)]).text(),0));
6634 (yyval
) = (yyvsp
[(1) - (1)]);}
6639 /* Line 1806 of yacc.c */
6641 { if ((yyvsp
[(1) - (2)]).num() & 1) {
6642 (yyvsp
[(1) - (2)]).setText(_p
->resolve((yyvsp
[(1) - (2)]).text(),0));
6644 (yyval
) = (yyvsp
[(1) - (2)]);}
6649 /* Line 1806 of yacc.c */
6651 { if ((yyvsp
[(1) - (2)]).num() & 1) {
6652 (yyvsp
[(1) - (2)]).setText(_p
->resolve((yyvsp
[(1) - (2)]).text(),1));
6654 _p
->onTypeAnnotation((yyval
), (yyvsp
[(1) - (2)]), (yyvsp
[(2) - (2)]));}
6659 /* Line 1806 of yacc.c */
6661 { (yyvsp
[(3) - (5)]).setText(_p
->nsDecl((yyvsp
[(3) - (5)]).text()));
6662 on_constant(_p
,(yyval
),(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]));}
6667 /* Line 1806 of yacc.c */
6669 { (yyvsp
[(2) - (4)]).setText(_p
->nsDecl((yyvsp
[(2) - (4)]).text()));
6670 on_constant(_p
,(yyval
),(yyvsp
[(2) - (4)]),(yyvsp
[(4) - (4)]));}
6675 /* Line 1806 of yacc.c */
6677 { _p
->addStatement((yyval
),(yyvsp
[(1) - (2)]),(yyvsp
[(2) - (2)]));}
6682 /* Line 1806 of yacc.c */
6684 { _p
->onStatementListStart((yyval
));}
6689 /* Line 1806 of yacc.c */
6691 { (yyval
) = (yyvsp
[(1) - (1)]);}
6696 /* Line 1806 of yacc.c */
6698 { (yyval
) = (yyvsp
[(1) - (1)]);}
6703 /* Line 1806 of yacc.c */
6705 { (yyval
) = (yyvsp
[(1) - (1)]);}
6710 /* Line 1806 of yacc.c */
6712 { (yyval
) = (yyvsp
[(1) - (1)]);}
6717 /* Line 1806 of yacc.c */
6719 { _p
->onBlock((yyval
), (yyvsp
[(2) - (3)]));}
6724 /* Line 1806 of yacc.c */
6726 { _p
->onIf((yyval
),(yyvsp
[(2) - (5)]),(yyvsp
[(3) - (5)]),(yyvsp
[(4) - (5)]),(yyvsp
[(5) - (5)]));}
6731 /* Line 1806 of yacc.c */
6733 { _p
->onIf((yyval
),(yyvsp
[(2) - (8)]),(yyvsp
[(4) - (8)]),(yyvsp
[(5) - (8)]),(yyvsp
[(6) - (8)]));}
6738 /* Line 1806 of yacc.c */
6740 { _p
->onNewLabelScope(false);
6741 _p
->pushLabelScope();}
6746 /* Line 1806 of yacc.c */
6748 { _p
->popLabelScope();
6749 _p
->onWhile((yyval
),(yyvsp
[(2) - (4)]),(yyvsp
[(4) - (4)]));
6750 _p
->onCompleteLabelScope(false);}
6755 /* Line 1806 of yacc.c */
6757 { _p
->onNewLabelScope(false);
6758 _p
->pushLabelScope();}
6763 /* Line 1806 of yacc.c */
6765 { _p
->popLabelScope();
6766 _p
->onDo((yyval
),(yyvsp
[(3) - (6)]),(yyvsp
[(5) - (6)]));
6767 _p
->onCompleteLabelScope(false);}
6772 /* Line 1806 of yacc.c */
6774 { _p
->onNewLabelScope(false);
6775 _p
->pushLabelScope();}
6780 /* Line 1806 of yacc.c */
6782 { _p
->popLabelScope();
6783 _p
->onFor((yyval
),(yyvsp
[(3) - (10)]),(yyvsp
[(5) - (10)]),(yyvsp
[(7) - (10)]),(yyvsp
[(10) - (10)]));
6784 _p
->onCompleteLabelScope(false);}
6789 /* Line 1806 of yacc.c */
6791 { _p
->onNewLabelScope(false);
6792 _p
->pushLabelScope();}
6797 /* Line 1806 of yacc.c */
6799 { _p
->popLabelScope();
6800 _p
->onSwitch((yyval
),(yyvsp
[(2) - (4)]),(yyvsp
[(4) - (4)]));
6801 _p
->onCompleteLabelScope(false);}
6806 /* Line 1806 of yacc.c */
6808 { _p
->onBreakContinue((yyval
), true, NULL
);}
6813 /* Line 1806 of yacc.c */
6815 { _p
->onBreakContinue((yyval
), true, &(yyvsp
[(2) - (3)]));}
6820 /* Line 1806 of yacc.c */
6822 { _p
->onBreakContinue((yyval
), false, NULL
);}
6827 /* Line 1806 of yacc.c */
6829 { _p
->onBreakContinue((yyval
), false, &(yyvsp
[(2) - (3)]));}
6834 /* Line 1806 of yacc.c */
6836 { _p
->onReturn((yyval
), NULL
);}
6841 /* Line 1806 of yacc.c */
6843 { _p
->onReturn((yyval
), &(yyvsp
[(2) - (3)]));}
6848 /* Line 1806 of yacc.c */
6850 { _p
->onYieldBreak((yyval
));}
6855 /* Line 1806 of yacc.c */
6857 { _p
->onGlobal((yyval
), (yyvsp
[(2) - (3)]));}
6862 /* Line 1806 of yacc.c */
6864 { _p
->onStatic((yyval
), (yyvsp
[(2) - (3)]));}
6869 /* Line 1806 of yacc.c */
6871 { _p
->onEcho((yyval
), (yyvsp
[(2) - (3)]), 0);}
6876 /* Line 1806 of yacc.c */
6878 { _p
->onUnset((yyval
), (yyvsp
[(3) - (5)]));}
6883 /* Line 1806 of yacc.c */
6885 { (yyval
).reset(); (yyval
) = ';';}
6890 /* Line 1806 of yacc.c */
6892 { _p
->onEcho((yyval
), (yyvsp
[(1) - (1)]), 1);}
6897 /* Line 1806 of yacc.c */
6899 { _p
->onNewLabelScope(false);
6900 _p
->pushLabelScope();}
6905 /* Line 1806 of yacc.c */
6907 { _p
->popLabelScope();
6908 _p
->onForEach((yyval
),(yyvsp
[(3) - (9)]),(yyvsp
[(5) - (9)]),(yyvsp
[(6) - (9)]),(yyvsp
[(9) - (9)]));
6909 _p
->onCompleteLabelScope(false);}
6914 /* Line 1806 of yacc.c */
6916 { _p
->onBlock((yyval
), (yyvsp
[(5) - (5)])); (yyval
) = T_DECLARE
;}
6921 /* Line 1806 of yacc.c */
6923 { _p
->onCompleteLabelScope(false);}
6928 /* Line 1806 of yacc.c */
6930 { _p
->onTry((yyval
),(yyvsp
[(2) - (13)]),(yyvsp
[(5) - (13)]),(yyvsp
[(6) - (13)]),(yyvsp
[(9) - (13)]),(yyvsp
[(11) - (13)]),(yyvsp
[(13) - (13)]));}
6935 /* Line 1806 of yacc.c */
6937 { _p
->onCompleteLabelScope(false);}
6942 /* Line 1806 of yacc.c */
6944 { _p
->onTry((yyval
), (yyvsp
[(2) - (5)]), (yyvsp
[(5) - (5)]));}
6949 /* Line 1806 of yacc.c */
6951 { _p
->onThrow((yyval
), (yyvsp
[(2) - (3)]));}
6956 /* Line 1806 of yacc.c */
6958 { _p
->onGoto((yyval
), (yyvsp
[(2) - (3)]), true);
6959 _p
->addGoto((yyvsp
[(2) - (3)]).text(),
6966 /* Line 1806 of yacc.c */
6968 { _p
->onExpStatement((yyval
), (yyvsp
[(1) - (2)]));}
6973 /* Line 1806 of yacc.c */
6975 { _p
->onExpStatement((yyval
), (yyvsp
[(1) - (2)]));}
6980 /* Line 1806 of yacc.c */
6982 { _p
->onExpStatement((yyval
), (yyvsp
[(1) - (2)]));}
6987 /* Line 1806 of yacc.c */
6989 { _p
->onExpStatement((yyval
), (yyvsp
[(1) - (2)]));}
6994 /* Line 1806 of yacc.c */
6996 { _p
->onExpStatement((yyval
), (yyvsp
[(1) - (2)]));}
7001 /* Line 1806 of yacc.c */
7003 { _p
->onExpStatement((yyval
), (yyvsp
[(1) - (2)]));}
7008 /* Line 1806 of yacc.c */
7010 { _p
->onReturn((yyval
), &(yyvsp
[(2) - (3)])); }
7015 /* Line 1806 of yacc.c */
7017 { _p
->onExpStatement((yyval
), (yyvsp
[(1) - (2)]));}
7022 /* Line 1806 of yacc.c */
7024 { _p
->onExpStatement((yyval
), (yyvsp
[(1) - (2)]));}
7029 /* Line 1806 of yacc.c */
7031 { _p
->onReturn((yyval
), &(yyvsp
[(2) - (3)])); }
7036 /* Line 1806 of yacc.c */
7038 { _p
->onLabel((yyval
), (yyvsp
[(1) - (2)]));
7039 _p
->addLabel((yyvsp
[(1) - (2)]).text(),
7042 _p
->onScopeLabel((yyval
), (yyvsp
[(1) - (2)]));}
7047 /* Line 1806 of yacc.c */
7049 { _p
->onNewLabelScope(false);}
7054 /* Line 1806 of yacc.c */
7056 { (yyval
) = (yyvsp
[(3) - (4)]);}
7061 /* Line 1806 of yacc.c */
7063 { _p
->onCatch((yyval
), (yyvsp
[(1) - (9)]), (yyvsp
[(4) - (9)]), (yyvsp
[(5) - (9)]), (yyvsp
[(8) - (9)]));}
7068 /* Line 1806 of yacc.c */
7075 /* Line 1806 of yacc.c */
7077 { _p
->onNewLabelScope(false);
7078 _p
->pushLabelScope();}
7083 /* Line 1806 of yacc.c */
7085 { _p
->popLabelScope();
7086 _p
->onFinally((yyval
), (yyvsp
[(3) - (4)]));
7087 _p
->onCompleteLabelScope(false);}
7092 /* Line 1806 of yacc.c */
7094 { (yyval
) = (yyvsp
[(2) - (2)]);}
7099 /* Line 1806 of yacc.c */
7106 /* Line 1806 of yacc.c */
7113 /* Line 1806 of yacc.c */
7120 /* Line 1806 of yacc.c */
7122 { _p
->pushFuncLocation(); }
7127 /* Line 1806 of yacc.c */
7129 { (yyvsp
[(3) - (3)]).setText(_p
->nsDecl((yyvsp
[(3) - (3)]).text()));
7130 _p
->onNewLabelScope(true);
7131 _p
->onFunctionStart((yyvsp
[(3) - (3)]));
7132 _p
->pushLabelInfo();}
7137 /* Line 1806 of yacc.c */
7139 { _p
->onFunction((yyval
),nullptr,(yyvsp
[(8) - (9)]),(yyvsp
[(2) - (9)]),(yyvsp
[(3) - (9)]),(yyvsp
[(6) - (9)]),(yyvsp
[(9) - (9)]),nullptr);
7142 _p
->onCompleteLabelScope(true);}
7147 /* Line 1806 of yacc.c */
7149 { (yyvsp
[(4) - (4)]).setText(_p
->nsDecl((yyvsp
[(4) - (4)]).text()));
7150 _p
->onNewLabelScope(true);
7151 _p
->onFunctionStart((yyvsp
[(4) - (4)]));
7152 _p
->pushLabelInfo();}
7157 /* Line 1806 of yacc.c */
7159 { _p
->onFunction((yyval
),&(yyvsp
[(1) - (10)]),(yyvsp
[(9) - (10)]),(yyvsp
[(3) - (10)]),(yyvsp
[(4) - (10)]),(yyvsp
[(7) - (10)]),(yyvsp
[(10) - (10)]),nullptr);
7162 _p
->onCompleteLabelScope(true);}
7167 /* Line 1806 of yacc.c */
7169 { (yyvsp
[(5) - (5)]).setText(_p
->nsDecl((yyvsp
[(5) - (5)]).text()));
7170 _p
->onNewLabelScope(true);
7171 _p
->onFunctionStart((yyvsp
[(5) - (5)]));
7172 _p
->pushLabelInfo();}
7177 /* Line 1806 of yacc.c */
7179 { _p
->onFunction((yyval
),&(yyvsp
[(2) - (11)]),(yyvsp
[(10) - (11)]),(yyvsp
[(4) - (11)]),(yyvsp
[(5) - (11)]),(yyvsp
[(8) - (11)]),(yyvsp
[(11) - (11)]),&(yyvsp
[(1) - (11)]));
7182 _p
->onCompleteLabelScope(true);}
7187 /* Line 1806 of yacc.c */
7189 { (yyvsp
[(2) - (2)]).setText(_p
->nsDecl((yyvsp
[(2) - (2)]).text()));
7190 _p
->onClassStart((yyvsp
[(1) - (2)]).num(),(yyvsp
[(2) - (2)]));}
7195 /* Line 1806 of yacc.c */
7198 if (_p
->peekClass()) {
7199 xhp_collect_attributes(_p
,stmts
,(yyvsp
[(7) - (8)]));
7201 stmts
= (yyvsp
[(7) - (8)]);
7203 _p
->onClass((yyval
),(yyvsp
[(1) - (8)]).num(),(yyvsp
[(2) - (8)]),(yyvsp
[(4) - (8)]),(yyvsp
[(5) - (8)]),
7205 if (_p
->peekClass()) {
7206 _p
->xhpResetAttributes();
7209 _p
->popTypeScope();}
7214 /* Line 1806 of yacc.c */
7216 { (yyvsp
[(3) - (3)]).setText(_p
->nsDecl((yyvsp
[(3) - (3)]).text()));
7217 _p
->onClassStart((yyvsp
[(2) - (3)]).num(),(yyvsp
[(3) - (3)]));}
7222 /* Line 1806 of yacc.c */
7225 if (_p
->peekClass()) {
7226 xhp_collect_attributes(_p
,stmts
,(yyvsp
[(8) - (9)]));
7228 stmts
= (yyvsp
[(8) - (9)]);
7230 _p
->onClass((yyval
),(yyvsp
[(2) - (9)]).num(),(yyvsp
[(3) - (9)]),(yyvsp
[(5) - (9)]),(yyvsp
[(6) - (9)]),
7231 stmts
,&(yyvsp
[(1) - (9)]));
7232 if (_p
->peekClass()) {
7233 _p
->xhpResetAttributes();
7236 _p
->popTypeScope();}
7241 /* Line 1806 of yacc.c */
7243 { (yyvsp
[(2) - (2)]).setText(_p
->nsDecl((yyvsp
[(2) - (2)]).text()));
7244 _p
->onClassStart(T_INTERFACE
,(yyvsp
[(2) - (2)]));}
7249 /* Line 1806 of yacc.c */
7251 { _p
->onInterface((yyval
),(yyvsp
[(2) - (7)]),(yyvsp
[(4) - (7)]),(yyvsp
[(6) - (7)]),0);
7253 _p
->popTypeScope();}
7258 /* Line 1806 of yacc.c */
7260 { (yyvsp
[(3) - (3)]).setText(_p
->nsDecl((yyvsp
[(3) - (3)]).text()));
7261 _p
->onClassStart(T_INTERFACE
,(yyvsp
[(3) - (3)]));}
7266 /* Line 1806 of yacc.c */
7268 { _p
->onInterface((yyval
),(yyvsp
[(3) - (8)]),(yyvsp
[(5) - (8)]),(yyvsp
[(7) - (8)]),&(yyvsp
[(1) - (8)]));
7270 _p
->popTypeScope();}
7275 /* Line 1806 of yacc.c */
7277 { (yyvsp
[(2) - (2)]).setText(_p
->nsDecl((yyvsp
[(2) - (2)]).text()));
7278 _p
->onClassStart(T_TRAIT
, (yyvsp
[(2) - (2)]));}
7283 /* Line 1806 of yacc.c */
7287 _p
->onClass((yyval
),T_TRAIT
,(yyvsp
[(2) - (7)]),t_ext
,(yyvsp
[(4) - (7)]),
7288 (yyvsp
[(6) - (7)]), 0);
7290 _p
->popTypeScope();}
7295 /* Line 1806 of yacc.c */
7297 { (yyvsp
[(3) - (3)]).setText(_p
->nsDecl((yyvsp
[(3) - (3)]).text()));
7298 _p
->onClassStart(T_TRAIT
, (yyvsp
[(3) - (3)]));}
7303 /* Line 1806 of yacc.c */
7307 _p
->onClass((yyval
),T_TRAIT
,(yyvsp
[(3) - (8)]),t_ext
,(yyvsp
[(5) - (8)]),
7308 (yyvsp
[(7) - (8)]), &(yyvsp
[(1) - (8)]));
7310 _p
->popTypeScope();}
7315 /* Line 1806 of yacc.c */
7317 { _p
->pushClass(false); (yyval
) = (yyvsp
[(1) - (1)]);}
7322 /* Line 1806 of yacc.c */
7324 { (yyvsp
[(1) - (1)]).xhpLabel(); _p
->pushTypeScope();
7325 _p
->pushClass(true); (yyval
) = (yyvsp
[(1) - (1)]);}
7330 /* Line 1806 of yacc.c */
7332 { _p
->pushClass(false); (yyval
) = (yyvsp
[(1) - (1)]);}
7337 /* Line 1806 of yacc.c */
7339 { _p
->pushClass(false); (yyval
) = (yyvsp
[(1) - (1)]);}
7344 /* Line 1806 of yacc.c */
7346 { (yyval
) = T_CLASS
;}
7351 /* Line 1806 of yacc.c */
7353 { (yyval
) = T_ABSTRACT
;}
7358 /* Line 1806 of yacc.c */
7360 { (yyval
) = T_FINAL
;}
7365 /* Line 1806 of yacc.c */
7367 { (yyval
) = (yyvsp
[(2) - (2)]);}
7372 /* Line 1806 of yacc.c */
7379 /* Line 1806 of yacc.c */
7381 { (yyval
) = (yyvsp
[(2) - (2)]);}
7386 /* Line 1806 of yacc.c */
7393 /* Line 1806 of yacc.c */
7395 { (yyval
) = (yyvsp
[(2) - (2)]);}
7400 /* Line 1806 of yacc.c */
7407 /* Line 1806 of yacc.c */
7409 { _p
->onInterfaceName((yyval
), NULL
, (yyvsp
[(1) - (1)]));}
7414 /* Line 1806 of yacc.c */
7416 { _p
->onInterfaceName((yyval
), &(yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]));}
7421 /* Line 1806 of yacc.c */
7423 { _p
->onTraitName((yyval
), NULL
, (yyvsp
[(1) - (1)]));}
7428 /* Line 1806 of yacc.c */
7430 { _p
->onTraitName((yyval
), &(yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]));}
7435 /* Line 1806 of yacc.c */
7437 { (yyval
) = (yyvsp
[(2) - (2)]);}
7442 /* Line 1806 of yacc.c */
7449 /* Line 1806 of yacc.c */
7451 { (yyval
) = (yyvsp
[(1) - (1)]);}
7456 /* Line 1806 of yacc.c */
7458 { (yyval
) = (yyvsp
[(2) - (2)]); (yyval
) = 1;}
7463 /* Line 1806 of yacc.c */
7465 { _p
->onListAssignment((yyval
), (yyvsp
[(3) - (4)]), NULL
);}
7470 /* Line 1806 of yacc.c */
7472 { (yyval
) = (yyvsp
[(1) - (1)]);}
7477 /* Line 1806 of yacc.c */
7479 { (yyval
) = (yyvsp
[(2) - (4)]);}
7484 /* Line 1806 of yacc.c */
7486 { (yyval
) = (yyvsp
[(1) - (1)]);}
7491 /* Line 1806 of yacc.c */
7493 { (yyval
) = (yyvsp
[(2) - (4)]);}
7498 /* Line 1806 of yacc.c */
7500 { (yyval
) = (yyvsp
[(1) - (1)]);}
7505 /* Line 1806 of yacc.c */
7507 { (yyval
) = (yyvsp
[(2) - (4)]);}
7512 /* Line 1806 of yacc.c */
7514 { (yyval
) = (yyvsp
[(1) - (1)]);}
7519 /* Line 1806 of yacc.c */
7521 { (yyval
) = (yyvsp
[(2) - (4)]);}
7526 /* Line 1806 of yacc.c */
7528 { (yyval
) = (yyvsp
[(2) - (3)]);}
7533 /* Line 1806 of yacc.c */
7535 { (yyval
) = (yyvsp
[(3) - (4)]);}
7540 /* Line 1806 of yacc.c */
7542 { (yyval
) = (yyvsp
[(2) - (4)]);}
7547 /* Line 1806 of yacc.c */
7549 { (yyval
) = (yyvsp
[(3) - (5)]);}
7554 /* Line 1806 of yacc.c */
7556 { _p
->onCase((yyval
),(yyvsp
[(1) - (5)]),&(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]));}
7561 /* Line 1806 of yacc.c */
7563 { _p
->onCase((yyval
),(yyvsp
[(1) - (4)]),NULL
,(yyvsp
[(4) - (4)]));}
7568 /* Line 1806 of yacc.c */
7575 /* Line 1806 of yacc.c */
7582 /* Line 1806 of yacc.c */
7589 /* Line 1806 of yacc.c */
7591 { _p
->onElseIf((yyval
),(yyvsp
[(1) - (4)]),(yyvsp
[(3) - (4)]),(yyvsp
[(4) - (4)]));}
7596 /* Line 1806 of yacc.c */
7603 /* Line 1806 of yacc.c */
7605 { _p
->onElseIf((yyval
),(yyvsp
[(1) - (5)]),(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]));}
7610 /* Line 1806 of yacc.c */
7617 /* Line 1806 of yacc.c */
7619 { (yyval
) = (yyvsp
[(2) - (2)]);}
7624 /* Line 1806 of yacc.c */
7631 /* Line 1806 of yacc.c */
7633 { (yyval
) = (yyvsp
[(3) - (3)]);}
7638 /* Line 1806 of yacc.c */
7645 /* Line 1806 of yacc.c */
7647 { (yyval
) = (yyvsp
[(1) - (3)]);}
7652 /* Line 1806 of yacc.c */
7654 { (yyval
) = (yyvsp
[(1) - (2)]);}
7659 /* Line 1806 of yacc.c */
7666 /* Line 1806 of yacc.c */
7673 /* Line 1806 of yacc.c */
7675 { _p
->onParam((yyval
),NULL
,(yyvsp
[(3) - (4)]),(yyvsp
[(4) - (4)]),0,
7676 NULL
,&(yyvsp
[(1) - (4)]),&(yyvsp
[(2) - (4)]));}
7681 /* Line 1806 of yacc.c */
7683 { _p
->onParam((yyval
),NULL
,(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]),1,
7684 NULL
,&(yyvsp
[(1) - (5)]),&(yyvsp
[(2) - (5)]));}
7689 /* Line 1806 of yacc.c */
7691 { _p
->onParam((yyval
),NULL
,(yyvsp
[(3) - (7)]),(yyvsp
[(5) - (7)]),1,
7692 &(yyvsp
[(7) - (7)]),&(yyvsp
[(1) - (7)]),&(yyvsp
[(2) - (7)]));}
7697 /* Line 1806 of yacc.c */
7699 { _p
->onParam((yyval
),NULL
,(yyvsp
[(3) - (6)]),(yyvsp
[(4) - (6)]),0,
7700 &(yyvsp
[(6) - (6)]),&(yyvsp
[(1) - (6)]),&(yyvsp
[(2) - (6)]));}
7705 /* Line 1806 of yacc.c */
7707 { _p
->onParam((yyval
),&(yyvsp
[(1) - (6)]),(yyvsp
[(5) - (6)]),(yyvsp
[(6) - (6)]),0,
7708 NULL
,&(yyvsp
[(3) - (6)]),&(yyvsp
[(4) - (6)]));}
7713 /* Line 1806 of yacc.c */
7715 { _p
->onParam((yyval
),&(yyvsp
[(1) - (7)]),(yyvsp
[(5) - (7)]),(yyvsp
[(7) - (7)]),1,
7716 NULL
,&(yyvsp
[(3) - (7)]),&(yyvsp
[(4) - (7)]));}
7721 /* Line 1806 of yacc.c */
7723 { _p
->onParam((yyval
),&(yyvsp
[(1) - (9)]),(yyvsp
[(5) - (9)]),(yyvsp
[(7) - (9)]),1,
7724 &(yyvsp
[(9) - (9)]),&(yyvsp
[(3) - (9)]),&(yyvsp
[(4) - (9)]));}
7729 /* Line 1806 of yacc.c */
7731 { _p
->onParam((yyval
),&(yyvsp
[(1) - (8)]),(yyvsp
[(5) - (8)]),(yyvsp
[(6) - (8)]),0,
7732 &(yyvsp
[(8) - (8)]),&(yyvsp
[(3) - (8)]),&(yyvsp
[(4) - (8)]));}
7737 /* Line 1806 of yacc.c */
7739 { (yyval
) = (yyvsp
[(1) - (3)]);}
7744 /* Line 1806 of yacc.c */
7746 { (yyval
) = (yyvsp
[(1) - (2)]);}
7751 /* Line 1806 of yacc.c */
7758 /* Line 1806 of yacc.c */
7765 /* Line 1806 of yacc.c */
7767 { _p
->onParam((yyval
),NULL
,(yyvsp
[(2) - (3)]),(yyvsp
[(3) - (3)]),0,
7768 NULL
,&(yyvsp
[(1) - (3)]),NULL
);}
7773 /* Line 1806 of yacc.c */
7775 { _p
->onParam((yyval
),NULL
,(yyvsp
[(2) - (4)]),(yyvsp
[(4) - (4)]),1,
7776 NULL
,&(yyvsp
[(1) - (4)]),NULL
);}
7781 /* Line 1806 of yacc.c */
7783 { _p
->onParam((yyval
),NULL
,(yyvsp
[(2) - (6)]),(yyvsp
[(4) - (6)]),1,
7784 &(yyvsp
[(6) - (6)]),&(yyvsp
[(1) - (6)]),NULL
);}
7789 /* Line 1806 of yacc.c */
7791 { _p
->onParam((yyval
),NULL
,(yyvsp
[(2) - (5)]),(yyvsp
[(3) - (5)]),0,
7792 &(yyvsp
[(5) - (5)]),&(yyvsp
[(1) - (5)]),NULL
);}
7797 /* Line 1806 of yacc.c */
7799 { _p
->onParam((yyval
),&(yyvsp
[(1) - (5)]),(yyvsp
[(4) - (5)]),(yyvsp
[(5) - (5)]),0,
7800 NULL
,&(yyvsp
[(3) - (5)]),NULL
);}
7805 /* Line 1806 of yacc.c */
7807 { _p
->onParam((yyval
),&(yyvsp
[(1) - (6)]),(yyvsp
[(4) - (6)]),(yyvsp
[(6) - (6)]),1,
7808 NULL
,&(yyvsp
[(3) - (6)]),NULL
);}
7813 /* Line 1806 of yacc.c */
7815 { _p
->onParam((yyval
),&(yyvsp
[(1) - (8)]),(yyvsp
[(4) - (8)]),(yyvsp
[(6) - (8)]),1,
7816 &(yyvsp
[(8) - (8)]),&(yyvsp
[(3) - (8)]),NULL
);}
7821 /* Line 1806 of yacc.c */
7823 { _p
->onParam((yyval
),&(yyvsp
[(1) - (7)]),(yyvsp
[(4) - (7)]),(yyvsp
[(5) - (7)]),0,
7824 &(yyvsp
[(7) - (7)]),&(yyvsp
[(3) - (7)]),NULL
);}
7829 /* Line 1806 of yacc.c */
7831 { (yyval
) = (yyvsp
[(1) - (2)]);}
7836 /* Line 1806 of yacc.c */
7843 /* Line 1806 of yacc.c */
7845 { _p
->onCallParam((yyval
),NULL
,(yyvsp
[(1) - (1)]),0);}
7850 /* Line 1806 of yacc.c */
7852 { _p
->onCallParam((yyval
),NULL
,(yyvsp
[(2) - (2)]),1);}
7857 /* Line 1806 of yacc.c */
7859 { _p
->onCallParam((yyval
),&(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),0);}
7864 /* Line 1806 of yacc.c */
7866 { _p
->onCallParam((yyval
),&(yyvsp
[(1) - (4)]),(yyvsp
[(4) - (4)]),1);}
7871 /* Line 1806 of yacc.c */
7873 { _p
->onGlobalVar((yyval
), &(yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]));}
7878 /* Line 1806 of yacc.c */
7880 { _p
->onGlobalVar((yyval
), NULL
, (yyvsp
[(1) - (1)]));}
7885 /* Line 1806 of yacc.c */
7887 { (yyval
) = (yyvsp
[(1) - (1)]);}
7892 /* Line 1806 of yacc.c */
7894 { (yyval
) = (yyvsp
[(2) - (2)]); (yyval
) = 1;}
7899 /* Line 1806 of yacc.c */
7901 { (yyval
) = (yyvsp
[(3) - (4)]); (yyval
) = 1;}
7906 /* Line 1806 of yacc.c */
7908 { _p
->onStaticVariable((yyval
),&(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),0);}
7913 /* Line 1806 of yacc.c */
7915 { _p
->onStaticVariable((yyval
),&(yyvsp
[(1) - (5)]),(yyvsp
[(3) - (5)]),&(yyvsp
[(5) - (5)]));}
7920 /* Line 1806 of yacc.c */
7922 { _p
->onStaticVariable((yyval
),0,(yyvsp
[(1) - (1)]),0);}
7927 /* Line 1806 of yacc.c */
7929 { _p
->onStaticVariable((yyval
),0,(yyvsp
[(1) - (3)]),&(yyvsp
[(3) - (3)]));}
7934 /* Line 1806 of yacc.c */
7936 { _p
->onClassStatement((yyval
), (yyvsp
[(1) - (2)]), (yyvsp
[(2) - (2)]));}
7941 /* Line 1806 of yacc.c */
7948 /* Line 1806 of yacc.c */
7950 { _p
->onClassVariableModifer((yyvsp
[(1) - (1)]));}
7955 /* Line 1806 of yacc.c */
7957 { _p
->onClassVariableStart
7958 ((yyval
),&(yyvsp
[(1) - (4)]),(yyvsp
[(3) - (4)]),NULL
);}
7963 /* Line 1806 of yacc.c */
7965 { _p
->onClassVariableModifer((yyvsp
[(1) - (2)]));}
7970 /* Line 1806 of yacc.c */
7972 { _p
->onClassVariableStart
7973 ((yyval
),&(yyvsp
[(1) - (5)]),(yyvsp
[(4) - (5)]),&(yyvsp
[(2) - (5)]));}
7978 /* Line 1806 of yacc.c */
7980 { _p
->onClassVariableStart
7981 ((yyval
),NULL
,(yyvsp
[(1) - (2)]),NULL
);}
7986 /* Line 1806 of yacc.c */
7988 { _p
->onNewLabelScope(true);
7989 _p
->onMethodStart((yyvsp
[(4) - (5)]), (yyvsp
[(1) - (5)]));
7990 _p
->pushLabelInfo();}
7995 /* Line 1806 of yacc.c */
7997 { _p
->onMethod((yyval
),(yyvsp
[(1) - (10)]),(yyvsp
[(9) - (10)]),(yyvsp
[(3) - (10)]),(yyvsp
[(4) - (10)]),(yyvsp
[(7) - (10)]),(yyvsp
[(10) - (10)]),nullptr);
8000 _p
->onCompleteLabelScope(true);}
8005 /* Line 1806 of yacc.c */
8007 { _p
->onNewLabelScope(true);
8008 _p
->onMethodStart((yyvsp
[(5) - (6)]), (yyvsp
[(2) - (6)]));
8009 _p
->pushLabelInfo();}
8014 /* Line 1806 of yacc.c */
8016 { _p
->onMethod((yyval
),(yyvsp
[(2) - (11)]),(yyvsp
[(10) - (11)]),(yyvsp
[(4) - (11)]),(yyvsp
[(5) - (11)]),(yyvsp
[(8) - (11)]),(yyvsp
[(11) - (11)]),&(yyvsp
[(1) - (11)]));
8019 _p
->onCompleteLabelScope(true);}
8024 /* Line 1806 of yacc.c */
8026 { _p
->xhpSetAttributes((yyvsp
[(2) - (3)]));}
8031 /* Line 1806 of yacc.c */
8033 { xhp_category_stmt(_p
,(yyval
),(yyvsp
[(2) - (3)]));}
8038 /* Line 1806 of yacc.c */
8040 { xhp_children_stmt(_p
,(yyval
),(yyvsp
[(2) - (3)]));}
8045 /* Line 1806 of yacc.c */
8047 { _p
->onTraitRequire((yyval
), (yyvsp
[(3) - (4)]), true); }
8052 /* Line 1806 of yacc.c */
8054 { _p
->onTraitRequire((yyval
), (yyvsp
[(3) - (4)]), false); }
8059 /* Line 1806 of yacc.c */
8061 { Token t
; t
.reset();
8062 _p
->onTraitUse((yyval
),(yyvsp
[(2) - (3)]),t
); }
8067 /* Line 1806 of yacc.c */
8069 { _p
->onTraitUse((yyval
),(yyvsp
[(2) - (5)]),(yyvsp
[(4) - (5)])); }
8074 /* Line 1806 of yacc.c */
8076 { _p
->onTraitRule((yyval
),(yyvsp
[(1) - (2)]),(yyvsp
[(2) - (2)])); }
8081 /* Line 1806 of yacc.c */
8083 { _p
->onTraitRule((yyval
),(yyvsp
[(1) - (2)]),(yyvsp
[(2) - (2)])); }
8088 /* Line 1806 of yacc.c */
8090 { (yyval
).reset(); }
8095 /* Line 1806 of yacc.c */
8097 { _p
->onTraitPrecRule((yyval
),(yyvsp
[(1) - (6)]),(yyvsp
[(3) - (6)]),(yyvsp
[(5) - (6)]));}
8102 /* Line 1806 of yacc.c */
8104 { _p
->onTraitAliasRuleModify((yyval
),(yyvsp
[(1) - (5)]),(yyvsp
[(3) - (5)]),
8105 (yyvsp
[(4) - (5)]));}
8110 /* Line 1806 of yacc.c */
8112 { Token t
; t
.reset();
8113 _p
->onTraitAliasRuleModify((yyval
),(yyvsp
[(1) - (4)]),(yyvsp
[(3) - (4)]),
8119 /* Line 1806 of yacc.c */
8121 { _p
->onTraitAliasRuleStart((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]));}
8126 /* Line 1806 of yacc.c */
8128 { Token t
; t
.reset();
8129 _p
->onTraitAliasRuleStart((yyval
),t
,(yyvsp
[(1) - (1)]));}
8134 /* Line 1806 of yacc.c */
8136 { xhp_attribute_list(_p
,(yyval
),
8137 _p
->xhpGetAttributes(),(yyvsp
[(1) - (1)]));}
8142 /* Line 1806 of yacc.c */
8144 { xhp_attribute_list(_p
,(yyval
), &(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]));}
8149 /* Line 1806 of yacc.c */
8151 { xhp_attribute(_p
,(yyval
),(yyvsp
[(1) - (4)]),(yyvsp
[(2) - (4)]),(yyvsp
[(3) - (4)]),(yyvsp
[(4) - (4)]));
8157 /* Line 1806 of yacc.c */
8159 { (yyval
) = (yyvsp
[(1) - (1)]); (yyval
) = 0;}
8164 /* Line 1806 of yacc.c */
8171 /* Line 1806 of yacc.c */
8173 { /* This case handles all types other
8174 than "array", "var" and "enum".
8175 For now we just use type code 5;
8176 later xhp_attribute() will fix up
8177 the type code as appropriate. */
8178 (yyval
) = 5; (yyval
).setText((yyvsp
[(1) - (1)]));}
8183 /* Line 1806 of yacc.c */
8190 /* Line 1806 of yacc.c */
8192 { (yyval
) = (yyvsp
[(3) - (4)]); (yyval
) = 7;}
8197 /* Line 1806 of yacc.c */
8199 { _p
->onArrayPair((yyval
), 0,0,(yyvsp
[(1) - (1)]),0);}
8204 /* Line 1806 of yacc.c */
8206 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (3)]),0,(yyvsp
[(3) - (3)]),0);}
8211 /* Line 1806 of yacc.c */
8213 { (yyval
) = (yyvsp
[(2) - (2)]);}
8218 /* Line 1806 of yacc.c */
8220 { scalar_null(_p
, (yyval
));}
8225 /* Line 1806 of yacc.c */
8227 { scalar_num(_p
, (yyval
), "1");}
8232 /* Line 1806 of yacc.c */
8234 { scalar_num(_p
, (yyval
), "0");}
8239 /* Line 1806 of yacc.c */
8241 { Token t
; scalar_num(_p
, t
, "1");
8242 _p
->onArrayPair((yyval
),0,&(yyvsp
[(1) - (1)]),t
,0);}
8247 /* Line 1806 of yacc.c */
8249 { Token t
; scalar_num(_p
, t
, "1");
8250 _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (3)]),&(yyvsp
[(3) - (3)]),t
,0);}
8255 /* Line 1806 of yacc.c */
8257 { _p
->onScalar((yyval
),
8258 T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[(1) - (1)]));}
8263 /* Line 1806 of yacc.c */
8265 { (yyval
) = (yyvsp
[(1) - (1)]); (yyval
) = 2;}
8270 /* Line 1806 of yacc.c */
8273 if ((yyvsp
[(1) - (1)]).same("any")) (yyval
) = 1;}
8278 /* Line 1806 of yacc.c */
8285 /* Line 1806 of yacc.c */
8287 { xhp_children_paren(_p
, (yyval
), (yyvsp
[(2) - (3)]), 0);}
8292 /* Line 1806 of yacc.c */
8294 { xhp_children_paren(_p
, (yyval
), (yyvsp
[(2) - (4)]), 1);}
8299 /* Line 1806 of yacc.c */
8301 { xhp_children_paren(_p
, (yyval
), (yyvsp
[(2) - (4)]), 2);}
8306 /* Line 1806 of yacc.c */
8308 { xhp_children_paren(_p
, (yyval
), (yyvsp
[(2) - (4)]), 3);}
8313 /* Line 1806 of yacc.c */
8315 { (yyval
) = (yyvsp
[(1) - (1)]);}
8320 /* Line 1806 of yacc.c */
8322 { xhp_children_decl(_p
,(yyval
),(yyvsp
[(1) - (1)]),0, 0);}
8327 /* Line 1806 of yacc.c */
8329 { xhp_children_decl(_p
,(yyval
),(yyvsp
[(1) - (2)]),1, 0);}
8334 /* Line 1806 of yacc.c */
8336 { xhp_children_decl(_p
,(yyval
),(yyvsp
[(1) - (2)]),2, 0);}
8341 /* Line 1806 of yacc.c */
8343 { xhp_children_decl(_p
,(yyval
),(yyvsp
[(1) - (2)]),3, 0);}
8348 /* Line 1806 of yacc.c */
8350 { xhp_children_decl(_p
,(yyval
),(yyvsp
[(1) - (3)]),4,&(yyvsp
[(3) - (3)]));}
8355 /* Line 1806 of yacc.c */
8357 { xhp_children_decl(_p
,(yyval
),(yyvsp
[(1) - (3)]),5,&(yyvsp
[(3) - (3)]));}
8362 /* Line 1806 of yacc.c */
8365 if ((yyvsp
[(1) - (1)]).same("any")) (yyval
) = 1; else
8366 if ((yyvsp
[(1) - (1)]).same("pcdata")) (yyval
) = 2;}
8371 /* Line 1806 of yacc.c */
8373 { (yyvsp
[(1) - (1)]).xhpLabel(); (yyval
) = (yyvsp
[(1) - (1)]); (yyval
) = 3;}
8378 /* Line 1806 of yacc.c */
8380 { (yyvsp
[(1) - (1)]).xhpLabel(0); (yyval
) = (yyvsp
[(1) - (1)]); (yyval
) = 4;}
8385 /* Line 1806 of yacc.c */
8392 /* Line 1806 of yacc.c */
8394 { _p
->finishStatement((yyval
), (yyvsp
[(2) - (3)])); (yyval
) = 1;}
8399 /* Line 1806 of yacc.c */
8406 /* Line 1806 of yacc.c */
8408 { _p
->finishStatement((yyval
), (yyvsp
[(2) - (3)])); (yyval
) = 1;}
8413 /* Line 1806 of yacc.c */
8415 { (yyval
) = (yyvsp
[(1) - (1)]);}
8420 /* Line 1806 of yacc.c */
8427 /* Line 1806 of yacc.c */
8429 { (yyval
) = (yyvsp
[(1) - (1)]);}
8434 /* Line 1806 of yacc.c */
8441 /* Line 1806 of yacc.c */
8443 { _p
->onMemberModifier((yyval
),NULL
,(yyvsp
[(1) - (1)]));}
8448 /* Line 1806 of yacc.c */
8450 { _p
->onMemberModifier((yyval
),&(yyvsp
[(1) - (2)]),(yyvsp
[(2) - (2)]));}
8455 /* Line 1806 of yacc.c */
8457 { (yyval
) = T_PUBLIC
;}
8462 /* Line 1806 of yacc.c */
8464 { (yyval
) = T_PROTECTED
;}
8469 /* Line 1806 of yacc.c */
8471 { (yyval
) = T_PRIVATE
;}
8476 /* Line 1806 of yacc.c */
8478 { (yyval
) = T_STATIC
;}
8483 /* Line 1806 of yacc.c */
8485 { (yyval
) = T_ABSTRACT
;}
8490 /* Line 1806 of yacc.c */
8492 { (yyval
) = T_FINAL
;}
8497 /* Line 1806 of yacc.c */
8499 { (yyval
) = T_ASYNC
;}
8504 /* Line 1806 of yacc.c */
8506 { (yyval
) = (yyvsp
[(1) - (1)]);}
8511 /* Line 1806 of yacc.c */
8518 /* Line 1806 of yacc.c */
8520 { (yyval
) = T_PUBLIC
;}
8525 /* Line 1806 of yacc.c */
8527 { (yyval
) = T_PROTECTED
;}
8532 /* Line 1806 of yacc.c */
8534 { (yyval
) = T_PRIVATE
;}
8539 /* Line 1806 of yacc.c */
8541 { _p
->onClassVariable((yyval
),&(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),0);}
8546 /* Line 1806 of yacc.c */
8548 { _p
->onClassVariable((yyval
),&(yyvsp
[(1) - (5)]),(yyvsp
[(3) - (5)]),&(yyvsp
[(5) - (5)]));}
8553 /* Line 1806 of yacc.c */
8555 { _p
->onClassVariable((yyval
),0,(yyvsp
[(1) - (1)]),0);}
8560 /* Line 1806 of yacc.c */
8562 { _p
->onClassVariable((yyval
),0,(yyvsp
[(1) - (3)]),&(yyvsp
[(3) - (3)]));}
8567 /* Line 1806 of yacc.c */
8569 { _p
->onClassConstant((yyval
),&(yyvsp
[(1) - (5)]),(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]));}
8574 /* Line 1806 of yacc.c */
8576 { _p
->onClassConstant((yyval
),0,(yyvsp
[(2) - (4)]),(yyvsp
[(4) - (4)]));}
8581 /* Line 1806 of yacc.c */
8583 { (yyval
) = (yyvsp
[(2) - (3)]);}
8588 /* Line 1806 of yacc.c */
8590 { _p
->onNewObject((yyval
), (yyvsp
[(2) - (3)]), (yyvsp
[(3) - (3)]));}
8595 /* Line 1806 of yacc.c */
8597 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_CLONE
,1);}
8602 /* Line 1806 of yacc.c */
8604 { (yyval
) = (yyvsp
[(1) - (1)]);}
8609 /* Line 1806 of yacc.c */
8611 { (yyval
) = (yyvsp
[(1) - (1)]);}
8616 /* Line 1806 of yacc.c */
8618 { (yyval
) = (yyvsp
[(2) - (3)]);}
8623 /* Line 1806 of yacc.c */
8625 { _p
->onExprListElem((yyval
), &(yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]));}
8630 /* Line 1806 of yacc.c */
8632 { _p
->onExprListElem((yyval
), NULL
, (yyvsp
[(1) - (1)]));}
8637 /* Line 1806 of yacc.c */
8639 { (yyval
) = (yyvsp
[(1) - (1)]);}
8644 /* Line 1806 of yacc.c */
8651 /* Line 1806 of yacc.c */
8653 { _p
->onYield((yyval
), (yyvsp
[(2) - (2)]));}
8658 /* Line 1806 of yacc.c */
8660 { _p
->onYieldPair((yyval
), (yyvsp
[(2) - (4)]), (yyvsp
[(4) - (4)]));}
8665 /* Line 1806 of yacc.c */
8667 { _p
->onAssign((yyval
), (yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]), 0, true);}
8672 /* Line 1806 of yacc.c */
8674 { _p
->onListAssignment((yyval
), (yyvsp
[(3) - (6)]), &(yyvsp
[(6) - (6)]), true);}
8679 /* Line 1806 of yacc.c */
8681 { _p
->onAwait((yyval
), (yyvsp
[(2) - (2)])); }
8686 /* Line 1806 of yacc.c */
8688 { _p
->onAssign((yyval
), (yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]), 0, true);}
8693 /* Line 1806 of yacc.c */
8695 { _p
->onListAssignment((yyval
), (yyvsp
[(3) - (6)]), &(yyvsp
[(6) - (6)]), true);}
8700 /* Line 1806 of yacc.c */
8702 { (yyval
) = (yyvsp
[(1) - (1)]);}
8707 /* Line 1806 of yacc.c */
8709 { (yyval
) = (yyvsp
[(1) - (1)]);}
8714 /* Line 1806 of yacc.c */
8716 { (yyval
) = (yyvsp
[(1) - (1)]);}
8721 /* Line 1806 of yacc.c */
8723 { _p
->onListAssignment((yyval
), (yyvsp
[(3) - (6)]), &(yyvsp
[(6) - (6)]));}
8728 /* Line 1806 of yacc.c */
8730 { _p
->onAssign((yyval
), (yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]), 0);}
8735 /* Line 1806 of yacc.c */
8737 { _p
->onAssign((yyval
), (yyvsp
[(1) - (4)]), (yyvsp
[(4) - (4)]), 1);}
8742 /* Line 1806 of yacc.c */
8744 { _p
->onAssignNew((yyval
),(yyvsp
[(1) - (6)]),(yyvsp
[(5) - (6)]),(yyvsp
[(6) - (6)]));}
8749 /* Line 1806 of yacc.c */
8751 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_PLUS_EQUAL
);}
8756 /* Line 1806 of yacc.c */
8758 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_MINUS_EQUAL
);}
8763 /* Line 1806 of yacc.c */
8765 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_MUL_EQUAL
);}
8770 /* Line 1806 of yacc.c */
8772 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_DIV_EQUAL
);}
8777 /* Line 1806 of yacc.c */
8779 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_CONCAT_EQUAL
);}
8784 /* Line 1806 of yacc.c */
8786 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_MOD_EQUAL
);}
8791 /* Line 1806 of yacc.c */
8793 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_AND_EQUAL
);}
8798 /* Line 1806 of yacc.c */
8800 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_OR_EQUAL
);}
8805 /* Line 1806 of yacc.c */
8807 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_XOR_EQUAL
);}
8812 /* Line 1806 of yacc.c */
8814 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_SL_EQUAL
);}
8819 /* Line 1806 of yacc.c */
8821 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_SR_EQUAL
);}
8826 /* Line 1806 of yacc.c */
8828 { UEXP((yyval
),(yyvsp
[(1) - (2)]),T_INC
,0);}
8833 /* Line 1806 of yacc.c */
8835 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_INC
,1);}
8840 /* Line 1806 of yacc.c */
8842 { UEXP((yyval
),(yyvsp
[(1) - (2)]),T_DEC
,0);}
8847 /* Line 1806 of yacc.c */
8849 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_DEC
,1);}
8854 /* Line 1806 of yacc.c */
8856 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_BOOLEAN_OR
);}
8861 /* Line 1806 of yacc.c */
8863 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_BOOLEAN_AND
);}
8868 /* Line 1806 of yacc.c */
8870 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_LOGICAL_OR
);}
8875 /* Line 1806 of yacc.c */
8877 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_LOGICAL_AND
);}
8882 /* Line 1806 of yacc.c */
8884 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_LOGICAL_XOR
);}
8889 /* Line 1806 of yacc.c */
8891 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),'|');}
8896 /* Line 1806 of yacc.c */
8898 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),'&');}
8903 /* Line 1806 of yacc.c */
8905 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),'^');}
8910 /* Line 1806 of yacc.c */
8912 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),'.');}
8917 /* Line 1806 of yacc.c */
8919 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),'+');}
8924 /* Line 1806 of yacc.c */
8926 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),'-');}
8931 /* Line 1806 of yacc.c */
8933 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),'*');}
8938 /* Line 1806 of yacc.c */
8940 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),'/');}
8945 /* Line 1806 of yacc.c */
8947 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),'%');}
8952 /* Line 1806 of yacc.c */
8954 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_SL
);}
8959 /* Line 1806 of yacc.c */
8961 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_SR
);}
8966 /* Line 1806 of yacc.c */
8968 { UEXP((yyval
),(yyvsp
[(2) - (2)]),'+',1);}
8973 /* Line 1806 of yacc.c */
8975 { UEXP((yyval
),(yyvsp
[(2) - (2)]),'-',1);}
8980 /* Line 1806 of yacc.c */
8982 { UEXP((yyval
),(yyvsp
[(2) - (2)]),'!',1);}
8987 /* Line 1806 of yacc.c */
8989 { UEXP((yyval
),(yyvsp
[(2) - (2)]),'~',1);}
8994 /* Line 1806 of yacc.c */
8996 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_IS_IDENTICAL
);}
9001 /* Line 1806 of yacc.c */
9003 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_IS_NOT_IDENTICAL
);}
9008 /* Line 1806 of yacc.c */
9010 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_IS_EQUAL
);}
9015 /* Line 1806 of yacc.c */
9017 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_IS_NOT_EQUAL
);}
9022 /* Line 1806 of yacc.c */
9024 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),'<');}
9029 /* Line 1806 of yacc.c */
9031 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),
9032 T_IS_SMALLER_OR_EQUAL
);}
9037 /* Line 1806 of yacc.c */
9039 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),'>');}
9044 /* Line 1806 of yacc.c */
9046 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),
9047 T_IS_GREATER_OR_EQUAL
);}
9052 /* Line 1806 of yacc.c */
9054 { BEXP((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),T_INSTANCEOF
);}
9059 /* Line 1806 of yacc.c */
9061 { (yyval
) = (yyvsp
[(2) - (3)]);}
9066 /* Line 1806 of yacc.c */
9068 { _p
->onQOp((yyval
), (yyvsp
[(1) - (5)]), &(yyvsp
[(3) - (5)]), (yyvsp
[(5) - (5)]));}
9073 /* Line 1806 of yacc.c */
9075 { _p
->onQOp((yyval
), (yyvsp
[(1) - (4)]), 0, (yyvsp
[(4) - (4)]));}
9080 /* Line 1806 of yacc.c */
9082 { (yyval
) = (yyvsp
[(1) - (1)]);}
9087 /* Line 1806 of yacc.c */
9089 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_INT_CAST
,1);}
9094 /* Line 1806 of yacc.c */
9096 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_DOUBLE_CAST
,1);}
9101 /* Line 1806 of yacc.c */
9103 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_STRING_CAST
,1);}
9108 /* Line 1806 of yacc.c */
9110 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_ARRAY_CAST
,1);}
9115 /* Line 1806 of yacc.c */
9117 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_OBJECT_CAST
,1);}
9122 /* Line 1806 of yacc.c */
9124 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_BOOL_CAST
,1);}
9129 /* Line 1806 of yacc.c */
9131 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_UNSET_CAST
,1);}
9136 /* Line 1806 of yacc.c */
9138 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_EXIT
,1);}
9143 /* Line 1806 of yacc.c */
9145 { UEXP((yyval
),(yyvsp
[(2) - (2)]),'@',1);}
9150 /* Line 1806 of yacc.c */
9152 { (yyval
) = (yyvsp
[(1) - (1)]); }
9157 /* Line 1806 of yacc.c */
9159 { (yyval
) = (yyvsp
[(1) - (1)]); }
9164 /* Line 1806 of yacc.c */
9166 { (yyval
) = (yyvsp
[(1) - (1)]); }
9171 /* Line 1806 of yacc.c */
9173 { _p
->onEncapsList((yyval
),'`',(yyvsp
[(2) - (3)]));}
9178 /* Line 1806 of yacc.c */
9180 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_PRINT
,1);}
9185 /* Line 1806 of yacc.c */
9187 { (yyval
) = (yyvsp
[(1) - (1)]);}
9192 /* Line 1806 of yacc.c */
9194 { (yyval
) = (yyvsp
[(1) - (1)]);}
9199 /* Line 1806 of yacc.c */
9201 { (yyval
) = (yyvsp
[(1) - (1)]);}
9206 /* Line 1806 of yacc.c */
9208 { (yyval
) = (yyvsp
[(3) - (5)]);}
9213 /* Line 1806 of yacc.c */
9220 /* Line 1806 of yacc.c */
9223 _p
->onNewLabelScope(true);
9224 _p
->onClosureStart(t
);
9225 _p
->pushLabelInfo(); }
9230 /* Line 1806 of yacc.c */
9232 { _p
->finishStatement((yyvsp
[(10) - (11)]), (yyvsp
[(10) - (11)])); (yyvsp
[(10) - (11)]) = 1;
9233 (yyval
) = _p
->onClosure(ClosureType::Long
,
9235 (yyvsp
[(2) - (11)]),(yyvsp
[(5) - (11)]),(yyvsp
[(8) - (11)]),(yyvsp
[(10) - (11)]));
9237 _p
->onCompleteLabelScope(true);}
9242 /* Line 1806 of yacc.c */
9245 _p
->onNewLabelScope(true);
9246 _p
->onClosureStart(t
);
9247 _p
->pushLabelInfo(); }
9252 /* Line 1806 of yacc.c */
9254 { _p
->finishStatement((yyvsp
[(11) - (12)]), (yyvsp
[(11) - (12)])); (yyvsp
[(11) - (12)]) = 1;
9255 (yyval
) = _p
->onClosure(ClosureType::Long
,
9256 &(yyvsp
[(1) - (12)]),
9257 (yyvsp
[(3) - (12)]),(yyvsp
[(6) - (12)]),(yyvsp
[(9) - (12)]),(yyvsp
[(11) - (12)]));
9259 _p
->onCompleteLabelScope(true);}
9264 /* Line 1806 of yacc.c */
9266 { _p
->pushFuncLocation();
9268 _p
->onNewLabelScope(true);
9269 _p
->onClosureStart(t
);
9270 _p
->pushLabelInfo();
9272 _p
->onParam((yyvsp
[(1) - (1)]),NULL
,u
,(yyvsp
[(1) - (1)]),0,
9278 /* Line 1806 of yacc.c */
9281 _p
->finishStatement((yyvsp
[(3) - (3)]), (yyvsp
[(3) - (3)])); (yyvsp
[(3) - (3)]) = 1;
9282 (yyval
) = _p
->onClosure(ClosureType::Short
,
9284 v
,(yyvsp
[(1) - (3)]),w
,(yyvsp
[(3) - (3)]));
9286 _p
->onCompleteLabelScope(true);}
9291 /* Line 1806 of yacc.c */
9293 { _p
->pushFuncLocation();
9295 _p
->onNewLabelScope(true);
9296 _p
->onClosureStart(t
);
9297 _p
->pushLabelInfo();}
9302 /* Line 1806 of yacc.c */
9305 _p
->finishStatement((yyvsp
[(6) - (6)]), (yyvsp
[(6) - (6)])); (yyvsp
[(6) - (6)]) = 1;
9306 (yyval
) = _p
->onClosure(ClosureType::Short
,
9308 u
,(yyvsp
[(3) - (6)]),v
,(yyvsp
[(6) - (6)]));
9310 _p
->onCompleteLabelScope(true);}
9315 /* Line 1806 of yacc.c */
9317 { (yyval
) = _p
->onExprForLambda((yyvsp
[(2) - (2)]));}
9322 /* Line 1806 of yacc.c */
9324 { (yyval
) = (yyvsp
[(3) - (4)]);}
9329 /* Line 1806 of yacc.c */
9331 { validate_shape_keyname((yyvsp
[(1) - (1)]), _p
);
9332 _p
->onScalar((yyval
), T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[(1) - (1)])); }
9337 /* Line 1806 of yacc.c */
9339 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (5)]),&(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]),0); }
9344 /* Line 1806 of yacc.c */
9346 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),0); }
9351 /* Line 1806 of yacc.c */
9353 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (5)]),&(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]),0); }
9358 /* Line 1806 of yacc.c */
9360 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),0); }
9365 /* Line 1806 of yacc.c */
9367 { (yyval
) = (yyvsp
[(1) - (2)]); }
9372 /* Line 1806 of yacc.c */
9374 { (yyval
).reset(); }
9379 /* Line 1806 of yacc.c */
9381 { (yyval
) = (yyvsp
[(1) - (2)]); }
9386 /* Line 1806 of yacc.c */
9388 { (yyval
).reset(); }
9393 /* Line 1806 of yacc.c */
9395 { _p
->onArray((yyval
), (yyvsp
[(3) - (4)]), T_ARRAY
);}
9400 /* Line 1806 of yacc.c */
9402 { _p
->onArray((yyval
),(yyvsp
[(3) - (4)]),T_ARRAY
);}
9407 /* Line 1806 of yacc.c */
9409 { _p
->onArray((yyval
),(yyvsp
[(2) - (3)]),T_ARRAY
);}
9414 /* Line 1806 of yacc.c */
9417 _p
->onName(t
,(yyvsp
[(1) - (4)]),Parser::StringName
);
9418 BEXP((yyval
),t
,(yyvsp
[(3) - (4)]),T_COLLECTION
);}
9423 /* Line 1806 of yacc.c */
9426 _p
->onName(t
,(yyvsp
[(1) - (4)]),Parser::StringName
);
9427 BEXP((yyval
),t
,(yyvsp
[(3) - (4)]),T_COLLECTION
);}
9432 /* Line 1806 of yacc.c */
9434 { _p
->onRefDim((yyval
), (yyvsp
[(1) - (4)]), (yyvsp
[(3) - (4)]));}
9439 /* Line 1806 of yacc.c */
9441 { _p
->onRefDim((yyval
), (yyvsp
[(1) - (4)]), (yyvsp
[(3) - (4)]));}
9446 /* Line 1806 of yacc.c */
9448 { (yyval
) = (yyvsp
[(1) - (1)]);}
9453 /* Line 1806 of yacc.c */
9455 { (yyval
) = (yyvsp
[(1) - (1)]);}
9460 /* Line 1806 of yacc.c */
9462 { (yyval
) = (yyvsp
[(2) - (3)]);}
9467 /* Line 1806 of yacc.c */
9469 { _p
->onQuery((yyval
), (yyvsp
[(1) - (2)]), (yyvsp
[(2) - (2)])); }
9474 /* Line 1806 of yacc.c */
9476 { _p
->onAssign((yyval
), (yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]), 0, true);}
9481 /* Line 1806 of yacc.c */
9483 { _p
->onFromClause((yyval
), (yyvsp
[(2) - (4)]), (yyvsp
[(4) - (4)])); }
9488 /* Line 1806 of yacc.c */
9490 { _p
->onQueryBody((yyval
), &(yyvsp
[(1) - (2)]), (yyvsp
[(2) - (2)]), NULL
); }
9495 /* Line 1806 of yacc.c */
9497 { _p
->onQueryBody((yyval
), &(yyvsp
[(1) - (3)]), (yyvsp
[(2) - (3)]), &(yyvsp
[(3) - (3)])); }
9502 /* Line 1806 of yacc.c */
9504 { _p
->onQueryBody((yyval
), NULL
, (yyvsp
[(1) - (1)]), NULL
); }
9509 /* Line 1806 of yacc.c */
9511 { _p
->onQueryBody((yyval
), NULL
, (yyvsp
[(1) - (2)]), &(yyvsp
[(2) - (2)])); }
9516 /* Line 1806 of yacc.c */
9518 { _p
->onQueryBodyClause((yyval
), NULL
, (yyvsp
[(1) - (1)])); }
9523 /* Line 1806 of yacc.c */
9525 { _p
->onQueryBodyClause((yyval
), &(yyvsp
[(1) - (2)]), (yyvsp
[(2) - (2)])); }
9530 /* Line 1806 of yacc.c */
9532 { (yyval
) = (yyvsp
[(1) - (1)]);}
9537 /* Line 1806 of yacc.c */
9539 { (yyval
) = (yyvsp
[(1) - (1)]);}
9544 /* Line 1806 of yacc.c */
9546 { (yyval
) = (yyvsp
[(1) - (1)]);}
9551 /* Line 1806 of yacc.c */
9553 { (yyval
) = (yyvsp
[(1) - (1)]);}
9558 /* Line 1806 of yacc.c */
9560 { (yyval
) = (yyvsp
[(1) - (1)]);}
9565 /* Line 1806 of yacc.c */
9567 { (yyval
) = (yyvsp
[(1) - (1)]);}
9572 /* Line 1806 of yacc.c */
9574 { _p
->onFromClause((yyval
), (yyvsp
[(2) - (4)]), (yyvsp
[(4) - (4)])); }
9579 /* Line 1806 of yacc.c */
9581 { _p
->onLetClause((yyval
), (yyvsp
[(2) - (4)]), (yyvsp
[(4) - (4)])); }
9586 /* Line 1806 of yacc.c */
9588 { _p
->onWhereClause((yyval
), (yyvsp
[(2) - (2)])); }
9593 /* Line 1806 of yacc.c */
9595 { _p
->onJoinClause((yyval
), (yyvsp
[(2) - (8)]), (yyvsp
[(4) - (8)]), (yyvsp
[(6) - (8)]), (yyvsp
[(8) - (8)])); }
9600 /* Line 1806 of yacc.c */
9602 { _p
->onJoinIntoClause((yyval
), (yyvsp
[(2) - (10)]), (yyvsp
[(4) - (10)]), (yyvsp
[(6) - (10)]), (yyvsp
[(8) - (10)]), (yyvsp
[(10) - (10)])); }
9607 /* Line 1806 of yacc.c */
9609 { _p
->onOrderbyClause((yyval
), (yyvsp
[(2) - (2)])); }
9614 /* Line 1806 of yacc.c */
9616 { _p
->onOrdering((yyval
), NULL
, (yyvsp
[(1) - (1)])); }
9621 /* Line 1806 of yacc.c */
9623 { _p
->onOrdering((yyval
), &(yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)])); }
9628 /* Line 1806 of yacc.c */
9630 { _p
->onOrderingExpr((yyval
), (yyvsp
[(1) - (1)]), NULL
); }
9635 /* Line 1806 of yacc.c */
9637 { _p
->onOrderingExpr((yyval
), (yyvsp
[(1) - (2)]), &(yyvsp
[(2) - (2)])); }
9642 /* Line 1806 of yacc.c */
9644 { (yyval
) = (yyvsp
[(1) - (1)]);}
9649 /* Line 1806 of yacc.c */
9651 { (yyval
) = (yyvsp
[(1) - (1)]);}
9656 /* Line 1806 of yacc.c */
9658 { (yyval
) = (yyvsp
[(1) - (1)]);}
9663 /* Line 1806 of yacc.c */
9665 { (yyval
) = (yyvsp
[(1) - (1)]);}
9670 /* Line 1806 of yacc.c */
9672 { _p
->onSelectClause((yyval
), (yyvsp
[(2) - (2)])); }
9677 /* Line 1806 of yacc.c */
9679 { _p
->onGroupClause((yyval
), (yyvsp
[(2) - (4)]), (yyvsp
[(4) - (4)])); }
9684 /* Line 1806 of yacc.c */
9686 { _p
->onIntoClause((yyval
), (yyvsp
[(2) - (3)]), (yyvsp
[(3) - (3)])); }
9691 /* Line 1806 of yacc.c */
9693 { _p
->onClosureParam((yyval
),&(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),0);}
9698 /* Line 1806 of yacc.c */
9700 { _p
->onClosureParam((yyval
),&(yyvsp
[(1) - (4)]),(yyvsp
[(4) - (4)]),1);}
9705 /* Line 1806 of yacc.c */
9707 { _p
->onClosureParam((yyval
), 0,(yyvsp
[(1) - (1)]),0);}
9712 /* Line 1806 of yacc.c */
9714 { _p
->onClosureParam((yyval
), 0,(yyvsp
[(2) - (2)]),1);}
9719 /* Line 1806 of yacc.c */
9721 { xhp_tag(_p
,(yyval
),(yyvsp
[(2) - (4)]),(yyvsp
[(3) - (4)]));}
9726 /* Line 1806 of yacc.c */
9728 { Token t1
; _p
->onArray(t1
,(yyvsp
[(1) - (2)]));
9729 Token t2
; _p
->onArray(t2
,(yyvsp
[(2) - (2)]));
9730 Token file
; scalar_file(_p
, file
);
9731 Token line
; scalar_line(_p
, line
);
9732 _p
->onCallParam((yyvsp
[(1) - (2)]),NULL
,t1
,0);
9733 _p
->onCallParam((yyval
), &(yyvsp
[(1) - (2)]),t2
,0);
9734 _p
->onCallParam((yyvsp
[(1) - (2)]), &(yyvsp
[(1) - (2)]),file
,0);
9735 _p
->onCallParam((yyvsp
[(1) - (2)]), &(yyvsp
[(1) - (2)]),line
,0);
9736 (yyval
).setText("");}
9741 /* Line 1806 of yacc.c */
9743 { Token file
; scalar_file(_p
, file
);
9744 Token line
; scalar_line(_p
, line
);
9745 _p
->onArray((yyvsp
[(4) - (6)]),(yyvsp
[(1) - (6)]));
9746 _p
->onArray((yyvsp
[(5) - (6)]),(yyvsp
[(3) - (6)]));
9747 _p
->onCallParam((yyvsp
[(2) - (6)]),NULL
,(yyvsp
[(4) - (6)]),0);
9748 _p
->onCallParam((yyval
), &(yyvsp
[(2) - (6)]),(yyvsp
[(5) - (6)]),0);
9749 _p
->onCallParam((yyvsp
[(2) - (6)]), &(yyvsp
[(2) - (6)]),file
,0);
9750 _p
->onCallParam((yyvsp
[(2) - (6)]), &(yyvsp
[(2) - (6)]),line
,0);
9751 (yyval
).setText((yyvsp
[(6) - (6)]).text());}
9756 /* Line 1806 of yacc.c */
9758 { (yyval
).reset(); (yyval
).setText("");}
9763 /* Line 1806 of yacc.c */
9765 { (yyval
).reset(); (yyval
).setText((yyvsp
[(1) - (1)]));}
9770 /* Line 1806 of yacc.c */
9772 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (4)]),&(yyvsp
[(2) - (4)]),(yyvsp
[(4) - (4)]),0);}
9777 /* Line 1806 of yacc.c */
9784 /* Line 1806 of yacc.c */
9786 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (2)]),0,(yyvsp
[(2) - (2)]),0);}
9791 /* Line 1806 of yacc.c */
9798 /* Line 1806 of yacc.c */
9800 { _p
->onScalar((yyval
),
9801 T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[(1) - (1)]));}
9806 /* Line 1806 of yacc.c */
9808 { (yyvsp
[(1) - (1)]).xhpDecode();
9809 _p
->onScalar((yyval
),
9810 T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[(1) - (1)]));}
9815 /* Line 1806 of yacc.c */
9817 { (yyval
) = (yyvsp
[(2) - (3)]);}
9822 /* Line 1806 of yacc.c */
9825 if ((yyvsp
[(1) - (1)]).htmlTrim()) {
9826 (yyvsp
[(1) - (1)]).xhpDecode();
9827 _p
->onScalar((yyval
),
9828 T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[(1) - (1)]));
9835 /* Line 1806 of yacc.c */
9837 { (yyval
) = (yyvsp
[(2) - (3)]); }
9842 /* Line 1806 of yacc.c */
9844 { (yyval
) = (yyvsp
[(1) - (1)]); }
9849 /* Line 1806 of yacc.c */
9851 { (yyval
) = (yyvsp
[(1) - (1)]);}
9856 /* Line 1806 of yacc.c */
9858 { (yyval
) = (yyvsp
[(1) - (3)]) + ":" + (yyvsp
[(3) - (3)]);}
9863 /* Line 1806 of yacc.c */
9865 { (yyval
) = (yyvsp
[(1) - (3)]) + "-" + (yyvsp
[(3) - (3)]);}
9870 /* Line 1806 of yacc.c */
9872 { (yyval
) = (yyvsp
[(1) - (1)]);}
9877 /* Line 1806 of yacc.c */
9879 { (yyval
) = (yyvsp
[(1) - (1)]);}
9884 /* Line 1806 of yacc.c */
9886 { (yyval
) = (yyvsp
[(1) - (1)]);}
9891 /* Line 1806 of yacc.c */
9893 { (yyval
) = (yyvsp
[(1) - (1)]);}
9898 /* Line 1806 of yacc.c */
9900 { (yyval
) = (yyvsp
[(1) - (1)]);}
9905 /* Line 1806 of yacc.c */
9907 { (yyval
) = (yyvsp
[(1) - (1)]);}
9912 /* Line 1806 of yacc.c */
9914 { (yyval
) = (yyvsp
[(1) - (1)]);}
9919 /* Line 1806 of yacc.c */
9921 { (yyval
) = (yyvsp
[(1) - (1)]);}
9926 /* Line 1806 of yacc.c */
9928 { (yyval
) = (yyvsp
[(1) - (1)]);}
9933 /* Line 1806 of yacc.c */
9935 { (yyval
) = (yyvsp
[(1) - (1)]);}
9940 /* Line 1806 of yacc.c */
9942 { (yyval
) = (yyvsp
[(1) - (1)]);}
9947 /* Line 1806 of yacc.c */
9949 { (yyval
) = (yyvsp
[(1) - (1)]);}
9954 /* Line 1806 of yacc.c */
9956 { (yyval
) = (yyvsp
[(1) - (1)]);}
9961 /* Line 1806 of yacc.c */
9963 { (yyval
) = (yyvsp
[(1) - (1)]);}
9968 /* Line 1806 of yacc.c */
9970 { (yyval
) = (yyvsp
[(1) - (1)]);}
9975 /* Line 1806 of yacc.c */
9977 { (yyval
) = (yyvsp
[(1) - (1)]);}
9982 /* Line 1806 of yacc.c */
9984 { (yyval
) = (yyvsp
[(1) - (1)]);}
9989 /* Line 1806 of yacc.c */
9991 { (yyval
) = (yyvsp
[(1) - (1)]);}
9996 /* Line 1806 of yacc.c */
9998 { (yyval
) = (yyvsp
[(1) - (1)]);}
10003 /* Line 1806 of yacc.c */
10004 #line 2035 "hphp.y"
10005 { (yyval
) = (yyvsp
[(1) - (1)]);}
10010 /* Line 1806 of yacc.c */
10011 #line 2036 "hphp.y"
10012 { (yyval
) = (yyvsp
[(1) - (1)]);}
10017 /* Line 1806 of yacc.c */
10018 #line 2037 "hphp.y"
10019 { (yyval
) = (yyvsp
[(1) - (1)]);}
10024 /* Line 1806 of yacc.c */
10025 #line 2038 "hphp.y"
10026 { (yyval
) = (yyvsp
[(1) - (1)]);}
10031 /* Line 1806 of yacc.c */
10032 #line 2039 "hphp.y"
10033 { (yyval
) = (yyvsp
[(1) - (1)]);}
10038 /* Line 1806 of yacc.c */
10039 #line 2040 "hphp.y"
10040 { (yyval
) = (yyvsp
[(1) - (1)]);}
10045 /* Line 1806 of yacc.c */
10046 #line 2041 "hphp.y"
10047 { (yyval
) = (yyvsp
[(1) - (1)]);}
10052 /* Line 1806 of yacc.c */
10053 #line 2042 "hphp.y"
10054 { (yyval
) = (yyvsp
[(1) - (1)]);}
10059 /* Line 1806 of yacc.c */
10060 #line 2043 "hphp.y"
10061 { (yyval
) = (yyvsp
[(1) - (1)]);}
10066 /* Line 1806 of yacc.c */
10067 #line 2044 "hphp.y"
10068 { (yyval
) = (yyvsp
[(1) - (1)]);}
10073 /* Line 1806 of yacc.c */
10074 #line 2045 "hphp.y"
10075 { (yyval
) = (yyvsp
[(1) - (1)]);}
10080 /* Line 1806 of yacc.c */
10081 #line 2046 "hphp.y"
10082 { (yyval
) = (yyvsp
[(1) - (1)]);}
10087 /* Line 1806 of yacc.c */
10088 #line 2047 "hphp.y"
10089 { (yyval
) = (yyvsp
[(1) - (1)]);}
10094 /* Line 1806 of yacc.c */
10095 #line 2048 "hphp.y"
10096 { (yyval
) = (yyvsp
[(1) - (1)]);}
10101 /* Line 1806 of yacc.c */
10102 #line 2049 "hphp.y"
10103 { (yyval
) = (yyvsp
[(1) - (1)]);}
10108 /* Line 1806 of yacc.c */
10109 #line 2050 "hphp.y"
10110 { (yyval
) = (yyvsp
[(1) - (1)]);}
10115 /* Line 1806 of yacc.c */
10116 #line 2051 "hphp.y"
10117 { (yyval
) = (yyvsp
[(1) - (1)]);}
10122 /* Line 1806 of yacc.c */
10123 #line 2052 "hphp.y"
10124 { (yyval
) = (yyvsp
[(1) - (1)]);}
10129 /* Line 1806 of yacc.c */
10130 #line 2053 "hphp.y"
10131 { (yyval
) = (yyvsp
[(1) - (1)]);}
10136 /* Line 1806 of yacc.c */
10137 #line 2054 "hphp.y"
10138 { (yyval
) = (yyvsp
[(1) - (1)]);}
10143 /* Line 1806 of yacc.c */
10144 #line 2055 "hphp.y"
10145 { (yyval
) = (yyvsp
[(1) - (1)]);}
10150 /* Line 1806 of yacc.c */
10151 #line 2056 "hphp.y"
10152 { (yyval
) = (yyvsp
[(1) - (1)]);}
10157 /* Line 1806 of yacc.c */
10158 #line 2057 "hphp.y"
10159 { (yyval
) = (yyvsp
[(1) - (1)]);}
10164 /* Line 1806 of yacc.c */
10165 #line 2058 "hphp.y"
10166 { (yyval
) = (yyvsp
[(1) - (1)]);}
10171 /* Line 1806 of yacc.c */
10172 #line 2059 "hphp.y"
10173 { (yyval
) = (yyvsp
[(1) - (1)]);}
10178 /* Line 1806 of yacc.c */
10179 #line 2060 "hphp.y"
10180 { (yyval
) = (yyvsp
[(1) - (1)]);}
10185 /* Line 1806 of yacc.c */
10186 #line 2061 "hphp.y"
10187 { (yyval
) = (yyvsp
[(1) - (1)]);}
10192 /* Line 1806 of yacc.c */
10193 #line 2062 "hphp.y"
10194 { (yyval
) = (yyvsp
[(1) - (1)]);}
10199 /* Line 1806 of yacc.c */
10200 #line 2063 "hphp.y"
10201 { (yyval
) = (yyvsp
[(1) - (1)]);}
10206 /* Line 1806 of yacc.c */
10207 #line 2064 "hphp.y"
10208 { (yyval
) = (yyvsp
[(1) - (1)]);}
10213 /* Line 1806 of yacc.c */
10214 #line 2065 "hphp.y"
10215 { (yyval
) = (yyvsp
[(1) - (1)]);}
10220 /* Line 1806 of yacc.c */
10221 #line 2066 "hphp.y"
10222 { (yyval
) = (yyvsp
[(1) - (1)]);}
10227 /* Line 1806 of yacc.c */
10228 #line 2067 "hphp.y"
10229 { (yyval
) = (yyvsp
[(1) - (1)]);}
10234 /* Line 1806 of yacc.c */
10235 #line 2068 "hphp.y"
10236 { (yyval
) = (yyvsp
[(1) - (1)]);}
10241 /* Line 1806 of yacc.c */
10242 #line 2069 "hphp.y"
10243 { (yyval
) = (yyvsp
[(1) - (1)]);}
10248 /* Line 1806 of yacc.c */
10249 #line 2070 "hphp.y"
10250 { (yyval
) = (yyvsp
[(1) - (1)]);}
10255 /* Line 1806 of yacc.c */
10256 #line 2071 "hphp.y"
10257 { (yyval
) = (yyvsp
[(1) - (1)]);}
10262 /* Line 1806 of yacc.c */
10263 #line 2072 "hphp.y"
10264 { (yyval
) = (yyvsp
[(1) - (1)]);}
10269 /* Line 1806 of yacc.c */
10270 #line 2073 "hphp.y"
10271 { (yyval
) = (yyvsp
[(1) - (1)]);}
10276 /* Line 1806 of yacc.c */
10277 #line 2074 "hphp.y"
10278 { (yyval
) = (yyvsp
[(1) - (1)]);}
10283 /* Line 1806 of yacc.c */
10284 #line 2075 "hphp.y"
10285 { (yyval
) = (yyvsp
[(1) - (1)]);}
10290 /* Line 1806 of yacc.c */
10291 #line 2076 "hphp.y"
10292 { (yyval
) = (yyvsp
[(1) - (1)]);}
10297 /* Line 1806 of yacc.c */
10298 #line 2077 "hphp.y"
10299 { (yyval
) = (yyvsp
[(1) - (1)]);}
10304 /* Line 1806 of yacc.c */
10305 #line 2078 "hphp.y"
10306 { (yyval
) = (yyvsp
[(1) - (1)]);}
10311 /* Line 1806 of yacc.c */
10312 #line 2079 "hphp.y"
10313 { (yyval
) = (yyvsp
[(1) - (1)]);}
10318 /* Line 1806 of yacc.c */
10319 #line 2080 "hphp.y"
10320 { (yyval
) = (yyvsp
[(1) - (1)]);}
10325 /* Line 1806 of yacc.c */
10326 #line 2081 "hphp.y"
10327 { (yyval
) = (yyvsp
[(1) - (1)]);}
10332 /* Line 1806 of yacc.c */
10333 #line 2082 "hphp.y"
10334 { (yyval
) = (yyvsp
[(1) - (1)]);}
10339 /* Line 1806 of yacc.c */
10340 #line 2083 "hphp.y"
10341 { (yyval
) = (yyvsp
[(1) - (1)]);}
10346 /* Line 1806 of yacc.c */
10347 #line 2084 "hphp.y"
10348 { (yyval
) = (yyvsp
[(1) - (1)]);}
10353 /* Line 1806 of yacc.c */
10354 #line 2085 "hphp.y"
10355 { (yyval
) = (yyvsp
[(1) - (1)]);}
10360 /* Line 1806 of yacc.c */
10361 #line 2086 "hphp.y"
10362 { (yyval
) = (yyvsp
[(1) - (1)]);}
10367 /* Line 1806 of yacc.c */
10368 #line 2087 "hphp.y"
10369 { (yyval
) = (yyvsp
[(1) - (1)]);}
10374 /* Line 1806 of yacc.c */
10375 #line 2088 "hphp.y"
10376 { (yyval
) = (yyvsp
[(1) - (1)]);}
10381 /* Line 1806 of yacc.c */
10382 #line 2089 "hphp.y"
10383 { (yyval
) = (yyvsp
[(1) - (1)]);}
10388 /* Line 1806 of yacc.c */
10389 #line 2090 "hphp.y"
10390 { (yyval
) = (yyvsp
[(1) - (1)]);}
10395 /* Line 1806 of yacc.c */
10396 #line 2091 "hphp.y"
10397 { (yyval
) = (yyvsp
[(1) - (1)]);}
10402 /* Line 1806 of yacc.c */
10403 #line 2092 "hphp.y"
10404 { (yyval
) = (yyvsp
[(1) - (1)]);}
10409 /* Line 1806 of yacc.c */
10410 #line 2093 "hphp.y"
10411 { (yyval
) = (yyvsp
[(1) - (1)]);}
10416 /* Line 1806 of yacc.c */
10417 #line 2094 "hphp.y"
10418 { (yyval
) = (yyvsp
[(1) - (1)]);}
10423 /* Line 1806 of yacc.c */
10424 #line 2095 "hphp.y"
10425 { (yyval
) = (yyvsp
[(1) - (1)]);}
10430 /* Line 1806 of yacc.c */
10431 #line 2100 "hphp.y"
10432 { _p
->onCall((yyval
),0,(yyvsp
[(1) - (4)]),(yyvsp
[(3) - (4)]),NULL
);}
10437 /* Line 1806 of yacc.c */
10438 #line 2104 "hphp.y"
10439 { (yyval
) = (yyvsp
[(1) - (1)]);}
10444 /* Line 1806 of yacc.c */
10445 #line 2105 "hphp.y"
10446 { (yyvsp
[(1) - (1)]).xhpLabel(); (yyval
) = (yyvsp
[(1) - (1)]);}
10451 /* Line 1806 of yacc.c */
10452 #line 2108 "hphp.y"
10453 { _p
->onName((yyval
),(yyvsp
[(1) - (1)]),Parser::StringName
);}
10458 /* Line 1806 of yacc.c */
10459 #line 2109 "hphp.y"
10460 { _p
->onName((yyval
),(yyvsp
[(1) - (1)]),Parser::StaticName
);}
10465 /* Line 1806 of yacc.c */
10466 #line 2110 "hphp.y"
10467 { _p
->onName((yyval
),(yyvsp
[(1) - (1)]),
10468 Parser::StaticClassExprName
);}
10473 /* Line 1806 of yacc.c */
10474 #line 2114 "hphp.y"
10475 { _p
->onName((yyval
),(yyvsp
[(1) - (1)]),Parser::StringName
);}
10480 /* Line 1806 of yacc.c */
10481 #line 2115 "hphp.y"
10482 { _p
->onName((yyval
),(yyvsp
[(1) - (1)]),Parser::StaticName
);}
10487 /* Line 1806 of yacc.c */
10488 #line 2116 "hphp.y"
10489 { _p
->onName((yyval
),(yyvsp
[(1) - (1)]),Parser::ExprName
);}
10494 /* Line 1806 of yacc.c */
10495 #line 2120 "hphp.y"
10496 { (yyval
).reset();}
10501 /* Line 1806 of yacc.c */
10502 #line 2121 "hphp.y"
10503 { (yyval
) = (yyvsp
[(1) - (1)]);}
10508 /* Line 1806 of yacc.c */
10509 #line 2122 "hphp.y"
10510 { (yyval
).reset();}
10515 /* Line 1806 of yacc.c */
10516 #line 2126 "hphp.y"
10517 { (yyval
).reset();}
10522 /* Line 1806 of yacc.c */
10523 #line 2127 "hphp.y"
10524 { _p
->addEncap((yyval
), NULL
, (yyvsp
[(1) - (1)]), 0);}
10529 /* Line 1806 of yacc.c */
10530 #line 2128 "hphp.y"
10531 { (yyval
) = (yyvsp
[(1) - (1)]);}
10536 /* Line 1806 of yacc.c */
10537 #line 2132 "hphp.y"
10538 { (yyval
) = (yyvsp
[(2) - (3)]);}
10543 /* Line 1806 of yacc.c */
10544 #line 2133 "hphp.y"
10545 { (yyval
).reset();}
10550 /* Line 1806 of yacc.c */
10551 #line 2137 "hphp.y"
10552 { _p
->onScalar((yyval
), T_LNUMBER
, (yyvsp
[(1) - (1)]));}
10557 /* Line 1806 of yacc.c */
10558 #line 2138 "hphp.y"
10559 { _p
->onScalar((yyval
), T_DNUMBER
, (yyvsp
[(1) - (1)]));}
10564 /* Line 1806 of yacc.c */
10565 #line 2139 "hphp.y"
10566 { _p
->onScalar((yyval
),
10567 T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[(1) - (1)]));}
10572 /* Line 1806 of yacc.c */
10573 #line 2141 "hphp.y"
10574 { _p
->onScalar((yyval
), T_LINE
, (yyvsp
[(1) - (1)]));}
10579 /* Line 1806 of yacc.c */
10580 #line 2142 "hphp.y"
10581 { _p
->onScalar((yyval
), T_FILE
, (yyvsp
[(1) - (1)]));}
10586 /* Line 1806 of yacc.c */
10587 #line 2143 "hphp.y"
10588 { _p
->onScalar((yyval
), T_DIR
, (yyvsp
[(1) - (1)]));}
10593 /* Line 1806 of yacc.c */
10594 #line 2144 "hphp.y"
10595 { _p
->onScalar((yyval
), T_CLASS_C
, (yyvsp
[(1) - (1)]));}
10600 /* Line 1806 of yacc.c */
10601 #line 2145 "hphp.y"
10602 { _p
->onScalar((yyval
), T_TRAIT_C
, (yyvsp
[(1) - (1)]));}
10607 /* Line 1806 of yacc.c */
10608 #line 2146 "hphp.y"
10609 { _p
->onScalar((yyval
), T_METHOD_C
, (yyvsp
[(1) - (1)]));}
10614 /* Line 1806 of yacc.c */
10615 #line 2147 "hphp.y"
10616 { _p
->onScalar((yyval
), T_FUNC_C
, (yyvsp
[(1) - (1)]));}
10621 /* Line 1806 of yacc.c */
10622 #line 2148 "hphp.y"
10623 { _p
->onScalar((yyval
), T_NS_C
, (yyvsp
[(1) - (1)]));}
10628 /* Line 1806 of yacc.c */
10629 #line 2149 "hphp.y"
10630 { _p
->onScalar((yyval
), T_COMPILER_HALT_OFFSET
, (yyvsp
[(1) - (1)]));}
10635 /* Line 1806 of yacc.c */
10636 #line 2152 "hphp.y"
10637 { _p
->onScalar((yyval
), T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[(2) - (3)]));}
10642 /* Line 1806 of yacc.c */
10643 #line 2154 "hphp.y"
10644 { (yyval
).setText(""); _p
->onScalar((yyval
), T_CONSTANT_ENCAPSED_STRING
, (yyval
));}
10649 /* Line 1806 of yacc.c */
10650 #line 2158 "hphp.y"
10651 { (yyval
) = (yyvsp
[(1) - (1)]);}
10656 /* Line 1806 of yacc.c */
10657 #line 2159 "hphp.y"
10658 { _p
->onConstantValue((yyval
), (yyvsp
[(1) - (1)]));}
10663 /* Line 1806 of yacc.c */
10664 #line 2160 "hphp.y"
10665 { UEXP((yyval
),(yyvsp
[(2) - (2)]),'+',1);}
10670 /* Line 1806 of yacc.c */
10671 #line 2161 "hphp.y"
10672 { UEXP((yyval
),(yyvsp
[(2) - (2)]),'-',1);}
10677 /* Line 1806 of yacc.c */
10678 #line 2163 "hphp.y"
10679 { _p
->onArray((yyval
),(yyvsp
[(3) - (4)]),T_ARRAY
); }
10684 /* Line 1806 of yacc.c */
10685 #line 2165 "hphp.y"
10686 { _p
->onArray((yyval
),(yyvsp
[(3) - (4)]),T_ARRAY
); }
10691 /* Line 1806 of yacc.c */
10692 #line 2166 "hphp.y"
10693 { _p
->onArray((yyval
),(yyvsp
[(2) - (3)]),T_ARRAY
); }
10698 /* Line 1806 of yacc.c */
10699 #line 2168 "hphp.y"
10700 { _p
->onArray((yyval
),(yyvsp
[(3) - (4)]),T_ARRAY
); }
10705 /* Line 1806 of yacc.c */
10706 #line 2169 "hphp.y"
10707 { (yyval
) = (yyvsp
[(1) - (1)]);}
10712 /* Line 1806 of yacc.c */
10713 #line 2170 "hphp.y"
10714 { (yyval
) = (yyvsp
[(1) - (1)]);}
10719 /* Line 1806 of yacc.c */
10720 #line 2176 "hphp.y"
10721 { _p
->onClassConst((yyval
), (yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]), 1);}
10726 /* Line 1806 of yacc.c */
10727 #line 2178 "hphp.y"
10728 { (yyvsp
[(1) - (3)]).xhpLabel();
10729 _p
->onClassConst((yyval
), (yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]), 1);}
10734 /* Line 1806 of yacc.c */
10735 #line 2183 "hphp.y"
10736 { _p
->onConstantValue((yyval
), (yyvsp
[(1) - (1)]));}
10741 /* Line 1806 of yacc.c */
10742 #line 2184 "hphp.y"
10743 { _p
->onConstantValue((yyval
), (yyvsp
[(1) - (1)]));}
10748 /* Line 1806 of yacc.c */
10749 #line 2185 "hphp.y"
10750 { (yyval
) = (yyvsp
[(1) - (1)]);}
10755 /* Line 1806 of yacc.c */
10756 #line 2186 "hphp.y"
10757 { (yyval
) = (yyvsp
[(1) - (1)]);}
10762 /* Line 1806 of yacc.c */
10763 #line 2187 "hphp.y"
10764 { _p
->onEncapsList((yyval
),'"',(yyvsp
[(2) - (3)]));}
10769 /* Line 1806 of yacc.c */
10770 #line 2188 "hphp.y"
10771 { _p
->onEncapsList((yyval
),'\'',(yyvsp
[(2) - (3)]));}
10776 /* Line 1806 of yacc.c */
10777 #line 2190 "hphp.y"
10778 { _p
->onEncapsList((yyval
),T_START_HEREDOC
,
10779 (yyvsp
[(2) - (3)]));}
10784 /* Line 1806 of yacc.c */
10785 #line 2195 "hphp.y"
10786 { (yyval
) = (yyvsp
[(1) - (2)]);}
10791 /* Line 1806 of yacc.c */
10792 #line 2196 "hphp.y"
10793 { (yyval
).reset();}
10798 /* Line 1806 of yacc.c */
10799 #line 2200 "hphp.y"
10800 { (yyval
).reset();}
10805 /* Line 1806 of yacc.c */
10806 #line 2201 "hphp.y"
10807 { (yyval
).reset();}
10812 /* Line 1806 of yacc.c */
10813 #line 2204 "hphp.y"
10814 { only_in_hh_syntax(_p
); (yyval
).reset();}
10819 /* Line 1806 of yacc.c */
10820 #line 2205 "hphp.y"
10821 { (yyval
).reset();}
10826 /* Line 1806 of yacc.c */
10827 #line 2211 "hphp.y"
10828 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (5)]),&(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]),0);}
10833 /* Line 1806 of yacc.c */
10834 #line 2213 "hphp.y"
10835 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (3)]), 0,(yyvsp
[(3) - (3)]),0);}
10840 /* Line 1806 of yacc.c */
10841 #line 2215 "hphp.y"
10842 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),0);}
10847 /* Line 1806 of yacc.c */
10848 #line 2216 "hphp.y"
10849 { _p
->onArrayPair((yyval
), 0, 0,(yyvsp
[(1) - (1)]),0);}
10854 /* Line 1806 of yacc.c */
10855 #line 2220 "hphp.y"
10856 { _p
->onScalar((yyval
), T_LNUMBER
, (yyvsp
[(1) - (1)]));}
10861 /* Line 1806 of yacc.c */
10862 #line 2221 "hphp.y"
10863 { _p
->onScalar((yyval
), T_DNUMBER
, (yyvsp
[(1) - (1)]));}
10868 /* Line 1806 of yacc.c */
10869 #line 2222 "hphp.y"
10870 { _p
->onScalar((yyval
),
10871 T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[(1) - (1)]));}
10876 /* Line 1806 of yacc.c */
10877 #line 2226 "hphp.y"
10878 { _p
->onScalar((yyval
), T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[(2) - (3)]));}
10883 /* Line 1806 of yacc.c */
10884 #line 2228 "hphp.y"
10885 { (yyval
).setText(""); _p
->onScalar((yyval
), T_CONSTANT_ENCAPSED_STRING
, (yyval
));}
10890 /* Line 1806 of yacc.c */
10891 #line 2231 "hphp.y"
10892 { _p
->onScalar((yyval
),T_LNUMBER
,(yyvsp
[(1) - (1)]));}
10897 /* Line 1806 of yacc.c */
10898 #line 2232 "hphp.y"
10899 { _p
->onScalar((yyval
),T_DNUMBER
,(yyvsp
[(1) - (1)]));}
10904 /* Line 1806 of yacc.c */
10905 #line 2233 "hphp.y"
10906 { constant_ae(_p
,(yyval
),(yyvsp
[(1) - (1)]));}
10911 /* Line 1806 of yacc.c */
10912 #line 2236 "hphp.y"
10913 { (yyval
) = (yyvsp
[(1) - (1)]);}
10918 /* Line 1806 of yacc.c */
10919 #line 2237 "hphp.y"
10920 { constant_ae(_p
,(yyval
),(yyvsp
[(1) - (1)]));}
10925 /* Line 1806 of yacc.c */
10926 #line 2238 "hphp.y"
10927 { UEXP((yyval
),(yyvsp
[(2) - (2)]),'+',1);}
10932 /* Line 1806 of yacc.c */
10933 #line 2239 "hphp.y"
10934 { UEXP((yyval
),(yyvsp
[(2) - (2)]),'-',1);}
10939 /* Line 1806 of yacc.c */
10940 #line 2241 "hphp.y"
10941 { _p
->onArray((yyval
),(yyvsp
[(3) - (4)]),T_ARRAY
);}
10946 /* Line 1806 of yacc.c */
10947 #line 2243 "hphp.y"
10948 { _p
->onArray((yyval
),(yyvsp
[(3) - (4)]),T_ARRAY
);}
10953 /* Line 1806 of yacc.c */
10954 #line 2244 "hphp.y"
10955 { _p
->onArray((yyval
),(yyvsp
[(2) - (3)]),T_ARRAY
);}
10960 /* Line 1806 of yacc.c */
10961 #line 2246 "hphp.y"
10962 { _p
->onArray((yyval
),(yyvsp
[(3) - (4)]),T_ARRAY
); }
10967 /* Line 1806 of yacc.c */
10968 #line 2251 "hphp.y"
10969 { (yyval
) = (yyvsp
[(1) - (2)]);}
10974 /* Line 1806 of yacc.c */
10975 #line 2252 "hphp.y"
10976 { (yyval
).reset();}
10981 /* Line 1806 of yacc.c */
10982 #line 2257 "hphp.y"
10983 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (5)]),&(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]),0);}
10988 /* Line 1806 of yacc.c */
10989 #line 2259 "hphp.y"
10990 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (3)]), 0,(yyvsp
[(3) - (3)]),0);}
10995 /* Line 1806 of yacc.c */
10996 #line 2261 "hphp.y"
10997 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),0);}
11002 /* Line 1806 of yacc.c */
11003 #line 2262 "hphp.y"
11004 { _p
->onArrayPair((yyval
), 0, 0,(yyvsp
[(1) - (1)]),0);}
11009 /* Line 1806 of yacc.c */
11010 #line 2266 "hphp.y"
11011 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (3)]), 0,(yyvsp
[(3) - (3)]),0);}
11016 /* Line 1806 of yacc.c */
11017 #line 2267 "hphp.y"
11018 { _p
->onArrayPair((yyval
), 0, 0,(yyvsp
[(1) - (1)]),0);}
11023 /* Line 1806 of yacc.c */
11024 #line 2272 "hphp.y"
11025 { (yyval
) = (yyvsp
[(1) - (2)]); }
11030 /* Line 1806 of yacc.c */
11031 #line 2273 "hphp.y"
11032 { (yyval
).reset(); }
11037 /* Line 1806 of yacc.c */
11038 #line 2278 "hphp.y"
11039 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (5)]),&(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]),0); }
11044 /* Line 1806 of yacc.c */
11045 #line 2281 "hphp.y"
11046 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),0); }
11051 /* Line 1806 of yacc.c */
11052 #line 2286 "hphp.y"
11053 { (yyval
) = (yyvsp
[(1) - (2)]);}
11058 /* Line 1806 of yacc.c */
11059 #line 2287 "hphp.y"
11060 { (yyval
).reset();}
11065 /* Line 1806 of yacc.c */
11066 #line 2290 "hphp.y"
11067 { _p
->onArray((yyval
),(yyvsp
[(2) - (3)]),T_ARRAY
);}
11072 /* Line 1806 of yacc.c */
11073 #line 2291 "hphp.y"
11074 { Token t
; t
.reset();
11075 _p
->onArray((yyval
),t
,T_ARRAY
);}
11080 /* Line 1806 of yacc.c */
11081 #line 2298 "hphp.y"
11082 { _p
->onUserAttribute((yyval
),&(yyvsp
[(1) - (4)]),(yyvsp
[(3) - (4)]),(yyvsp
[(4) - (4)]));}
11087 /* Line 1806 of yacc.c */
11088 #line 2300 "hphp.y"
11089 { _p
->onUserAttribute((yyval
), 0,(yyvsp
[(1) - (2)]),(yyvsp
[(2) - (2)]));}
11094 /* Line 1806 of yacc.c */
11095 #line 2303 "hphp.y"
11096 { only_in_hh_syntax(_p
);}
11101 /* Line 1806 of yacc.c */
11102 #line 2305 "hphp.y"
11103 { (yyval
) = (yyvsp
[(2) - (3)]);}
11108 /* Line 1806 of yacc.c */
11109 #line 2308 "hphp.y"
11110 { (yyval
) = (yyvsp
[(2) - (3)]);}
11115 /* Line 1806 of yacc.c */
11116 #line 2311 "hphp.y"
11117 { (yyval
) = (yyvsp
[(1) - (1)]);}
11122 /* Line 1806 of yacc.c */
11123 #line 2312 "hphp.y"
11124 { (yyval
).reset();}
11129 /* Line 1806 of yacc.c */
11130 #line 2316 "hphp.y"
11131 { (yyval
) = (yyvsp
[(1) - (1)]);}
11136 /* Line 1806 of yacc.c */
11137 #line 2318 "hphp.y"
11138 { (yyval
) = (yyvsp
[(2) - (2)]);}
11143 /* Line 1806 of yacc.c */
11144 #line 2322 "hphp.y"
11145 { (yyval
) = (yyvsp
[(2) - (2)]);}
11150 /* Line 1806 of yacc.c */
11151 #line 2323 "hphp.y"
11152 { (yyval
) = (yyvsp
[(3) - (4)]);}
11157 /* Line 1806 of yacc.c */
11158 #line 2327 "hphp.y"
11159 { (yyval
) = (yyvsp
[(2) - (3)]);}
11164 /* Line 1806 of yacc.c */
11165 #line 2328 "hphp.y"
11166 { (yyval
) = (yyvsp
[(2) - (3)]);}
11171 /* Line 1806 of yacc.c */
11172 #line 2332 "hphp.y"
11173 { _p
->onRefDim((yyval
), (yyvsp
[(1) - (2)]), (yyvsp
[(2) - (2)]));}
11178 /* Line 1806 of yacc.c */
11179 #line 2334 "hphp.y"
11180 { _p
->onRefDim((yyval
), (yyvsp
[(2) - (4)]), (yyvsp
[(4) - (4)]));}
11185 /* Line 1806 of yacc.c */
11186 #line 2339 "hphp.y"
11187 { _p
->onRefDim((yyval
), (yyvsp
[(1) - (2)]), (yyvsp
[(2) - (2)]));}
11192 /* Line 1806 of yacc.c */
11193 #line 2341 "hphp.y"
11194 { _p
->onRefDim((yyval
), (yyvsp
[(2) - (4)]), (yyvsp
[(4) - (4)]));}
11199 /* Line 1806 of yacc.c */
11200 #line 2345 "hphp.y"
11201 { (yyval
) = (yyvsp
[(1) - (1)]);}
11206 /* Line 1806 of yacc.c */
11207 #line 2346 "hphp.y"
11208 { (yyval
) = (yyvsp
[(1) - (1)]);}
11213 /* Line 1806 of yacc.c */
11214 #line 2347 "hphp.y"
11215 { (yyval
) = (yyvsp
[(1) - (1)]);}
11220 /* Line 1806 of yacc.c */
11221 #line 2348 "hphp.y"
11222 { (yyval
) = (yyvsp
[(1) - (1)]);}
11227 /* Line 1806 of yacc.c */
11228 #line 2349 "hphp.y"
11229 { (yyval
) = (yyvsp
[(1) - (1)]);}
11234 /* Line 1806 of yacc.c */
11235 #line 2350 "hphp.y"
11236 { _p
->onObjectProperty((yyval
),(yyvsp
[(1) - (2)]),(yyvsp
[(2) - (2)]));}
11241 /* Line 1806 of yacc.c */
11242 #line 2352 "hphp.y"
11243 { _p
->onObjectProperty((yyval
),(yyvsp
[(2) - (4)]),(yyvsp
[(4) - (4)]));}
11248 /* Line 1806 of yacc.c */
11249 #line 2355 "hphp.y"
11250 { _p
->onStaticMember((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]));}
11255 /* Line 1806 of yacc.c */
11256 #line 2357 "hphp.y"
11257 { _p
->onCall((yyval
),1,(yyvsp
[(1) - (4)]),(yyvsp
[(3) - (4)]),NULL
);}
11262 /* Line 1806 of yacc.c */
11263 #line 2358 "hphp.y"
11264 { (yyval
) = (yyvsp
[(2) - (3)]);}
11269 /* Line 1806 of yacc.c */
11270 #line 2362 "hphp.y"
11271 { (yyval
) = (yyvsp
[(1) - (1)]);}
11276 /* Line 1806 of yacc.c */
11277 #line 2363 "hphp.y"
11278 { (yyval
) = (yyvsp
[(1) - (1)]);}
11283 /* Line 1806 of yacc.c */
11284 #line 2364 "hphp.y"
11285 { (yyval
) = (yyvsp
[(1) - (1)]);}
11290 /* Line 1806 of yacc.c */
11291 #line 2365 "hphp.y"
11292 { (yyval
) = (yyvsp
[(1) - (1)]);}
11297 /* Line 1806 of yacc.c */
11298 #line 2367 "hphp.y"
11299 { _p
->onObjectProperty((yyval
),(yyvsp
[(1) - (2)]),(yyvsp
[(2) - (2)]));}
11304 /* Line 1806 of yacc.c */
11305 #line 2369 "hphp.y"
11306 { _p
->onObjectProperty((yyval
),(yyvsp
[(2) - (4)]),(yyvsp
[(4) - (4)]));}
11311 /* Line 1806 of yacc.c */
11312 #line 2371 "hphp.y"
11313 { _p
->onCall((yyval
),1,(yyvsp
[(1) - (4)]),(yyvsp
[(3) - (4)]),NULL
);}
11318 /* Line 1806 of yacc.c */
11319 #line 2372 "hphp.y"
11320 { (yyval
) = (yyvsp
[(2) - (3)]);}
11325 /* Line 1806 of yacc.c */
11326 #line 2376 "hphp.y"
11327 { (yyval
) = (yyvsp
[(1) - (1)]);}
11332 /* Line 1806 of yacc.c */
11333 #line 2377 "hphp.y"
11334 { (yyval
) = (yyvsp
[(1) - (1)]);}
11339 /* Line 1806 of yacc.c */
11340 #line 2378 "hphp.y"
11341 { (yyval
) = (yyvsp
[(2) - (3)]);}
11346 /* Line 1806 of yacc.c */
11347 #line 2384 "hphp.y"
11348 { _p
->onObjectMethodCall((yyval
),(yyvsp
[(1) - (7)]),(yyvsp
[(3) - (7)]),(yyvsp
[(6) - (7)]));}
11353 /* Line 1806 of yacc.c */
11354 #line 2387 "hphp.y"
11355 { _p
->onObjectMethodCall((yyval
),(yyvsp
[(1) - (6)]),(yyvsp
[(3) - (6)]),(yyvsp
[(5) - (6)]));}
11360 /* Line 1806 of yacc.c */
11361 #line 2390 "hphp.y"
11362 { _p
->onObjectMethodCall((yyval
),(yyvsp
[(1) - (8)]),(yyvsp
[(4) - (8)]),(yyvsp
[(7) - (8)]));}
11367 /* Line 1806 of yacc.c */
11368 #line 2394 "hphp.y"
11369 { _p
->onObjectMethodCall((yyval
),(yyvsp
[(2) - (9)]),(yyvsp
[(5) - (9)]),(yyvsp
[(8) - (9)]));}
11374 /* Line 1806 of yacc.c */
11375 #line 2398 "hphp.y"
11376 { _p
->onObjectMethodCall((yyval
),(yyvsp
[(2) - (8)]),(yyvsp
[(5) - (8)]),(yyvsp
[(7) - (8)]));}
11381 /* Line 1806 of yacc.c */
11382 #line 2402 "hphp.y"
11383 { _p
->onObjectMethodCall((yyval
),(yyvsp
[(2) - (10)]),(yyvsp
[(6) - (10)]),(yyvsp
[(9) - (10)]));}
11388 /* Line 1806 of yacc.c */
11389 #line 2409 "hphp.y"
11390 { _p
->onCall((yyval
),0,(yyvsp
[(3) - (7)]),(yyvsp
[(6) - (7)]),&(yyvsp
[(1) - (7)]));}
11395 /* Line 1806 of yacc.c */
11396 #line 2413 "hphp.y"
11397 { _p
->onCall((yyval
),1,(yyvsp
[(3) - (6)]),(yyvsp
[(5) - (6)]),&(yyvsp
[(1) - (6)]));}
11402 /* Line 1806 of yacc.c */
11403 #line 2417 "hphp.y"
11404 { _p
->onCall((yyval
),1,(yyvsp
[(4) - (8)]),(yyvsp
[(7) - (8)]),&(yyvsp
[(1) - (8)]));}
11409 /* Line 1806 of yacc.c */
11410 #line 2421 "hphp.y"
11411 { (yyval
) = (yyvsp
[(1) - (1)]);}
11416 /* Line 1806 of yacc.c */
11417 #line 2423 "hphp.y"
11418 { _p
->onIndirectRef((yyval
),(yyvsp
[(1) - (2)]),(yyvsp
[(2) - (2)]));}
11423 /* Line 1806 of yacc.c */
11424 #line 2428 "hphp.y"
11425 { _p
->onRefDim((yyval
), (yyvsp
[(1) - (4)]), (yyvsp
[(3) - (4)]));}
11430 /* Line 1806 of yacc.c */
11431 #line 2429 "hphp.y"
11432 { _p
->onRefDim((yyval
), (yyvsp
[(1) - (4)]), (yyvsp
[(3) - (4)]));}
11437 /* Line 1806 of yacc.c */
11438 #line 2430 "hphp.y"
11439 { (yyval
) = (yyvsp
[(1) - (1)]);}
11444 /* Line 1806 of yacc.c */
11445 #line 2433 "hphp.y"
11446 { _p
->onSimpleVariable((yyval
), (yyvsp
[(1) - (1)]));}
11451 /* Line 1806 of yacc.c */
11452 #line 2434 "hphp.y"
11453 { _p
->onDynamicVariable((yyval
), (yyvsp
[(3) - (4)]), 0);}
11458 /* Line 1806 of yacc.c */
11459 #line 2437 "hphp.y"
11460 { (yyval
) = (yyvsp
[(1) - (1)]);}
11465 /* Line 1806 of yacc.c */
11466 #line 2438 "hphp.y"
11467 { (yyval
).reset();}
11472 /* Line 1806 of yacc.c */
11473 #line 2442 "hphp.y"
11479 /* Line 1806 of yacc.c */
11480 #line 2443 "hphp.y"
11486 /* Line 1806 of yacc.c */
11487 #line 2447 "hphp.y"
11488 { (yyval
) = (yyvsp
[(1) - (1)]);}
11493 /* Line 1806 of yacc.c */
11494 #line 2448 "hphp.y"
11495 { (yyval
) = (yyvsp
[(1) - (1)]);}
11500 /* Line 1806 of yacc.c */
11501 #line 2449 "hphp.y"
11502 { _p
->onObjectProperty((yyval
),(yyvsp
[(1) - (2)]),(yyvsp
[(2) - (2)]));}
11507 /* Line 1806 of yacc.c */
11508 #line 2451 "hphp.y"
11509 { _p
->onObjectProperty((yyval
),(yyvsp
[(2) - (4)]),(yyvsp
[(4) - (4)]));}
11514 /* Line 1806 of yacc.c */
11515 #line 2454 "hphp.y"
11516 { _p
->onStaticMember((yyval
),(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]));}
11521 /* Line 1806 of yacc.c */
11522 #line 2455 "hphp.y"
11523 { (yyval
) = (yyvsp
[(2) - (3)]);}
11528 /* Line 1806 of yacc.c */
11529 #line 2459 "hphp.y"
11530 { (yyval
) = (yyvsp
[(1) - (1)]);}
11535 /* Line 1806 of yacc.c */
11536 #line 2461 "hphp.y"
11537 { _p
->onObjectProperty((yyval
),(yyvsp
[(1) - (2)]),(yyvsp
[(2) - (2)]));}
11542 /* Line 1806 of yacc.c */
11543 #line 2463 "hphp.y"
11544 { _p
->onObjectProperty((yyval
),(yyvsp
[(2) - (4)]),(yyvsp
[(4) - (4)]));}
11549 /* Line 1806 of yacc.c */
11550 #line 2464 "hphp.y"
11551 { (yyval
) = (yyvsp
[(2) - (3)]);}
11556 /* Line 1806 of yacc.c */
11557 #line 2468 "hphp.y"
11558 { _p
->onAListVar((yyval
),&(yyvsp
[(1) - (2)]),NULL
);}
11563 /* Line 1806 of yacc.c */
11564 #line 2469 "hphp.y"
11565 { _p
->onAListVar((yyval
),&(yyvsp
[(1) - (3)]),&(yyvsp
[(3) - (3)]));}
11570 /* Line 1806 of yacc.c */
11571 #line 2471 "hphp.y"
11572 { _p
->onAListSub((yyval
),&(yyvsp
[(1) - (6)]),(yyvsp
[(5) - (6)]));}
11577 /* Line 1806 of yacc.c */
11578 #line 2472 "hphp.y"
11579 { _p
->onAListVar((yyval
),NULL
,NULL
);}
11584 /* Line 1806 of yacc.c */
11585 #line 2473 "hphp.y"
11586 { _p
->onAListVar((yyval
),NULL
,&(yyvsp
[(1) - (1)]));}
11591 /* Line 1806 of yacc.c */
11592 #line 2474 "hphp.y"
11593 { _p
->onAListSub((yyval
),NULL
,(yyvsp
[(3) - (4)]));}
11598 /* Line 1806 of yacc.c */
11599 #line 2479 "hphp.y"
11600 { (yyval
) = (yyvsp
[(1) - (2)]);}
11605 /* Line 1806 of yacc.c */
11606 #line 2480 "hphp.y"
11607 { (yyval
).reset();}
11612 /* Line 1806 of yacc.c */
11613 #line 2484 "hphp.y"
11614 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (5)]),&(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]),0);}
11619 /* Line 1806 of yacc.c */
11620 #line 2485 "hphp.y"
11621 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (3)]), 0,(yyvsp
[(3) - (3)]),0);}
11626 /* Line 1806 of yacc.c */
11627 #line 2486 "hphp.y"
11628 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]),0);}
11633 /* Line 1806 of yacc.c */
11634 #line 2487 "hphp.y"
11635 { _p
->onArrayPair((yyval
), 0, 0,(yyvsp
[(1) - (1)]),0);}
11640 /* Line 1806 of yacc.c */
11641 #line 2490 "hphp.y"
11642 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (6)]),&(yyvsp
[(3) - (6)]),(yyvsp
[(6) - (6)]),1);}
11647 /* Line 1806 of yacc.c */
11648 #line 2492 "hphp.y"
11649 { _p
->onArrayPair((yyval
),&(yyvsp
[(1) - (4)]), 0,(yyvsp
[(4) - (4)]),1);}
11654 /* Line 1806 of yacc.c */
11655 #line 2493 "hphp.y"
11656 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[(1) - (4)]),(yyvsp
[(4) - (4)]),1);}
11661 /* Line 1806 of yacc.c */
11662 #line 2494 "hphp.y"
11663 { _p
->onArrayPair((yyval
), 0, 0,(yyvsp
[(2) - (2)]),1);}
11668 /* Line 1806 of yacc.c */
11669 #line 2499 "hphp.y"
11670 { (yyval
) = (yyvsp
[(1) - (2)]);}
11675 /* Line 1806 of yacc.c */
11676 #line 2500 "hphp.y"
11677 { _p
->onEmptyCollection((yyval
));}
11682 /* Line 1806 of yacc.c */
11683 #line 2504 "hphp.y"
11684 { _p
->onCollectionPair((yyval
),&(yyvsp
[(1) - (5)]),&(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]));}
11689 /* Line 1806 of yacc.c */
11690 #line 2505 "hphp.y"
11691 { _p
->onCollectionPair((yyval
),&(yyvsp
[(1) - (3)]), 0,(yyvsp
[(3) - (3)]));}
11696 /* Line 1806 of yacc.c */
11697 #line 2506 "hphp.y"
11698 { _p
->onCollectionPair((yyval
), 0,&(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]));}
11703 /* Line 1806 of yacc.c */
11704 #line 2507 "hphp.y"
11705 { _p
->onCollectionPair((yyval
), 0, 0,(yyvsp
[(1) - (1)]));}
11710 /* Line 1806 of yacc.c */
11711 #line 2512 "hphp.y"
11712 { (yyval
) = (yyvsp
[(1) - (2)]);}
11717 /* Line 1806 of yacc.c */
11718 #line 2513 "hphp.y"
11719 { _p
->onEmptyCollection((yyval
));}
11724 /* Line 1806 of yacc.c */
11725 #line 2518 "hphp.y"
11726 { _p
->onCollectionPair((yyval
),&(yyvsp
[(1) - (5)]),&(yyvsp
[(3) - (5)]),(yyvsp
[(5) - (5)]));}
11731 /* Line 1806 of yacc.c */
11732 #line 2520 "hphp.y"
11733 { _p
->onCollectionPair((yyval
),&(yyvsp
[(1) - (3)]), 0,(yyvsp
[(3) - (3)]));}
11738 /* Line 1806 of yacc.c */
11739 #line 2522 "hphp.y"
11740 { _p
->onCollectionPair((yyval
), 0,&(yyvsp
[(1) - (3)]),(yyvsp
[(3) - (3)]));}
11745 /* Line 1806 of yacc.c */
11746 #line 2523 "hphp.y"
11747 { _p
->onCollectionPair((yyval
), 0, 0,(yyvsp
[(1) - (1)]));}
11752 /* Line 1806 of yacc.c */
11753 #line 2527 "hphp.y"
11754 { _p
->addEncap((yyval
), &(yyvsp
[(1) - (2)]), (yyvsp
[(2) - (2)]), -1);}
11759 /* Line 1806 of yacc.c */
11760 #line 2529 "hphp.y"
11761 { _p
->addEncap((yyval
), &(yyvsp
[(1) - (2)]), (yyvsp
[(2) - (2)]), 0);}
11766 /* Line 1806 of yacc.c */
11767 #line 2530 "hphp.y"
11768 { _p
->addEncap((yyval
), NULL
, (yyvsp
[(1) - (1)]), -1);}
11773 /* Line 1806 of yacc.c */
11774 #line 2532 "hphp.y"
11775 { _p
->addEncap((yyval
), NULL
, (yyvsp
[(1) - (2)]), 0);
11776 _p
->addEncap((yyval
), &(yyval
), (yyvsp
[(2) - (2)]), -1); }
11781 /* Line 1806 of yacc.c */
11782 #line 2537 "hphp.y"
11783 { _p
->onSimpleVariable((yyval
), (yyvsp
[(1) - (1)]));}
11788 /* Line 1806 of yacc.c */
11789 #line 2539 "hphp.y"
11790 { _p
->encapRefDim((yyval
), (yyvsp
[(1) - (4)]), (yyvsp
[(3) - (4)]));}
11795 /* Line 1806 of yacc.c */
11796 #line 2541 "hphp.y"
11797 { _p
->encapObjProp((yyval
), (yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]));}
11802 /* Line 1806 of yacc.c */
11803 #line 2543 "hphp.y"
11804 { _p
->onDynamicVariable((yyval
), (yyvsp
[(2) - (3)]), 1);}
11809 /* Line 1806 of yacc.c */
11810 #line 2545 "hphp.y"
11811 { _p
->encapArray((yyval
), (yyvsp
[(2) - (6)]), (yyvsp
[(4) - (6)]));}
11816 /* Line 1806 of yacc.c */
11817 #line 2546 "hphp.y"
11818 { (yyval
) = (yyvsp
[(2) - (3)]);}
11823 /* Line 1806 of yacc.c */
11824 #line 2549 "hphp.y"
11825 { (yyval
) = (yyvsp
[(1) - (1)]); (yyval
) = T_STRING
;}
11830 /* Line 1806 of yacc.c */
11831 #line 2550 "hphp.y"
11832 { (yyval
) = (yyvsp
[(1) - (1)]); (yyval
) = T_NUM_STRING
;}
11837 /* Line 1806 of yacc.c */
11838 #line 2551 "hphp.y"
11839 { (yyval
) = (yyvsp
[(1) - (1)]); (yyval
) = T_VARIABLE
;}
11844 /* Line 1806 of yacc.c */
11845 #line 2555 "hphp.y"
11846 { UEXP((yyval
),(yyvsp
[(3) - (4)]),T_ISSET
,1);}
11851 /* Line 1806 of yacc.c */
11852 #line 2556 "hphp.y"
11853 { UEXP((yyval
),(yyvsp
[(3) - (4)]),T_EMPTY
,1);}
11858 /* Line 1806 of yacc.c */
11859 #line 2557 "hphp.y"
11860 { UEXP((yyval
),(yyvsp
[(3) - (4)]),'!',1);}
11865 /* Line 1806 of yacc.c */
11866 #line 2558 "hphp.y"
11867 { UEXP((yyval
),(yyvsp
[(3) - (4)]),'!',1);}
11872 /* Line 1806 of yacc.c */
11873 #line 2559 "hphp.y"
11874 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_INCLUDE
,1);}
11879 /* Line 1806 of yacc.c */
11880 #line 2560 "hphp.y"
11881 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_INCLUDE_ONCE
,1);}
11886 /* Line 1806 of yacc.c */
11887 #line 2561 "hphp.y"
11888 { UEXP((yyval
),(yyvsp
[(3) - (4)]),T_EVAL
,1);}
11893 /* Line 1806 of yacc.c */
11894 #line 2562 "hphp.y"
11895 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_REQUIRE
,1);}
11900 /* Line 1806 of yacc.c */
11901 #line 2563 "hphp.y"
11902 { UEXP((yyval
),(yyvsp
[(2) - (2)]),T_REQUIRE_ONCE
,1);}
11907 /* Line 1806 of yacc.c */
11908 #line 2567 "hphp.y"
11909 { _p
->onExprListElem((yyval
), NULL
, (yyvsp
[(1) - (1)]));}
11914 /* Line 1806 of yacc.c */
11915 #line 2568 "hphp.y"
11916 { _p
->onExprListElem((yyval
), &(yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]));}
11921 /* Line 1806 of yacc.c */
11922 #line 2573 "hphp.y"
11923 { _p
->onClassConst((yyval
), (yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]), 0);}
11928 /* Line 1806 of yacc.c */
11929 #line 2587 "hphp.y"
11930 { _p
->onTypedef((yyval
), (yyvsp
[(2) - (5)]), (yyvsp
[(4) - (5)]));
11931 _p
->popTypeScope(); }
11936 /* Line 1806 of yacc.c */
11937 #line 2590 "hphp.y"
11938 { _p
->onTypedef((yyval
), (yyvsp
[(2) - (6)]), (yyvsp
[(5) - (6)]));
11939 _p
->popTypeScope(); }
11944 /* Line 1806 of yacc.c */
11945 #line 2595 "hphp.y"
11946 { (yyval
) = (yyvsp
[(1) - (1)]); }
11951 /* Line 1806 of yacc.c */
11952 #line 2596 "hphp.y"
11953 { only_in_hh_syntax(_p
); (yyval
) = (yyvsp
[(2) - (2)]); }
11958 /* Line 1806 of yacc.c */
11959 #line 2602 "hphp.y"
11960 { _p
->pushTypeScope(); (yyval
) = (yyvsp
[(1) - (1)]); }
11965 /* Line 1806 of yacc.c */
11966 #line 2606 "hphp.y"
11967 { _p
->pushTypeScope(); (yyval
) = (yyvsp
[(1) - (4)]); }
11972 /* Line 1806 of yacc.c */
11973 #line 2612 "hphp.y"
11974 { (yyval
) = (yyvsp
[(2) - (3)]); }
11979 /* Line 1806 of yacc.c */
11980 #line 2613 "hphp.y"
11981 { (yyval
).reset(); }
11986 /* Line 1806 of yacc.c */
11987 #line 2617 "hphp.y"
11988 { Token t
; t
.reset();
11989 _p
->onTypeList((yyvsp
[(1) - (1)]), t
);
11990 (yyval
) = (yyvsp
[(1) - (1)]); }
11995 /* Line 1806 of yacc.c */
11996 #line 2620 "hphp.y"
11997 { _p
->onTypeList((yyvsp
[(1) - (3)]), (yyvsp
[(3) - (3)]));
11998 (yyval
) = (yyvsp
[(1) - (3)]); }
12003 /* Line 1806 of yacc.c */
12004 #line 2625 "hphp.y"
12005 { (yyval
) = (yyvsp
[(1) - (3)]); }
12010 /* Line 1806 of yacc.c */
12011 #line 2626 "hphp.y"
12012 { (yyval
) = (yyvsp
[(1) - (1)]); }
12017 /* Line 1806 of yacc.c */
12018 #line 2627 "hphp.y"
12019 { (yyval
).reset(); }
12024 /* Line 1806 of yacc.c */
12025 #line 2628 "hphp.y"
12026 { (yyval
).reset(); }
12031 /* Line 1806 of yacc.c */
12032 #line 2632 "hphp.y"
12033 { (yyval
).reset(); }
12038 /* Line 1806 of yacc.c */
12039 #line 2633 "hphp.y"
12040 { only_in_hh_syntax(_p
); (yyval
) = (yyvsp
[(2) - (2)]); }
12045 /* Line 1806 of yacc.c */
12046 #line 2638 "hphp.y"
12047 { _p
->addTypeVar((yyvsp
[(3) - (3)]).text()); }
12052 /* Line 1806 of yacc.c */
12053 #line 2639 "hphp.y"
12054 { _p
->addTypeVar((yyvsp
[(1) - (1)]).text()); }
12059 /* Line 1806 of yacc.c */
12060 #line 2641 "hphp.y"
12061 { _p
->addTypeVar((yyvsp
[(3) - (5)]).text()); }
12066 /* Line 1806 of yacc.c */
12067 #line 2642 "hphp.y"
12068 { _p
->addTypeVar((yyvsp
[(1) - (3)]).text()); }
12073 /* Line 1806 of yacc.c */
12074 #line 2648 "hphp.y"
12075 { validate_shape_keyname((yyvsp
[(1) - (3)]), _p
); }
12080 /* Line 1806 of yacc.c */
12081 #line 2659 "hphp.y"
12082 { (yyval
) = (yyvsp
[(1) - (2)]); }
12087 /* Line 1806 of yacc.c */
12088 #line 2661 "hphp.y"
12094 /* Line 1806 of yacc.c */
12095 #line 2665 "hphp.y"
12096 { (yyval
).setText("array"); }
12101 /* Line 1806 of yacc.c */
12102 #line 2672 "hphp.y"
12103 { only_in_hh_syntax(_p
);
12104 _p
->onTypeSpecialization((yyvsp
[(2) - (2)]), '?');
12105 (yyval
) = (yyvsp
[(2) - (2)]); }
12110 /* Line 1806 of yacc.c */
12111 #line 2675 "hphp.y"
12112 { only_in_hh_syntax(_p
);
12113 _p
->onTypeSpecialization((yyvsp
[(2) - (2)]), '@');
12114 (yyval
) = (yyvsp
[(2) - (2)]); }
12119 /* Line 1806 of yacc.c */
12120 #line 2678 "hphp.y"
12121 { (yyval
) = (yyvsp
[(1) - (1)]); }
12126 /* Line 1806 of yacc.c */
12127 #line 2679 "hphp.y"
12128 { Token t
; t
.reset();
12129 (yyvsp
[(1) - (1)]).setText("array");
12130 _p
->onTypeAnnotation((yyval
), (yyvsp
[(1) - (1)]), t
); }
12135 /* Line 1806 of yacc.c */
12136 #line 2682 "hphp.y"
12137 { (yyval
) = (yyvsp
[(1) - (1)]); }
12142 /* Line 1806 of yacc.c */
12143 #line 2684 "hphp.y"
12144 { (yyvsp
[(1) - (4)]).setText("array");
12145 _p
->onTypeAnnotation((yyval
), (yyvsp
[(1) - (4)]), (yyvsp
[(3) - (4)])); }
12150 /* Line 1806 of yacc.c */
12151 #line 2687 "hphp.y"
12152 { _p
->onTypeList((yyvsp
[(3) - (6)]), (yyvsp
[(5) - (6)]));
12153 (yyvsp
[(1) - (6)]).setText("array");
12154 _p
->onTypeAnnotation((yyval
), (yyvsp
[(1) - (6)]), (yyvsp
[(3) - (6)])); }
12159 /* Line 1806 of yacc.c */
12160 #line 2690 "hphp.y"
12161 { (yyvsp
[(1) - (1)]).xhpLabel();
12162 Token t
; t
.reset();
12163 _p
->onTypeAnnotation((yyval
), (yyvsp
[(1) - (1)]), t
);
12164 _p
->onTypeSpecialization((yyval
), 'x'); }
12169 /* Line 1806 of yacc.c */
12170 #line 2696 "hphp.y"
12171 { only_in_hh_syntax(_p
);
12172 _p
->onTypeList((yyvsp
[(7) - (8)]), (yyvsp
[(4) - (8)]));
12173 _p
->onTypeAnnotation((yyval
), (yyvsp
[(2) - (8)]), (yyvsp
[(7) - (8)]));
12174 _p
->onTypeSpecialization((yyval
), 'f'); }
12179 /* Line 1806 of yacc.c */
12180 #line 2700 "hphp.y"
12181 { only_in_hh_syntax(_p
);
12182 _p
->onTypeList((yyvsp
[(2) - (5)]), (yyvsp
[(4) - (5)]));
12183 Token t
; t
.reset(); t
.setText("array");
12184 _p
->onTypeAnnotation((yyval
), t
, (yyvsp
[(2) - (5)]));
12185 _p
->onTypeSpecialization((yyval
), 't'); }
12190 /* Line 1806 of yacc.c */
12191 #line 2708 "hphp.y"
12192 { (yyval
) = (yyvsp
[(1) - (1)]); }
12197 /* Line 1806 of yacc.c */
12198 #line 2709 "hphp.y"
12199 { (yyval
).reset(); }
12204 /* Line 1806 of yacc.c */
12205 #line 12205 "hphp.tab.cpp"
12208 /* User semantic actions sometimes alter yychar, and that requires
12209 that yytoken be updated with the new translation. We take the
12210 approach of translating immediately before every use of yytoken.
12211 One alternative is translating here after every semantic action,
12212 but that translation would be missed if the semantic action invokes
12213 YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
12214 if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an
12215 incorrect destructor might then be invoked immediately. In the
12216 case of YYERROR or YYBACKUP, subsequent parser actions might lead
12217 to an incorrect destructor call or verbose syntax error message
12218 before the lookahead is translated. */
12219 YY_SYMBOL_PRINT ("-> $$ =", yyr1
[yyn
], &yyval
, &yyloc
);
12221 YYPOPSTACK (yylen
);
12223 YY_STACK_PRINT (yyss
, yyssp
);
12228 /* Now `shift' the result of the reduction. Determine what state
12229 that goes to, based on the state we popped back to and the rule
12230 number reduced by. */
12234 yystate
= yypgoto
[yyn
- YYNTOKENS
] + *yyssp
;
12235 if (0 <= yystate
&& yystate
<= YYLAST
&& yycheck
[yystate
] == *yyssp
)
12236 yystate
= yytable
[yystate
];
12238 yystate
= yydefgoto
[yyn
- YYNTOKENS
];
12243 /*------------------------------------.
12244 | yyerrlab -- here on detecting error |
12245 `------------------------------------*/
12247 /* Make sure we have latest lookahead translation. See comments at
12248 user semantic actions for why this is necessary. */
12249 yytoken
= yychar
== YYEMPTY
? YYEMPTY
: YYTRANSLATE (yychar
);
12251 /* If not already recovering from an error, report this error. */
12255 #if ! YYERROR_VERBOSE
12256 yyerror (&yylloc
, _p
, YY_("syntax error"));
12258 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
12261 char const *yymsgp
= YY_("syntax error");
12262 int yysyntax_error_status
;
12263 yysyntax_error_status
= YYSYNTAX_ERROR
;
12264 if (yysyntax_error_status
== 0)
12266 else if (yysyntax_error_status
== 1)
12268 if (yymsg
!= yymsgbuf
)
12269 YYSTACK_FREE (yymsg
);
12270 yymsg
= (char *) YYSTACK_ALLOC (yymsg_alloc
);
12274 yymsg_alloc
= sizeof yymsgbuf
;
12275 yysyntax_error_status
= 2;
12279 yysyntax_error_status
= YYSYNTAX_ERROR
;
12283 yyerror (&yylloc
, _p
, yymsgp
);
12284 if (yysyntax_error_status
== 2)
12285 goto yyexhaustedlab
;
12287 # undef YYSYNTAX_ERROR
12291 yyerror_range
[1] = yylloc
;
12293 if (yyerrstatus
== 3)
12295 /* If just tried and failed to reuse lookahead token after an
12296 error, discard it. */
12298 if (yychar
<= YYEOF
)
12300 /* Return failure if at end of input. */
12301 if (yychar
== YYEOF
)
12306 yydestruct ("Error: discarding",
12307 yytoken
, &yylval
, &yylloc
, _p
);
12312 /* Else will try to reuse lookahead token after shifting the error
12317 /*---------------------------------------------------.
12318 | yyerrorlab -- error raised explicitly by YYERROR. |
12319 `---------------------------------------------------*/
12322 /* Pacify compilers like GCC when the user code never invokes
12323 YYERROR and the label yyerrorlab therefore never appears in user
12325 if (/*CONSTCOND*/ 0)
12328 yyerror_range
[1] = yylsp
[1-yylen
];
12329 /* Do not reclaim the symbols of the rule which action triggered
12331 YYPOPSTACK (yylen
);
12333 YY_STACK_PRINT (yyss
, yyssp
);
12338 /*-------------------------------------------------------------.
12339 | yyerrlab1 -- common code for both syntax error and YYERROR. |
12340 `-------------------------------------------------------------*/
12342 yyerrstatus
= 3; /* Each real token shifted decrements this. */
12346 yyn
= yypact
[yystate
];
12347 if (!yypact_value_is_default (yyn
))
12350 if (0 <= yyn
&& yyn
<= YYLAST
&& yycheck
[yyn
] == YYTERROR
)
12352 yyn
= yytable
[yyn
];
12358 /* Pop the current state because it cannot handle the error token. */
12362 yyerror_range
[1] = *yylsp
;
12363 yydestruct ("Error: popping",
12364 yystos
[yystate
], yyvsp
, yylsp
, _p
);
12367 YY_STACK_PRINT (yyss
, yyssp
);
12372 yyerror_range
[2] = yylloc
;
12373 /* Using YYLLOC is tempting, but would change the location of
12374 the lookahead. YYLOC is available though. */
12375 YYLLOC_DEFAULT (yyloc
, yyerror_range
, 2);
12378 /* Shift the error token. */
12379 YY_SYMBOL_PRINT ("Shifting", yystos
[yyn
], yyvsp
, yylsp
);
12385 /*-------------------------------------.
12386 | yyacceptlab -- YYACCEPT comes here. |
12387 `-------------------------------------*/
12392 /*-----------------------------------.
12393 | yyabortlab -- YYABORT comes here. |
12394 `-----------------------------------*/
12399 #if !defined(yyoverflow) || YYERROR_VERBOSE
12400 /*-------------------------------------------------.
12401 | yyexhaustedlab -- memory exhaustion comes here. |
12402 `-------------------------------------------------*/
12404 yyerror (&yylloc
, _p
, YY_("memory exhausted"));
12406 /* Fall through. */
12410 if (yychar
!= YYEMPTY
)
12412 /* Make sure we have latest lookahead translation. See comments at
12413 user semantic actions for why this is necessary. */
12414 yytoken
= YYTRANSLATE (yychar
);
12415 yydestruct ("Cleanup: discarding lookahead",
12416 yytoken
, &yylval
, &yylloc
, _p
);
12418 /* Do not reclaim the symbols of the rule which action triggered
12419 this YYABORT or YYACCEPT. */
12420 YYPOPSTACK (yylen
);
12421 YY_STACK_PRINT (yyss
, yyssp
);
12422 while (yyssp
!= yyss
)
12424 yydestruct ("Cleanup: popping",
12425 yystos
[*yyssp
], yyvsp
, yylsp
, _p
);
12430 YYSTACK_FREE (yyss
);
12433 #if YYERROR_VERBOSE
12434 if (yymsg
!= yymsgbuf
)
12435 YYSTACK_FREE (yymsg
);
12437 /* Make sure YYID is used. */
12438 return YYID (yyresult
);
12443 /* Line 2067 of yacc.c */
12444 #line 2712 "hphp.y"
12446 bool Parser::parseImpl() {
12447 return yyparse(this) == 0;