2 /* A Bison parser, made by GNU Bison 3.1. */
4 /* Bison implementation for Yacc-like parsers in C
6 Copyright (C) 1984, 1989-1990, 2000-2015, 2018 Free Software Foundation, Inc.
8 This program is free software: you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation, either version 3 of the License, or
11 (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program. If not, see <http://www.gnu.org/licenses/>. */
21 /* As a special exception, you may create a larger work that contains
22 part or all of the Bison parser skeleton and distribute that work
23 under terms of your choice, so long as that work isn't itself a
24 parser generator using the skeleton or a modified version thereof
25 as a parser skeleton. Alternatively, if you modify or redistribute
26 the parser skeleton itself, you may (at your option) remove this
27 special exception, which will cause the skeleton and the resulting
28 Bison output files to be licensed under the GNU General Public
29 License without this special exception.
31 This special exception was added by the Free Software Foundation in
32 version 2.2 of Bison. */
34 /* C LALR(1) parser skeleton written by Richard Stallman, by
35 simplifying the original so-called "semantic" parser. */
37 /* All symbols defined below should begin with yy or YY, to avoid
38 infringing on user name space. This should be done even for local
39 variables, as they might otherwise be expanded by user macros.
40 There are some unavoidable exceptions within include files to
41 define necessary library symbols; they are noted "INFRINGES ON
42 USER NAME SPACE" below. */
44 /* Identify Bison output. */
48 #define YYBISON_VERSION "3.1"
51 #define YYSKELETON_NAME "yacc.c"
63 /* Substitute the variable and function names. */
64 #define yyparse Compiler5parse
65 #define yylex Compiler5lex
66 #define yyerror Compiler5error
67 #define yydebug Compiler5debug
68 #define yynerrs Compiler5nerrs
71 /* Copy the first part of user declarations. */
72 #line 1 "hphp.y" /* yacc.c:339 */
75 /* By default this grammar is set up to be used by HPHP's compile parser.
76 * However, it can be used to make parsers for different purposes by
77 * making a Parser implementation with the same interface as
78 * HPHP::Compiler::Parser in a header file specified by
79 * PARSER_DEFINITIONS_HEADER, and specifying an alternate namespace with
84 #define YYSTYPE HPHP::HPHP_PARSER_NS::Token
85 #define YYSTYPE_IS_TRIVIAL false
86 #define YYLTYPE HPHP::Location
87 #define YYLTYPE_IS_TRIVIAL true
88 #define YYERROR_VERBOSE
89 #define YYINITDEPTH 500
90 #define YYLEX_PARAM _p
92 #ifdef PARSER_DEFINITIONS_HEADER
93 #include PARSER_DEFINITIONS_HEADER
95 #include "hphp/compiler/parser/parser.h"
98 #include <folly/Conv.h>
99 #include <folly/String.h>
101 #include "hphp/util/logger.h"
103 #define line0 r.line0
104 #define char0 r.char0
105 #define line1 r.line1
106 #define char1 r.char1
111 #define yyerror(loc,p,msg) p->parseFatal(loc,msg)
113 #ifdef YYLLOC_DEFAULT
114 # undef YYLLOC_DEFAULT
116 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
117 #define YYLLOC_DEFAULT(Current, Rhs, N) \
120 (Current).first(YYRHSLOC (Rhs, 1)); \
121 (Current).last (YYRHSLOC (Rhs, N)); \
123 (Current).line0 = (Current).line1 = YYRHSLOC (Rhs, 0).line1;\
124 (Current).char0 = (Current).char1 = YYRHSLOC (Rhs, 0).char1;\
127 _p->setRuleLocation(&Current);
129 #define YYCOPY(To, From, Count) \
132 for (yyi = 0; yyi < (Count); yyi++) { \
133 (To)[yyi] = (From)[yyi]; \
135 if (From != From ## a) { \
136 YYSTACK_FREE (From); \
141 #define YYCOPY_RESET(To, From, Count) \
145 for (yyi = 0; yyi < (Count); yyi++) { \
146 (To)[yyi] = (From)[yyi]; \
147 (From)[yyi].reset(); \
149 if (From != From ## a) { \
150 YYSTACK_FREE (From); \
155 #define YYTOKEN_RESET(From, Count) \
159 for (yyi = 0; yyi < (Count); yyi++) { \
160 (From)[yyi].reset(); \
162 if (From != From ## a) { \
163 YYSTACK_FREE (From); \
168 # define YYSTACK_RELOCATE_RESET(Stack_alloc, Stack) \
171 YYSIZE_T yynewbytes; \
172 YYCOPY_RESET (&yyptr->Stack_alloc, Stack, yysize); \
173 Stack = &yyptr->Stack_alloc; \
174 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
175 yyptr += yynewbytes / sizeof (*yyptr); \
179 #define YYSTACK_CLEANUP \
180 YYTOKEN_RESET (yyvs, yystacksize); \
181 if (yyvs != yyvsa) { \
182 YYSTACK_FREE (yyvs); \
184 if (yyls != yylsa) { \
185 YYSTACK_FREE (yyls); \
190 #define BEXP(...) _p->onBinaryOpExp(__VA_ARGS__);
191 #define UEXP(...) _p->onUnaryOpExp(__VA_ARGS__);
193 using namespace HPHP::HPHP_PARSER_NS
;
194 using LS
= Parser::LabelScopeKind
;
196 using ParamMode
= HPHP::ParamMode
;
198 typedef HPHP::ClosureType ClosureType
;
200 ///////////////////////////////////////////////////////////////////////////////
203 static void scalar_num(Parser
*_p
, Token
&out
, const char *num
) {
206 _p
->onScalar(out
, T_LNUMBER
, t
);
209 static void scalar_num(Parser
*_p
, Token
&out
, int num
) {
211 t
.setText(folly::to
<std::string
>(num
));
212 _p
->onScalar(out
, T_LNUMBER
, t
);
215 static void scalar_null(Parser
*_p
, Token
&out
) {
216 Token tnull
; tnull
.setText("null");
217 _p
->onConstantValue(out
, tnull
);
220 static void scalar_file(Parser
*_p
, Token
&out
) {
221 Token file
; file
.setText("__FILE__");
222 _p
->onScalar(out
, T_FILE
, file
);
225 static void scalar_line(Parser
*_p
, Token
&out
) {
226 Token line
; line
.setText("__LINE__");
227 _p
->onScalar(out
, T_LINE
, line
);
230 ///////////////////////////////////////////////////////////////////////////////
232 static void constant_ae(Parser
*_p
, Token
&out
, Token
&value
) {
233 const std::string
& valueStr
= value
.text();
234 if (valueStr
.size() < 3 || valueStr
.size() > 5 ||
235 (strcasecmp("true", valueStr
.c_str()) != 0 &&
236 strcasecmp("false", valueStr
.c_str()) != 0 &&
237 strcasecmp("null", valueStr
.c_str()) != 0 &&
238 strcasecmp("inf", valueStr
.c_str()) != 0 &&
239 strcasecmp("nan", valueStr
.c_str()) != 0)) {
240 HPHP_PARSER_ERROR("User-defined constants are not allowed in user "
241 "attribute expressions", _p
);
243 _p
->onConstantValue(out
, value
);
246 ///////////////////////////////////////////////////////////////////////////////
249 * XHP functions: They are defined here, so different parsers don't have to
250 * handle XHP rules at all.
253 static void xhp_tag(Parser
*_p
, Token
&out
, Token
&label
, Token
&body
) {
254 if (!body
.text().empty() && body
.text() != label
.text()) {
255 HPHP_PARSER_ERROR("XHP: mismatched tag: '%s' not the same as '%s'",
256 _p
, body
.text().c_str(), label
.text().c_str());
259 _p
->onXhpAttributesEnd();
261 Token name
; _p
->onName(name
, label
, Parser::StringName
);
262 _p
->onNewObject(out
, name
, body
);
265 static void xhp_attribute(Parser
*_p
, Token
&out
, Token
&type
, Token
&label
,
266 Token
&def
, Token
&req
) {
268 * The bool, int, float, and string typenames are not given any special
269 * treatment by the parser and are treated the same as regular class names
270 * (which initially gets marked as type code 5). However, XHP wants to use
271 * different type codes for bool, int, float, and string, so we need to fix
272 * up the type code here to make XHP happy.
274 if (type
.num() == 5) {
275 auto* str
= type
.text().c_str();
276 if (_p
->scanner().isHHSyntaxEnabled()) {
277 switch (type
.text().size()) {
279 if (!strcasecmp(str
, "HH\\int")) {
280 type
.reset(); type
.setNum(3);
284 if (!strcasecmp(str
, "HH\\bool")) {
285 type
.reset(); type
.setNum(2);
289 if (!strcasecmp(str
, "HH\\float")) {
290 type
.reset(); type
.setNum(8);
291 } else if (!strcasecmp(str
, "HH\\mixed")) {
292 type
.reset(); type
.setNum(6);
296 if (!strcasecmp(str
, "HH\\string")) {
297 type
.reset(); type
.setNum(1);
304 switch (type
.text().size()) {
306 if (!strcasecmp(str
, "int")) {
307 type
.reset(); type
.setNum(3);
311 if (!strcasecmp(str
, "bool")) {
312 type
.reset(); type
.setNum(2);
313 } else if (!strcasecmp(str
, "real")) {
314 type
.reset(); type
.setNum(8);
318 if (!strcasecmp(str
, "float")) {
319 type
.reset(); type
.setNum(8);
320 } else if (!strcasecmp(str
, "mixed")) {
321 type
.reset(); type
.setNum(6);
325 if (!strcasecmp(str
, "string")) {
326 type
.reset(); type
.setNum(1);
327 } else if (!strcasecmp(str
, "double")) {
328 type
.reset(); type
.setNum(8);
332 if (!strcasecmp(str
, "integer")) {
333 type
.reset(); type
.setNum(3);
334 } else if (!strcasecmp(str
, "boolean")) {
335 type
.reset(); type
.setNum(2);
344 Token num
; scalar_num(_p
, num
, type
.num());
345 Token arr1
; _p
->onExprListElem(arr1
, nullptr, num
);
348 switch (type
.num()) {
349 case 5: /* class */ {
350 Token cls
; _p
->onScalar(cls
, T_CONSTANT_ENCAPSED_STRING
, type
);
351 _p
->onExprListElem(arr2
, &arr1
, cls
);
355 Token arr
; _p
->onVArray(arr
, type
);
356 _p
->onExprListElem(arr2
, &arr1
, arr
);
360 Token tnull
; scalar_null(_p
, tnull
);
361 _p
->onExprListElem(arr2
, &arr1
, tnull
);
366 Token arr3
; _p
->onExprListElem(arr3
, &arr2
, def
);
367 Token arr4
; _p
->onExprListElem(arr4
, &arr3
, req
);
368 _p
->onVArray(out
, arr4
);
372 static void xhp_attribute_list(Parser
*_p
, Token
&out
, Token
*list
,
374 if (decl
.num() == 0) {
378 out
.setText(list
->text() + ":" + decl
.text()); // avoiding vector<string>
383 Token name
; _p
->onScalar(name
, T_CONSTANT_ENCAPSED_STRING
, decl
);
384 _p
->onArrayPair(out
, list
, &name
, &decl
, 0);
386 out
.setText(list
->text());
393 static void xhp_attribute_property_stmt(Parser
*_p
, Token
&out
) {
394 // private static darray $__xhpAttributeDeclarationCache = null;
398 Token m1
; m1
= T_PRIVATE
; _p
->onMemberModifier(m
, NULL
, m1
);
399 Token m2
; m2
= T_STATIC
; _p
->onMemberModifier(modifiers
, &m
, m2
);
401 Token var
; var
.set(T_VARIABLE
, "__xhpAttributeDeclarationCache");
402 Token null
; scalar_null(_p
, null
);
403 Token cvout
; _p
->onClassVariable(cvout
, 0, var
, &null
);
404 _p
->onClassVariableStart(out
, &modifiers
, cvout
, NULL
, NULL
);
407 static void xhp_attribute_method_stmt(Parser
*_p
, Token
&out
, Token
&attributes
) {
409 Token fname
; fname
.setText("__xhpAttributeDeclaration");
412 Token m1
; m1
.setNum(T_PROTECTED
); _p
->onMemberModifier(m
, NULL
, m1
);
413 Token m2
; m2
.setNum(T_STATIC
); _p
->onMemberModifier(modifiers
, &m
, m2
);
415 _p
->pushFuncLocation();
416 _p
->onMethodStart(fname
, modifiers
);
420 std::vector
<std::string
> classes
;
421 folly::split(':', attributes
.text(), classes
, true);
422 Token arrAttributes
; _p
->onDArray(arrAttributes
, attributes
);
424 auto _cache
= [&]() {
425 // self::__xhpAttributeDeclarationCache
426 const char *cacheName
= "__xhpAttributeDeclarationCache";
427 Token self
; self
.set(T_STRING
, "self");
428 Token cls
; _p
->onName(cls
, self
, Parser::StringName
);
429 Token var
; var
.set(T_VARIABLE
, cacheName
);
430 Token sv
; _p
->onSimpleVariable(sv
, var
);
432 _p
->onStaticMember(out
, cls
, sv
);
438 Token r
; r
.set(T_VARIABLE
, "r");
439 Token out
; _p
->onSimpleVariable(out
, r
);
443 auto _assign_stmt
= [&](Token
&dest
, Token
&src
) {
445 Token assign
; _p
->onAssign(assign
, dest
, src
, 0);
446 Token stmt
; _p
->onExpStatement(stmt
, assign
);
450 auto _start_statements
= [&]() {
452 _p
->onStatementListStart(stmts
);
456 auto _add_statement
= [&](Token
&stmts
, Token
&new_stmt
) {
457 Token stmts_in
= stmts
;
458 _p
->addStatement(stmts
, stmts_in
, new_stmt
);
461 auto _invoke
= [&](std::string clsName
) {
462 // Invokes clsName::__xhpAttributeDeclaration()
464 Token name
; name
.set(T_STRING
, clsName
);
465 Token cls
; _p
->onName(cls
, name
, Parser::StringName
);
466 Token fname
; fname
.setText("__xhpAttributeDeclaration");
468 _p
->onCall(out
, 0, fname
, dummy
, &cls
);
472 auto _add_call_param_first
= [&](Token
&newParam
) {
474 _p
->onCallParam(out
, NULL
, newParam
, ParamMode::In
, false);
478 auto _add_call_param
= [&](Token
¶ms
, Token
&newParam
) {
479 Token params_in
= params
;
480 _p
->onCallParam(params
, ¶ms_in
, newParam
, ParamMode::In
, false);
483 Token body
= _start_statements();
485 // $r = self::$__xhpAttributeDeclarationCache;
486 Token src
= _cache();
488 Token stmt
= _assign_stmt(dest
, src
);
489 _add_statement(body
, stmt
);
493 // if ($r === null) {
494 // self::$__xhpAttributeDeclarationCache =
495 // __SystemLib\\merge_xhp_attr_declarations(
496 // parent::__xhpAttributeDeclaration(),
497 // firstInheritedClass::__xhpAttributeDeclaration(),
499 // lastInheritedClass::__xhpAttributeDeclaration(),
502 // $r = self::$__xhpAttributeDeclarationCache;
504 Token blockbody
= _start_statements();
506 Token param1
= _invoke("parent");
507 Token params
= _add_call_param_first(param1
);
508 for (unsigned int i
= 0; i
< classes
.size(); i
++) {
509 Token param
= _invoke(classes
[i
]);
510 _add_call_param(params
, param
);
512 _add_call_param(params
, arrAttributes
);
514 Token name
; name
.set(T_STRING
, "__SystemLib\\merge_xhp_attr_declarations");
515 name
= name
.num() | 2; // WTH???
516 Token call
; _p
->onCall(call
, 0, name
, params
, NULL
);
517 Token dest
= _cache();
518 Token stmt
= _assign_stmt(dest
, call
);
519 _add_statement(blockbody
, stmt
);
523 Token src
= _cache();
524 Token stmt
= _assign_stmt(dest
, src
);
525 _add_statement(blockbody
, stmt
);
527 Token block
; _p
->onBlock(block
, blockbody
);
531 Token null
; scalar_null(_p
, null
);
532 Token cond
; BEXP(cond
, r
, null
, T_IS_IDENTICAL
);
533 Token dummy1
, dummy2
;
534 Token sif
; _p
->onIf(sif
, cond
, block
, dummy1
, dummy2
);
535 _add_statement(body
, sif
);
542 Token ret
; _p
->onReturn(ret
, &r
);
543 _add_statement(body
, ret
);
547 _p
->finishStatement(stmt
, body
);
551 Token params
, ret
, ref
; ref
= 0;
552 _p
->onMethod(out
, modifiers
, ret
, ref
, fname
, params
, stmt
, nullptr, false);
556 static void xhp_attribute_stmts(Parser
*_p
, Token
&out
, Token
&stmts
, Token
&attr
) {
560 xhp_attribute_property_stmt(_p
, stmt
);
561 _p
->onClassStatement(stmts1
, stmts
, stmt
);
565 xhp_attribute_method_stmt(_p
, stmt
, attr
);
566 _p
->onClassStatement(out
, stmts1
, stmt
);
570 static void xhp_collect_attributes(Parser
*_p
, Token
&out
, Token
&stmts
) {
571 Token
*attr
= _p
->xhpGetAttributes();
573 xhp_attribute_stmts(_p
, out
, stmts
, *attr
);
579 static void xhp_category_stmt(Parser
*_p
, Token
&out
, Token
&categories
) {
580 Token fname
; fname
.setText("__xhpCategoryDeclaration");
581 Token m1
; m1
.setNum(T_PROTECTED
);
582 Token modifiers
; _p
->onMemberModifier(modifiers
, 0, m1
);
583 _p
->pushFuncLocation();
584 _p
->onMethodStart(fname
, modifiers
);
588 _p
->onStatementListStart(stmts0
);
592 // return categories;
593 Token arr
; _p
->onDArray(arr
, categories
);
594 Token ret
; _p
->onReturn(ret
, &arr
);
595 _p
->addStatement(stmts1
, stmts0
, ret
);
599 _p
->finishStatement(stmt
, stmts1
);
603 Token params
, ret
, ref
; ref
= 0;
604 _p
->onMethod(out
, modifiers
, ret
, ref
, fname
, params
, stmt
, nullptr, false);
608 static void xhp_children_decl_tag(Parser
*_p
, Token
&arr
, Token
&tag
) {
609 Token num
; scalar_num(_p
, num
, tag
.num());
610 Token arr1
; _p
->onExprListElem(arr1
, &arr
, num
);
613 if (tag
.num() == 3 || tag
.num() == 4) {
614 _p
->onScalar(name
, T_CONSTANT_ENCAPSED_STRING
, tag
);
615 } else if (tag
.num() >= 0) {
616 scalar_null(_p
, name
);
618 HPHP_PARSER_ERROR("XHP: unknown children declaration", _p
);
620 Token arr2
; _p
->onExprListElem(arr2
, &arr1
, name
);
624 static void xhp_children_decl(Parser
*_p
, Token
&out
, Token
&op1
, int op
,
626 Token num
; scalar_num(_p
, num
, op
);
627 Token arr
; _p
->onExprListElem(arr
, nullptr, num
);
630 Token arr1
; _p
->onExprListElem(arr1
, &arr
, op1
);
631 Token arr2
; _p
->onExprListElem(arr2
, &arr1
, *op2
);
632 _p
->onVArray(out
, arr2
);
634 xhp_children_decl_tag(_p
, arr
, op1
);
635 _p
->onVArray(out
, arr
);
639 static void xhp_children_paren(Parser
*_p
, Token
&out
, Token exp
, int op
) {
640 Token num
; scalar_num(_p
, num
, op
);
641 Token arr1
; _p
->onExprListElem(arr1
, nullptr, num
);
643 Token num5
; scalar_num(_p
, num5
, 5);
644 Token arr2
; _p
->onExprListElem(arr2
, &arr1
, num5
);
646 Token arr3
; _p
->onExprListElem(arr3
, &arr2
, exp
);
647 _p
->onVArray(out
, arr3
);
650 static void xhp_children_stmt(Parser
*_p
, Token
&out
, Token
&children
) {
651 Token fname
; fname
.setText("__xhpChildrenDeclaration");
652 Token m1
; m1
.setNum(T_PROTECTED
);
653 Token modifiers
; _p
->onMemberModifier(modifiers
, 0, m1
);
654 _p
->pushFuncLocation();
655 _p
->onMethodStart(fname
, modifiers
);
659 _p
->onStatementListStart(stmts0
);
665 if (children
.num() == 2) {
667 } else if (children
.num() >= 0) {
668 scalar_num(_p
, arr
, children
.num());
670 HPHP_PARSER_ERROR("XHP: XHP unknown children declaration", _p
);
672 Token ret
; _p
->onReturn(ret
, &arr
);
673 _p
->addStatement(stmts1
, stmts0
, ret
);
677 _p
->finishStatement(stmt
, stmts1
);
681 Token params
, ret
, ref
; ref
= 0;
682 _p
->onMethod(out
, modifiers
, ret
, ref
, fname
, params
, stmt
, nullptr, false);
686 static void only_in_hh_syntax(Parser
*_p
) {
687 if (!_p
->scanner().isHHSyntaxEnabled()) {
689 "Syntax only allowed in Hack files (<?hh) or with -v "
690 "Eval.EnableHipHopSyntax=true",
695 static void validate_hh_variadic_variant(Parser
* _p
,
696 Token
& userAttrs
, Token
& typehint
,
698 if (!userAttrs
.text().empty() || !typehint
.text().empty() ||
699 (mod
&& !mod
->text().empty())) {
700 HPHP_PARSER_ERROR("Variadic '...' should be followed by a '$variable'", _p
);
702 only_in_hh_syntax(_p
);
705 // Shapes may not have leading integers in key names, considered as a
706 // parse time error. This is because at runtime they are currently
707 // hphp arrays, which will treat leading integer keys as numbers.
708 static void validate_shape_keyname(Token
& tok
, Parser
* _p
) {
709 if (tok
.text().empty()) {
710 HPHP_PARSER_ERROR("Shape key names may not be empty", _p
);
712 if (isdigit(tok
.text()[0])) {
713 HPHP_PARSER_ERROR("Shape key names may not start with integers", _p
);
717 ///////////////////////////////////////////////////////////////////////////////
719 static int yylex(YYSTYPE
* token
, HPHP::Location
* loc
, Parser
* _p
) {
720 return _p
->scan(token
, loc
);
723 #line 723 "hphp.5.tab.cpp" /* yacc.c:339 */
726 # if defined __cplusplus && 201103L <= __cplusplus
727 # define YY_NULLPTR nullptr
729 # define YY_NULLPTR 0
733 /* Enabling verbose error messages. */
734 #ifdef YYERROR_VERBOSE
735 # undef YYERROR_VERBOSE
736 # define YYERROR_VERBOSE 1
738 # define YYERROR_VERBOSE 0
741 /* In a future release of Bison, this section will be replaced
742 by #include "hphp.5.tab.hpp". */
743 #ifndef YY_YY_HPHP_Y_INCLUDED
744 # define YY_YY_HPHP_Y_INCLUDED
750 extern int Compiler5debug
;
759 T_INCLUDE_ONCE
= 259,
762 T_REQUIRE_ONCE
= 262,
763 T_LAMBDA_ARROW
= 263,
772 T_CONCAT_EQUAL
= 272,
788 T_IS_NOT_EQUAL
= 288,
789 T_IS_IDENTICAL
= 289,
790 T_IS_NOT_IDENTICAL
= 290,
791 T_IS_SMALLER_OR_EQUAL
= 291,
792 T_IS_GREATER_OR_EQUAL
= 292,
818 T_STRING_VARNAME
= 318,
826 T_BAD_CHARACTER
= 326,
827 T_ENCAPSED_AND_WHITESPACE
= 327,
828 T_CONSTANT_ENCAPSED_STRING
= 328,
867 T_HALT_COMPILER
= 367,
872 T_OBJECT_OPERATOR
= 372,
873 T_NULLSAFE_OBJECT_OPERATOR
= 373,
874 T_DOUBLE_ARROW
= 374,
891 T_OPEN_TAG_WITH_ECHO
= 391,
894 T_START_HEREDOC
= 394,
896 T_DOLLAR_OPEN_CURLY_BRACES
= 396,
898 T_DOUBLE_COLON
= 398,
902 T_NS_SEPARATOR
= 402,
905 T_XHP_ATTRIBUTE
= 405,
906 T_XHP_CATEGORY
= 406,
907 T_XHP_CATEGORY_LABEL
= 407,
908 T_XHP_CHILDREN
= 408,
910 T_XHP_REQUIRED
= 410,
921 T_UNRESOLVED_LT
= 421,
926 T_UNRESOLVED_TYPE
= 426,
928 T_UNRESOLVED_NEWTYPE
= 428,
929 T_COMPILER_HALT_OFFSET
= 429,
933 T_UNRESOLVED_OP
= 433,
939 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
941 # define YYSTYPE_IS_TRIVIAL 1
942 # define YYSTYPE_IS_DECLARED 1
946 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
947 typedef struct YYLTYPE YYLTYPE
;
955 # define YYLTYPE_IS_DECLARED 1
956 # define YYLTYPE_IS_TRIVIAL 1
961 int Compiler5parse (HPHP::HPHP_PARSER_NS::Parser
*_p
);
963 #endif /* !YY_YY_HPHP_Y_INCLUDED */
965 /* Copy the second part of user declarations. */
967 #line 967 "hphp.5.tab.cpp" /* yacc.c:358 */
974 typedef YYTYPE_UINT8 yytype_uint8
;
976 typedef unsigned char yytype_uint8
;
980 typedef YYTYPE_INT8 yytype_int8
;
982 typedef signed char yytype_int8
;
986 typedef YYTYPE_UINT16 yytype_uint16
;
988 typedef unsigned short yytype_uint16
;
992 typedef YYTYPE_INT16 yytype_int16
;
994 typedef short yytype_int16
;
998 # ifdef __SIZE_TYPE__
999 # define YYSIZE_T __SIZE_TYPE__
1000 # elif defined size_t
1001 # define YYSIZE_T size_t
1002 # elif ! defined YYSIZE_T
1003 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
1004 # define YYSIZE_T size_t
1006 # define YYSIZE_T unsigned
1010 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
1013 # if defined YYENABLE_NLS && YYENABLE_NLS
1015 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
1016 # define YY_(Msgid) dgettext ("bison-runtime", Msgid)
1020 # define YY_(Msgid) Msgid
1024 #ifndef YY_ATTRIBUTE
1025 # if (defined __GNUC__ \
1026 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \
1027 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
1028 # define YY_ATTRIBUTE(Spec) __attribute__(Spec)
1030 # define YY_ATTRIBUTE(Spec) /* empty */
1034 #ifndef YY_ATTRIBUTE_PURE
1035 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__))
1038 #ifndef YY_ATTRIBUTE_UNUSED
1039 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
1042 #if !defined _Noreturn \
1043 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
1044 # if defined _MSC_VER && 1200 <= _MSC_VER
1045 # define _Noreturn __declspec (noreturn)
1047 # define _Noreturn YY_ATTRIBUTE ((__noreturn__))
1051 /* Suppress unused-variable warnings by "using" E. */
1052 #if ! defined lint || defined __GNUC__
1053 # define YYUSE(E) ((void) (E))
1055 # define YYUSE(E) /* empty */
1058 #if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
1059 /* Suppress an incorrect diagnostic about yylval being uninitialized. */
1060 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
1061 _Pragma ("GCC diagnostic push") \
1062 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
1063 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
1064 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
1065 _Pragma ("GCC diagnostic pop")
1067 # define YY_INITIAL_VALUE(Value) Value
1069 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1070 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1071 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
1073 #ifndef YY_INITIAL_VALUE
1074 # define YY_INITIAL_VALUE(Value) /* Nothing. */
1078 #if ! defined yyoverflow || YYERROR_VERBOSE
1080 /* The parser invokes alloca or malloc; define the necessary symbols. */
1082 # ifdef YYSTACK_USE_ALLOCA
1083 # if YYSTACK_USE_ALLOCA
1085 # define YYSTACK_ALLOC __builtin_alloca
1086 # elif defined __BUILTIN_VA_ARG_INCR
1087 # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
1089 # define YYSTACK_ALLOC __alloca
1090 # elif defined _MSC_VER
1091 # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
1092 # define alloca _alloca
1094 # define YYSTACK_ALLOC alloca
1095 # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
1096 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
1097 /* Use EXIT_SUCCESS as a witness for stdlib.h. */
1098 # ifndef EXIT_SUCCESS
1099 # define EXIT_SUCCESS 0
1106 # ifdef YYSTACK_ALLOC
1107 /* Pacify GCC's 'empty if-body' warning. */
1108 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
1109 # ifndef YYSTACK_ALLOC_MAXIMUM
1110 /* The OS might guarantee only one guard page at the bottom of the stack,
1111 and a page size can be as small as 4096 bytes. So we cannot safely
1112 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
1113 to allow for a few compiler-allocated temporary stack slots. */
1114 # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
1117 # define YYSTACK_ALLOC YYMALLOC
1118 # define YYSTACK_FREE YYFREE
1119 # ifndef YYSTACK_ALLOC_MAXIMUM
1120 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
1122 # if (defined __cplusplus && ! defined EXIT_SUCCESS \
1123 && ! ((defined YYMALLOC || defined malloc) \
1124 && (defined YYFREE || defined free)))
1125 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
1126 # ifndef EXIT_SUCCESS
1127 # define EXIT_SUCCESS 0
1131 # define YYMALLOC malloc
1132 # if ! defined malloc && ! defined EXIT_SUCCESS
1133 void *malloc (YYSIZE_T
); /* INFRINGES ON USER NAME SPACE */
1137 # define YYFREE free
1138 # if ! defined free && ! defined EXIT_SUCCESS
1139 void free (void *); /* INFRINGES ON USER NAME SPACE */
1143 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
1146 #if (! defined yyoverflow \
1147 && (! defined __cplusplus \
1148 || (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \
1149 && defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
1151 /* A type that is properly aligned for any stack member. */
1154 yytype_int16 yyss_alloc
;
1159 /* The size of the maximum gap between one aligned stack and the next. */
1160 # define YYSTACK_GAP_MAXIMUM (sizeof (struct yyalloc) - 1)
1162 /* The size of an array large to enough to hold all stacks, each with
1164 # define YYSTACK_BYTES(N) \
1165 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
1166 + 2 * YYSTACK_GAP_MAXIMUM)
1168 # define YYCOPY_NEEDED 1
1170 /* Relocate STACK from its old location to the new one. The
1171 local variables YYSIZE and YYSTACKSIZE give the old and new number of
1172 elements in the stack, and YYPTR gives the new location of the
1173 stack. Advance YYPTR to a properly aligned location for the next
1175 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
1178 YYSIZE_T yynewbytes; \
1179 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
1180 Stack = &yyptr->Stack_alloc; \
1181 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
1182 yyptr += yynewbytes / sizeof (*yyptr); \
1188 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
1189 /* Copy COUNT objects from SRC to DST. The source and destination do
1192 # if defined __GNUC__ && 1 < __GNUC__
1193 # define YYCOPY(Dst, Src, Count) \
1194 __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
1196 # define YYCOPY(Dst, Src, Count) \
1200 for (yyi = 0; yyi < (Count); yyi++) \
1201 (Dst)[yyi] = (Src)[yyi]; \
1206 #endif /* !YYCOPY_NEEDED */
1208 /* YYFINAL -- State number of the termination state. */
1210 /* YYLAST -- Last index in YYTABLE. */
1211 #define YYLAST 20144
1213 /* YYNTOKENS -- Number of terminals. */
1214 #define YYNTOKENS 209
1215 /* YYNNTS -- Number of nonterminals. */
1217 /* YYNRULES -- Number of rules. */
1218 #define YYNRULES 1131
1219 /* YYNSTATES -- Number of states. */
1220 #define YYNSTATES 2099
1222 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
1223 by yylex, with out-of-bounds checking. */
1224 #define YYUNDEFTOK 2
1225 #define YYMAXUTOK 434
1227 #define YYTRANSLATE(YYX) \
1228 ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
1230 /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
1231 as returned by yylex, without out-of-bounds checking. */
1232 static const yytype_uint8 yytranslate
[] =
1234 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1235 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1236 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1237 2, 2, 2, 56, 207, 2, 205, 55, 38, 208,
1238 199, 200, 53, 50, 9, 51, 52, 54, 2, 2,
1239 2, 2, 2, 2, 2, 2, 2, 2, 32, 201,
1240 43, 14, 45, 31, 68, 2, 2, 2, 2, 2,
1241 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1242 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1243 2, 70, 2, 204, 37, 2, 206, 2, 2, 2,
1244 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1245 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1246 2, 2, 2, 202, 36, 203, 58, 2, 2, 2,
1247 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1248 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1249 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1250 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1251 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1252 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1253 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1254 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1255 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1256 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1257 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1258 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1259 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
1260 5, 6, 7, 8, 10, 11, 12, 13, 15, 16,
1261 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1262 27, 28, 29, 30, 33, 34, 35, 39, 40, 41,
1263 42, 44, 46, 47, 48, 49, 57, 59, 60, 61,
1264 62, 63, 64, 65, 66, 67, 69, 71, 72, 73,
1265 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
1266 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
1267 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1268 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1269 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
1270 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1271 134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
1272 144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
1273 154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
1274 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
1275 174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
1276 184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
1277 194, 195, 196, 197, 198
1281 /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
1282 static const yytype_uint16 yyrline
[] =
1284 0, 821, 821, 821, 830, 832, 835, 836, 837, 838,
1285 839, 840, 841, 844, 846, 846, 848, 848, 850, 853,
1286 858, 863, 866, 869, 873, 877, 881, 885, 889, 894,
1287 895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
1288 905, 906, 910, 911, 912, 913, 914, 915, 916, 917,
1289 918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
1290 928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
1291 938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
1292 948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
1293 958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
1294 968, 969, 970, 971, 972, 973, 974, 978, 979, 983,
1295 984, 988, 989, 994, 996, 1001, 1006, 1007, 1008, 1010,
1296 1015, 1017, 1022, 1027, 1029, 1031, 1036, 1037, 1041, 1042,
1297 1044, 1048, 1055, 1062, 1066, 1072, 1074, 1078, 1079, 1085,
1298 1087, 1091, 1093, 1098, 1099, 1100, 1101, 1104, 1105, 1109,
1299 1114, 1114, 1120, 1120, 1127, 1126, 1132, 1132, 1137, 1138,
1300 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148,
1301 1149, 1150, 1151, 1155, 1153, 1162, 1160, 1167, 1177, 1171,
1302 1181, 1179, 1183, 1187, 1191, 1195, 1199, 1203, 1207, 1212,
1303 1213, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225,
1304 1226, 1227, 1228, 1250, 1256, 1257, 1266, 1268, 1272, 1273,
1305 1274, 1278, 1279, 1283, 1283, 1288, 1294, 1298, 1298, 1306,
1306 1307, 1311, 1312, 1316, 1322, 1320, 1337, 1334, 1352, 1349,
1307 1367, 1366, 1375, 1373, 1385, 1384, 1403, 1401, 1420, 1419,
1308 1428, 1426, 1437, 1437, 1444, 1443, 1455, 1453, 1466, 1467,
1309 1471, 1474, 1477, 1478, 1479, 1482, 1483, 1486, 1488, 1491,
1310 1492, 1495, 1496, 1499, 1500, 1504, 1505, 1510, 1511, 1514,
1311 1515, 1516, 1520, 1521, 1525, 1526, 1530, 1531, 1535, 1536,
1312 1541, 1542, 1548, 1549, 1550, 1551, 1554, 1557, 1559, 1562,
1313 1563, 1567, 1569, 1572, 1575, 1578, 1579, 1582, 1583, 1587,
1314 1593, 1599, 1606, 1608, 1613, 1618, 1624, 1628, 1633, 1638,
1315 1643, 1649, 1655, 1661, 1667, 1673, 1680, 1690, 1695, 1700,
1316 1706, 1708, 1712, 1716, 1721, 1725, 1729, 1733, 1737, 1742,
1317 1747, 1752, 1757, 1762, 1768, 1777, 1778, 1779, 1783, 1785,
1318 1788, 1790, 1792, 1794, 1796, 1799, 1802, 1805, 1811, 1812,
1319 1815, 1816, 1817, 1821, 1822, 1824, 1825, 1829, 1831, 1834,
1320 1838, 1844, 1846, 1849, 1852, 1856, 1860, 1865, 1867, 1870,
1321 1873, 1871, 1888, 1885, 1900, 1902, 1904, 1906, 1908, 1910,
1322 1912, 1916, 1917, 1918, 1921, 1927, 1931, 1937, 1940, 1945,
1323 1947, 1952, 1957, 1961, 1962, 1966, 1967, 1969, 1971, 1977,
1324 1978, 1980, 1984, 1985, 1990, 1994, 1995, 1999, 2000, 2004,
1325 2006, 2012, 2017, 2018, 2020, 2024, 2025, 2026, 2027, 2031,
1326 2032, 2033, 2034, 2035, 2036, 2038, 2043, 2046, 2047, 2051,
1327 2052, 2056, 2057, 2060, 2061, 2064, 2065, 2068, 2069, 2073,
1328 2074, 2075, 2076, 2077, 2078, 2079, 2083, 2084, 2087, 2088,
1329 2089, 2092, 2094, 2096, 2097, 2100, 2102, 2111, 2113, 2117,
1330 2121, 2125, 2130, 2134, 2135, 2137, 2138, 2139, 2140, 2143,
1331 2144, 2148, 2149, 2153, 2154, 2155, 2156, 2160, 2164, 2169,
1332 2173, 2177, 2181, 2185, 2190, 2194, 2195, 2196, 2197, 2198,
1333 2202, 2206, 2208, 2209, 2210, 2213, 2214, 2215, 2216, 2217,
1334 2218, 2219, 2220, 2221, 2222, 2223, 2224, 2225, 2226, 2227,
1335 2228, 2229, 2230, 2231, 2232, 2233, 2234, 2235, 2236, 2237,
1336 2238, 2239, 2240, 2241, 2242, 2243, 2244, 2245, 2246, 2247,
1337 2248, 2249, 2250, 2251, 2252, 2253, 2254, 2255, 2256, 2258,
1338 2259, 2261, 2262, 2264, 2265, 2266, 2267, 2268, 2269, 2270,
1339 2271, 2272, 2273, 2274, 2275, 2276, 2277, 2278, 2279, 2280,
1340 2281, 2282, 2283, 2284, 2285, 2286, 2287, 2288, 2289, 2293,
1341 2297, 2302, 2301, 2317, 2315, 2334, 2333, 2354, 2353, 2373,
1342 2372, 2391, 2391, 2408, 2408, 2427, 2428, 2429, 2434, 2436,
1343 2440, 2444, 2450, 2454, 2460, 2462, 2466, 2468, 2472, 2476,
1344 2477, 2478, 2482, 2484, 2488, 2490, 2494, 2496, 2500, 2503,
1345 2508, 2510, 2514, 2517, 2522, 2526, 2530, 2534, 2538, 2542,
1346 2546, 2550, 2554, 2558, 2562, 2566, 2570, 2574, 2578, 2582,
1347 2586, 2590, 2594, 2596, 2600, 2602, 2606, 2608, 2612, 2619,
1348 2626, 2628, 2633, 2634, 2635, 2636, 2637, 2638, 2639, 2640,
1349 2641, 2642, 2644, 2645, 2649, 2650, 2651, 2652, 2656, 2662,
1350 2675, 2692, 2693, 2696, 2697, 2699, 2704, 2705, 2708, 2712,
1351 2715, 2718, 2725, 2726, 2730, 2731, 2733, 2738, 2739, 2740,
1352 2741, 2742, 2743, 2744, 2745, 2746, 2747, 2748, 2749, 2750,
1353 2751, 2752, 2753, 2754, 2755, 2756, 2757, 2758, 2759, 2760,
1354 2761, 2762, 2763, 2764, 2765, 2766, 2767, 2768, 2769, 2770,
1355 2771, 2772, 2773, 2774, 2775, 2776, 2777, 2778, 2779, 2780,
1356 2781, 2782, 2783, 2784, 2785, 2786, 2787, 2788, 2789, 2790,
1357 2791, 2792, 2793, 2794, 2795, 2796, 2797, 2798, 2799, 2800,
1358 2801, 2802, 2803, 2804, 2805, 2806, 2807, 2808, 2809, 2810,
1359 2811, 2812, 2813, 2814, 2815, 2816, 2817, 2818, 2819, 2820,
1360 2824, 2829, 2830, 2834, 2835, 2836, 2837, 2839, 2843, 2844,
1361 2855, 2856, 2858, 2860, 2872, 2873, 2874, 2878, 2879, 2880,
1362 2884, 2885, 2886, 2889, 2891, 2895, 2896, 2897, 2898, 2900,
1363 2901, 2902, 2903, 2904, 2905, 2906, 2907, 2908, 2909, 2912,
1364 2917, 2918, 2919, 2921, 2922, 2924, 2925, 2926, 2927, 2928,
1365 2929, 2930, 2931, 2932, 2933, 2935, 2937, 2939, 2941, 2943,
1366 2944, 2945, 2946, 2947, 2948, 2949, 2950, 2951, 2952, 2953,
1367 2954, 2955, 2956, 2957, 2958, 2959, 2961, 2963, 2965, 2967,
1368 2968, 2971, 2972, 2976, 2980, 2982, 2986, 2987, 2991, 2997,
1369 3000, 3004, 3005, 3006, 3007, 3008, 3009, 3010, 3015, 3017,
1370 3021, 3022, 3025, 3026, 3030, 3033, 3035, 3037, 3041, 3042,
1371 3043, 3044, 3047, 3051, 3052, 3053, 3054, 3058, 3060, 3067,
1372 3068, 3069, 3070, 3075, 3076, 3077, 3078, 3080, 3081, 3083,
1373 3084, 3085, 3086, 3087, 3088, 3092, 3094, 3098, 3100, 3103,
1374 3106, 3108, 3110, 3113, 3115, 3119, 3121, 3124, 3127, 3133,
1375 3135, 3138, 3139, 3144, 3147, 3151, 3151, 3156, 3159, 3160,
1376 3164, 3165, 3169, 3170, 3171, 3175, 3177, 3185, 3186, 3190,
1377 3192, 3200, 3201, 3205, 3207, 3208, 3213, 3215, 3220, 3231,
1378 3245, 3257, 3272, 3273, 3274, 3275, 3276, 3277, 3278, 3288,
1379 3297, 3299, 3301, 3305, 3309, 3310, 3311, 3312, 3313, 3329,
1380 3330, 3340, 3341, 3342, 3343, 3344, 3345, 3346, 3348, 3349,
1381 3351, 3353, 3358, 3362, 3363, 3367, 3370, 3374, 3381, 3385,
1382 3394, 3401, 3403, 3409, 3411, 3412, 3416, 3417, 3418, 3425,
1383 3426, 3431, 3432, 3437, 3438, 3439, 3440, 3451, 3454, 3457,
1384 3458, 3459, 3460, 3471, 3476, 3477, 3478, 3479, 3481, 3483,
1385 3485, 3486, 3490, 3492, 3496, 3498, 3501, 3503, 3504, 3505,
1386 3509, 3511, 3514, 3517, 3519, 3521, 3525, 3526, 3528, 3529,
1387 3535, 3536, 3538, 3548, 3550, 3552, 3555, 3556, 3557, 3561,
1388 3562, 3563, 3564, 3565, 3566, 3567, 3568, 3569, 3570, 3571,
1389 3575, 3576, 3580, 3582, 3590, 3592, 3596, 3600, 3605, 3609,
1390 3617, 3618, 3622, 3623, 3629, 3630, 3639, 3640, 3648, 3651,
1391 3655, 3658, 3663, 3668, 3671, 3674, 3676, 3678, 3680, 3684,
1392 3686, 3687, 3688, 3691, 3693, 3699, 3700, 3704, 3705, 3709,
1393 3710, 3714, 3715, 3718, 3723, 3724, 3728, 3731, 3733, 3737,
1394 3743, 3744, 3745, 3749, 3753, 3761, 3766, 3778, 3780, 3784,
1395 3787, 3789, 3794, 3799, 3805, 3808, 3813, 3818, 3820, 3827,
1396 3829, 3832, 3833, 3836, 3839, 3840, 3845, 3847, 3851, 3857,
1401 #if YYDEBUG || YYERROR_VERBOSE || 0
1402 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
1403 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
1404 static const char *const yytname
[] =
1406 "$end", "error", "$undefined", "T_INCLUDE", "T_INCLUDE_ONCE", "T_EVAL",
1407 "T_REQUIRE", "T_REQUIRE_ONCE", "T_LAMBDA_ARROW", "','", "T_LOGICAL_OR",
1408 "T_LOGICAL_XOR", "T_LOGICAL_AND", "T_PRINT", "'='", "T_PLUS_EQUAL",
1409 "T_MINUS_EQUAL", "T_MUL_EQUAL", "T_DIV_EQUAL", "T_CONCAT_EQUAL",
1410 "T_MOD_EQUAL", "T_AND_EQUAL", "T_OR_EQUAL", "T_XOR_EQUAL", "T_SL_EQUAL",
1411 "T_SR_EQUAL", "T_POW_EQUAL", "T_AWAIT", "T_YIELD", "T_YIELD_FROM",
1412 "T_PIPE", "'?'", "':'", "\"??\"", "T_BOOLEAN_OR", "T_BOOLEAN_AND", "'|'",
1413 "'^'", "'&'", "T_IS_EQUAL", "T_IS_NOT_EQUAL", "T_IS_IDENTICAL",
1414 "T_IS_NOT_IDENTICAL", "'<'", "T_IS_SMALLER_OR_EQUAL", "'>'",
1415 "T_IS_GREATER_OR_EQUAL", "T_SPACESHIP", "T_SL", "T_SR", "'+'", "'-'",
1416 "'.'", "'*'", "'/'", "'%'", "'!'", "T_INSTANCEOF", "'~'", "T_INC",
1417 "T_DEC", "T_INT_CAST", "T_DOUBLE_CAST", "T_STRING_CAST", "T_ARRAY_CAST",
1418 "T_OBJECT_CAST", "T_BOOL_CAST", "T_UNSET_CAST", "'@'", "T_POW", "'['",
1419 "T_NEW", "T_CLONE", "T_EXIT", "T_IF", "T_ELSEIF", "T_ELSE", "T_ENDIF",
1420 "T_LNUMBER", "T_DNUMBER", "T_ONUMBER", "T_STRING", "T_STRING_VARNAME",
1421 "T_VARIABLE", "T_PIPE_VAR", "T_NUM_STRING", "T_INLINE_HTML", "T_INOUT",
1422 "T_HASHBANG", "T_CHARACTER", "T_BAD_CHARACTER",
1423 "T_ENCAPSED_AND_WHITESPACE", "T_CONSTANT_ENCAPSED_STRING", "T_ECHO",
1424 "T_DO", "T_WHILE", "T_ENDWHILE", "T_FOR", "T_ENDFOR", "T_FOREACH",
1425 "T_ENDFOREACH", "T_DECLARE", "T_ENDDECLARE", "T_AS", "T_SUPER",
1426 "T_SWITCH", "T_ENDSWITCH", "T_CASE", "T_DEFAULT", "T_BREAK", "T_GOTO",
1427 "T_CONTINUE", "T_FUNCTION", "T_CONST", "T_RETURN", "T_TRY", "T_CATCH",
1428 "T_THROW", "T_USING", "T_USE", "T_GLOBAL", "T_STATIC", "T_ABSTRACT",
1429 "T_FINAL", "T_PRIVATE", "T_PROTECTED", "T_PUBLIC", "T_VAR", "T_UNSET",
1430 "T_ISSET", "T_EMPTY", "T_HALT_COMPILER", "T_CLASS", "T_INTERFACE",
1431 "T_EXTENDS", "T_IMPLEMENTS", "T_OBJECT_OPERATOR",
1432 "T_NULLSAFE_OBJECT_OPERATOR", "T_DOUBLE_ARROW", "T_LIST", "T_ARRAY",
1433 "T_DICT", "T_VEC", "T_VARRAY", "T_DARRAY", "T_KEYSET", "T_CALLABLE",
1434 "T_CLASS_C", "T_METHOD_C", "T_FUNC_C", "T_LINE", "T_FILE", "T_COMMENT",
1435 "T_DOC_COMMENT", "T_OPEN_TAG", "T_OPEN_TAG_WITH_ECHO", "T_CLOSE_TAG",
1436 "T_WHITESPACE", "T_START_HEREDOC", "T_END_HEREDOC",
1437 "T_DOLLAR_OPEN_CURLY_BRACES", "T_CURLY_OPEN", "T_DOUBLE_COLON",
1438 "T_NAMESPACE", "T_NS_C", "T_DIR", "T_NS_SEPARATOR", "T_XHP_LABEL",
1439 "T_XHP_TEXT", "T_XHP_ATTRIBUTE", "T_XHP_CATEGORY",
1440 "T_XHP_CATEGORY_LABEL", "T_XHP_CHILDREN", "T_ENUM", "T_XHP_REQUIRED",
1441 "T_TRAIT", "\"...\"", "T_INSTEADOF", "T_TRAIT_C", "T_HH_ERROR",
1442 "T_FINALLY", "T_XHP_TAG_LT", "T_XHP_TAG_GT", "T_TYPELIST_LT",
1443 "T_TYPELIST_GT", "T_UNRESOLVED_LT", "T_COLLECTION", "T_SHAPE", "T_TUPLE",
1444 "T_TYPE", "T_UNRESOLVED_TYPE", "T_NEWTYPE", "T_UNRESOLVED_NEWTYPE",
1445 "T_COMPILER_HALT_OFFSET", "T_ASYNC", "T_LAMBDA_OP", "T_LAMBDA_CP",
1446 "T_UNRESOLVED_OP", "T_WHERE", "'('", "')'", "';'", "'{'", "'}'", "']'",
1447 "'$'", "'`'", "'\"'", "'\\''", "$accept", "start", "$@1",
1448 "top_statement_list", "top_statement", "$@2", "$@3",
1449 "ident_no_semireserved", "ident_for_class_const", "ident",
1450 "group_use_prefix", "non_empty_use_declarations", "use_declarations",
1451 "use_declaration", "non_empty_mixed_use_declarations",
1452 "mixed_use_declarations", "mixed_use_declaration", "namespace_name",
1453 "namespace_string", "namespace_string_typeargs",
1454 "class_namespace_string_typeargs", "constant_declaration",
1455 "function_statement_list", "function_statement", "inner_statement_list",
1456 "inner_statement_list_nonempty", "inner_statement", "statement", "$@4",
1457 "$@5", "$@6", "$@7", "$@8", "$@9", "$@10", "$@11", "using_prologue",
1458 "opt_await", "using_expr_list", "using_expr", "using_statement_list",
1459 "try_statement_list", "$@12", "additional_catches",
1460 "finally_statement_list", "$@13", "optional_finally", "is_reference",
1461 "function_loc", "function_declaration_statement", "$@14", "$@15", "$@16",
1462 "enum_declaration_statement", "$@17", "$@18",
1463 "class_declaration_statement", "$@19", "$@20", "$@21", "$@22",
1464 "class_expression", "$@23", "trait_declaration_statement", "$@24",
1465 "$@25", "class_decl_name", "interface_decl_name", "trait_decl_name",
1466 "class_entry_type", "extends_from", "implements_list",
1467 "interface_extends_list", "interface_list", "trait_list",
1468 "foreach_optional_arg", "foreach_variable", "for_statement",
1469 "foreach_statement", "while_statement", "declare_statement",
1470 "declare_list", "switch_case_list", "case_list", "case_separator",
1471 "elseif_list", "new_elseif_list", "else_single", "new_else_single",
1472 "method_parameter_list", "non_empty_method_parameter_list",
1473 "parameter_list", "non_empty_parameter_list", "inout_variable",
1474 "function_call_parameter_list", "non_empty_fcall_parameter_list",
1475 "global_var_list", "global_var", "static_var_list",
1476 "enum_statement_list", "enum_statement", "enum_constant_declaration",
1477 "class_statement_list", "class_statement", "$@26", "$@27", "trait_rules",
1478 "trait_precedence_rule", "trait_alias_rule", "trait_alias_rule_method",
1479 "xhp_attribute_stmt", "xhp_attribute_decl",
1480 "xhp_nullable_attribute_decl_type", "xhp_attribute_decl_type",
1481 "non_empty_xhp_attribute_enum", "xhp_attribute_enum",
1482 "xhp_attribute_default", "xhp_attribute_is_required",
1483 "xhp_category_stmt", "xhp_category_decl", "xhp_children_stmt",
1484 "xhp_children_paren_expr", "xhp_children_decl_expr",
1485 "xhp_children_decl_tag", "function_body", "method_body",
1486 "variable_modifiers", "method_modifiers", "non_empty_member_modifiers",
1487 "member_modifier", "parameter_modifiers", "parameter_modifier",
1488 "class_variable_declaration", "class_constant_declaration",
1489 "class_abstract_constant_declaration", "class_type_constant_declaration",
1490 "class_type_constant", "parenthesis_expr_with_parens",
1491 "expr_with_parens", "expr_list", "for_expr", "yield_expr",
1492 "yield_assign_expr", "yield_list_assign_expr", "yield_from_expr",
1493 "yield_from_assign_expr", "await_expr", "await_assign_expr",
1494 "await_list_assign_expr", "parenthesis_expr", "expr",
1495 "parenthesis_expr_no_variable", "expr_no_variable", "lambda_use_vars",
1496 "closure_expression", "$@28", "$@29", "lambda_expression", "$@30",
1497 "$@31", "$@32", "$@33", "$@34", "lambda_body", "shape_keyname",
1498 "non_empty_shape_pair_list", "non_empty_static_shape_pair_list",
1499 "shape_pair_list", "static_shape_pair_list", "shape_literal",
1500 "array_literal", "dict_pair_list", "non_empty_dict_pair_list",
1501 "static_dict_pair_list", "non_empty_static_dict_pair_list",
1502 "static_dict_pair_list_ae", "non_empty_static_dict_pair_list_ae",
1503 "dict_literal", "static_dict_literal", "static_dict_literal_ae",
1504 "vec_literal", "static_vec_literal", "static_vec_literal_ae",
1505 "keyset_literal", "static_keyset_literal", "static_keyset_literal_ae",
1506 "tuple_literal", "static_tuple_literal", "static_tuple_literal_ae",
1507 "varray_literal", "static_varray_literal", "static_varray_literal_ae",
1508 "darray_literal", "static_darray_literal", "static_darray_literal_ae",
1509 "vec_ks_expr_list", "static_vec_ks_expr_list",
1510 "static_vec_ks_expr_list_ae", "collection_literal",
1511 "static_collection_literal", "dim_expr", "dim_expr_base",
1512 "lexical_var_list", "xhp_tag", "xhp_tag_body", "xhp_opt_end_label",
1513 "xhp_attributes", "xhp_children", "xhp_attribute_name",
1514 "xhp_attribute_value", "xhp_child", "xhp_label_ws", "xhp_bareword",
1515 "simple_function_call", "fully_qualified_class_name",
1516 "static_class_name_base", "static_class_name_no_calls",
1517 "static_class_name", "class_name_reference", "exit_expr",
1518 "backticks_expr", "ctor_arguments", "common_scalar", "static_expr",
1519 "static_expr_list", "static_class_class_constant",
1520 "static_class_constant", "scalar", "static_array_pair_list",
1521 "possible_comma", "hh_possible_comma",
1522 "non_empty_static_array_pair_list", "common_scalar_ae",
1523 "static_numeric_scalar_ae", "static_string_expr_ae", "static_scalar_ae",
1524 "static_scalar_ae_list", "static_array_pair_list_ae",
1525 "non_empty_static_array_pair_list_ae", "non_empty_static_scalar_list_ae",
1526 "static_shape_pair_list_ae", "non_empty_static_shape_pair_list_ae",
1527 "static_scalar_list_ae", "attribute_static_scalar_list",
1528 "non_empty_user_attribute_list", "user_attribute_list", "$@35",
1529 "non_empty_user_attributes", "optional_user_attributes",
1530 "object_operator", "object_property_name_no_variables",
1531 "object_property_name", "object_method_name_no_variables",
1532 "object_method_name", "array_access", "dimmable_variable_access",
1533 "dimmable_variable_no_calls_access", "object_property_access_on_expr",
1534 "object_property_access_on_expr_no_variables", "variable",
1535 "parenthesis_variable", "dimmable_variable_no_parens",
1536 "callable_variable", "lambda_or_closure_with_parens",
1537 "lambda_or_closure", "object_method_call", "class_method_call",
1538 "variable_no_objects", "reference_variable", "compound_variable",
1539 "dim_offset", "simple_indirect_reference", "variable_no_calls",
1540 "dimmable_variable_no_calls", "array_pair_list", "collection_init",
1541 "non_empty_collection_init", "static_collection_init",
1542 "non_empty_static_collection_init", "encaps_list", "encaps_var",
1543 "encaps_var_offset", "internal_functions", "variable_list",
1544 "class_constant", "hh_opt_constraint", "hh_type_alias_statement",
1545 "hh_name_with_type", "hh_constname_with_type", "hh_name_with_typevar",
1546 "hh_name_no_semireserved_with_typevar", "hh_typeargs_opt",
1547 "hh_non_empty_type_list", "hh_type_list", "hh_non_empty_func_type_list",
1548 "hh_func_type_list", "opt_type_constraint_where_clause",
1549 "non_empty_constraint_list", "hh_generalised_constraint",
1550 "opt_return_type", "hh_constraint", "hh_typevar_list",
1551 "hh_non_empty_constraint_list", "hh_non_empty_typevar_list",
1552 "hh_typevar_variance", "hh_shape_member_type",
1553 "hh_non_empty_shape_member_list", "hh_shape_member_list",
1554 "hh_shape_type", "hh_access_type_start", "hh_access_type",
1555 "array_typelist", "hh_type", "hh_type_opt", YY_NULLPTR
1560 /* YYTOKNUM[NUM] -- (External) token number corresponding to the
1561 (internal) symbol number NUM (which must be that of a token). */
1562 static const yytype_uint16 yytoknum
[] =
1564 0, 256, 257, 258, 259, 260, 261, 262, 263, 44,
1565 264, 265, 266, 267, 61, 268, 269, 270, 271, 272,
1566 273, 274, 275, 276, 277, 278, 279, 280, 281, 282,
1567 283, 63, 58, 284, 285, 286, 124, 94, 38, 287,
1568 288, 289, 290, 60, 291, 62, 292, 293, 294, 295,
1569 43, 45, 46, 42, 47, 37, 33, 296, 126, 297,
1570 298, 299, 300, 301, 302, 303, 304, 305, 64, 306,
1571 91, 307, 308, 309, 310, 311, 312, 313, 314, 315,
1572 316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
1573 326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
1574 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
1575 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
1576 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
1577 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
1578 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
1579 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
1580 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
1581 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
1582 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
1583 426, 427, 428, 429, 430, 431, 432, 433, 434, 40,
1584 41, 59, 123, 125, 93, 36, 96, 34, 39
1588 #define YYPACT_NINF -1789
1590 #define yypact_value_is_default(Yystate) \
1591 (!!((Yystate) == (-1789)))
1593 #define YYTABLE_NINF -1132
1595 #define yytable_value_is_error(Yytable_value) \
1596 (!!((Yytable_value) == (-1132)))
1598 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1600 static const yytype_int16 yypact
[] =
1602 -1789, 185, -1789, -1789, 5624, 14932, 14932, -8, 14932, 14932,
1603 14932, 14932, 12533, 14932, -1789, 14932, 14932, 14932, 14932, 18423,
1604 18423, 14932, 14932, 14932, 14932, 14932, 14932, 14932, 14932, 12712,
1605 19161, 14932, -3, 15, -1789, -1789, -1789, 177, -1789, 273,
1606 -1789, -1789, -1789, 224, 14932, -1789, 15, 170, 262, 307,
1607 -1789, 15, 12891, 15868, 13070, -1789, 15796, 11396, 95, 14932,
1608 4648, 153, 109, 505, 73, -1789, -1789, -1789, 349, 369,
1609 391, 397, -1789, 15868, 433, 437, 461, 515, 576, 586,
1610 591, -1789, -1789, -1789, -1789, -1789, 14932, 666, 4182, -1789,
1611 -1789, 15868, -1789, -1789, -1789, -1789, 15868, -1789, 15868, -1789,
1612 359, 442, 464, 15868, 15868, -1789, 51, -1789, -1789, 13276,
1613 -1789, -1789, 481, 542, 751, 751, -1789, 634, 519, 559,
1614 499, -1789, 87, -1789, 545, 572, 691, -1789, -1789, -1789,
1615 -1789, 5245, 615, -1789, 229, -1789, 562, 578, 606, 623,
1616 629, 632, 646, 652, 17307, -1789, -1789, -1789, -1789, -1789,
1617 101, 676, 690, 792, 795, 816, 822, -1789, 832, 840,
1618 -1789, 217, 553, -1789, 694, 20, -1789, 1210, 157, -1789,
1619 -1789, 2991, 229, 229, 715, 99, -1789, 169, 199, 718,
1620 204, -1789, 91, -1789, 849, -1789, 763, -1789, -1789, 757,
1621 -1789, 14932, -1789, 691, 615, 19634, 147, 3504, 19634, 14932,
1622 19634, 19634, 16345, 16345, 727, 18596, 19634, 886, 15868, 873,
1623 873, 753, 873, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1624 -1789, -1789, 93, 14932, 768, -1789, -1789, 793, 767, 583,
1625 778, 583, 873, 873, 873, 873, 873, 873, 873, 873,
1626 18423, 18644, 81, 763, -1789, 14932, 768, -1789, 794, -1789,
1627 823, 785, -1789, 242, -1789, -1789, -1789, 583, 229, -1789,
1628 13455, -1789, -1789, 14932, 10160, 978, 90, 19634, 11190, -1789,
1629 14932, 14932, 15868, -1789, -1789, 17355, 787, -1789, 17406, -1789,
1630 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, 17859,
1631 -1789, 17859, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1632 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1633 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1634 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1635 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1636 -1789, 89, 116, 757, -1789, -1789, -1789, -1789, 788, -1789,
1637 17715, 122, -1789, -1789, 828, 977, -1789, 837, 16537, 14932,
1638 -1789, 799, 800, 17476, -1789, 61, 17524, 15510, 15510, 15510,
1639 15868, 15510, 806, 1000, 810, -1789, 84, -1789, 18242, 102,
1640 -1789, 998, 105, 889, -1789, 890, -1789, 18423, 14932, 14932,
1641 818, 841, -1789, -1789, 12712, 12712, 14932, 14932, 14932, 14932,
1642 14932, 112, 532, 491, -1789, 15111, 18423, 700, -1789, 15868,
1643 -1789, 549, 519, -1789, -1789, -1789, -1789, 19263, 14932, 1013,
1644 930, -1789, -1789, -1789, 119, 14932, 836, 838, 19634, 842,
1645 779, 844, 6246, 14932, 544, 834, 786, 544, 521, 517,
1646 -1789, 15868, 17859, 846, 11575, 15796, -1789, 13661, 839, 839,
1647 839, 839, -1789, -1789, 3939, -1789, -1789, -1789, -1789, -1789,
1648 691, -1789, 14932, 14932, -1789, -1789, -1789, -1789, -1789, -1789,
1649 -1789, -1789, -1789, 14932, 14932, 14932, 14932, 13840, 14932, 14932,
1650 14932, 14932, 14932, 14932, 14932, 14932, 14932, 14932, 14932, 14932,
1651 14932, 14932, 14932, 14932, 14932, 14932, 14932, 14932, 14932, 14932,
1652 14932, 19339, 14932, -1789, 11951, 14932, 14932, 14932, 5396, 15868,
1653 15868, 15868, 15868, 15868, 5245, 934, 1347, 5134, 14932, 14932,
1654 14932, 14932, 14932, 14932, 14932, 14932, 14932, 14932, 14932, 14932,
1655 -1789, -1789, -1789, -1789, 2665, -1789, -1789, 11575, 11575, 14932,
1656 14932, 481, 326, 850, 691, 14932, 14019, 17575, -1789, 14932,
1657 -1789, 851, 1039, 894, 854, 855, 15284, 583, 14198, 14377,
1658 -1789, 785, 860, 862, 2479, -1789, 159, 11575, -1789, 2897,
1659 -1789, -1789, 17645, -1789, -1789, 12148, -1789, 14932, -1789, 972,
1660 10366, 1060, 870, 19512, 1058, 128, 80, -1789, -1789, -1789,
1661 891, -1789, -1789, -1789, 17859, -1789, 2531, 876, 1069, 18090,
1662 15868, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1663 892, -1789, -1789, 883, 888, 895, 899, 902, 905, 272,
1664 915, 918, 4841, 15689, -1789, -1789, 15868, 15868, 14932, 583,
1665 153, -1789, 18090, 1033, -1789, -1789, -1789, 583, 134, 143,
1666 920, 922, 2572, 63, 924, 925, 672, 994, 144, 148,
1667 18705, 926, 1120, 1122, 928, 931, 932, 933, -1789, 4858,
1668 15868, -1789, -1789, 1070, 3930, 70, -1789, -1789, -1789, 519,
1669 -1789, -1789, -1789, 1107, 1007, 963, 195, 984, 14932, 481,
1670 1010, 1142, 952, -1789, 991, -1789, 326, -1789, 954, 17859,
1671 17859, 1141, 978, 119, -1789, 961, 1149, -1789, 17763, 367,
1672 -1789, 439, 241, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1673 1172, 4109, -1789, -1789, -1789, -1789, 1150, 980, -1789, 18423,
1674 685, 14932, 965, 1157, 19634, 1153, 151, 1159, 969, 973,
1675 974, 19634, 975, 2627, 6452, -1789, -1789, -1789, -1789, -1789,
1676 -1789, 1042, 4436, 19634, 981, 4382, 19773, 19864, 16345, 16166,
1677 14932, 19586, 19937, 15285, 3785, 20075, 3855, 15797, 15976, 15976,
1678 15976, 15976, 1644, 1644, 1644, 1644, 1644, 1690, 1690, 914,
1679 914, 914, 753, 753, 753, -1789, 873, -1789, -1789, 16345,
1680 983, 985, 18753, 988, 1168, 16, 14932, 226, 768, 39,
1681 326, -1789, -1789, -1789, 1170, 930, -1789, 691, 18347, -1789,
1682 -1789, -1789, 16345, 16345, 16345, 16345, 16345, 16345, 16345, 16345,
1683 16345, 16345, 16345, 16345, 16345, -1789, 14932, 456, 340, -1789,
1684 -1789, 768, 488, 992, 995, 990, 4866, 989, -1789, 19634,
1685 18166, -1789, 15868, -1789, 583, 76, 18423, 19634, 18423, 18814,
1686 1042, 371, 583, 341, 1035, 1004, 14932, -1789, 354, -1789,
1687 -1789, -1789, 6658, 712, -1789, -1789, 19634, 19634, 15, -1789,
1688 -1789, -1789, 14932, 1095, 18014, 18090, 15868, 10572, 1005, 1008,
1689 -1789, 1199, 4959, 1072, -1789, 1049, -1789, 1204, 1015, 3411,
1690 17859, 18090, 18090, 18090, 18090, 18090, 1018, 1152, 1154, 1156,
1691 1158, 1160, 1021, 1028, 18090, 409, -1789, -1789, -1789, -1789,
1692 -1789, -1789, -1789, 14, -1789, 19728, -1789, -1789, 271, -1789,
1693 6864, 5444, 1030, 15689, -1789, 15689, -1789, 15689, -1789, 15868,
1694 15868, 15689, -1789, 15689, 15689, 15868, -1789, 1225, 1032, -1789,
1695 299, -1789, -1789, 5324, -1789, 19728, 1222, 18423, 1040, -1789,
1696 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, 1061, 1233,
1697 15868, 5444, 1045, -1789, -1789, 14932, -1789, 14932, -1789, 14932,
1698 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, 1044, -1789,
1699 14932, -1789, -1789, 5834, -1789, 17859, 5444, 1051, -1789, -1789,
1700 -1789, -1789, 1075, 1240, 1055, 14932, 19263, -1789, -1789, 5396,
1701 -1789, 1066, -1789, 17859, -1789, 1073, 7070, 1236, 145, -1789,
1702 17859, -1789, 173, 2665, 2665, -1789, 17859, -1789, -1789, 583,
1703 -1789, -1789, 1200, 19634, -1789, 11754, -1789, 18090, 13661, 839,
1704 13661, -1789, 839, 839, -1789, 12354, -1789, -1789, 7276, -1789,
1705 133, 1077, 5444, 1007, -1789, -1789, -1789, -1789, 19937, 14932,
1706 -1789, -1789, 14932, -1789, 14932, -1789, 17016, 1079, 11575, 994,
1707 1247, 1007, 17859, 1267, 1042, 15868, 19339, 583, 17064, 1087,
1708 250, 1089, -1789, -1789, 4365, 4365, 18166, -1789, -1789, -1789,
1709 1237, 1092, 1230, 1238, 1239, 1242, 1243, 98, 1104, 1108,
1710 569, -1789, -1789, -1789, -1789, -1789, -1789, 1144, -1789, -1789,
1711 -1789, -1789, 1307, 1117, 851, 583, 583, 14556, 1007, 2897,
1712 -1789, 2897, -1789, 17112, 761, 15, 11190, -1789, 7482, 1118,
1713 7688, 1119, 18014, 18423, 1180, 1123, 583, 19728, 1309, -1789,
1714 -1789, -1789, -1789, 825, -1789, 327, 17859, 1140, 1188, 1165,
1715 17859, 15868, 3574, -1789, -1789, 17859, 1320, 1138, 1174, 1176,
1716 1150, 797, 797, 1275, 1275, 4183, 1163, 1339, 18090, 18090,
1717 18090, 18090, 18090, 18090, 19263, 18090, 3419, 16691, 18090, 18090,
1718 18090, 18090, 17938, 18090, 18090, 18090, 18090, 18090, 18090, 18090,
1719 18090, 18090, 18090, 18090, 18090, 18090, 18090, 18090, 18090, 18090,
1720 18090, 18090, 18090, 18090, 18090, 18090, 15868, -1789, -1789, 1270,
1721 -1789, -1789, 1155, 1167, 1171, -1789, 1175, -1789, -1789, 301,
1722 4841, -1789, 1162, -1789, 18090, 583, -1789, -1789, 171, -1789,
1723 740, 1351, -1789, -1789, 19634, 18862, -1789, 2922, -1789, 6040,
1724 930, 1351, -1789, 396, 14932, 213, -1789, 19634, 1218, 1178,
1725 -1789, 1179, 1236, -1789, -1789, -1789, 14753, 17859, 978, 17811,
1726 1278, 274, 1357, 1292, 357, -1789, 768, 386, -1789, 768,
1727 -1789, 14932, 18423, 685, 14932, 19634, 19728, -1789, -1789, -1789,
1728 4031, -1789, -1789, -1789, -1789, -1789, -1789, 1181, 133, -1789,
1729 1182, 133, 1183, 19937, 19634, 18923, 1190, 11575, 1187, 1189,
1730 17859, 1191, 1193, 17859, 1007, -1789, 785, 560, 11575, -1789,
1731 -1789, -1789, -1789, -1789, -1789, 1252, 1192, 1386, 1305, 18166,
1732 18166, 18166, 18166, 18166, 18166, 1241, -1789, 19263, 18166, 92,
1733 18166, -1789, -1789, -1789, 18423, 19634, 1201, -1789, 15, 1370,
1734 1335, 11190, -1789, -1789, -1789, 1212, 14932, 1180, 583, 18014,
1735 1215, 18090, 7894, 833, 1220, 14932, 85, 486, -1789, 1244,
1736 -1789, 17859, 15868, -1789, 1288, -1789, -1789, -1789, 17565, -1789,
1737 1398, -1789, 1235, 18090, -1789, 18090, -1789, 1249, 1229, 1427,
1738 18971, 1246, 19728, 1428, 1250, 1251, 1254, 1303, 1433, 1253,
1739 1256, -1789, -1789, -1789, 19031, 1248, 1435, 19820, 16533, 19900,
1740 18090, 19682, 20008, 20042, 18022, 15618, 18430, 19346, 19346, 19346,
1741 19346, 3086, 3086, 3086, 3086, 3086, 1499, 1499, 797, 797,
1742 797, 1275, 1275, 1275, 1275, -1789, 1259, -1789, 1261, 1263,
1743 1264, 1265, -1789, -1789, 19728, 15868, 17859, 17859, -1789, 740,
1744 5444, 107, 14932, 1272, -1789, 1274, 651, -1789, 360, 14932,
1745 -1789, -1789, 17160, -1789, 14932, -1789, 14932, -1789, 978, 13661,
1746 1277, 389, 839, 389, 356, -1789, -1789, 17859, 187, -1789,
1747 1465, 1397, 14932, -1789, 1283, 1285, 1281, 583, 1200, 19634,
1748 1236, 1293, -1789, 1294, 133, 14932, 11575, 1296, -1789, -1789,
1749 930, -1789, -1789, 1298, 1299, 1301, -1789, 1302, 18166, -1789,
1750 18166, -1789, -1789, 1306, 1304, 1494, 1369, 1312, -1789, 1501,
1751 1315, 1316, 1318, -1789, 1373, 1313, 1514, 1324, -1789, -1789,
1752 583, -1789, 1493, -1789, 1325, -1789, -1789, 1328, 1330, -1789,
1753 -1789, 19728, 1331, 1333, -1789, 3136, -1789, -1789, -1789, -1789,
1754 -1789, -1789, 1400, 17859, 17859, 1174, 1360, 17859, -1789, 19728,
1755 19077, -1789, -1789, 18090, -1789, 18090, -1789, 18090, -1789, -1789,
1756 -1789, -1789, 18090, 19263, -1789, -1789, -1789, 18090, -1789, 18090,
1757 -1789, 19973, 18090, 1337, 8100, -1789, -1789, -1789, -1789, 740,
1758 -1789, -1789, -1789, -1789, 736, 15975, 5444, 1429, -1789, 2344,
1759 1372, 3219, -1789, -1789, 1457, 934, 4526, 123, 129, 1343,
1760 930, 1347, 19634, -1789, -1789, -1789, 1378, 17211, -1789, 17259,
1761 19634, -1789, 2800, -1789, 6452, 1464, 284, 1534, 1475, 14932,
1762 -1789, 19634, 11575, 11575, -1789, 1441, 1236, 1814, 1236, 1361,
1763 19634, 1362, -1789, 2131, 1367, 2186, -1789, -1789, 133, -1789,
1764 -1789, 1432, -1789, -1789, 18166, -1789, 18166, -1789, 18166, -1789,
1765 -1789, -1789, -1789, 18166, -1789, 19263, -1789, -1789, 2289, -1789,
1766 8306, -1789, -1789, -1789, 10778, -1789, -1789, -1789, 6658, 17859,
1767 -1789, -1789, -1789, 1371, 18090, 19137, 19728, 19728, 19728, 1434,
1768 19728, 19183, 19973, -1789, -1789, 740, 5444, 5444, 15868, -1789,
1769 1559, 16845, 82, -1789, 15975, 930, 4514, -1789, 1391, -1789,
1770 130, 1375, 131, -1789, 16344, -1789, -1789, -1789, 135, -1789,
1771 -1789, 2614, -1789, 1377, -1789, 1565, 136, 691, 1457, 16165,
1772 -1789, 16165, -1789, -1789, 1567, 934, 17636, 15438, -1789, -1789,
1773 -1789, -1789, 3206, -1789, 1569, 1502, 14932, -1789, 19634, 1387,
1774 1388, 1392, 1236, 1394, -1789, 1441, 1236, -1789, -1789, -1789,
1775 -1789, 2353, 1390, 18166, 1455, -1789, -1789, -1789, 1458, -1789,
1776 6658, 10984, 10778, -1789, -1789, -1789, 6658, -1789, -1789, 19728,
1777 18090, 18090, 18090, 8512, 1399, 1402, -1789, 18090, -1789, 5444,
1778 -1789, -1789, -1789, -1789, -1789, 17859, 1340, 2344, -1789, -1789,
1779 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1780 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1781 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1782 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1783 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1784 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1785 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1786 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
1787 -1789, -1789, 679, -1789, 1372, -1789, -1789, -1789, -1789, -1789,
1788 118, 530, -1789, 18090, 1512, -1789, 16537, 137, 1585, -1789,
1789 17859, 691, 138, 1457, -1789, -1789, 1403, 1592, 14932, -1789,
1790 19634, -1789, -1789, 165, 1405, 17859, 678, 1236, 1394, 15617,
1791 -1789, 1236, -1789, 18166, 18166, -1789, -1789, -1789, -1789, 8718,
1792 19728, 19728, 19728, -1789, -1789, -1789, 19728, -1789, 731, 1599,
1793 1600, 1408, -1789, -1789, 18090, 16344, 16344, 1544, -1789, 2614,
1794 2614, 703, -1789, -1789, -1789, 19728, 1601, 1430, 1415, -1789,
1795 18090, -1789, 16537, -1789, 139, -1789, 18090, 19634, 1533, -1789,
1796 1608, -1789, 1610, -1789, 156, -1789, -1789, -1789, 1418, 678,
1797 -1789, 678, -1789, -1789, 8924, 1420, 1507, -1789, 1521, 1463,
1798 -1789, -1789, 1523, 17859, 1443, 1340, -1789, -1789, 19728, -1789,
1799 -1789, 1454, -1789, 1593, -1789, -1789, -1789, -1789, 18090, 672,
1800 -1789, 19728, 1431, -1789, 19728, -1789, 380, 1437, 9130, 17859,
1801 -1789, 17859, -1789, 9336, -1789, -1789, -1789, 1438, -1789, 1444,
1802 1467, 15868, 1347, 1461, -1789, -1789, -1789, 19728, 1468, 150,
1803 -1789, 1568, -1789, -1789, -1789, -1789, -1789, -1789, 9542, -1789,
1804 5444, 1030, -1789, 1476, 15868, 872, -1789, -1789, 1456, 1646,
1805 571, 150, -1789, -1789, 1574, -1789, 5444, 1460, -1789, 1236,
1806 152, -1789, 17859, -1789, -1789, -1789, 17859, -1789, 1459, 1462,
1807 141, -1789, 1394, 660, 1575, 197, 1236, 1470, -1789, 682,
1808 17859, 17859, -1789, 329, 1649, 1582, 1394, -1789, -1789, -1789,
1809 -1789, 1583, 206, 1653, 1587, 14932, -1789, 682, 9748, 9954,
1810 -1789, 334, 1660, 1595, 14932, -1789, 19634, -1789, -1789, -1789,
1811 1661, 1597, 14932, -1789, 19634, 14932, -1789, 19634, 19634
1814 /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
1815 Performed when YYTABLE does not specify something else to do. Zero
1816 means the default is an error. */
1817 static const yytype_uint16 yydefact
[] =
1819 2, 0, 5, 1, 3, 0, 0, 0, 0, 0,
1820 0, 204, 473, 0, 915, 0, 0, 0, 0, 0,
1821 0, 0, 0, 0, 0, 0, 0, 0, 0, 1013,
1822 999, 0, 779, 0, 785, 786, 787, 29, 852, 986,
1823 987, 171, 172, 788, 0, 152, 0, 0, 0, 0,
1824 30, 0, 0, 0, 0, 223, 0, 0, 0, 0,
1825 0, 0, 442, 443, 444, 441, 440, 439, 0, 0,
1826 0, 0, 252, 0, 0, 0, 37, 38, 40, 41,
1827 39, 792, 794, 795, 789, 790, 0, 0, 0, 796,
1828 791, 0, 762, 32, 33, 34, 36, 35, 0, 793,
1829 0, 0, 0, 0, 0, 797, 445, 583, 31, 0,
1830 170, 140, 991, 780, 0, 0, 4, 126, 128, 851,
1831 0, 761, 0, 6, 0, 0, 222, 7, 9, 8,
1832 10, 0, 0, 437, 968, 487, 0, 0, 0, 0,
1833 0, 0, 0, 0, 0, 543, 485, 973, 974, 565,
1834 558, 559, 560, 561, 564, 562, 563, 468, 568, 0,
1835 467, 943, 763, 770, 0, 854, 557, 436, 946, 947,
1836 959, 486, 0, 0, 0, 489, 488, 944, 945, 942,
1837 981, 985, 0, 547, 853, 11, 442, 443, 444, 0,
1838 36, 0, 126, 222, 0, 1045, 558, 486, 1046, 0,
1839 1048, 1049, 567, 481, 0, 474, 479, 0, 0, 529,
1840 530, 531, 532, 29, 986, 788, 765, 37, 38, 40,
1841 41, 39, 0, 0, 1069, 964, 763, 0, 764, 508,
1842 0, 510, 548, 549, 550, 551, 552, 553, 554, 556,
1843 0, 1007, 0, 775, 242, 0, 1069, 465, 774, 768,
1844 0, 784, 764, 994, 995, 1001, 993, 776, 0, 466,
1845 0, 778, 555, 0, 205, 0, 0, 470, 205, 150,
1846 472, 0, 0, 156, 158, 0, 0, 160, 0, 75,
1847 76, 82, 83, 67, 68, 59, 80, 91, 92, 0,
1848 62, 0, 66, 74, 72, 94, 86, 85, 57, 108,
1849 81, 101, 102, 58, 97, 55, 98, 56, 99, 54,
1850 103, 90, 95, 100, 87, 88, 61, 89, 93, 53,
1851 84, 69, 104, 77, 106, 70, 60, 47, 48, 49,
1852 50, 51, 52, 71, 107, 105, 110, 64, 45, 46,
1853 73, 1122, 1123, 65, 1127, 44, 63, 96, 0, 79,
1854 0, 126, 109, 1060, 1121, 0, 1124, 0, 0, 0,
1855 162, 0, 0, 0, 213, 0, 0, 0, 0, 0,
1856 0, 0, 0, 863, 0, 114, 116, 350, 0, 0,
1857 349, 355, 0, 0, 253, 0, 256, 0, 0, 0,
1858 0, 1066, 238, 250, 1013, 1013, 603, 633, 633, 603,
1859 633, 0, 1030, 0, 799, 0, 0, 0, 1028, 0,
1860 16, 0, 130, 230, 244, 251, 663, 595, 633, 0,
1861 1054, 575, 577, 579, 919, 473, 487, 0, 0, 485,
1862 486, 488, 205, 0, 781, 0, 782, 0, 0, 0,
1863 202, 0, 0, 132, 339, 0, 28, 0, 0, 0,
1864 0, 0, 203, 221, 0, 249, 234, 248, 442, 445,
1865 222, 438, 990, 0, 935, 192, 193, 194, 195, 196,
1866 198, 199, 201, 0, 0, 0, 0, 0, 0, 0,
1867 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1868 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1869 0, 999, 0, 191, 0, 990, 990, 1015, 0, 0,
1870 0, 0, 0, 0, 0, 0, 435, 0, 0, 0,
1871 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1872 507, 509, 920, 921, 0, 934, 933, 339, 339, 990,
1873 0, 992, 982, 0, 222, 0, 0, 0, 164, 0,
1874 917, 912, 861, 0, 487, 485, 0, 1006, 0, 1012,
1875 600, 784, 487, 485, 486, 132, 0, 339, 464, 0,
1876 936, 777, 0, 140, 292, 0, 582, 0, 167, 0,
1877 205, 471, 0, 0, 0, 0, 0, 159, 190, 161,
1878 1122, 1123, 1119, 1120, 0, 1126, 1112, 0, 0, 0,
1879 0, 78, 43, 65, 42, 1061, 197, 200, 163, 140,
1880 0, 180, 189, 0, 0, 0, 0, 0, 0, 117,
1881 0, 0, 0, 862, 115, 18, 0, 111, 0, 351,
1882 0, 165, 0, 0, 166, 254, 255, 1050, 0, 0,
1883 487, 485, 486, 489, 488, 0, 1102, 262, 0, 0,
1884 0, 0, 861, 861, 0, 0, 0, 0, 168, 0,
1885 0, 798, 1029, 852, 0, 0, 1027, 857, 1026, 129,
1886 5, 13, 14, 0, 260, 0, 0, 588, 0, 0,
1887 0, 861, 0, 772, 0, 771, 766, 589, 0, 0,
1888 0, 0, 0, 919, 136, 0, 863, 918, 1131, 463,
1889 476, 490, 952, 972, 147, 139, 143, 144, 145, 146,
1890 436, 0, 566, 855, 856, 127, 861, 0, 1070, 0,
1891 0, 0, 0, 863, 340, 0, 0, 0, 487, 209,
1892 210, 208, 485, 486, 205, 184, 182, 183, 185, 571,
1893 224, 258, 0, 989, 0, 0, 513, 515, 514, 526,
1894 0, 0, 546, 511, 512, 516, 518, 517, 535, 536,
1895 533, 534, 537, 538, 539, 540, 541, 527, 528, 520,
1896 521, 519, 522, 523, 525, 542, 524, 478, 483, 491,
1897 0, 0, 1019, 0, 861, 1053, 0, 1052, 1069, 949,
1898 981, 240, 232, 246, 0, 1054, 236, 222, 0, 477,
1899 480, 482, 492, 495, 496, 497, 498, 499, 500, 501,
1900 502, 503, 504, 505, 506, 923, 0, 922, 925, 948,
1901 929, 1069, 926, 0, 0, 0, 0, 0, 1047, 475,
1902 910, 914, 860, 916, 462, 767, 0, 1005, 0, 1011,
1903 258, 0, 767, 998, 997, 0, 0, 922, 925, 996,
1904 926, 484, 294, 296, 136, 586, 585, 469, 0, 140,
1905 276, 151, 472, 0, 0, 0, 0, 205, 288, 288,
1906 157, 861, 0, 0, 1111, 0, 1108, 861, 0, 1082,
1907 0, 0, 0, 0, 0, 859, 0, 37, 38, 40,
1908 41, 39, 0, 0, 0, 801, 805, 806, 807, 810,
1909 808, 809, 812, 0, 800, 134, 850, 811, 1069, 1125,
1910 205, 0, 0, 0, 21, 0, 22, 0, 19, 0,
1911 112, 0, 20, 0, 0, 0, 123, 863, 0, 121,
1912 116, 113, 118, 0, 348, 356, 353, 0, 0, 1039,
1913 1044, 1041, 1040, 1043, 1042, 12, 1100, 1101, 0, 861,
1914 0, 0, 0, 601, 599, 0, 614, 860, 602, 860,
1915 632, 617, 626, 629, 620, 1038, 1037, 1036, 0, 1032,
1916 0, 1033, 1035, 205, 5, 0, 0, 0, 658, 659,
1917 668, 667, 0, 0, 485, 0, 860, 594, 598, 0,
1918 623, 0, 1055, 0, 576, 0, 205, 1089, 919, 320,
1919 1131, 1130, 0, 0, 0, 988, 860, 1072, 1068, 342,
1920 336, 337, 341, 343, 760, 862, 338, 0, 0, 0,
1921 0, 462, 0, 0, 490, 0, 953, 212, 205, 142,
1922 919, 0, 0, 260, 573, 226, 931, 932, 545, 0,
1923 640, 641, 0, 638, 860, 1014, 0, 0, 339, 262,
1924 0, 260, 0, 0, 258, 0, 999, 493, 0, 0,
1925 950, 951, 983, 984, 0, 0, 898, 868, 869, 870,
1926 877, 0, 37, 38, 40, 41, 39, 0, 0, 0,
1927 883, 889, 890, 891, 894, 892, 893, 0, 881, 879,
1928 880, 904, 861, 0, 912, 1004, 1010, 0, 260, 0,
1929 937, 0, 783, 0, 298, 0, 205, 148, 205, 0,
1930 205, 0, 0, 0, 268, 271, 269, 280, 0, 140,
1931 278, 177, 288, 0, 288, 0, 860, 0, 0, 0,
1932 0, 0, 860, 1110, 1113, 1078, 861, 0, 1073, 0,
1933 861, 833, 834, 831, 832, 867, 0, 861, 859, 607,
1934 635, 635, 607, 635, 597, 635, 0, 0, 1021, 0,
1935 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1936 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1937 0, 0, 0, 0, 0, 0, 0, 1116, 214, 0,
1938 217, 181, 0, 0, 0, 119, 0, 124, 125, 117,
1939 862, 122, 0, 352, 0, 1051, 169, 1067, 1102, 1093,
1940 1097, 261, 263, 362, 605, 0, 1031, 0, 17, 205,
1941 1054, 259, 362, 0, 0, 0, 767, 591, 0, 773,
1942 1056, 0, 1089, 580, 135, 137, 0, 0, 0, 1131,
1943 0, 0, 325, 323, 925, 938, 1069, 925, 939, 1069,
1944 1071, 990, 0, 0, 0, 344, 133, 207, 209, 210,
1945 486, 188, 206, 186, 187, 211, 141, 0, 919, 257,
1946 0, 919, 0, 544, 1018, 1017, 0, 339, 0, 0,
1947 0, 0, 0, 0, 260, 228, 784, 924, 339, 873,
1948 874, 875, 876, 884, 885, 902, 0, 861, 0, 898,
1949 611, 637, 637, 611, 637, 0, 872, 906, 637, 0,
1950 860, 909, 911, 913, 0, 1008, 0, 924, 0, 0,
1951 0, 205, 295, 587, 153, 0, 472, 268, 270, 0,
1952 0, 0, 205, 0, 0, 0, 0, 0, 282, 0,
1953 1117, 0, 0, 1103, 0, 1109, 1107, 1074, 860, 1080,
1954 0, 1081, 0, 0, 803, 860, 858, 0, 0, 861,
1955 0, 0, 847, 861, 0, 0, 0, 0, 861, 0,
1956 0, 813, 848, 849, 1025, 0, 861, 816, 818, 817,
1957 0, 0, 814, 815, 819, 821, 820, 837, 838, 835,
1958 836, 839, 840, 841, 842, 843, 828, 829, 823, 824,
1959 822, 825, 826, 827, 830, 1115, 0, 140, 0, 0,
1960 0, 0, 120, 23, 354, 0, 0, 0, 1094, 1099,
1961 0, 436, 0, 0, 15, 0, 436, 671, 0, 0,
1962 673, 666, 0, 669, 0, 665, 0, 1058, 0, 0,
1963 0, 968, 543, 0, 489, 1090, 584, 1131, 0, 326,
1964 327, 0, 0, 321, 0, 0, 0, 346, 347, 345,
1965 1089, 0, 362, 0, 919, 0, 339, 0, 979, 362,
1966 1054, 362, 1057, 0, 0, 0, 494, 0, 0, 887,
1967 860, 897, 878, 0, 0, 861, 0, 0, 896, 861,
1968 0, 0, 0, 871, 0, 0, 861, 0, 882, 903,
1969 1009, 362, 0, 140, 0, 291, 277, 0, 0, 267,
1970 173, 281, 0, 0, 284, 0, 289, 290, 140, 283,
1971 1118, 1104, 0, 0, 1077, 1076, 0, 0, 1129, 866,
1972 865, 802, 615, 860, 606, 0, 618, 860, 634, 627,
1973 630, 621, 0, 860, 596, 804, 624, 0, 639, 860,
1974 1020, 845, 0, 0, 205, 24, 25, 26, 27, 1096,
1975 1091, 1092, 1095, 264, 0, 0, 0, 443, 434, 0,
1976 0, 0, 239, 361, 0, 0, 433, 0, 0, 0,
1977 1054, 436, 604, 1034, 358, 245, 661, 0, 664, 0,
1978 590, 578, 486, 138, 205, 0, 0, 330, 319, 0,
1979 322, 329, 339, 339, 335, 570, 1089, 436, 1089, 0,
1980 1016, 0, 978, 436, 0, 436, 1059, 362, 919, 975,
1981 901, 900, 886, 616, 860, 610, 0, 619, 860, 636,
1982 628, 631, 622, 0, 888, 860, 905, 625, 436, 140,
1983 205, 149, 154, 175, 205, 279, 285, 140, 287, 0,
1984 1105, 1075, 1079, 0, 0, 0, 609, 846, 593, 0,
1985 1024, 1023, 844, 140, 218, 1098, 0, 0, 0, 1062,
1986 0, 0, 0, 265, 0, 1054, 0, 399, 395, 401,
1987 762, 36, 0, 389, 0, 394, 398, 411, 0, 409,
1988 414, 0, 413, 0, 412, 453, 0, 222, 0, 0,
1989 367, 0, 368, 369, 0, 0, 435, 0, 662, 660,
1990 672, 670, 0, 331, 332, 0, 0, 317, 328, 0,
1991 0, 0, 1089, 1083, 235, 570, 1089, 980, 241, 358,
1992 247, 436, 0, 0, 0, 613, 895, 908, 0, 243,
1993 293, 205, 205, 140, 274, 174, 286, 1106, 1128, 864,
1994 0, 0, 0, 205, 0, 0, 461, 0, 1063, 0,
1995 379, 383, 458, 459, 393, 0, 0, 0, 374, 721,
1996 722, 720, 723, 724, 741, 743, 742, 712, 684, 682,
1997 683, 702, 717, 718, 678, 689, 690, 692, 691, 759,
1998 711, 695, 693, 694, 696, 697, 698, 699, 700, 701,
1999 703, 704, 705, 706, 707, 708, 710, 709, 679, 680,
2000 681, 685, 686, 688, 758, 726, 727, 731, 732, 733,
2001 734, 735, 736, 719, 738, 728, 729, 730, 713, 714,
2002 715, 716, 739, 740, 744, 746, 745, 747, 748, 725,
2003 750, 749, 752, 754, 753, 687, 757, 755, 756, 751,
2004 737, 677, 406, 674, 0, 375, 427, 428, 426, 419,
2005 0, 420, 376, 0, 0, 363, 0, 0, 0, 457,
2006 0, 222, 0, 0, 231, 357, 0, 0, 0, 318,
2007 334, 976, 977, 0, 0, 0, 0, 1089, 1083, 0,
2008 237, 1089, 899, 0, 0, 140, 272, 155, 176, 205,
2009 608, 592, 1022, 216, 377, 378, 456, 266, 0, 861,
2010 861, 0, 402, 390, 0, 0, 0, 408, 410, 0,
2011 0, 415, 422, 423, 421, 454, 451, 1064, 0, 364,
2012 0, 460, 0, 365, 0, 359, 0, 333, 0, 656,
2013 863, 136, 863, 1085, 0, 429, 136, 225, 0, 0,
2014 233, 0, 612, 907, 205, 0, 178, 380, 126, 0,
2015 381, 382, 0, 860, 0, 860, 404, 400, 405, 675,
2016 676, 0, 391, 424, 425, 417, 418, 416, 0, 1102,
2017 370, 455, 0, 366, 360, 657, 862, 0, 205, 862,
2018 1084, 0, 1088, 205, 136, 227, 229, 0, 275, 0,
2019 220, 0, 436, 0, 396, 403, 407, 452, 0, 919,
2020 372, 0, 654, 569, 572, 1086, 1087, 430, 205, 273,
2021 0, 0, 179, 387, 0, 435, 397, 1065, 0, 863,
2022 447, 919, 655, 574, 0, 219, 0, 0, 386, 1089,
2023 919, 302, 1131, 450, 449, 448, 1131, 446, 0, 0,
2024 0, 385, 1083, 447, 0, 0, 1089, 0, 384, 0,
2025 1131, 1131, 308, 0, 307, 305, 1083, 140, 431, 136,
2026 371, 0, 0, 309, 0, 0, 303, 0, 205, 205,
2027 313, 0, 312, 301, 0, 304, 311, 373, 215, 432,
2028 314, 0, 0, 299, 310, 0, 300, 316, 315
2031 /* YYPGOTO[NTERM-NUM]. */
2032 static const yytype_int16 yypgoto
[] =
2034 -1789, -1789, -1789, -575, -1789, -1789, -1789, 106, -478, -42,
2035 446, -1789, -203, -516, -1789, -1789, 482, 1196, 1745, -1789,
2036 3066, -1789, -808, -1789, -540, -1789, -703, 41, -1789, -1789,
2037 -1789, -1789, -1789, -1789, -1789, -1789, -930, -1789, -1789, -932,
2038 -331, -1789, -1789, -1789, -338, -1789, -1789, -168, 449, 46,
2039 -1789, -1789, -1789, -1789, -1789, -1789, 55, -1789, -1789, -1789,
2040 -1789, -1789, -1789, 58, -1789, -1789, 1198, 1177, 1173, -100,
2041 -746, -949, 653, 728, -330, 378, -1027, -1789, -35, -1789,
2042 -1789, -1789, -1789, -795, 200, -1789, -1789, -1789, -1789, -321,
2043 -1789, -601, -1789, 465, -459, -1789, -1789, 1090, -1789, -12,
2044 -1789, -1789, -1039, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
2045 -1789, -48, -1789, 47, -1789, -1789, -1789, -1789, -1789, -133,
2046 -1789, 155, -1024, -1789, -1342, -353, -1789, -158, 154, -130,
2047 -328, -1789, -1526, -1789, -1789, -1789, 160, -95, -82, -16,
2048 -790, 33, -1789, -1789, 32, -1789, 78, -346, -1789, 10,
2049 -5, -80, -94, 3, -1789, -1789, -1789, -1789, -1789, -1789,
2050 -1789, -1789, -1789, -632, -909, -1789, -1789, -1789, -1789, -1789,
2051 645, 1334, -1789, 577, -1789, 434, -1789, -1789, -1789, -1789,
2052 -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789, -1789,
2053 -1789, -1789, -1789, -1789, -1789, -210, -233, -415, -1789, -1789,
2054 -1789, -1789, -1789, 513, -1789, -1789, -1789, -1789, -1789, -1789,
2055 -1789, -1789, -1017, -383, 2707, 28, -1789, 402, -430, -1789,
2056 -1789, -504, 3690, 3913, -1789, 332, -1789, -1789, 590, -22,
2057 -660, -1789, -1789, 687, 458, 535, -1789, 467, -1789, -1789,
2058 -1789, -1789, -1789, 669, -1789, -1789, -1789, 31, -950, -134,
2059 -447, -441, -1789, -97, -132, -1789, -1789, 38, 45, 812,
2060 -73, -1789, -1789, 962, -67, -1789, -364, 436, 79, -1789,
2061 -423, -1789, -1789, -1789, 554, -1789, -1789, -1789, -1789, 861,
2062 523, -1789, -1789, -1789, -362, -722, -1789, 1323, -1314, -162,
2063 -66, -141, 893, -1789, -1789, -1789, -1788, -1789, -218, -1009,
2064 -1339, -207, 219, -1789, 568, 647, -1789, -1789, -1789, -1789,
2065 598, -1789, 2793, -803
2068 /* YYDEFGOTO[NTERM-NUM]. */
2069 static const yytype_int16 yydefgoto
[] =
2071 -1, 1, 2, 4, 116, 974, 670, 192, 352, 788,
2072 372, 373, 374, 375, 927, 928, 929, 118, 119, 120,
2073 121, 122, 996, 1234, 432, 1028, 705, 706, 580, 268,
2074 1741, 586, 1644, 1742, 2000, 912, 124, 125, 726, 727,
2075 735, 365, 609, 1956, 1191, 1407, 2022, 454, 193, 707,
2076 1031, 1272, 1475, 128, 673, 1050, 708, 741, 1054, 647,
2077 1049, 247, 561, 709, 674, 1051, 456, 392, 414, 131,
2078 1033, 977, 952, 1211, 1672, 1330, 1114, 1897, 1745, 861,
2079 1121, 585, 870, 1123, 1518, 853, 1104, 1107, 1320, 2028,
2080 2029, 695, 696, 1012, 722, 723, 379, 380, 382, 1707,
2081 1875, 1876, 1421, 1573, 2009, 2031, 1908, 1960, 1961, 1962,
2082 1682, 1683, 1684, 1685, 1910, 1911, 1917, 1972, 1688, 1689,
2083 1693, 1859, 1860, 1861, 1947, 2070, 1574, 1575, 194, 133,
2084 2046, 2047, 1696, 1577, 1578, 1579, 1580, 134, 135, 653,
2085 582, 136, 137, 138, 139, 140, 141, 142, 143, 261,
2086 144, 145, 146, 1722, 147, 1030, 1271, 148, 692, 693,
2087 694, 265, 424, 576, 680, 681, 1368, 682, 1369, 149,
2088 196, 651, 652, 1358, 1359, 1484, 1485, 151, 896, 1081,
2089 152, 897, 1082, 153, 898, 1083, 154, 899, 1084, 155,
2090 900, 1085, 156, 901, 1086, 654, 1361, 1487, 157, 902,
2091 158, 159, 1940, 160, 675, 1709, 676, 1223, 983, 1435,
2092 1431, 1852, 1853, 161, 162, 163, 250, 164, 251, 262,
2093 435, 568, 165, 1362, 1363, 906, 907, 166, 1146, 833,
2094 624, 1147, 1089, 1293, 1090, 1488, 1489, 1296, 1297, 1092,
2095 1495, 1496, 1093, 831, 552, 207, 208, 710, 698, 534,
2096 1244, 1245, 820, 821, 464, 168, 253, 169, 170, 197,
2097 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
2098 744, 182, 257, 258, 242, 783, 784, 1375, 1376, 407,
2099 408, 968, 183, 638, 184, 691, 185, 355, 1877, 1928,
2100 393, 443, 716, 717, 1136, 1137, 1886, 1942, 1943, 1238,
2101 1418, 948, 1419, 949, 950, 876, 877, 878, 356, 357,
2102 909, 595, 1001, 1002
2105 /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
2106 positive, shift that token. If negative, reduce the rule whose
2107 number is the opposite. If YYTABLE_NINF, syntax error. */
2108 static const yytype_int16 yytable
[] =
2110 195, 198, 461, 200, 201, 202, 203, 205, 206, 515,
2111 209, 210, 211, 212, 353, 429, 232, 233, 234, 235,
2112 236, 237, 238, 239, 241, 543, 259, 426, 266, 448,
2113 787, 1029, 415, 852, 683, 167, 999, 419, 420, 267,
2114 535, 536, 431, 264, 449, 123, 1108, 275, 1239, 278,
2115 127, 450, 363, 685, 366, 687, 269, 840, 249, 129,
2116 994, 273, 130, 1016, 461, 457, 1236, 514, 254, 910,
2117 401, 775, 1111, 1053, 1125, 255, 1139, 1228, 823, 824,
2118 1562, 267, 780, 781, 1270, 1327, 1257, 818, 1262, 361,
2119 559, 1759, 995, 819, 1098, 973, 445, 429, -78, 577,
2120 1949, 730, 1281, -78, 428, 565, 926, 931, 845, 426,
2121 117, 630, 868, 1564, 633, 504, 825, 1516, 736, 737,
2122 738, 577, 848, 569, 431, -43, 570, 1919, 849, 555,
2123 -43, -42, 1699, -650, 421, 362, -42, 866, 1701, -392,
2124 1767, 554, 427, 937, 1854, 1864, 1864, 1864, 1864, 1316,
2125 1759, 563, 577, 559, 1920, 14, 431, 559, 132, 276,
2126 1018, 545, 351, 562, 614, 616, 618, 14, 621, -650,
2127 1991, -642, 1867, 1498, 214, 40, 1157, 610, 1236, 391,
2128 1872, 14, -764, 1426, 553, 3, 428, 626, 655, 1305,
2129 657, 199, 381, 14, 547, 385, 260, 1240, 14, -110,
2130 14, -773, 413, 1938, 391, 386, 532, 533, 688, 391,
2131 391, 1241, 532, 533, 263, -110, 1158, -642, 428, -965,
2132 1565, 946, 947, 1438, 1372, 1596, 1566, -957, 458, 1567,
2133 188, 65, 66, 67, 1568, 2063, 377, 391, 1048, -955,
2134 428, 611, 214, 40, 2081, 1367, 422, -653, 1939, 979,
2135 627, 1670, 404, 423, 581, 572, 1242, 1306, 572, 1416,
2136 1417, 542, 538, 943, 2059, 267, 583, 1201, 660, -956,
2137 1597, -765, 594, 972, 539, -967, 1569, 1570, 2077, 1571,
2138 2064, -581, 869, 1760, 1761, 560, 1517, -954, 446, 2082,
2139 -78, 578, 742, 1235, -651, 641, 541, 364, 538, 462,
2140 -964, 459, 1509, 631, 1440, 574, 634, 640, 1284, 579,
2141 1572, -953, -1000, 658, 551, -324, 605, -43, 1921, 1110,
2142 -960, 516, 644, -42, 1700, 1266, 1562, 1333, 867, 1337,
2143 1702, -392, 1768, -324, 938, 1474, 1855, 1865, 1929, 1933,
2144 1983, -862, 2058, 939, 953, -862, -964, 1934, 954, 1243,
2145 -306, 1019, -862, 732, 203, -860, -962, 1450, 378, -957,
2146 1762, -771, 980, 1598, 112, 728, -766, 1714, -969, 270,
2147 117, -955, 639, 2065, 117, 919, 827, 981, 584, -772,
2148 431, 1433, 2083, 267, 428, 1868, 461, 1869, 740, 241,
2149 241, 650, 267, 267, 650, 267, 539, 982, 1494, 1219,
2150 664, -956, 626, 353, 919, 1235, 540, 1197, 1198, -109,
2151 -958, -1003, 2073, 267, 1586, 1434, -963, 2090, 2011, -954,
2152 205, 227, 227, 1607, -1002, -109, -650, -940, 711, 1267,
2153 1613, 463, 1615, 1186, 1335, 1336, 1448, -462, 920, 724,
2154 -966, 462, 731, -953, -1000, 415, 794, 795, 457, -971,
2155 1451, 1605, -960, 126, 442, 697, -941, 743, 745, 462,
2156 1715, 271, 1638, 2012, 604, 441, 256, 441, 746, 747,
2157 748, 749, 751, 752, 753, 754, 755, 756, 757, 758,
2158 759, 760, 761, 762, 763, 764, 765, 766, 767, 768,
2159 769, 770, 771, 772, 773, 774, 686, 776, 1425, 779,
2160 743, 743, 782, 532, 533, 2074, 272, 532, 533, -652,
2161 2091, 787, 802, 803, 804, 805, 806, 807, 808, 809,
2162 810, 811, 812, 813, 814, 729, 416, 416, 540, 249,
2163 1338, 396, 724, 724, 743, 826, 1507, 777, 117, 254,
2164 779, 802, -958, -1003, 829, 1526, 255, 715, 387, 800,
2165 799, 351, 515, 837, 839, 538, -1002, 1247, 734, -940,
2166 391, 1922, 724, 1248, 1427, 1003, -462, 1004, 388, -462,
2167 856, -1069, 857, 463, 402, 532, 533, 1428, 1731, 1332,
2168 1923, 460, 778, 1924, 984, 397, 132, 790, -941, 1278,
2169 389, 1594, 442, 1335, 1336, 801, 390, 1723, 1429, 1725,
2170 402, -767, 659, 683, 402, 1992, 1446, 1995, 666, 1996,
2171 514, -1069, 666, 790, 604, 391, 792, 391, 391, 391,
2172 391, 860, 685, 933, 687, 402, 1286, 402, 383, 1055,
2173 958, 960, 394, 434, 1659, 790, 395, 384, -967, -927,
2174 817, 417, 227, 544, 1595, 790, 398, 1047, 790, 150,
2175 661, 405, 406, 855, 1247, -927, 399, 1564, 2042, 987,
2176 1248, 400, 604, 418, 225, 225, 440, 1461, 532, 533,
2177 1463, -930, 1259, 428, 1259, 847, 1035, 405, 406, 1373,
2178 1059, 405, 406, 433, 926, 441, 117, -930, 1261, 1519,
2179 452, 1263, 1264, 1914, 1007, 2043, 2044, 2045, 444, 14,
2180 1003, 1004, 405, 406, 405, 406, 908, 1099, 1101, 1100,
2181 1192, 1915, 1193, 1884, 1194, 441, 1013, 1888, 1196, 532,
2182 533, -1069, 946, 947, 697, 714, 1738, 55, 713, 453,
2183 1916, -126, 932, 715, 1975, -126, 458, 187, 188, 65,
2184 66, 67, 442, -928, 447, 1038, -643, 2060, 1614, 402,
2185 671, 672, -126, 1976, 565, 507, 1977, 403, -1069, -928,
2186 -644, -1069, 1045, 465, 1565, 967, 969, 1187, 1010, 1011,
2187 1566, 683, 458, 1567, 188, 65, 66, 67, 1568, 466,
2188 227, 1046, 1476, 402, 2043, 2044, 2045, 1105, 1106, 227,
2189 685, 666, 687, 546, 518, 519, 520, 521, 522, 523,
2190 524, 525, 526, 527, 528, 529, 1591, 467, 227, 459,
2191 501, 1058, 213, 613, 615, 617, 171, 620, 1467, 684,
2192 1569, 1570, 502, 1571, 468, 404, 405, 406, 1456, 1477,
2193 469, 229, 231, 470, 402, 50, 1318, 1319, 530, 531,
2194 117, 1103, 437, 1416, 1417, 459, 581, 471, 391, 1127,
2195 1182, 1183, 1184, 472, 1585, 1133, 508, 267, 1704, 667,
2196 405, 406, -645, 1609, 516, -648, 1185, 1554, 1109, 402,
2197 1666, 1667, 217, 218, 219, 220, 221, 666, 1948, 1945,
2198 1946, 126, 1951, 2068, 2069, 225, -646, 1490, 132, 1492,
2199 1259, 1029, -647, 1497, 189, 1973, 1974, 91, 1969, 1970,
2200 93, 94, 505, 95, 190, 97, 1246, 1249, 1120, 150,
2201 506, 405, 406, 150, 537, 532, 533, -961, 1364, -649,
2202 1366, 430, 1370, 409, 683, -765, 662, 1209, 548, 108,
2203 668, 1334, 1335, 1336, 1957, 550, 1080, 256, 1094, 1513,
2204 1335, 1336, 502, 685, 789, 687, 405, 406, 648, 649,
2205 1214, 442, 1215, 1763, 857, 556, -763, 662, 117, 668,
2206 662, 668, 668, 1640, 797, 1217, -965, 498, 499, 500,
2207 822, 501, 1118, 117, 436, 438, 439, 538, 1648, 702,
2208 1227, 230, 230, 502, 567, 566, 575, 596, 588, 1285,
2209 -1114, 599, 789, 458, 187, 188, 65, 66, 67, 600,
2210 606, 607, 844, 430, 167, 850, 132, 1611, 622, 623,
2211 1255, 625, 632, 731, 123, 731, 117, 1732, 645, 127,
2212 802, 635, 636, 225, 646, 1195, 715, 689, 129, 697,
2213 2052, 130, 225, 690, 1273, 430, 699, 1274, 700, 1275,
2214 712, 734, 701, 724, 703, -131, 55, 2066, 832, 739,
2215 830, 225, 557, 661, 834, 835, 1210, 564, 1236, 2030,
2216 841, 697, 842, 1236, 132, 686, 459, 858, 790, 577,
2217 1311, 862, 865, 2038, 594, 879, 171, 150, 880, 117,
2218 171, 2030, 790, 790, 249, 913, 451, 1669, 1236, 914,
2219 2053, 911, 1315, 730, 254, 604, 1258, 915, 1258, 1740,
2220 916, 255, 117, 801, 917, 1454, 918, 1746, 1455, 817,
2221 817, 736, 737, 738, 1349, 1321, 936, 921, 1352, 922,
2222 940, 227, 941, 1753, 944, 1356, 945, 132, 951, 957,
2223 956, 959, 961, 1988, 117, 962, 963, 964, 1993, 975,
2224 970, 1441, 976, 1719, 1720, 978, -788, 1322, 985, 1236,
2225 132, 986, 988, 989, 990, 993, 1442, 997, 998, 1006,
2226 683, 391, 1088, 1443, 1008, 1014, 1015, 1017, 1020, 1021,
2227 1292, 1292, 1080, 1022, 1023, 1024, 1032, 1044, 790, 685,
2228 790, 687, 132, 126, 1052, 1036, 2018, 1040, 1034, 1041,
2229 629, 1043, 1060, 1758, 1062, 1061, 1669, -769, 1112, 637,
2230 227, 642, 230, 1899, 1102, 847, 1122, 847, 1126, 1124,
2231 1130, 1131, 117, 1132, 117, 1134, 117, 1148, 665, 1432,
2232 1154, 1669, 1149, 1669, 1150, 150, 1151, 1155, 1152, 1669,
2233 1153, 731, 1190, 686, 1200, 1202, 1204, 1344, 227, 2054,
2234 227, 1206, 1208, 2055, 171, 1207, 743, 1213, 1216, 1459,
2235 167, 1224, 683, 1222, 1225, 1226, 376, 2071, 2072, 733,
2236 123, 2079, 132, 604, 132, 127, 227, 1230, 1237, 1232,
2237 1251, 685, 724, 687, 129, 1481, 1268, 130, 1277, 1280,
2238 1987, 1283, 1990, 724, 411, 1235, 1288, 412, -970, 1298,
2239 1235, 1299, 908, 458, 63, 64, 65, 66, 67, 697,
2240 1300, 126, 697, 1307, 72, 509, 1309, 1308, 1301, 1302,
2241 581, 535, 1303, 1304, 1258, 1235, 1310, 1312, 1329, 1324,
2242 1326, 267, -964, 1331, 1340, 117, 1341, 1342, 1502, 1348,
2243 1515, 458, 63, 64, 65, 66, 67, 1534, 1350, 227,
2244 230, 1538, 72, 509, 1185, 429, 1544, 511, 1355, 230,
2245 -1130, 643, 1351, 1406, 1550, 1954, 1436, 426, 1408, 126,
2246 1420, 1449, 1505, 1413, 225, 1091, 459, 1354, 230, 2041,
2247 1409, 1452, 431, 132, 1410, 1453, 1235, 1048, 1411, 150,
2248 1437, 1460, 1464, 510, 1462, 511, 686, 1468, 684, 1466,
2249 1478, 1469, 171, 1471, 1472, 1480, 1479, 1070, 1088, 512,
2250 1493, 513, 1503, 1501, 459, 1080, 1080, 1080, 1080, 1080,
2251 1080, 1669, 1504, 1506, 1080, 1510, 1080, 1582, 34, 35,
2252 36, 1514, 126, 1705, 1587, 1229, 1523, 117, 1520, 1589,
2253 1527, 1590, 215, 1532, 731, 1528, 1533, 1537, 117, 822,
2254 822, 1542, 1543, 225, 1549, 126, 461, 1601, 1522, 1531,
2255 1536, 1548, 1581, 1545, 1539, 1540, 1546, 1581, 1541, 1553,
2256 1610, 724, 1555, 1625, 1556, 1557, 1558, 1629, 458, 187,
2257 188, 65, 66, 67, 1636, 1583, 1584, 126, 1593, 1599,
2258 1600, 225, 1602, 225, 1603, 1604, 132, 81, 82, 83,
2259 84, 85, 256, 1606, 1608, 697, 1612, 150, 222, 1616,
2260 1618, 1617, 1619, 1624, 89, 90, 1622, 1626, 1623, 1115,
2261 1628, 1633, 150, 1634, 227, 227, 1627, 729, 99, 1630,
2262 1631, 1559, 1632, 1635, 1637, 1639, 1641, 2078, 1642, 1866,
2263 1643, 1009, 1645, 105, 1646, 850, 1652, 850, 1649, 1663,
2264 1695, 459, 1674, 1687, 1703, 1708, 171, 1713, 1716, 1179,
2265 1180, 1181, 1182, 1183, 1184, 150, 684, 126, 1717, 126,
2266 1721, 1726, 1727, 376, 376, 376, 619, 376, 1185, 1729,
2267 1733, 1748, 1751, 1757, 1765, 1576, 461, 1766, 1862, 1863,
2268 1576, 1870, 225, 1878, 1080, 1879, 1080, 1881, 1882, 1712,
2269 1891, 1883, 1885, 1893, 1718, 1926, 1894, 724, 724, 1930,
2270 1904, 1295, 1756, 1905, 1935, 669, 1936, 1941, 1963, 1965,
2271 1057, 1967, 1971, 1979, 1980, 1978, 1985, 1986, 150, 1989,
2272 1994, 1998, 686, 1999, -388, 2001, 2002, 2004, 2006, 1920,
2273 2010, 1088, 1088, 1088, 1088, 1088, 1088, 2013, 1581, 2019,
2274 1088, 150, 1088, 2020, 1581, 2026, 1581, 2021, 1095, 697,
2275 1096, 2032, 2027, 2036, 227, 2040, 2039, 2049, 2062, 2056,
2276 117, 2051, 2057, 2075, 171, 2076, 2080, 2084, 126, 1581,
2277 2085, 351, 2067, 150, 2092, 2095, 1116, 1692, 2093, 171,
2278 2096, 230, 1412, 2035, 793, 1744, 791, -1132, -1132, -1132,
2279 -1132, -1132, 493, 494, 495, 496, 497, 498, 499, 500,
2280 117, 501, 1279, 1932, 1221, 1508, 2050, 1898, 132, 684,
2281 2048, 1880, 796, 502, 686, 1647, 227, 1889, 1458, 1913,
2282 934, 1918, 171, 1764, 2087, 2061, 1694, 1675, 1887, 1365,
2283 1080, 227, 1080, 656, 1080, 1706, 1430, 1491, 1357, 1080,
2284 495, 496, 497, 498, 499, 500, 117, 501, 132, 1205,
2285 117, 150, 1294, 150, 117, 150, 1482, 1115, 225, 502,
2286 230, 1576, 1581, 1313, 224, 224, 1483, 1576, 725, 1576,
2287 1982, 2015, 2008, 1140, 391, 246, 1415, 604, 1665, 1346,
2288 351, 126, 1896, 1744, 1405, 171, 0, 0, 0, 0,
2289 1851, 0, 1576, 0, 132, 0, 0, 1858, 230, 0,
2290 230, 246, 132, 0, 0, 351, 0, 351, 171, 0,
2291 1088, 0, 1088, 351, 0, 0, 0, 0, 930, 930,
2292 1564, 0, 0, 0, 1927, 0, 230, 0, 0, 0,
2293 1260, 0, 1260, 0, 1295, 1486, 0, 0, 1486, 1080,
2294 171, 0, 0, 0, 2024, 1499, 117, 117, 117, 0,
2295 0, 0, 117, 0, 0, 0, 0, 0, 0, 117,
2296 0, 0, 14, 0, 150, 0, 0, 0, 0, 0,
2297 0, 0, 0, 1937, 0, 0, 0, 0, 0, 0,
2298 0, 0, 0, 0, 0, 1576, 0, 1964, 1966, 0,
2299 1927, 0, 0, 0, 132, 461, 0, 225, 0, 230,
2300 132, 0, 0, 0, 0, 0, 0, 132, 0, 0,
2301 0, 0, 0, 0, 0, 0, 0, 0, 171, 0,
2302 171, 0, 171, 0, 1116, 1328, 0, 1565, 0, 0,
2303 0, 0, 0, 1566, 0, 458, 1567, 188, 65, 66,
2304 67, 1568, 0, 0, 0, 684, 0, 0, 0, 0,
2305 0, 0, 0, 0, 0, 0, 1088, 0, 1088, 225,
2306 1088, 0, 0, 0, 0, 1088, 150, 0, 0, 0,
2307 0, 0, 604, 0, 1115, 0, 0, 150, 0, 0,
2308 0, 0, 0, 1569, 1570, 224, 1571, 0, 0, 0,
2309 0, 0, 0, 0, 0, 351, 0, 0, 0, 1080,
2310 1080, 0, 0, 126, 0, 117, 0, 0, 459, 0,
2311 0, 0, 0, 1620, 1958, 1621, 0, 1724, 0, 0,
2312 0, 1851, 1851, 0, 1697, 1858, 1858, 0, 0, 0,
2313 0, 171, 0, 0, 246, 0, 246, 684, 604, 0,
2314 697, 0, 0, 126, 0, 0, 0, 0, 1260, 0,
2315 0, 0, 0, 132, 0, 0, 0, 0, 0, 0,
2316 117, 0, 697, 0, 1457, 1088, 0, 0, 0, 0,
2317 2086, 697, 0, 0, 230, 230, 0, 0, 0, 2094,
2318 0, 0, 0, 0, 0, 0, 0, 2097, 0, 126,
2319 2098, 0, 0, 0, 117, 246, 0, 126, 0, 117,
2320 0, 0, 0, 0, 0, 0, 0, 2023, 132, 930,
2321 0, 930, 0, 930, 0, 0, 0, 930, 0, 930,
2322 930, 1199, 0, 224, 117, 0, 1500, 0, 0, 0,
2323 2037, 0, 224, 171, 0, 0, 0, 1564, 0, 0,
2324 0, 1116, 132, 0, 171, 0, 0, 132, 0, 0,
2325 0, 224, 0, 0, 1871, 0, 2025, 0, 0, 1734,
2326 0, 1735, 224, 1736, 0, 0, 0, 0, 1737, 0,
2327 0, 0, 132, 0, 0, 0, 0, 0, 0, 14,
2328 0, 0, 0, 0, 117, 117, 0, 246, 0, 126,
2329 246, 0, 1564, 0, 0, 126, 0, 0, 1444, 150,
2330 0, 0, 126, 0, 0, 0, 0, 0, 0, 0,
2331 0, 0, 0, 0, 230, 0, 0, 0, 0, 0,
2332 0, 0, 0, 0, 0, 1088, 1088, 0, 0, 0,
2333 0, 0, 132, 132, 14, 0, 0, 0, 0, 150,
2334 0, 0, 0, 0, 1565, 0, 246, 0, 0, 0,
2335 1566, 1592, 458, 1567, 188, 65, 66, 67, 1568, 0,
2336 0, 0, 0, 0, 0, 0, 0, 0, 1892, 0,
2337 0, 0, 0, 0, 0, 0, 230, 0, 0, 0,
2338 0, 0, 0, 0, 0, 150, 0, 0, 0, 150,
2339 0, 230, 0, 150, 0, 1564, 0, 0, 0, 1565,
2340 1569, 1570, 0, 1571, 0, 1566, 0, 458, 1567, 188,
2341 65, 66, 67, 1568, 0, 0, 0, 0, 0, 0,
2342 0, 0, 0, 0, 0, 459, 0, 0, 0, 0,
2343 0, 0, 0, 0, 1728, 0, 0, 14, 0, 246,
2344 0, 246, 0, 0, 895, 0, 0, 0, 126, 0,
2345 0, 0, 0, 0, 0, 1569, 1570, 0, 1571, 1564,
2346 0, 0, 0, 0, 0, 0, 171, 0, 0, 0,
2347 0, 0, 0, 0, 0, 1676, 0, 895, 0, 0,
2348 459, 0, 0, 0, 0, 150, 150, 150, 0, 1730,
2349 0, 150, 0, 0, 0, 0, 930, 0, 150, 0,
2350 0, 14, 1565, 126, 0, 0, 171, 0, 1566, 0,
2351 458, 1567, 188, 65, 66, 67, 1568, 0, 0, 0,
2352 0, 0, 0, 0, 0, 213, 0, 0, 1952, 1953,
2353 0, 0, 0, 0, 246, 246, 0, 126, 0, 0,
2354 0, 0, 126, 246, 0, 0, 0, 0, 50, 0,
2355 0, 0, 171, 0, 0, 0, 171, 0, 1569, 1570,
2356 171, 1571, 0, 0, 224, 0, 1565, 126, 0, 0,
2357 0, 1677, 1566, 0, 458, 1567, 188, 65, 66, 67,
2358 1568, 0, 0, 459, 1678, 217, 218, 219, 220, 221,
2359 1679, 0, 1739, 546, 518, 519, 520, 521, 522, 523,
2360 524, 525, 526, 527, 528, 529, 0, 189, 0, 0,
2361 91, 1680, 0, 93, 94, 0, 95, 1681, 97, 0,
2362 0, 0, 1569, 1570, 0, 1571, 0, 126, 126, 0,
2363 0, 0, 0, 0, 0, 0, 0, 0, 530, 531,
2364 0, 0, 108, 224, 150, 0, 0, 459, 0, 0,
2365 0, 0, 171, 171, 171, 0, 1890, 0, 171, 0,
2366 0, 0, 872, 0, 0, 171, 0, 0, 0, 0,
2367 0, 0, 0, 0, 0, 246, 0, 0, 0, 0,
2368 0, 224, 0, 224, 0, 0, 546, 518, 519, 520,
2369 521, 522, 523, 524, 525, 526, 527, 528, 529, 150,
2370 0, 0, 0, 0, 0, 0, 0, 0, 0, 224,
2371 895, 0, 213, 0, 0, 532, 533, 246, 0, 0,
2372 0, 0, 0, 873, 246, 246, 895, 895, 895, 895,
2373 895, 530, 531, 150, 0, 50, 0, 0, 150, 895,
2374 0, 1025, 518, 519, 520, 521, 522, 523, 524, 525,
2375 526, 527, 528, 529, 0, 0, 246, 0, 0, 0,
2376 0, 0, 0, 150, 0, 0, 0, 0, 0, 0,
2377 0, 0, 217, 218, 219, 220, 221, 0, 0, 843,
2378 0, 0, 224, 0, 0, 0, 530, 531, 0, 0,
2379 0, 0, 0, 0, 189, 213, 246, 91, 0, 0,
2380 93, 94, 0, 95, 190, 97, 0, 874, 532, 533,
2381 0, 171, 0, 0, 0, 0, 0, 0, 50, 0,
2382 246, 246, 0, 150, 150, 0, 226, 226, 0, 108,
2383 0, 224, 0, 0, 0, 0, 0, 248, 246, 0,
2384 0, 0, 0, 0, 0, 246, 213, 0, 214, 40,
2385 0, 246, 0, 0, 0, 217, 218, 219, 220, 221,
2386 0, 0, 895, 532, 533, 0, 171, 0, 0, 50,
2387 0, 0, 942, 0, 0, 0, 0, 246, 0, 0,
2388 0, 1856, 0, 93, 94, 1857, 95, 190, 97, 0,
2389 0, 0, 0, 0, 0, 0, 0, 246, 0, 0,
2390 171, 246, 0, 0, 0, 171, 217, 218, 219, 220,
2391 221, 246, 108, 1691, 1025, 518, 519, 520, 521, 522,
2392 523, 524, 525, 526, 527, 528, 529, 1026, 0, 0,
2393 171, 0, 815, 0, 93, 94, 0, 95, 190, 97,
2394 0, 0, 0, 0, 0, 0, 0, 0, 0, 358,
2395 0, 0, 0, 0, 0, 0, 0, 224, 224, 530,
2396 531, 0, 0, 108, 0, 0, 0, 816, 0, 0,
2397 112, 246, 0, 0, 0, 246, 0, 246, 0, 0,
2398 246, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2399 171, 171, 0, 895, 895, 895, 895, 895, 895, 224,
2400 895, 0, 0, 895, 895, 895, 895, 895, 895, 895,
2401 895, 895, 895, 895, 895, 895, 895, 895, 895, 895,
2402 895, 895, 895, 895, 895, 895, 895, 895, 895, 895,
2403 895, 0, 473, 474, 475, 0, 532, 533, 0, 0,
2404 0, 0, 0, 0, 0, 0, 0, 226, 0, 895,
2405 0, 0, 476, 477, 0, 478, 479, 480, 481, 482,
2406 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
2407 493, 494, 495, 496, 497, 498, 499, 500, 213, 501,
2408 214, 40, 246, 0, 246, 0, 0, 0, 0, 0,
2409 0, 502, 0, 0, 0, 0, 0, 224, 0, 0,
2410 702, 50, 0, 0, 0, 517, 518, 519, 520, 521,
2411 522, 523, 524, 525, 526, 527, 528, 529, 0, 0,
2412 0, 0, 0, 0, 0, 246, 0, 0, 246, 0,
2413 0, 0, 0, 0, 0, 0, 0, 0, 217, 218,
2414 219, 220, 221, 0, 246, 246, 246, 246, 246, 246,
2415 530, 531, 224, 246, 0, 246, 0, 0, 0, 224,
2416 0, 0, 0, 0, 815, 0, 93, 94, 0, 95,
2417 190, 97, 0, 0, 224, 0, 895, 0, 0, 0,
2418 0, 0, 592, 0, 593, 226, 246, 0, 0, 0,
2419 0, 0, 0, 246, 226, 108, 0, 0, 895, 846,
2420 895, 0, 112, 0, 0, 0, 0, 0, 0, 0,
2421 0, 0, 0, 226, 0, 0, 0, 0, 0, 0,
2422 0, 0, 354, 0, 226, 895, 1423, 532, 533, -1132,
2423 -1132, -1132, -1132, -1132, 1177, 1178, 1179, 1180, 1181, 1182,
2424 1183, 1184, 0, 598, 0, 0, 473, 474, 475, 0,
2425 0, 0, 0, 0, 0, 1185, 0, 0, 0, 0,
2426 0, 246, 246, 0, 0, 246, 476, 477, 1516, 478,
2427 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
2428 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
2429 499, 500, 246, 501, 0, 0, 0, 0, 0, 0,
2430 0, 0, 0, 0, 0, 502, 0, 0, 248, 0,
2431 0, 0, 0, 0, 0, 0, 473, 474, 475, 0,
2432 0, 0, 0, 246, 0, 246, 0, 0, 0, 0,
2433 0, 0, 0, 0, 0, 718, 476, 477, 358, 478,
2434 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
2435 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
2436 499, 500, 0, 501, 0, 0, 0, 0, 246, 246,
2437 0, 0, 246, 0, 0, 502, 0, 0, 895, 0,
2438 895, 0, 895, 0, 0, 0, 0, 895, 224, 0,
2439 0, 0, 895, 0, 895, 0, 0, 895, 0, 0,
2440 213, 0, 0, 0, 0, 0, 903, 0, 0, 0,
2441 246, 246, 0, 0, 246, 0, 0, 0, 0, 0,
2442 0, 246, 0, 50, 0, 0, 0, 0, 0, 0,
2443 0, 0, 0, 0, 0, 0, 0, 1517, 0, 903,
2444 0, 0, 0, 0, 0, 0, 0, 0, 0, 1690,
2445 0, 0, 0, 0, 0, 354, 0, 354, 0, 0,
2446 217, 218, 219, 220, 221, 0, 0, 0, 0, 246,
2447 0, 246, 0, 246, 0, 0, 0, 0, 246, 0,
2448 224, 0, 0, 0, 0, 0, 0, 871, 93, 94,
2449 0, 95, 190, 97, 246, 0, 0, 0, 0, 895,
2450 0, 0, 0, 0, 0, 0, 0, 503, 0, 1037,
2451 0, 246, 246, 0, 0, 0, 354, 108, 1691, 246,
2452 0, 246, 0, 0, 0, 0, 226, 0, 0, 1159,
2453 1160, 1161, 0, 0, 0, 0, 0, 0, 0, 0,
2454 0, 0, 289, 0, 246, 0, 246, 0, 0, 0,
2455 1162, 246, 246, 1163, 1164, 1165, 1166, 1167, 1168, 1169,
2456 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179,
2457 1180, 1181, 1182, 1183, 1184, 0, 0, 0, 246, 291,
2458 0, 0, 991, 992, 0, 0, 0, 0, 1185, 0,
2459 0, 0, 213, 0, 0, 895, 895, 895, 1135, 0,
2460 0, 0, 895, 0, 246, 226, 0, 0, 354, 0,
2461 246, 354, 246, 0, 0, 50, 0, 0, 546, 518,
2462 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
2463 529, 0, 0, 0, 0, 0, 0, 1087, 0, 0,
2464 0, 0, 0, 226, 0, 226, 0, 0, 0, 0,
2465 0, 590, 217, 218, 219, 220, 221, 591, 0, 0,
2466 0, 0, 0, 530, 531, 0, 0, 0, 0, 0,
2467 0, 226, 903, 0, 189, 0, 0, 91, 344, 0,
2468 93, 94, 0, 95, 190, 97, 0, -1131, 903, 903,
2469 903, 903, 903, 0, 0, 0, 0, 0, 348, 0,
2470 0, 903, 0, 0, 0, 872, 0, 0, 895, 108,
2471 350, 0, 0, 0, 0, 246, 0, 0, 1189, 1371,
2472 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2473 246, 0, 0, 0, 246, 0, 0, 0, 246, 246,
2474 532, 533, 0, 0, 226, 0, 0, 0, 0, 0,
2475 0, 0, 0, 246, 0, 213, 0, 0, 1212, 895,
2476 354, 0, 875, 0, 0, 0, 873, 0, 0, 0,
2477 0, 0, 1138, 718, 0, 895, 0, 0, 50, 0,
2478 0, 895, 0, 1212, 0, 0, 0, 0, 0, 0,
2479 0, 0, 0, 226, 0, 0, 0, 0, 0, 0,
2480 0, 0, 0, 0, 0, 0, 0, 0, 246, 228,
2481 228, 0, 0, 0, 0, 217, 218, 219, 220, 221,
2482 252, 0, 0, 895, 903, 0, 0, 0, 0, 0,
2483 0, 0, 0, 0, 246, 0, 246, 189, 0, 1269,
2484 91, 0, 0, 93, 94, 0, 95, 190, 97, 0,
2485 1345, 0, 0, 0, 0, 354, 354, 0, 0, 0,
2486 0, 0, 0, 248, 354, 246, 0, 0, 1220, 0,
2487 0, 0, 108, 1087, 0, 0, 0, 0, 0, 0,
2488 0, 246, 0, 0, 0, 0, 1231, 246, 0, 0,
2489 0, 246, 0, 0, 0, 0, 0, 0, 0, 1250,
2490 0, 0, 0, 0, 0, 246, 246, 0, 0, 0,
2491 0, 0, 0, 0, 0, 0, 0, 0, 0, 226,
2492 226, 481, 482, 483, 484, 485, 486, 487, 488, 489,
2493 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
2494 500, 0, 501, 0, 0, 1282, 0, 0, 0, 0,
2495 0, 0, 0, 0, 502, 903, 903, 903, 903, 903,
2496 903, 226, 903, 0, 0, 903, 903, 903, 903, 903,
2497 903, 903, 903, 903, 903, 903, 903, 903, 903, 903,
2498 903, 903, 903, 903, 903, 903, 903, 903, 903, 903,
2499 903, 903, 903, 483, 484, 485, 486, 487, 488, 489,
2500 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
2501 500, 903, 501, 0, 0, 0, 0, 0, 0, 1339,
2502 0, 0, 0, 1343, 502, 0, 0, 0, 1347, 0,
2503 228, 0, 0, 0, 0, 0, 0, 0, 1129, 0,
2504 473, 474, 475, 0, 0, 354, 354, 0, 0, 0,
2505 0, 0, 0, 0, 0, 0, 0, 0, 0, 226,
2506 476, 477, 0, 478, 479, 480, 481, 482, 483, 484,
2507 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
2508 495, 496, 497, 498, 499, 500, 0, 501, 0, 0,
2509 0, 0, 0, 0, 0, 0, 0, 0, 0, 502,
2510 0, 0, 0, 0, 0, 0, 1087, 1087, 1087, 1087,
2511 1087, 1087, 0, 0, 226, 1087, 0, 1087, 0, 0,
2512 213, 226, 0, 0, 0, 0, 0, 0, 0, 0,
2513 1445, 0, 0, 0, 0, 0, 226, 0, 903, 0,
2514 0, 354, 0, 50, 0, 1025, 518, 519, 520, 521,
2515 522, 523, 524, 525, 526, 527, 528, 529, 0, 354,
2516 903, 0, 903, 0, 0, 0, 354, 0, 228, 0,
2517 0, 0, 354, 1470, 0, 0, 1473, 228, 0, 0,
2518 217, 218, 219, 220, 221, 0, 0, 903, 0, 0,
2519 530, 531, 0, 0, 0, 0, 228, 0, 0, 0,
2520 0, 0, 0, 0, 0, 0, 0, 252, 93, 94,
2521 0, 95, 190, 97, 0, 0, 0, 0, 354, 473,
2522 474, 475, 0, 0, 0, 0, 0, 1563, 0, 0,
2523 0, 0, 0, 971, 1521, 0, 0, 108, 739, 476,
2524 477, 1525, 478, 479, 480, 481, 482, 483, 484, 485,
2525 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
2526 496, 497, 498, 499, 500, 0, 501, 532, 533, 0,
2527 0, 0, 0, 0, 0, 0, 0, 0, 502, 0,
2528 0, 0, 0, 0, 0, 1087, 0, 1087, 0, 0,
2529 0, 252, 354, 1159, 1160, 1161, 354, 0, 875, 0,
2530 0, 354, 0, 0, 0, 0, 0, 0, 0, 1560,
2531 1561, 0, 0, 0, 1162, 0, 0, 1163, 1164, 1165,
2532 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175,
2533 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 0,
2534 903, 0, 903, 0, 903, 0, 0, 0, 0, 903,
2535 226, 0, 1185, 0, 903, 0, 903, 0, 0, 903,
2536 0, 0, 0, 213, 0, 0, 0, 0, 0, 0,
2537 0, 0, 0, 1673, 0, 0, 1686, 0, 0, 0,
2538 0, 0, 0, 0, 0, 0, 50, 0, 0, 904,
2539 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2540 0, 0, 0, 354, 0, 354, 0, 0, 0, 0,
2541 0, 0, 1005, 0, 0, 0, 1650, 1651, 0, 0,
2542 1653, 1353, 904, 217, 218, 219, 220, 221, 0, 0,
2543 0, 1087, 0, 1087, 0, 1087, 0, 0, 0, 0,
2544 1087, 0, 226, 0, 0, 0, 354, 0, 409, 354,
2545 0, 93, 94, 0, 95, 190, 97, 0, 1671, 0,
2546 0, 903, 0, 0, 0, 0, 0, 0, 0, 1698,
2547 0, 0, 0, 1754, 1755, 0, 0, 0, 0, 0,
2548 108, 0, 0, 1686, 410, 0, 0, 0, 0, 0,
2549 0, 0, 473, 474, 475, 0, 0, 0, 0, 0,
2550 0, 0, 0, 0, 0, 0, 0, 354, 0, 228,
2551 0, 0, 476, 477, 354, 478, 479, 480, 481, 482,
2552 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
2553 493, 494, 495, 496, 497, 498, 499, 500, 0, 501,
2554 1087, 0, 1747, 1289, 1290, 1291, 213, 0, 0, 0,
2555 0, 502, 0, 0, 0, 0, 0, 903, 903, 903,
2556 0, 0, 0, 0, 903, 0, 1907, 1671, 0, 50,
2557 0, 0, 0, 0, 1686, 0, 0, 0, 0, 0,
2558 0, 0, 354, 354, 0, 0, 0, 0, 228, 0,
2559 0, 0, 1671, 0, 1671, 0, 0, 0, 0, 1873,
2560 1671, 0, 0, 0, 0, 0, 217, 218, 219, 220,
2561 221, 0, 905, 354, 0, 0, 0, 213, 0, 0,
2562 0, 0, 0, 0, 0, 0, 228, 0, 228, 0,
2563 0, 0, 0, 0, 93, 94, 0, 95, 190, 97,
2564 50, 0, 0, 0, 0, 935, 0, 0, 0, 0,
2565 0, 0, 0, 0, 228, 904, 0, 289, 1909, 0,
2566 0, 0, 0, 108, 0, 0, 0, 0, 0, 0,
2567 903, 904, 904, 904, 904, 904, 0, 217, 218, 219,
2568 220, 221, 0, 0, 904, 1037, 0, 0, 0, 354,
2569 354, 0, 0, 354, 291, 213, 0, 0, 0, 0,
2570 1087, 1087, 0, 0, 0, 93, 94, 213, 95, 190,
2571 97, 0, 0, 0, 0, 0, 0, 0, 50, 0,
2572 0, 903, 0, 0, 0, 0, 0, 228, 0, 0,
2573 50, 354, 0, 0, 108, 1034, 0, 903, -435, 0,
2574 0, 1677, 354, 903, 0, 0, 0, 458, 187, 188,
2575 65, 66, 67, 0, 1678, 217, 218, 219, 220, 221,
2576 1679, 0, 0, 1931, 0, 0, 590, 217, 218, 219,
2577 220, 221, 591, 0, 0, 0, 252, 189, 1944, 0,
2578 91, 92, 1671, 93, 94, 903, 95, 1681, 97, 189,
2579 0, 0, 91, 344, 0, 93, 94, 0, 95, 190,
2580 97, 0, 0, 0, 0, 0, 0, 904, 0, 0,
2581 0, 0, 108, 348, 0, 354, 0, 0, 0, 0,
2582 459, 0, 0, 0, 108, 350, 0, 2034, 0, 213,
2583 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2584 354, 0, 0, 1673, 0, 0, 252, 0, 0, 0,
2585 0, 0, 50, 0, 0, 0, 2003, 0, 0, 0,
2586 367, 368, 0, 0, 0, 354, 0, 354, 0, 0,
2587 0, 0, 354, 354, 0, 0, 0, 0, 1117, 0,
2588 0, 0, 1944, 0, 2016, 0, 0, 0, 0, 217,
2589 218, 219, 220, 221, 1141, 1142, 1143, 1144, 1145, 0,
2590 0, 0, 228, 228, 0, 0, 0, 1156, 0, 0,
2591 0, 369, 0, 0, 370, 0, 0, 93, 94, 0,
2592 95, 190, 97, 0, 0, 0, 0, 0, 0, 0,
2593 0, 354, 0, 0, 0, 0, 0, 371, 904, 904,
2594 904, 904, 904, 904, 252, 904, 108, 0, 904, 904,
2595 904, 904, 904, 904, 904, 904, 904, 904, 904, 904,
2596 904, 904, 904, 904, 904, 904, 904, 904, 904, 904,
2597 904, 904, 904, 904, 904, 904, 473, 474, 475, 0,
2598 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2599 0, 0, 0, 0, 904, 0, 476, 477, 0, 478,
2600 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
2601 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
2602 499, 500, 213, 501, 0, 0, 0, 0, 0, 0,
2603 1256, 0, 0, 0, 0, 502, 354, 0, 0, 213,
2604 0, 965, 228, 966, 0, 50, 0, 0, 0, 0,
2605 0, 354, 0, 923, 924, 354, 0, 0, 0, 0,
2606 0, 0, 50, 0, 0, 0, 0, 0, 0, 0,
2607 0, 0, 0, 0, 1959, 0, 0, 0, 0, 0,
2608 0, 0, 217, 218, 219, 220, 221, 0, 0, 0,
2609 0, 0, 0, 0, 0, 0, 0, 252, 0, 217,
2610 218, 219, 220, 221, 228, 0, 0, 925, 0, 0,
2611 93, 94, 0, 95, 190, 97, 0, 0, 0, 228,
2612 0, 904, 0, 0, 0, 0, 0, 93, 94, 354,
2613 95, 190, 97, 0, 0, 0, 0, 0, 0, 108,
2614 213, 0, 0, 904, 0, 904, 0, 0, 0, 0,
2615 0, 1128, 0, 0, 0, 354, 108, 354, 0, 0,
2616 0, 1145, 1360, 50, 0, 1360, 0, 0, 0, 1063,
2617 904, 1374, 1377, 1378, 1379, 1381, 1382, 1383, 1384, 1385,
2618 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, 1394, 1395,
2619 1396, 1397, 1398, 1399, 1400, 1401, 1402, 1403, 1404, 0,
2620 217, 218, 219, 220, 221, 0, 0, 0, 354, 0,
2621 0, 0, 354, 0, 0, 0, 0, 1414, 0, 0,
2622 0, 0, 189, 0, 0, 91, 354, 354, 93, 94,
2623 0, 95, 190, 97, 0, 0, 0, 5, 6, 7,
2624 8, 9, 0, 0, 0, 0, 0, 10, 0, 0,
2625 0, 0, 0, 0, 0, 0, 0, 108, 0, 0,
2626 0, 359, 425, 13, 0, 0, 0, 0, 0, 0,
2627 0, 0, 798, 0, 0, 0, 0, 0, 0, 0,
2628 0, 0, 0, 0, 15, 16, 0, 0, 0, 0,
2629 17, 0, 18, 19, 20, 21, 22, 23, 24, 25,
2630 26, 27, 28, 0, 29, 30, 31, 32, 0, 0,
2631 0, 0, 34, 35, 36, 37, 38, 39, 40, 0,
2632 0, 0, 0, 904, 0, 904, 43, 904, 0, 0,
2633 0, 0, 904, 252, 0, 0, 0, 904, 50, 904,
2634 0, 0, 904, 0, 1511, 0, 55, 0, 0, 0,
2635 0, 0, 0, 0, 0, 186, 187, 188, 65, 66,
2636 67, 0, 0, 69, 70, 0, 1529, 0, 1530, 0,
2637 0, 0, 0, 74, 75, 76, 77, 78, 79, 80,
2638 0, 81, 82, 83, 84, 85, 0, 0, 0, 0,
2639 0, 0, 87, 1551, 0, 0, 0, 189, 89, 90,
2640 91, 92, 0, 93, 94, 0, 95, 190, 97, 0,
2641 0, 0, 99, 0, 0, 100, 0, 0, 0, 0,
2642 0, 101, 102, 0, 0, 252, 213, 105, 106, 107,
2643 0, 0, 108, 109, 473, 474, 475, 0, 0, 112,
2644 113, 114, 115, 0, 904, 0, 0, 0, 0, 50,
2645 0, 0, 0, 0, 476, 477, 0, 478, 479, 480,
2646 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
2647 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
2648 0, 501, 0, 0, 0, 0, 217, 218, 219, 220,
2649 221, 0, 0, 502, 0, 0, 0, 0, 0, 279,
2650 280, 0, 281, 282, 0, 0, 283, 284, 285, 286,
2651 0, 0, 455, 0, 93, 94, 0, 95, 190, 97,
2652 0, 0, 0, 0, 287, 288, 0, 0, 0, 0,
2653 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2654 904, 904, 904, 108, 0, 0, 1655, 904, 1656, 0,
2655 1657, 0, 0, 290, 0, 1658, 1912, 0, 0, 0,
2656 1660, 0, 1661, 0, 0, 1662, 0, 292, 293, 294,
2657 295, 296, 297, 298, 0, 0, 0, 213, 0, 214,
2658 40, 0, 0, 299, 0, 0, 0, 0, 0, 300,
2659 301, 302, 303, 304, 305, 306, 307, 308, 309, 310,
2660 50, 311, 312, 313, 314, 315, 316, 317, 318, 319,
2661 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
2662 330, 331, 332, 333, 334, 213, 335, 1203, 785, 337,
2663 338, 339, 0, 0, 0, 340, 601, 217, 218, 219,
2664 220, 221, 602, 0, 0, 0, 0, 0, 50, 0,
2665 0, 0, 0, 904, 0, 0, 0, 0, 0, 603,
2666 0, 0, 0, 0, 0, 93, 94, 1749, 95, 190,
2667 97, 345, 0, 346, 0, 0, 347, 0, 0, 0,
2668 0, 0, 0, 0, 349, 217, 218, 219, 220, 221,
2669 0, 0, 0, 0, 108, 0, 0, 0, 786, 0,
2670 0, 112, 0, 0, 904, 0, 0, 189, 0, 0,
2671 91, 92, 0, 93, 94, 0, 95, 190, 97, 0,
2672 904, 0, 0, 0, 0, 0, 904, 5, 6, 7,
2673 8, 9, 0, 0, 0, 0, 0, 10, 0, 0,
2674 0, 0, 108, 0, 0, 0, 0, 0, 0, 0,
2675 0, 11, 12, 13, 0, 2005, 0, 0, 0, 0,
2676 0, 0, 0, 1900, 1901, 1902, 0, 0, 904, 0,
2677 1906, 0, 14, 0, 15, 16, 0, 0, 0, 0,
2678 17, 0, 18, 19, 20, 21, 22, 23, 24, 25,
2679 26, 27, 28, 0, 29, 30, 31, 32, 33, 0,
2680 0, 0, 34, 35, 36, 37, 38, 39, 40, 0,
2681 41, 0, 42, 0, 0, 0, 43, 44, 45, 46,
2682 0, 47, 0, 48, 0, 49, 0, 0, 50, 51,
2683 0, 0, 0, 52, 53, 54, 55, 56, 57, 58,
2684 0, 59, -205, 60, 61, 62, 63, 64, 65, 66,
2685 67, 0, 68, 69, 70, 71, 72, 73, 0, 0,
2686 0, 0, 0, 74, 75, 76, 77, 78, 79, 80,
2687 0, 81, 82, 83, 84, 85, 1925, 0, 0, 86,
2688 0, 0, 87, 0, 0, 0, 0, 88, 89, 90,
2689 91, 92, 0, 93, 94, 0, 95, 96, 97, 98,
2690 0, 0, 99, 0, 0, 100, 0, 0, 0, 0,
2691 0, 101, 102, 103, 0, 104, 0, 105, 106, 107,
2692 0, 0, 108, 109, 0, 110, 111, 1968, 0, 112,
2693 113, 114, 115, 0, 0, 0, 0, 5, 6, 7,
2694 8, 9, 0, 1981, 0, 0, 0, 10, 0, 1984,
2695 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2696 0, 11, 12, 13, 0, 0, 0, 0, 0, 0,
2697 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2698 0, 0, 14, 0, 15, 16, 0, 0, 0, 0,
2699 17, 2007, 18, 19, 20, 21, 22, 23, 24, 25,
2700 26, 27, 28, 0, 29, 30, 31, 32, 33, 0,
2701 0, 0, 34, 35, 36, 37, 38, 39, 40, 0,
2702 41, 0, 42, 0, 0, 0, 43, 44, 45, 46,
2703 0, 47, 0, 48, 0, 49, 0, 0, 50, 51,
2704 0, 0, 0, 52, 53, 54, 55, 56, 57, 58,
2705 0, 59, 0, 60, 61, 62, 63, 64, 65, 66,
2706 67, 0, 68, 69, 70, 71, 72, 73, 0, 0,
2707 0, 0, 0, 74, 75, 76, 77, 78, 79, 80,
2708 0, 81, 82, 83, 84, 85, 0, 0, 0, 86,
2709 0, 0, 87, 0, 0, 0, 0, 88, 89, 90,
2710 91, 92, 0, 93, 94, 0, 95, 96, 97, 98,
2711 0, 0, 99, 0, 0, 100, 0, 0, 0, 0,
2712 0, 101, 102, 103, 0, 104, 0, 105, 106, 107,
2713 0, 0, 108, 109, 0, 110, 111, 1218, 0, 112,
2714 113, 114, 115, 5, 6, 7, 8, 9, 0, 0,
2715 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2716 0, 0, 0, 0, 0, 0, 0, 11, 12, 13,
2717 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2718 0, 0, 0, 0, 0, 0, 0, 0, 14, 0,
2719 15, 16, 0, 0, 0, 0, 17, 0, 18, 19,
2720 20, 21, 22, 23, 24, 25, 26, 27, 28, 0,
2721 29, 30, 31, 32, 33, 0, 0, 0, 34, 35,
2722 36, 37, 38, 39, 40, 0, 41, 0, 42, 0,
2723 0, 0, 43, 44, 45, 46, 0, 47, 0, 48,
2724 0, 49, 0, 0, 50, 51, 0, 0, 0, 52,
2725 53, 54, 55, 56, 57, 58, 0, 59, 0, 60,
2726 61, 62, 63, 64, 65, 66, 67, 0, 68, 69,
2727 70, 71, 72, 73, 0, 0, 0, 0, 0, 74,
2728 75, 76, 77, 78, 79, 80, 0, 81, 82, 83,
2729 84, 85, 0, 0, 0, 86, 0, 0, 87, 0,
2730 0, 0, 0, 88, 89, 90, 91, 92, 0, 93,
2731 94, 0, 95, 96, 97, 98, 0, 0, 99, 0,
2732 0, 100, 0, 0, 0, 0, 0, 101, 102, 103,
2733 0, 104, 0, 105, 106, 107, 0, 0, 108, 109,
2734 0, 110, 111, 1424, 0, 112, 113, 114, 115, 5,
2735 6, 7, 8, 9, 0, 0, 0, 0, 0, 10,
2736 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2737 0, 0, 0, 11, 12, 13, 0, 0, 0, 0,
2738 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2739 0, 0, 0, 0, 14, 0, 15, 16, 0, 0,
2740 0, 0, 17, 0, 18, 19, 20, 21, 22, 23,
2741 24, 25, 26, 27, 28, 0, 29, 30, 31, 32,
2742 33, 0, 0, 0, 34, 35, 36, 37, 38, 39,
2743 40, 0, 41, 0, 42, 0, 0, 0, 43, 44,
2744 45, 46, 0, 47, 0, 48, 0, 49, 0, 0,
2745 50, 51, 0, 0, 0, 52, 53, 54, 55, 0,
2746 57, 58, 0, 59, 0, 0, 61, 62, 63, 64,
2747 65, 66, 67, 0, 68, 69, 70, 0, 72, 73,
2748 0, 0, 0, 0, 0, 74, 75, 76, 77, 78,
2749 79, 80, 0, 81, 82, 83, 84, 85, 0, 0,
2750 0, 86, 0, 0, 87, 0, 0, 0, 0, 189,
2751 89, 90, 91, 92, 0, 93, 94, 0, 95, 190,
2752 97, 98, 0, 0, 99, 0, 0, 100, 0, 0,
2753 0, 0, 0, 101, 102, 0, 0, 0, 0, 105,
2754 106, 107, 0, 0, 108, 109, 0, 110, 111, 704,
2755 0, 112, 113, 114, 115, 5, 6, 7, 8, 9,
2756 0, 0, 0, 0, 0, 10, 0, 0, 0, 0,
2757 0, 0, 0, 0, 0, 0, 0, 0, 0, 11,
2758 12, 13, 0, 0, 0, 0, 0, 0, 0, 0,
2759 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2760 14, 0, 15, 16, 0, 0, 0, 0, 17, 0,
2761 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
2762 28, 0, 29, 30, 31, 32, 33, 0, 0, 0,
2763 34, 35, 36, 37, 38, 39, 40, 0, 41, 0,
2764 42, 0, 0, 0, 43, 44, 45, 46, 0, 47,
2765 0, 48, 0, 49, 0, 0, 50, 51, 0, 0,
2766 0, 52, 53, 54, 55, 0, 57, 58, 0, 59,
2767 0, 0, 61, 62, 63, 64, 65, 66, 67, 0,
2768 68, 69, 70, 0, 72, 73, 0, 0, 0, 0,
2769 0, 74, 75, 76, 77, 78, 79, 80, 0, 81,
2770 82, 83, 84, 85, 0, 0, 0, 86, 0, 0,
2771 87, 0, 0, 0, 0, 189, 89, 90, 91, 92,
2772 0, 93, 94, 0, 95, 190, 97, 98, 0, 0,
2773 99, 0, 0, 100, 0, 0, 0, 0, 0, 101,
2774 102, 0, 0, 0, 0, 105, 106, 107, 0, 0,
2775 108, 109, 0, 110, 111, 1027, 0, 112, 113, 114,
2776 115, 5, 6, 7, 8, 9, 0, 0, 0, 0,
2777 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
2778 0, 0, 0, 0, 0, 11, 12, 13, 0, 0,
2779 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2780 0, 0, 0, 0, 0, 0, 14, 0, 15, 16,
2781 0, 0, 0, 0, 17, 0, 18, 19, 20, 21,
2782 22, 23, 24, 25, 26, 27, 28, 0, 29, 30,
2783 31, 32, 33, 0, 0, 0, 34, 35, 36, 37,
2784 38, 39, 40, 0, 41, 0, 42, 0, 0, 0,
2785 43, 44, 45, 46, 0, 47, 0, 48, 0, 49,
2786 0, 0, 50, 51, 0, 0, 0, 52, 53, 54,
2787 55, 0, 57, 58, 0, 59, -205, 0, 61, 62,
2788 63, 64, 65, 66, 67, 0, 68, 69, 70, 0,
2789 72, 73, 0, 0, 0, 0, 0, 74, 75, 76,
2790 77, 78, 79, 80, 0, 81, 82, 83, 84, 85,
2791 0, 0, 0, 86, 0, 0, 87, 0, 0, 0,
2792 0, 189, 89, 90, 91, 92, 0, 93, 94, 0,
2793 95, 190, 97, 98, 0, 0, 99, 0, 0, 100,
2794 0, 0, 0, 0, 0, 101, 102, 0, 0, 0,
2795 0, 105, 106, 107, 0, 0, 108, 109, 0, 110,
2796 111, 0, 0, 112, 113, 114, 115, 5, 6, 7,
2797 8, 9, 0, 0, 0, 0, 0, 10, 0, 0,
2798 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2799 0, 11, 12, 13, 0, 0, 0, 0, 0, 0,
2800 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2801 0, 0, 14, 0, 15, 16, 0, 0, 0, 0,
2802 17, 0, 18, 19, 20, 21, 22, 23, 24, 25,
2803 26, 27, 28, 0, 29, 30, 31, 32, 33, 0,
2804 0, 0, 34, 35, 36, 37, 38, 39, 40, 0,
2805 41, 0, 42, 0, 0, 0, 43, 44, 45, 46,
2806 0, 47, 0, 48, 0, 49, 0, 0, 50, 51,
2807 0, 0, 0, 52, 53, 54, 55, 0, 57, 58,
2808 0, 59, 0, 0, 61, 62, 63, 64, 65, 66,
2809 67, 0, 68, 69, 70, 0, 72, 73, 0, 0,
2810 0, 0, 0, 74, 75, 76, 77, 78, 79, 80,
2811 0, 81, 82, 83, 84, 85, 0, 0, 0, 86,
2812 0, 0, 87, 0, 0, 0, 0, 189, 89, 90,
2813 91, 92, 0, 93, 94, 0, 95, 190, 97, 98,
2814 0, 0, 99, 0, 0, 100, 0, 0, 0, 0,
2815 0, 101, 102, 0, 0, 0, 0, 105, 106, 107,
2816 0, 0, 108, 109, 0, 110, 111, 1188, 0, 112,
2817 113, 114, 115, 5, 6, 7, 8, 9, 0, 0,
2818 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2819 0, 0, 0, 0, 0, 0, 0, 11, 12, 13,
2820 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2821 0, 0, 0, 0, 0, 0, 0, 0, 14, 0,
2822 15, 16, 0, 0, 0, 0, 17, 0, 18, 19,
2823 20, 21, 22, 23, 24, 25, 26, 27, 28, 0,
2824 29, 30, 31, 32, 33, 0, 0, 0, 34, 35,
2825 36, 37, 38, 39, 40, 0, 41, 0, 42, 0,
2826 0, 0, 43, 44, 45, 46, 0, 47, 0, 48,
2827 0, 49, 0, 0, 50, 51, 0, 0, 0, 52,
2828 53, 54, 55, 0, 57, 58, 0, 59, 0, 0,
2829 61, 62, 63, 64, 65, 66, 67, 0, 68, 69,
2830 70, 0, 72, 73, 0, 0, 0, 0, 0, 74,
2831 75, 76, 77, 78, 79, 80, 0, 81, 82, 83,
2832 84, 85, 0, 0, 0, 86, 0, 0, 87, 0,
2833 0, 0, 0, 189, 89, 90, 91, 92, 0, 93,
2834 94, 0, 95, 190, 97, 98, 0, 0, 99, 0,
2835 0, 100, 0, 0, 0, 0, 0, 101, 102, 0,
2836 0, 0, 0, 105, 106, 107, 0, 0, 108, 109,
2837 0, 110, 111, 1233, 0, 112, 113, 114, 115, 5,
2838 6, 7, 8, 9, 0, 0, 0, 0, 0, 10,
2839 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2840 0, 0, 0, 11, 12, 13, 0, 0, 0, 0,
2841 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2842 0, 0, 0, 0, 14, 0, 15, 16, 0, 0,
2843 0, 0, 17, 0, 18, 19, 20, 21, 22, 23,
2844 24, 25, 26, 27, 28, 0, 29, 30, 31, 32,
2845 33, 0, 0, 0, 34, 35, 36, 37, 38, 39,
2846 40, 0, 41, 0, 42, 0, 0, 0, 43, 44,
2847 45, 46, 0, 47, 0, 48, 0, 49, 0, 0,
2848 50, 51, 0, 0, 0, 52, 53, 54, 55, 0,
2849 57, 58, 0, 59, 0, 0, 61, 62, 63, 64,
2850 65, 66, 67, 0, 68, 69, 70, 0, 72, 73,
2851 0, 0, 0, 0, 0, 74, 75, 76, 77, 78,
2852 79, 80, 0, 81, 82, 83, 84, 85, 0, 0,
2853 0, 86, 0, 0, 87, 0, 0, 0, 0, 189,
2854 89, 90, 91, 92, 0, 93, 94, 0, 95, 190,
2855 97, 98, 0, 0, 99, 0, 0, 100, 0, 0,
2856 0, 0, 0, 101, 102, 0, 0, 0, 0, 105,
2857 106, 107, 0, 0, 108, 109, 0, 110, 111, 1265,
2858 0, 112, 113, 114, 115, 5, 6, 7, 8, 9,
2859 0, 0, 0, 0, 0, 10, 0, 0, 0, 0,
2860 0, 0, 0, 0, 0, 0, 0, 0, 0, 11,
2861 12, 13, 0, 0, 0, 0, 0, 0, 0, 0,
2862 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2863 14, 0, 15, 16, 0, 0, 0, 0, 17, 0,
2864 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
2865 28, 0, 29, 30, 31, 32, 33, 0, 0, 0,
2866 34, 35, 36, 37, 38, 39, 40, 0, 41, 0,
2867 42, 0, 0, 0, 43, 44, 45, 46, 0, 47,
2868 0, 48, 0, 49, 0, 0, 50, 51, 0, 0,
2869 0, 52, 53, 54, 55, 0, 57, 58, 0, 59,
2870 0, 0, 61, 62, 63, 64, 65, 66, 67, 0,
2871 68, 69, 70, 0, 72, 73, 0, 0, 0, 0,
2872 0, 74, 75, 76, 77, 78, 79, 80, 0, 81,
2873 82, 83, 84, 85, 0, 0, 0, 86, 0, 0,
2874 87, 0, 0, 0, 0, 189, 89, 90, 91, 92,
2875 0, 93, 94, 0, 95, 190, 97, 98, 0, 0,
2876 99, 0, 0, 100, 0, 0, 0, 0, 0, 101,
2877 102, 0, 0, 0, 0, 105, 106, 107, 0, 0,
2878 108, 109, 0, 110, 111, 1323, 0, 112, 113, 114,
2879 115, 5, 6, 7, 8, 9, 0, 0, 0, 0,
2880 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
2881 0, 0, 0, 0, 0, 11, 12, 13, 0, 0,
2882 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2883 0, 0, 0, 0, 0, 0, 14, 0, 15, 16,
2884 0, 0, 0, 0, 17, 0, 18, 19, 20, 21,
2885 22, 23, 24, 25, 26, 27, 28, 0, 29, 30,
2886 31, 32, 33, 0, 0, 0, 34, 35, 36, 37,
2887 38, 39, 40, 0, 41, 0, 42, 0, 0, 0,
2888 43, 44, 45, 46, 1325, 47, 0, 48, 0, 49,
2889 0, 0, 50, 51, 0, 0, 0, 52, 53, 54,
2890 55, 0, 57, 58, 0, 59, 0, 0, 61, 62,
2891 63, 64, 65, 66, 67, 0, 68, 69, 70, 0,
2892 72, 73, 0, 0, 0, 0, 0, 74, 75, 76,
2893 77, 78, 79, 80, 0, 81, 82, 83, 84, 85,
2894 0, 0, 0, 86, 0, 0, 87, 0, 0, 0,
2895 0, 189, 89, 90, 91, 92, 0, 93, 94, 0,
2896 95, 190, 97, 98, 0, 0, 99, 0, 0, 100,
2897 0, 0, 0, 0, 0, 101, 102, 0, 0, 0,
2898 0, 105, 106, 107, 0, 0, 108, 109, 0, 110,
2899 111, 0, 0, 112, 113, 114, 115, 5, 6, 7,
2900 8, 9, 0, 0, 0, 0, 0, 10, 0, 0,
2901 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2902 0, 11, 12, 13, 0, 0, 0, 0, 0, 0,
2903 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2904 0, 0, 14, 0, 15, 16, 0, 0, 0, 0,
2905 17, 0, 18, 19, 20, 21, 22, 23, 24, 25,
2906 26, 27, 28, 0, 29, 30, 31, 32, 33, 0,
2907 0, 0, 34, 35, 36, 37, 38, 39, 40, 0,
2908 41, 0, 42, 0, 0, 0, 43, 44, 45, 46,
2909 0, 47, 0, 48, 0, 49, 1512, 0, 50, 51,
2910 0, 0, 0, 52, 53, 54, 55, 0, 57, 58,
2911 0, 59, 0, 0, 61, 62, 63, 64, 65, 66,
2912 67, 0, 68, 69, 70, 0, 72, 73, 0, 0,
2913 0, 0, 0, 74, 75, 76, 77, 78, 79, 80,
2914 0, 81, 82, 83, 84, 85, 0, 0, 0, 86,
2915 0, 0, 87, 0, 0, 0, 0, 189, 89, 90,
2916 91, 92, 0, 93, 94, 0, 95, 190, 97, 98,
2917 0, 0, 99, 0, 0, 100, 0, 0, 0, 0,
2918 0, 101, 102, 0, 0, 0, 0, 105, 106, 107,
2919 0, 0, 108, 109, 0, 110, 111, 0, 0, 112,
2920 113, 114, 115, 5, 6, 7, 8, 9, 0, 0,
2921 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
2922 0, 0, 0, 0, 0, 0, 0, 11, 12, 13,
2923 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2924 0, 0, 0, 0, 0, 0, 0, 0, 14, 0,
2925 15, 16, 0, 0, 0, 0, 17, 0, 18, 19,
2926 20, 21, 22, 23, 24, 25, 26, 27, 28, 0,
2927 29, 30, 31, 32, 33, 0, 0, 0, 34, 35,
2928 36, 37, 38, 39, 40, 0, 41, 0, 42, 0,
2929 0, 0, 43, 44, 45, 46, 0, 47, 0, 48,
2930 0, 49, 0, 0, 50, 51, 0, 0, 0, 52,
2931 53, 54, 55, 0, 57, 58, 0, 59, 0, 0,
2932 61, 62, 63, 64, 65, 66, 67, 0, 68, 69,
2933 70, 0, 72, 73, 0, 0, 0, 0, 0, 74,
2934 75, 76, 77, 78, 79, 80, 0, 81, 82, 83,
2935 84, 85, 0, 0, 0, 86, 0, 0, 87, 0,
2936 0, 0, 0, 189, 89, 90, 91, 92, 0, 93,
2937 94, 0, 95, 190, 97, 98, 0, 0, 99, 0,
2938 0, 100, 0, 0, 0, 0, 0, 101, 102, 0,
2939 0, 0, 0, 105, 106, 107, 0, 0, 108, 109,
2940 0, 110, 111, 1664, 0, 112, 113, 114, 115, 5,
2941 6, 7, 8, 9, 0, 0, 0, 0, 0, 10,
2942 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2943 0, 0, 0, 11, 12, 13, 0, 0, 0, 0,
2944 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2945 0, 0, 0, 0, 14, 0, 15, 16, 0, 0,
2946 0, 0, 17, 0, 18, 19, 20, 21, 22, 23,
2947 24, 25, 26, 27, 28, 0, 29, 30, 31, 32,
2948 33, 0, 0, -297, 34, 35, 36, 37, 38, 39,
2949 40, 0, 41, 0, 42, 0, 0, 0, 43, 44,
2950 45, 46, 0, 47, 0, 48, 0, 49, 0, 0,
2951 50, 51, 0, 0, 0, 52, 53, 54, 55, 0,
2952 57, 58, 0, 59, 0, 0, 61, 62, 63, 64,
2953 65, 66, 67, 0, 68, 69, 70, 0, 72, 73,
2954 0, 0, 0, 0, 0, 74, 75, 76, 77, 78,
2955 79, 80, 0, 81, 82, 83, 84, 85, 0, 0,
2956 0, 86, 0, 0, 87, 0, 0, 0, 0, 189,
2957 89, 90, 91, 92, 0, 93, 94, 0, 95, 190,
2958 97, 98, 0, 0, 99, 0, 0, 100, 0, 0,
2959 0, 0, 0, 101, 102, 0, 0, 0, 0, 105,
2960 106, 107, 0, 0, 108, 109, 0, 110, 111, 0,
2961 0, 112, 113, 114, 115, 5, 6, 7, 8, 9,
2962 0, 0, 0, 0, 0, 10, 0, 0, 0, 0,
2963 0, 0, 0, 0, 0, 0, 0, 0, 0, 11,
2964 12, 13, 0, 0, 0, 0, 0, 0, 0, 0,
2965 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2966 14, 0, 15, 16, 0, 0, 0, 0, 17, 0,
2967 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
2968 28, 0, 29, 30, 31, 32, 33, 0, 0, 0,
2969 34, 35, 36, 37, 38, 39, 40, 0, 41, 0,
2970 42, 0, 0, 0, 43, 44, 45, 46, 0, 47,
2971 0, 48, 0, 49, 0, 0, 50, 51, 0, 0,
2972 0, 52, 53, 54, 55, 0, 57, 58, 0, 59,
2973 0, 0, 61, 62, 63, 64, 65, 66, 67, 0,
2974 68, 69, 70, 0, 72, 73, 0, 0, 0, 0,
2975 0, 74, 75, 76, 77, 78, 79, 80, 0, 81,
2976 82, 83, 84, 85, 0, 0, 0, 86, 0, 0,
2977 87, 0, 0, 0, 0, 189, 89, 90, 91, 92,
2978 0, 93, 94, 0, 95, 190, 97, 98, 0, 0,
2979 99, 0, 0, 100, 0, 0, 0, 0, 0, 101,
2980 102, 0, 0, 0, 0, 105, 106, 107, 0, 0,
2981 108, 109, 0, 110, 111, 1903, 0, 112, 113, 114,
2982 115, 5, 6, 7, 8, 9, 0, 0, 0, 0,
2983 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
2984 0, 0, 0, 0, 0, 11, 12, 13, 0, 0,
2985 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2986 0, 0, 0, 0, 0, 0, 14, 0, 15, 16,
2987 0, 0, 0, 0, 17, 0, 18, 19, 20, 21,
2988 22, 23, 24, 25, 26, 27, 28, 0, 29, 30,
2989 31, 32, 33, 0, 0, 0, 34, 35, 36, 37,
2990 38, 39, 40, 0, 41, 0, 42, 0, 0, 0,
2991 43, 44, 45, 46, 0, 47, 0, 48, 1955, 49,
2992 0, 0, 50, 51, 0, 0, 0, 52, 53, 54,
2993 55, 0, 57, 58, 0, 59, 0, 0, 61, 62,
2994 63, 64, 65, 66, 67, 0, 68, 69, 70, 0,
2995 72, 73, 0, 0, 0, 0, 0, 74, 75, 76,
2996 77, 78, 79, 80, 0, 81, 82, 83, 84, 85,
2997 0, 0, 0, 86, 0, 0, 87, 0, 0, 0,
2998 0, 189, 89, 90, 91, 92, 0, 93, 94, 0,
2999 95, 190, 97, 98, 0, 0, 99, 0, 0, 100,
3000 0, 0, 0, 0, 0, 101, 102, 0, 0, 0,
3001 0, 105, 106, 107, 0, 0, 108, 109, 0, 110,
3002 111, 0, 0, 112, 113, 114, 115, 5, 6, 7,
3003 8, 9, 0, 0, 0, 0, 0, 10, 0, 0,
3004 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3005 0, 11, 12, 13, 0, 0, 0, 0, 0, 0,
3006 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3007 0, 0, 14, 0, 15, 16, 0, 0, 0, 0,
3008 17, 0, 18, 19, 20, 21, 22, 23, 24, 25,
3009 26, 27, 28, 0, 29, 30, 31, 32, 33, 0,
3010 0, 0, 34, 35, 36, 37, 38, 39, 40, 0,
3011 41, 0, 42, 0, 0, 0, 43, 44, 45, 46,
3012 0, 47, 1997, 48, 0, 49, 0, 0, 50, 51,
3013 0, 0, 0, 52, 53, 54, 55, 0, 57, 58,
3014 0, 59, 0, 0, 61, 62, 63, 64, 65, 66,
3015 67, 0, 68, 69, 70, 0, 72, 73, 0, 0,
3016 0, 0, 0, 74, 75, 76, 77, 78, 79, 80,
3017 0, 81, 82, 83, 84, 85, 0, 0, 0, 86,
3018 0, 0, 87, 0, 0, 0, 0, 189, 89, 90,
3019 91, 92, 0, 93, 94, 0, 95, 190, 97, 98,
3020 0, 0, 99, 0, 0, 100, 0, 0, 0, 0,
3021 0, 101, 102, 0, 0, 0, 0, 105, 106, 107,
3022 0, 0, 108, 109, 0, 110, 111, 0, 0, 112,
3023 113, 114, 115, 5, 6, 7, 8, 9, 0, 0,
3024 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3025 0, 0, 0, 0, 0, 0, 0, 11, 12, 13,
3026 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3027 0, 0, 0, 0, 0, 0, 0, 0, 14, 0,
3028 15, 16, 0, 0, 0, 0, 17, 0, 18, 19,
3029 20, 21, 22, 23, 24, 25, 26, 27, 28, 0,
3030 29, 30, 31, 32, 33, 0, 0, 0, 34, 35,
3031 36, 37, 38, 39, 40, 0, 41, 0, 42, 0,
3032 0, 0, 43, 44, 45, 46, 0, 47, 0, 48,
3033 0, 49, 0, 0, 50, 51, 0, 0, 0, 52,
3034 53, 54, 55, 0, 57, 58, 0, 59, 0, 0,
3035 61, 62, 63, 64, 65, 66, 67, 0, 68, 69,
3036 70, 0, 72, 73, 0, 0, 0, 0, 0, 74,
3037 75, 76, 77, 78, 79, 80, 0, 81, 82, 83,
3038 84, 85, 0, 0, 0, 86, 0, 0, 87, 0,
3039 0, 0, 0, 189, 89, 90, 91, 92, 0, 93,
3040 94, 0, 95, 190, 97, 98, 0, 0, 99, 0,
3041 0, 100, 0, 0, 0, 0, 0, 101, 102, 0,
3042 0, 0, 0, 105, 106, 107, 0, 0, 108, 109,
3043 0, 110, 111, 2014, 0, 112, 113, 114, 115, 5,
3044 6, 7, 8, 9, 0, 0, 0, 0, 0, 10,
3045 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3046 0, 0, 0, 11, 12, 13, 0, 0, 0, 0,
3047 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3048 0, 0, 0, 0, 14, 0, 15, 16, 0, 0,
3049 0, 0, 17, 0, 18, 19, 20, 21, 22, 23,
3050 24, 25, 26, 27, 28, 0, 29, 30, 31, 32,
3051 33, 0, 0, 0, 34, 35, 36, 37, 38, 39,
3052 40, 0, 41, 0, 42, 0, 0, 0, 43, 44,
3053 45, 46, 0, 47, 0, 48, 0, 49, 0, 0,
3054 50, 51, 0, 0, 0, 52, 53, 54, 55, 0,
3055 57, 58, 0, 59, 0, 0, 61, 62, 63, 64,
3056 65, 66, 67, 0, 68, 69, 70, 0, 72, 73,
3057 0, 0, 0, 0, 0, 74, 75, 76, 77, 78,
3058 79, 80, 0, 81, 82, 83, 84, 85, 0, 0,
3059 0, 86, 0, 0, 87, 0, 0, 0, 0, 189,
3060 89, 90, 91, 92, 0, 93, 94, 0, 95, 190,
3061 97, 98, 0, 0, 99, 0, 0, 100, 0, 0,
3062 0, 0, 0, 101, 102, 0, 0, 0, 0, 105,
3063 106, 107, 0, 0, 108, 109, 0, 110, 111, 2017,
3064 0, 112, 113, 114, 115, 5, 6, 7, 8, 9,
3065 0, 0, 0, 0, 0, 10, 0, 0, 0, 0,
3066 0, 0, 0, 0, 0, 0, 0, 0, 0, 11,
3067 12, 13, 0, 0, 0, 0, 0, 0, 0, 0,
3068 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3069 14, 0, 15, 16, 0, 0, 0, 0, 17, 0,
3070 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
3071 28, 0, 29, 30, 31, 32, 33, 0, 0, 0,
3072 34, 35, 36, 37, 38, 39, 40, 0, 41, 0,
3073 42, 0, 0, 0, 43, 44, 45, 46, 0, 47,
3074 0, 48, 0, 49, 0, 0, 50, 51, 0, 0,
3075 0, 52, 53, 54, 55, 0, 57, 58, 0, 59,
3076 0, 0, 61, 62, 63, 64, 65, 66, 67, 0,
3077 68, 69, 70, 0, 72, 73, 0, 0, 0, 0,
3078 0, 74, 75, 76, 77, 78, 79, 80, 0, 81,
3079 82, 83, 84, 85, 0, 0, 0, 86, 0, 0,
3080 87, 0, 0, 0, 0, 189, 89, 90, 91, 92,
3081 0, 93, 94, 0, 95, 190, 97, 98, 0, 0,
3082 99, 0, 0, 100, 0, 0, 0, 0, 0, 101,
3083 102, 0, 0, 0, 0, 105, 106, 107, 0, 0,
3084 108, 109, 0, 110, 111, 2033, 0, 112, 113, 114,
3085 115, 5, 6, 7, 8, 9, 0, 0, 0, 0,
3086 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
3087 0, 0, 0, 0, 0, 11, 12, 13, 0, 0,
3088 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3089 0, 0, 0, 0, 0, 0, 14, 0, 15, 16,
3090 0, 0, 0, 0, 17, 0, 18, 19, 20, 21,
3091 22, 23, 24, 25, 26, 27, 28, 0, 29, 30,
3092 31, 32, 33, 0, 0, 0, 34, 35, 36, 37,
3093 38, 39, 40, 0, 41, 0, 42, 0, 0, 0,
3094 43, 44, 45, 46, 0, 47, 0, 48, 0, 49,
3095 0, 0, 50, 51, 0, 0, 0, 52, 53, 54,
3096 55, 0, 57, 58, 0, 59, 0, 0, 61, 62,
3097 63, 64, 65, 66, 67, 0, 68, 69, 70, 0,
3098 72, 73, 0, 0, 0, 0, 0, 74, 75, 76,
3099 77, 78, 79, 80, 0, 81, 82, 83, 84, 85,
3100 0, 0, 0, 86, 0, 0, 87, 0, 0, 0,
3101 0, 189, 89, 90, 91, 92, 0, 93, 94, 0,
3102 95, 190, 97, 98, 0, 0, 99, 0, 0, 100,
3103 0, 0, 0, 0, 0, 101, 102, 0, 0, 0,
3104 0, 105, 106, 107, 0, 0, 108, 109, 0, 110,
3105 111, 2088, 0, 112, 113, 114, 115, 5, 6, 7,
3106 8, 9, 0, 0, 0, 0, 0, 10, 0, 0,
3107 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3108 0, 11, 12, 13, 0, 0, 0, 0, 0, 0,
3109 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3110 0, 0, 14, 0, 15, 16, 0, 0, 0, 0,
3111 17, 0, 18, 19, 20, 21, 22, 23, 24, 25,
3112 26, 27, 28, 0, 29, 30, 31, 32, 33, 0,
3113 0, 0, 34, 35, 36, 37, 38, 39, 40, 0,
3114 41, 0, 42, 0, 0, 0, 43, 44, 45, 46,
3115 0, 47, 0, 48, 0, 49, 0, 0, 50, 51,
3116 0, 0, 0, 52, 53, 54, 55, 0, 57, 58,
3117 0, 59, 0, 0, 61, 62, 63, 64, 65, 66,
3118 67, 0, 68, 69, 70, 0, 72, 73, 0, 0,
3119 0, 0, 0, 74, 75, 76, 77, 78, 79, 80,
3120 0, 81, 82, 83, 84, 85, 0, 0, 0, 86,
3121 0, 0, 87, 0, 0, 0, 0, 189, 89, 90,
3122 91, 92, 0, 93, 94, 0, 95, 190, 97, 98,
3123 0, 0, 99, 0, 0, 100, 0, 0, 0, 0,
3124 0, 101, 102, 0, 0, 0, 0, 105, 106, 107,
3125 0, 0, 108, 109, 0, 110, 111, 2089, 0, 112,
3126 113, 114, 115, 5, 6, 7, 8, 9, 0, 0,
3127 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3128 0, 0, 0, 0, 0, 0, 0, 11, 12, 13,
3129 0, 0, 573, 0, 0, 0, 0, 0, 0, 0,
3130 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3131 15, 16, 0, 0, 0, 0, 17, 0, 18, 19,
3132 20, 21, 22, 23, 24, 25, 26, 27, 28, 0,
3133 29, 30, 31, 32, 33, 0, 0, 0, 34, 35,
3134 36, 37, 38, 39, 40, 0, 41, 0, 42, 0,
3135 0, 0, 43, 44, 45, 46, 0, 47, 0, 48,
3136 0, 49, 0, 0, 50, 51, 0, 0, 0, 52,
3137 53, 54, 55, 0, 57, 58, 0, 59, 0, 0,
3138 61, 62, 187, 188, 65, 66, 67, 0, 68, 69,
3139 70, 0, 0, 0, 0, 0, 0, 0, 0, 74,
3140 75, 76, 77, 78, 79, 80, 0, 81, 82, 83,
3141 84, 85, 0, 0, 0, 86, 0, 0, 87, 0,
3142 0, 0, 0, 189, 89, 90, 91, 92, 0, 93,
3143 94, 0, 95, 190, 97, 0, 0, 0, 99, 0,
3144 0, 100, 0, 0, 0, 0, 0, 101, 102, 0,
3145 0, 0, 0, 105, 106, 107, 0, 0, 108, 109,
3146 0, 110, 111, 0, 0, 112, 113, 114, 115, 5,
3147 6, 7, 8, 9, 0, 0, 0, 0, 0, 10,
3148 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3149 0, 0, 0, 11, 12, 13, 0, 0, 859, 0,
3150 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3151 0, 0, 0, 0, 0, 0, 15, 16, 0, 0,
3152 0, 0, 17, 0, 18, 19, 20, 21, 22, 23,
3153 24, 25, 26, 27, 28, 0, 29, 30, 31, 32,
3154 33, 0, 0, 0, 34, 35, 36, 37, 38, 39,
3155 40, 0, 41, 0, 42, 0, 0, 0, 43, 44,
3156 45, 46, 0, 47, 0, 48, 0, 49, 0, 0,
3157 50, 51, 0, 0, 0, 52, 53, 54, 55, 0,
3158 57, 58, 0, 59, 0, 0, 61, 62, 187, 188,
3159 65, 66, 67, 0, 68, 69, 70, 0, 0, 0,
3160 0, 0, 0, 0, 0, 74, 75, 76, 77, 78,
3161 79, 80, 0, 81, 82, 83, 84, 85, 0, 0,
3162 0, 86, 0, 0, 87, 0, 0, 0, 0, 189,
3163 89, 90, 91, 92, 0, 93, 94, 0, 95, 190,
3164 97, 0, 0, 0, 99, 0, 0, 100, 0, 0,
3165 0, 0, 0, 101, 102, 0, 0, 0, 0, 105,
3166 106, 107, 0, 0, 108, 109, 0, 110, 111, 0,
3167 0, 112, 113, 114, 115, 5, 6, 7, 8, 9,
3168 0, 0, 0, 0, 0, 10, 0, 0, 0, 0,
3169 0, 0, 0, 0, 0, 0, 0, 0, 0, 11,
3170 12, 13, 0, 0, 1119, 0, 0, 0, 0, 0,
3171 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3172 0, 0, 15, 16, 0, 0, 0, 0, 17, 0,
3173 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
3174 28, 0, 29, 30, 31, 32, 33, 0, 0, 0,
3175 34, 35, 36, 37, 38, 39, 40, 0, 41, 0,
3176 42, 0, 0, 0, 43, 44, 45, 46, 0, 47,
3177 0, 48, 0, 49, 0, 0, 50, 51, 0, 0,
3178 0, 52, 53, 54, 55, 0, 57, 58, 0, 59,
3179 0, 0, 61, 62, 187, 188, 65, 66, 67, 0,
3180 68, 69, 70, 0, 0, 0, 0, 0, 0, 0,
3181 0, 74, 75, 76, 77, 78, 79, 80, 0, 81,
3182 82, 83, 84, 85, 0, 0, 0, 86, 0, 0,
3183 87, 0, 0, 0, 0, 189, 89, 90, 91, 92,
3184 0, 93, 94, 0, 95, 190, 97, 0, 0, 0,
3185 99, 0, 0, 100, 0, 0, 0, 0, 0, 101,
3186 102, 0, 0, 0, 0, 105, 106, 107, 0, 0,
3187 108, 109, 0, 110, 111, 0, 0, 112, 113, 114,
3188 115, 5, 6, 7, 8, 9, 0, 0, 0, 0,
3189 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
3190 0, 0, 0, 0, 0, 11, 12, 13, 0, 0,
3191 1743, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3192 0, 0, 0, 0, 0, 0, 0, 0, 15, 16,
3193 0, 0, 0, 0, 17, 0, 18, 19, 20, 21,
3194 22, 23, 24, 25, 26, 27, 28, 0, 29, 30,
3195 31, 32, 33, 0, 0, 0, 34, 35, 36, 37,
3196 38, 39, 40, 0, 41, 0, 42, 0, 0, 0,
3197 43, 44, 45, 46, 0, 47, 0, 48, 0, 49,
3198 0, 0, 50, 51, 0, 0, 0, 52, 53, 54,
3199 55, 0, 57, 58, 0, 59, 0, 0, 61, 62,
3200 187, 188, 65, 66, 67, 0, 68, 69, 70, 0,
3201 0, 0, 0, 0, 0, 0, 0, 74, 75, 76,
3202 77, 78, 79, 80, 0, 81, 82, 83, 84, 85,
3203 0, 0, 0, 86, 0, 0, 87, 0, 0, 0,
3204 0, 189, 89, 90, 91, 92, 0, 93, 94, 0,
3205 95, 190, 97, 0, 0, 0, 99, 0, 0, 100,
3206 0, 0, 0, 0, 0, 101, 102, 0, 0, 0,
3207 0, 105, 106, 107, 0, 0, 108, 109, 0, 110,
3208 111, 0, 0, 112, 113, 114, 115, 5, 6, 7,
3209 8, 9, 0, 0, 0, 0, 0, 10, 0, 0,
3210 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3211 0, 11, 12, 13, 0, 0, 1895, 0, 0, 0,
3212 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3213 0, 0, 0, 0, 15, 16, 0, 0, 0, 0,
3214 17, 0, 18, 19, 20, 21, 22, 23, 24, 25,
3215 26, 27, 28, 0, 29, 30, 31, 32, 33, 0,
3216 0, 0, 34, 35, 36, 37, 38, 39, 40, 0,
3217 41, 0, 42, 0, 0, 0, 43, 44, 45, 46,
3218 0, 47, 0, 48, 0, 49, 0, 0, 50, 51,
3219 0, 0, 0, 52, 53, 54, 55, 0, 57, 58,
3220 0, 59, 0, 0, 61, 62, 187, 188, 65, 66,
3221 67, 0, 68, 69, 70, 0, 0, 0, 0, 0,
3222 0, 0, 0, 74, 75, 76, 77, 78, 79, 80,
3223 0, 81, 82, 83, 84, 85, 0, 0, 0, 86,
3224 0, 0, 87, 0, 0, 0, 0, 189, 89, 90,
3225 91, 92, 0, 93, 94, 0, 95, 190, 97, 0,
3226 0, 0, 99, 0, 0, 100, 0, 0, 0, 0,
3227 0, 101, 102, 0, 0, 0, 0, 105, 106, 107,
3228 0, 0, 108, 109, 0, 110, 111, 0, 0, 112,
3229 113, 114, 115, 5, 6, 7, 8, 9, 0, 0,
3230 0, 0, 0, 10, 0, 0, 0, 0, 0, 0,
3231 0, 0, 0, 0, 0, 0, 0, 11, 12, 13,
3232 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3233 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3234 15, 16, 0, 0, 0, 0, 17, 0, 18, 19,
3235 20, 21, 22, 23, 24, 25, 26, 27, 28, 0,
3236 29, 30, 31, 32, 33, 0, 0, 0, 34, 35,
3237 36, 37, 38, 39, 40, 0, 41, 0, 42, 0,
3238 0, 0, 43, 44, 45, 46, 0, 47, 0, 48,
3239 0, 49, 0, 0, 50, 51, 0, 0, 0, 52,
3240 53, 54, 55, 0, 57, 58, 0, 59, 0, 0,
3241 61, 62, 187, 188, 65, 66, 67, 0, 68, 69,
3242 70, 0, 0, 0, 0, 0, 0, 0, 0, 74,
3243 75, 76, 77, 78, 79, 80, 0, 81, 82, 83,
3244 84, 85, 0, 0, 0, 86, 0, 0, 87, 0,
3245 0, 0, 0, 189, 89, 90, 91, 92, 0, 93,
3246 94, 0, 95, 190, 97, 0, 0, 0, 99, 0,
3247 0, 100, 0, 0, 0, 0, 0, 101, 102, 0,
3248 0, 0, 0, 105, 106, 107, 0, 0, 108, 109,
3249 0, 110, 111, 0, 0, 112, 113, 114, 115, 5,
3250 6, 7, 8, 9, 0, 0, 0, 0, 0, 10,
3251 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3252 0, 0, 0, 359, 0, 13, 0, 0, 0, 0,
3253 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3254 0, 0, 0, 0, 0, 0, 15, 16, 0, 0,
3255 0, 0, 17, 0, 18, 19, 20, 21, 22, 23,
3256 24, 25, 26, 27, 28, 0, 29, 30, 31, 32,
3257 0, 0, 0, 0, 34, 35, 36, 37, 38, 39,
3258 40, 0, 0, 0, 0, 0, 0, 0, 43, 0,
3259 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3260 50, 0, 0, 0, 0, 0, 0, 0, 55, 0,
3261 0, 0, 0, 0, 0, 0, 0, 186, 187, 188,
3262 65, 66, 67, 0, 0, 69, 70, 0, 0, 0,
3263 0, 0, 0, 0, 0, 74, 75, 76, 77, 78,
3264 79, 80, 0, 81, 82, 83, 84, 85, 0, 0,
3265 0, 0, 0, 0, 87, 0, 0, 0, 0, 189,
3266 89, 90, 91, 92, 0, 93, 94, 0, 95, 190,
3267 97, 0, 0, 0, 99, 0, 0, 100, 5, 6,
3268 7, 8, 9, 101, 102, 0, 0, 0, 10, 105,
3269 106, 107, 0, 0, 108, 191, 0, 360, 0, 0,
3270 0, 112, 113, 114, 115, 0, 0, 0, 0, 0,
3271 0, 0, 0, 719, 0, 0, 0, 0, 0, 0,
3272 0, 0, 0, 0, 0, 15, 16, 0, 0, 0,
3273 0, 17, 0, 18, 19, 20, 21, 22, 23, 24,
3274 25, 26, 27, 28, 0, 29, 30, 31, 32, 0,
3275 0, 0, 0, 34, 35, 36, 37, 38, 39, 40,
3276 0, 0, 720, 0, 0, 0, 0, 43, 0, 0,
3277 0, 0, 0, 0, 0, 0, 0, 0, 0, 50,
3278 0, 0, 0, 0, 0, 0, 0, 55, 0, 0,
3279 0, 0, 0, 0, 0, 0, 186, 187, 188, 65,
3280 66, 67, 0, 0, 69, 70, 0, 0, 0, 0,
3281 0, 0, 0, 0, 74, 75, 76, 77, 78, 79,
3282 80, 0, 81, 82, 83, 84, 85, 0, 0, 0,
3283 0, 0, 0, 87, 0, 0, 0, 0, 189, 89,
3284 90, 91, 92, 0, 93, 94, 0, 95, 190, 97,
3285 0, 721, 0, 99, 0, 0, 100, 5, 6, 7,
3286 8, 9, 101, 102, 0, 0, 0, 10, 105, 106,
3287 107, 0, 0, 108, 191, 0, 0, 0, 0, 0,
3288 112, 113, 114, 115, 0, 0, 0, 0, 0, 0,
3289 0, 0, 1252, 0, 0, 0, 0, 0, 0, 0,
3290 0, 0, 0, 0, 15, 16, 0, 0, 0, 0,
3291 17, 0, 18, 19, 20, 21, 22, 23, 24, 25,
3292 26, 27, 28, 0, 29, 30, 31, 32, 0, 0,
3293 0, 0, 34, 35, 36, 37, 38, 39, 40, 0,
3294 0, 1253, 0, 0, 0, 0, 43, 0, 0, 0,
3295 0, 0, 0, 0, 0, 0, 0, 0, 50, 0,
3296 0, 0, 0, 0, 0, 0, 55, 0, 0, 0,
3297 0, 0, 0, 0, 0, 186, 187, 188, 65, 66,
3298 67, 0, 0, 69, 70, 0, 0, 0, 0, 0,
3299 0, 0, 0, 74, 75, 76, 77, 78, 79, 80,
3300 0, 81, 82, 83, 84, 85, 0, 0, 0, 0,
3301 0, 0, 87, 0, 0, 0, 0, 189, 89, 90,
3302 91, 92, 0, 93, 94, 0, 95, 190, 97, 0,
3303 1254, 0, 99, 0, 0, 100, 0, 0, 0, 0,
3304 0, 101, 102, 0, 0, 0, 0, 105, 106, 107,
3305 0, 0, 108, 191, 5, 6, 7, 8, 9, 112,
3306 113, 114, 115, 0, 10, 0, 0, 0, 0, 0,
3307 0, 0, 0, 0, 0, 0, 0, 0, 359, 425,
3308 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3309 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3310 0, 15, 16, 0, 0, 0, 0, 17, 0, 18,
3311 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
3312 0, 29, 30, 31, 32, 0, 0, 0, 0, 34,
3313 35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
3314 0, 0, 0, 43, 0, 0, 0, 0, 0, 0,
3315 0, 0, 0, 0, 0, 50, 0, 0, 0, 0,
3316 0, 0, 0, 55, 0, 0, 0, 0, 0, 0,
3317 0, 0, 186, 187, 188, 65, 66, 67, 0, 0,
3318 69, 70, 0, 0, 0, 0, 0, 0, 0, 0,
3319 74, 75, 76, 77, 78, 79, 80, 0, 81, 82,
3320 83, 84, 85, 0, 0, 0, 0, 0, 0, 87,
3321 0, 0, 0, 0, 189, 89, 90, 91, 92, 0,
3322 93, 94, 0, 95, 190, 97, 0, 0, 0, 99,
3323 0, 0, 100, 0, 0, 0, 0, 0, 101, 102,
3324 0, 0, 0, 0, 105, 106, 107, 0, 0, 108,
3325 109, 5, 6, 7, 8, 9, 112, 113, 114, 115,
3326 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
3327 0, 0, 0, 0, 0, 359, 0, 0, 0, 0,
3328 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3329 0, 0, 0, 0, 0, 0, 0, 0, 15, 16,
3330 0, 0, 0, 0, 17, 0, 18, 19, 20, 21,
3331 22, 23, 24, 25, 26, 27, 28, 0, 29, 30,
3332 31, 32, 0, 0, 0, 0, 34, 35, 36, 37,
3333 38, 39, 40, 0, 0, 0, 0, 0, 0, 0,
3334 43, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3335 0, 0, 50, 0, 0, 0, 0, 0, 0, 0,
3336 55, 0, 0, 0, 0, 0, 0, 0, 0, 186,
3337 187, 188, 65, 66, 67, 0, 0, 69, 70, 0,
3338 0, 0, 0, 0, 0, 0, 0, 74, 75, 76,
3339 77, 78, 79, 80, 0, 81, 82, 83, 84, 85,
3340 0, 0, 0, 0, 0, 0, 87, 0, 0, 0,
3341 0, 189, 89, 90, 91, 92, 0, 93, 94, 0,
3342 95, 190, 97, 0, 0, 0, 99, 0, 0, 100,
3343 0, 0, 0, 0, 0, 101, 102, 0, 0, 0,
3344 0, 105, 106, 107, 0, 0, 108, 191, 0, 0,
3345 854, 0, 0, 112, 113, 114, 115, 5, 6, 7,
3346 8, 9, 0, 0, 0, 0, 0, 10, 0, 0,
3347 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3348 0, 359, 0, 0, 0, 0, 0, 0, 0, 0,
3349 0, 0, 798, 0, 0, 0, 0, 0, 0, 0,
3350 0, 0, 0, 0, 15, 16, 0, 0, 0, 0,
3351 17, 0, 18, 19, 20, 21, 22, 23, 24, 25,
3352 26, 27, 28, 0, 29, 30, 31, 32, 0, 0,
3353 0, 0, 34, 35, 36, 37, 38, 39, 40, 0,
3354 0, 0, 0, 0, 0, 0, 43, 0, 0, 0,
3355 0, 0, 0, 0, 0, 0, 0, 0, 50, 0,
3356 0, 0, 0, 0, 0, 0, 55, 0, 0, 0,
3357 0, 0, 0, 0, 0, 186, 187, 188, 65, 66,
3358 67, 0, 0, 69, 70, 0, 0, 0, 0, 0,
3359 0, 0, 0, 74, 75, 76, 77, 78, 79, 80,
3360 0, 81, 82, 83, 84, 85, 0, 0, 0, 0,
3361 0, 0, 87, 0, 0, 0, 0, 189, 89, 90,
3362 91, 92, 0, 93, 94, 0, 95, 190, 97, 0,
3363 0, 0, 99, 0, 0, 100, 5, 6, 7, 8,
3364 9, 101, 102, 0, 0, 0, 10, 105, 106, 107,
3365 0, 0, 108, 191, 0, 0, 0, 0, 0, 112,
3366 113, 114, 115, 0, 0, 0, 0, 0, 0, 0,
3367 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3368 0, 0, 0, 15, 16, 0, 0, 0, 0, 17,
3369 0, 18, 19, 20, 21, 22, 23, 24, 25, 26,
3370 27, 28, 0, 29, 30, 31, 32, 0, 0, 0,
3371 0, 34, 35, 36, 37, 38, 39, 40, 0, 0,
3372 0, 0, 0, 0, 0, 43, 0, 0, 0, 0,
3373 0, 0, 0, 0, 0, 0, 0, 50, 0, 0,
3374 0, 0, 204, 0, 0, 55, 0, 0, 0, 0,
3375 0, 0, 0, 0, 186, 187, 188, 65, 66, 67,
3376 0, 0, 69, 70, 0, 0, 0, 0, 0, 0,
3377 0, 0, 74, 75, 76, 77, 78, 79, 80, 0,
3378 81, 82, 83, 84, 85, 0, 0, 0, 0, 0,
3379 0, 87, 0, 0, 0, 0, 189, 89, 90, 91,
3380 92, 0, 93, 94, 0, 95, 190, 97, 0, 0,
3381 0, 99, 0, 0, 100, 5, 6, 7, 8, 9,
3382 101, 102, 0, 0, 0, 10, 105, 106, 107, 0,
3383 0, 108, 191, 0, 0, 0, 0, 0, 112, 113,
3384 114, 115, 0, 0, 0, 0, 0, 0, 0, 0,
3385 240, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3386 0, 0, 15, 16, 0, 0, 0, 0, 17, 0,
3387 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
3388 28, 0, 29, 30, 31, 32, 0, 0, 0, 0,
3389 34, 35, 36, 37, 38, 39, 40, 0, 0, 0,
3390 0, 0, 0, 0, 43, 0, 0, 0, 0, 0,
3391 0, 0, 0, 0, 0, 0, 50, 0, 0, 0,
3392 0, 0, 0, 0, 55, 0, 0, 0, 0, 0,
3393 0, 0, 0, 186, 187, 188, 65, 66, 67, 0,
3394 0, 69, 70, 0, 0, 0, 0, 0, 0, 0,
3395 0, 74, 75, 76, 77, 78, 79, 80, 0, 81,
3396 82, 83, 84, 85, 0, 0, 0, 0, 0, 0,
3397 87, 0, 0, 0, 0, 189, 89, 90, 91, 92,
3398 0, 93, 94, 0, 95, 190, 97, 0, 0, 0,
3399 99, 0, 0, 100, 5, 6, 7, 8, 9, 101,
3400 102, 0, 0, 0, 10, 105, 106, 107, 0, 0,
3401 108, 191, 0, 0, 0, 0, 0, 112, 113, 114,
3402 115, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3403 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3404 0, 15, 16, 0, 0, 0, 0, 17, 0, 18,
3405 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
3406 0, 29, 30, 31, 32, 0, 0, 0, 0, 34,
3407 35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
3408 0, 0, 0, 43, 0, 0, 0, 0, 0, 0,
3409 0, 0, 0, 0, 0, 50, 0, 0, 0, 0,
3410 0, 0, 0, 55, 0, 0, 0, 0, 0, 0,
3411 0, 0, 186, 187, 188, 65, 66, 67, 0, 0,
3412 69, 70, 0, 0, 0, 0, 0, 0, 0, 0,
3413 74, 75, 76, 77, 78, 79, 80, 0, 81, 82,
3414 83, 84, 85, 0, 0, 0, 0, 0, 0, 87,
3415 0, 0, 0, 0, 189, 89, 90, 91, 92, 0,
3416 93, 94, 0, 95, 190, 97, 0, 0, 0, 99,
3417 0, 0, 100, 5, 6, 7, 8, 9, 101, 102,
3418 0, 0, 0, 10, 105, 106, 107, 0, 0, 108,
3419 191, 0, 274, 0, 0, 0, 112, 113, 114, 115,
3420 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3421 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3422 15, 16, 0, 0, 0, 0, 17, 0, 18, 19,
3423 20, 21, 22, 23, 24, 25, 26, 27, 28, 0,
3424 29, 30, 31, 32, 0, 0, 0, 0, 34, 35,
3425 36, 37, 38, 39, 40, 0, 0, 0, 0, 0,
3426 0, 0, 43, 0, 0, 0, 0, 0, 0, 0,
3427 0, 0, 0, 0, 50, 0, 0, 0, 0, 0,
3428 0, 0, 55, 0, 0, 0, 0, 0, 0, 0,
3429 0, 186, 187, 188, 65, 66, 67, 0, 0, 69,
3430 70, 0, 0, 0, 0, 0, 0, 0, 0, 74,
3431 75, 76, 77, 78, 79, 80, 0, 81, 82, 83,
3432 84, 85, 0, 0, 0, 0, 0, 0, 87, 0,
3433 0, 0, 0, 189, 89, 90, 91, 92, 0, 93,
3434 94, 0, 95, 190, 97, 0, 0, 0, 99, 0,
3435 0, 100, 0, 0, 0, 0, 0, 101, 102, 0,
3436 0, 0, 0, 105, 106, 107, 0, 0, 108, 191,
3437 0, 277, 0, 0, 0, 112, 113, 114, 115, 5,
3438 6, 7, 8, 9, 0, 0, 0, 0, 0, 10,
3439 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3440 0, 0, 0, 0, 425, 0, 0, 0, 0, 0,
3441 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3442 0, 0, 0, 0, 0, 0, 15, 16, 0, 0,
3443 0, 0, 17, 0, 18, 19, 20, 21, 22, 23,
3444 24, 25, 26, 27, 28, 0, 29, 30, 31, 32,
3445 0, 0, 0, 0, 34, 35, 36, 37, 38, 39,
3446 40, 0, 0, 0, 0, 0, 0, 0, 43, 0,
3447 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3448 50, 0, 0, 0, 0, 0, 0, 0, 55, 0,
3449 0, 0, 0, 0, 0, 0, 0, 186, 187, 188,
3450 65, 66, 67, 0, 0, 69, 70, 0, 0, 0,
3451 0, 0, 0, 0, 0, 74, 75, 76, 77, 78,
3452 79, 80, 0, 81, 82, 83, 84, 85, 0, 0,
3453 0, 0, 0, 0, 87, 0, 0, 0, 0, 189,
3454 89, 90, 91, 92, 0, 93, 94, 0, 95, 190,
3455 97, 0, 0, 0, 99, 0, 0, 100, 5, 6,
3456 7, 8, 9, 101, 102, 0, 0, 0, 10, 105,
3457 106, 107, 0, 0, 108, 109, 0, 0, 0, 0,
3458 0, 112, 113, 114, 115, 0, 0, 0, 0, 0,
3459 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3460 0, 0, 0, 0, 0, 15, 16, 0, 0, 0,
3461 0, 17, 0, 18, 19, 20, 21, 22, 23, 24,
3462 25, 26, 27, 28, 0, 29, 30, 31, 32, 0,
3463 0, 0, 0, 34, 35, 36, 37, 38, 39, 40,
3464 0, 0, 0, 0, 0, 0, 0, 43, 0, 0,
3465 0, 0, 0, 0, 0, 0, 0, 0, 0, 50,
3466 0, 0, 0, 0, 0, 0, 0, 55, 0, 0,
3467 0, 0, 0, 0, 0, 0, 186, 187, 188, 65,
3468 66, 67, 0, 0, 69, 70, 0, 0, 0, 0,
3469 0, 0, 0, 0, 74, 75, 76, 77, 78, 79,
3470 80, 0, 81, 82, 83, 84, 85, 0, 0, 0,
3471 0, 0, 0, 87, 0, 0, 0, 0, 189, 89,
3472 90, 91, 92, 0, 93, 94, 0, 95, 190, 97,
3473 0, 0, 0, 99, 0, 0, 100, 0, 0, 0,
3474 0, 0, 101, 102, 0, 0, 0, 0, 105, 106,
3475 107, 0, 0, 108, 191, 571, 0, 0, 0, 0,
3476 112, 113, 114, 115, 5, 6, 7, 8, 9, 0,
3477 0, 0, 0, 0, 10, 0, 0, 0, 0, 0,
3478 0, 0, 0, 0, 0, 0, 0, 0, 359, 0,
3479 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3480 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3481 0, 15, 16, 0, 0, 0, 0, 17, 0, 18,
3482 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
3483 0, 29, 30, 31, 32, 0, 0, 0, 0, 34,
3484 35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
3485 0, 0, 0, 43, 0, 0, 0, 0, 0, 0,
3486 0, 0, 0, 0, 0, 50, 0, 0, 0, 0,
3487 0, 0, 0, 55, 0, 0, 0, 0, 0, 0,
3488 0, 0, 186, 187, 188, 65, 66, 67, 0, 0,
3489 69, 70, 0, 0, 0, 0, 0, 0, 0, 0,
3490 74, 75, 76, 77, 78, 79, 80, 0, 81, 82,
3491 83, 84, 85, 0, 0, 0, 0, 0, 0, 87,
3492 0, 0, 0, 0, 189, 89, 90, 91, 92, 0,
3493 93, 94, 0, 95, 190, 97, 0, 0, 0, 99,
3494 0, 0, 100, 5, 6, 7, 8, 9, 101, 102,
3495 0, 0, 0, 10, 105, 106, 107, 0, 0, 108,
3496 191, 0, 0, 0, 0, 0, 112, 113, 114, 115,
3497 0, 0, 750, 0, 0, 0, 0, 0, 0, 0,
3498 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3499 15, 16, 0, 0, 0, 0, 17, 0, 18, 19,
3500 20, 21, 22, 23, 24, 25, 26, 27, 28, 0,
3501 29, 30, 31, 32, 0, 0, 0, 0, 34, 35,
3502 36, 37, 38, 39, 40, 0, 0, 0, 0, 0,
3503 0, 0, 43, 0, 0, 0, 0, 0, 0, 0,
3504 0, 0, 0, 0, 50, 0, 0, 0, 0, 0,
3505 0, 0, 55, 0, 0, 0, 0, 0, 0, 0,
3506 0, 186, 187, 188, 65, 66, 67, 0, 0, 69,
3507 70, 0, 0, 0, 0, 0, 0, 0, 0, 74,
3508 75, 76, 77, 78, 79, 80, 0, 81, 82, 83,
3509 84, 85, 0, 0, 0, 0, 0, 0, 87, 0,
3510 0, 0, 0, 189, 89, 90, 91, 92, 0, 93,
3511 94, 0, 95, 190, 97, 0, 0, 0, 99, 0,
3512 0, 100, 5, 6, 7, 8, 9, 101, 102, 0,
3513 0, 0, 10, 105, 106, 107, 0, 0, 108, 191,
3514 0, 0, 0, 0, 0, 112, 113, 114, 115, 0,
3515 0, 0, 0, 0, 0, 0, 0, 798, 0, 0,
3516 0, 0, 0, 0, 0, 0, 0, 0, 0, 15,
3517 16, 0, 0, 0, 0, 17, 0, 18, 19, 20,
3518 21, 22, 23, 24, 25, 26, 27, 28, 0, 29,
3519 30, 31, 32, 0, 0, 0, 0, 34, 35, 36,
3520 37, 38, 39, 40, 0, 0, 0, 0, 0, 0,
3521 0, 43, 0, 0, 0, 0, 0, 0, 0, 0,
3522 0, 0, 0, 50, 0, 0, 0, 0, 0, 0,
3523 0, 55, 0, 0, 0, 0, 0, 0, 0, 0,
3524 186, 187, 188, 65, 66, 67, 0, 0, 69, 70,
3525 0, 0, 0, 0, 0, 0, 0, 0, 74, 75,
3526 76, 77, 78, 79, 80, 0, 81, 82, 83, 84,
3527 85, 0, 0, 0, 0, 0, 0, 87, 0, 0,
3528 0, 0, 189, 89, 90, 91, 92, 0, 93, 94,
3529 0, 95, 190, 97, 0, 0, 0, 99, 0, 0,
3530 100, 5, 6, 7, 8, 9, 101, 102, 0, 0,
3531 0, 10, 105, 106, 107, 0, 0, 108, 191, 0,
3532 0, 0, 0, 0, 112, 113, 114, 115, 0, 0,
3533 0, 0, 0, 0, 0, 0, 836, 0, 0, 0,
3534 0, 0, 0, 0, 0, 0, 0, 0, 15, 16,
3535 0, 0, 0, 0, 17, 0, 18, 19, 20, 21,
3536 22, 23, 24, 25, 26, 27, 28, 0, 29, 30,
3537 31, 32, 0, 0, 0, 0, 34, 35, 36, 37,
3538 38, 39, 40, 0, 0, 0, 0, 0, 0, 0,
3539 43, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3540 0, 0, 50, 0, 0, 0, 0, 0, 0, 0,
3541 55, 0, 0, 0, 0, 0, 0, 0, 0, 186,
3542 187, 188, 65, 66, 67, 0, 0, 69, 70, 0,
3543 0, 0, 0, 0, 0, 0, 0, 74, 75, 76,
3544 77, 78, 79, 80, 0, 81, 82, 83, 84, 85,
3545 0, 0, 0, 0, 0, 0, 87, 0, 0, 0,
3546 0, 189, 89, 90, 91, 92, 0, 93, 94, 0,
3547 95, 190, 97, 0, 0, 0, 99, 0, 0, 100,
3548 5, 6, 7, 8, 9, 101, 102, 0, 0, 0,
3549 10, 105, 106, 107, 0, 0, 108, 191, 0, 0,
3550 0, 0, 0, 112, 113, 114, 115, 0, 0, 0,
3551 0, 0, 0, 0, 0, 838, 0, 0, 0, 0,
3552 0, 0, 0, 0, 0, 0, 0, 15, 16, 0,
3553 0, 0, 0, 17, 0, 18, 19, 20, 21, 22,
3554 23, 24, 25, 26, 27, 28, 0, 29, 30, 31,
3555 32, 0, 0, 0, 0, 34, 35, 36, 37, 38,
3556 39, 40, 0, 0, 0, 0, 0, 0, 0, 43,
3557 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3558 0, 50, 0, 0, 0, 0, 0, 0, 0, 55,
3559 0, 0, 0, 0, 0, 0, 0, 0, 186, 187,
3560 188, 65, 66, 67, 0, 0, 69, 70, 0, 0,
3561 0, 0, 0, 0, 0, 0, 74, 75, 76, 77,
3562 78, 79, 80, 0, 81, 82, 83, 84, 85, 0,
3563 0, 0, 0, 0, 0, 87, 0, 0, 0, 0,
3564 189, 89, 90, 91, 92, 0, 93, 94, 0, 95,
3565 190, 97, 0, 0, 0, 99, 0, 0, 100, 5,
3566 6, 7, 8, 9, 101, 102, 0, 0, 0, 10,
3567 105, 106, 107, 0, 0, 108, 191, 0, 0, 0,
3568 0, 0, 112, 113, 114, 115, 0, 0, 0, 0,
3569 0, 0, 0, 0, 1314, 0, 0, 0, 0, 0,
3570 0, 0, 0, 0, 0, 0, 15, 16, 0, 0,
3571 0, 0, 17, 0, 18, 19, 20, 21, 22, 23,
3572 24, 25, 26, 27, 28, 0, 29, 30, 31, 32,
3573 0, 0, 0, 0, 34, 35, 36, 37, 38, 39,
3574 40, 0, 0, 0, 0, 0, 0, 0, 43, 0,
3575 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3576 50, 0, 0, 0, 0, 0, 0, 0, 55, 0,
3577 0, 0, 0, 0, 0, 0, 0, 186, 187, 188,
3578 65, 66, 67, 0, 0, 69, 70, 0, 0, 0,
3579 0, 0, 0, 0, 0, 74, 75, 76, 77, 78,
3580 79, 80, 0, 81, 82, 83, 84, 85, 0, 0,
3581 0, 0, 0, 0, 87, 0, 0, 0, 0, 189,
3582 89, 90, 91, 92, 0, 93, 94, 0, 95, 190,
3583 97, 0, 0, 0, 99, 0, 0, 100, 0, 0,
3584 0, 0, 0, 101, 102, 0, 0, 0, 0, 105,
3585 106, 107, 0, 0, 108, 191, 5, 6, 7, 8,
3586 9, 112, 113, 114, 115, 0, 10, 0, 0, 0,
3587 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3588 359, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3589 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3590 0, 0, 0, 15, 16, 0, 0, 0, 0, 17,
3591 0, 18, 19, 20, 21, 22, 23, 24, 25, 26,
3592 27, 28, 0, 29, 30, 31, 32, 0, 0, 0,
3593 0, 34, 35, 36, 37, 38, 39, 40, 0, 0,
3594 0, 0, 0, 0, 0, 43, 0, 0, 0, 0,
3595 0, 0, 0, 0, 0, 0, 0, 50, 0, 0,
3596 0, 0, 0, 0, 0, 55, 0, 0, 0, 0,
3597 0, 0, 0, 0, 186, 187, 188, 65, 66, 67,
3598 0, 0, 69, 70, 0, 0, 0, 0, 0, 0,
3599 0, 0, 74, 75, 76, 77, 78, 79, 80, 0,
3600 81, 82, 83, 84, 85, 0, 0, 0, 0, 0,
3601 0, 87, 0, 0, 0, 0, 189, 89, 90, 91,
3602 92, 0, 93, 94, 0, 95, 190, 97, 0, 0,
3603 0, 99, 0, 0, 100, 5, 6, 7, 8, 9,
3604 101, 102, 0, 0, 0, 10, 105, 106, 107, 0,
3605 0, 108, 1439, 0, 0, 0, 0, 0, 112, 113,
3606 114, 115, 0, 0, 0, 0, 0, 0, 0, 0,
3607 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3608 0, 0, 15, 16, 0, 0, 0, 0, 17, 0,
3609 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
3610 28, 0, 29, 30, 31, 32, 0, 0, 0, 0,
3611 34, 35, 36, 37, 38, 39, 40, 0, 0, 0,
3612 0, 0, 0, 0, 43, 0, 0, 0, 0, 0,
3613 0, 0, 0, 0, 0, 0, 50, 0, 0, 0,
3614 0, 0, 0, 0, 55, 0, 0, 0, 0, 0,
3615 0, 0, 0, 186, 187, 188, 65, 66, 67, 0,
3616 0, 69, 70, 0, 0, 0, 0, 0, 0, 0,
3617 0, 74, 75, 76, 77, 78, 79, 80, 0, 81,
3618 82, 83, 84, 85, 0, 0, 0, 0, 0, 0,
3619 87, 0, 0, 0, 0, 189, 89, 90, 91, 92,
3620 0, 93, 94, 0, 95, 190, 97, 0, 0, 0,
3621 99, 0, 0, 100, 5, 6, 7, 8, 9, 101,
3622 102, 0, 0, 0, 10, 105, 106, 107, 0, 0,
3623 108, 191, 0, 0, 0, 0, 0, 112, 113, 114,
3624 115, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3625 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3626 0, 15, 16, 0, 0, 0, 0, 17, 0, 18,
3627 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
3628 0, 29, 30, 31, 32, 0, 0, 0, 0, 34,
3629 35, 36, 37, 663, 39, 40, 0, 0, 0, 0,
3630 0, 0, 0, 43, 0, 0, 0, 0, 0, 0,
3631 0, 0, 0, 0, 0, 50, 0, 0, 0, 0,
3632 0, 0, 0, 55, 0, 0, 0, 0, 0, 0,
3633 0, 0, 186, 187, 188, 65, 66, 67, 0, 0,
3634 69, 70, 0, 0, 0, 0, 0, 0, 0, 0,
3635 74, 75, 76, 77, 78, 79, 80, 0, 81, 82,
3636 83, 84, 85, 0, 0, 0, 0, 0, 0, 87,
3637 0, 0, 0, 0, 189, 89, 90, 91, 92, 0,
3638 93, 94, 0, 95, 190, 97, 0, 279, 280, 99,
3639 281, 282, 100, 0, 283, 284, 285, 286, 101, 102,
3640 0, 0, 0, 0, 105, 106, 107, 0, 0, 108,
3641 191, 0, 287, 288, 0, 0, 112, 113, 114, 115,
3642 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
3643 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
3644 500, 290, 501, 0, 0, 0, 0, 0, 0, 0,
3645 0, 0, 0, 0, 502, 292, 293, 294, 295, 296,
3646 297, 298, 0, 0, 0, 213, 0, 214, 40, 0,
3647 0, 299, 0, 0, 0, 0, 0, 300, 301, 302,
3648 303, 304, 305, 306, 307, 308, 309, 310, 50, 311,
3649 312, 313, 314, 315, 316, 317, 318, 319, 320, 321,
3650 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
3651 332, 333, 334, 0, 335, 0, 336, 337, 338, 339,
3652 0, 0, 0, 340, 601, 217, 218, 219, 220, 221,
3653 602, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3654 0, 279, 280, 0, 281, 282, 0, 603, 283, 284,
3655 285, 286, 0, 93, 94, 0, 95, 190, 97, 345,
3656 0, 346, 0, 0, 347, 0, 287, 288, 0, 289,
3657 0, 0, 349, 0, 0, 0, 0, 0, 0, 0,
3658 0, 0, 108, 0, 0, 0, 786, 0, 0, 112,
3659 0, 0, 0, 0, 0, 290, 0, 0, 0, 0,
3660 0, 0, 0, 0, 0, 0, 291, 0, 0, 292,
3661 293, 294, 295, 296, 297, 298, 0, 0, 0, 213,
3662 0, 0, 0, 0, 0, 299, 0, 0, 0, 0,
3663 0, 300, 301, 302, 303, 304, 305, 306, 307, 308,
3664 309, 310, 50, 311, 312, 313, 314, 315, 316, 317,
3665 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
3666 328, 329, 330, 331, 332, 333, 334, 0, 335, 0,
3667 0, 337, 338, 339, 0, 0, 0, 340, 341, 217,
3668 218, 219, 220, 221, 342, 0, 0, 0, 0, 0,
3669 0, 213, 0, 0, 0, 0, 0, 0, 0, 0,
3670 0, 343, 0, 0, 91, 344, 0, 93, 94, 0,
3671 95, 190, 97, 345, 50, 346, 0, 0, 347, 0,
3672 279, 280, 0, 281, 282, 348, 349, 283, 284, 285,
3673 286, 0, 0, 0, 0, 0, 108, 350, 0, 0,
3674 0, 1874, 0, 0, 0, 287, 288, 0, 289, 0,
3675 0, 217, 218, 219, 220, 221, 1167, 1168, 1169, 1170,
3676 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180,
3677 1181, 1182, 1183, 1184, 290, 0, 370, 0, 0, 93,
3678 94, 0, 95, 190, 97, 291, 0, 1185, 292, 293,
3679 294, 295, 296, 297, 298, 0, 0, 0, 213, 0,
3680 0, 0, 0, 0, 299, 0, 0, 0, 108, 0,
3681 300, 301, 302, 303, 304, 305, 306, 307, 308, 309,
3682 310, 50, 311, 312, 313, 314, 315, 316, 317, 318,
3683 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
3684 329, 330, 331, 332, 333, 334, 0, 335, 0, 0,
3685 337, 338, 339, 0, 0, 0, 340, 341, 217, 218,
3686 219, 220, 221, 342, 0, 0, 0, 0, 0, 0,
3687 213, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3688 343, 0, 0, 91, 344, 0, 93, 94, 0, 95,
3689 190, 97, 345, 50, 346, 0, 0, 347, 0, 279,
3690 280, 0, 281, 282, 348, 349, 283, 284, 285, 286,
3691 0, 0, 0, 0, 0, 108, 350, 0, 0, 0,
3692 1950, 0, 0, 0, 287, 288, 0, 289, 0, 0,
3693 217, 218, 219, 220, 221, 0, 484, 485, 486, 487,
3694 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
3695 498, 499, 500, 290, 501, 925, 0, 0, 93, 94,
3696 0, 95, 190, 97, 291, 0, 502, 292, 293, 294,
3697 295, 296, 297, 298, 0, 0, 0, 213, 0, 0,
3698 0, 0, 0, 299, 0, 0, 0, 108, 0, 300,
3699 301, 302, 303, 304, 305, 306, 307, 308, 309, 310,
3700 50, 311, 312, 313, 314, 315, 316, 317, 318, 319,
3701 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
3702 330, 331, 332, 333, 334, 0, 335, 0, 336, 337,
3703 338, 339, 0, 0, 0, 340, 341, 217, 218, 219,
3704 220, 221, 342, 0, 0, 0, 0, 0, 0, 213,
3705 0, 0, 0, 0, 0, 0, 0, 0, 0, 343,
3706 0, 0, 91, 344, 0, 93, 94, 0, 95, 190,
3707 97, 345, 50, 346, 0, 0, 347, 0, 279, 280,
3708 0, 281, 282, 348, 349, 283, 284, 285, 286, 0,
3709 0, 0, 0, 0, 108, 350, 0, 0, 0, 0,
3710 0, 0, 0, 287, 288, 0, 289, 0, 0, 217,
3711 218, 219, 220, 221, 0, -1132, -1132, -1132, -1132, 488,
3712 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
3713 499, 500, 290, 501, 0, 0, 0, 93, 94, 0,
3714 95, 190, 97, 291, 0, 502, 292, 293, 294, 295,
3715 296, 297, 298, 0, 0, 0, 213, 0, 0, 0,
3716 0, 0, 299, 0, 0, 0, 108, 0, 300, 301,
3717 302, 303, 304, 305, 306, 307, 308, 309, 310, 50,
3718 311, 312, 313, 314, 315, 316, 317, 318, 319, 320,
3719 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
3720 331, 332, 333, 334, 0, 335, 0, 0, 337, 338,
3721 339, 0, 0, 0, 340, 341, 217, 218, 219, 220,
3722 221, 342, 0, 0, 0, 0, 0, 0, 0, 0,
3723 0, 0, 0, 0, 0, 0, 0, 0, 343, 0,
3724 0, 91, 344, 0, 93, 94, 0, 95, 190, 97,
3725 345, 0, 346, 0, 0, 347, 0, 0, 0, 0,
3726 0, 0, 348, 349, 1668, 0, 0, 0, 279, 280,
3727 0, 281, 282, 108, 350, 283, 284, 285, 286, 0,
3728 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3729 0, 0, 0, 287, 288, 0, 289, 477, 0, 478,
3730 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
3731 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
3732 499, 500, 290, 501, 0, 0, 0, 0, 0, 0,
3733 0, 0, 0, 291, 0, 502, 292, 293, 294, 295,
3734 296, 297, 298, 0, 0, 0, 213, 0, 0, 0,
3735 0, 0, 299, 0, 0, 0, 0, 0, 300, 301,
3736 302, 303, 304, 305, 306, 307, 308, 309, 310, 50,
3737 311, 312, 313, 314, 315, 316, 317, 318, 319, 320,
3738 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
3739 331, 332, 333, 334, 0, 335, 0, 0, 337, 338,
3740 339, 0, 0, 0, 340, 341, 217, 218, 219, 220,
3741 221, 342, 0, 0, 0, 0, 0, 0, 0, 0,
3742 0, 0, 0, 0, 0, 0, 0, 0, 343, 0,
3743 0, 91, 344, 0, 93, 94, 0, 95, 190, 97,
3744 345, 0, 346, 0, 0, 347, 0, 1769, 1770, 1771,
3745 1772, 1773, 348, 349, 1774, 1775, 1776, 1777, 0, 0,
3746 0, 0, 0, 108, 350, 0, 0, 0, 0, 0,
3747 0, 1778, 1779, 1780, 0, 476, 477, 0, 478, 479,
3748 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
3749 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
3750 500, 1781, 501, 0, 0, 0, 0, 0, 0, 0,
3751 0, 0, 0, 0, 502, 1782, 1783, 1784, 1785, 1786,
3752 1787, 1788, 0, 0, 0, 213, 0, 0, 0, 0,
3753 0, 1789, 0, 0, 0, 0, 0, 1790, 1791, 1792,
3754 1793, 1794, 1795, 1796, 1797, 1798, 1799, 1800, 50, 1801,
3755 1802, 1803, 1804, 1805, 1806, 1807, 1808, 1809, 1810, 1811,
3756 1812, 1813, 1814, 1815, 1816, 1817, 1818, 1819, 1820, 1821,
3757 1822, 1823, 1824, 1825, 1826, 1827, 1828, 1829, 1830, 1831,
3758 0, 0, 0, 1832, 1833, 217, 218, 219, 220, 221,
3759 0, 1834, 1835, 1836, 1837, 1838, 0, 0, 0, 0,
3760 0, 0, 0, 0, 0, 0, 0, 1839, 1840, 1841,
3761 0, 0, 0, 93, 94, 0, 95, 190, 97, 1842,
3762 0, 1843, 1844, 0, 1845, 0, 0, 0, 0, 0,
3763 0, 1846, 0, 1847, 0, 1848, 0, 1849, 1850, 0,
3764 279, 280, 108, 281, 282, 1161, 0, 283, 284, 285,
3765 286, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3766 0, 0, 0, 0, 1162, 287, 288, 1163, 1164, 1165,
3767 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175,
3768 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 0,
3769 0, 0, 0, 0, 290, 0, 0, 0, 0, 0,
3770 0, 0, 1185, 0, 0, 0, 0, 0, 292, 293,
3771 294, 295, 296, 297, 298, 0, 0, 0, 213, 0,
3772 0, 0, 0, 0, 299, 0, 0, 0, 0, 0,
3773 300, 301, 302, 303, 304, 305, 306, 307, 308, 309,
3774 310, 50, 311, 312, 313, 314, 315, 316, 317, 318,
3775 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
3776 329, 330, 331, 332, 333, 334, 0, 335, 0, 336,
3777 337, 338, 339, 0, 0, 0, 340, 601, 217, 218,
3778 219, 220, 221, 602, 0, 0, 0, 0, 0, 0,
3779 0, 0, 0, 0, 279, 280, 0, 281, 282, 0,
3780 603, 283, 284, 285, 286, 0, 93, 94, 0, 95,
3781 190, 97, 345, 0, 346, 0, 0, 347, 0, 287,
3782 288, 0, 0, 0, 0, 349, 0, 0, 0, 0,
3783 0, 0, 0, 0, 0, 108, 0, 0, 0, 0,
3784 0, 0, 0, 0, 0, 0, 0, 0, 290, 0,
3785 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3786 0, 0, 292, 293, 294, 295, 296, 297, 298, 0,
3787 0, 0, 213, 0, 0, 0, 0, 0, 299, 0,
3788 0, 0, 0, 0, 300, 301, 302, 303, 304, 305,
3789 306, 307, 308, 309, 310, 50, 311, 312, 313, 314,
3790 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
3791 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
3792 0, 335, 0, 1372, 337, 338, 339, 0, 0, 0,
3793 340, 601, 217, 218, 219, 220, 221, 602, 0, 0,
3794 0, 0, 0, 0, 0, 0, 0, 0, 279, 280,
3795 0, 281, 282, 0, 603, 283, 284, 285, 286, 0,
3796 93, 94, 0, 95, 190, 97, 345, 0, 346, 0,
3797 0, 347, 0, 287, 288, 0, 0, 0, 0, 349,
3798 0, 0, 0, 0, 0, 0, 0, 0, 0, 108,
3799 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3800 0, 0, 290, 0, 0, 0, 0, 0, 0, 0,
3801 0, 0, 0, 0, 0, 0, 292, 293, 294, 295,
3802 296, 297, 298, 0, 0, 0, 213, 0, 0, 0,
3803 0, 0, 299, 0, 0, 0, 0, 0, 300, 301,
3804 302, 303, 304, 305, 306, 307, 308, 309, 310, 50,
3805 311, 312, 313, 314, 315, 316, 317, 318, 319, 320,
3806 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
3807 331, 332, 333, 334, 0, 335, 0, 0, 337, 338,
3808 339, 0, 0, 0, 340, 601, 217, 218, 219, 220,
3809 221, 602, 0, 0, 0, 0, 0, 0, 0, 0,
3810 0, 0, 0, 0, 0, 0, 0, 0, 603, 0,
3811 0, 0, 0, 0, 93, 94, 0, 95, 190, 97,
3812 345, 0, 346, 0, 0, 347, 473, 474, 475, 0,
3813 0, 0, 0, 349, 0, 0, 0, 0, 0, 0,
3814 0, 0, 0, 108, 0, 0, 476, 477, 0, 478,
3815 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
3816 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
3817 499, 500, 0, 501, 473, 474, 475, 0, 0, 0,
3818 0, 0, 0, 0, 0, 502, 0, 0, 0, 0,
3819 0, 0, 0, 0, 476, 477, 0, 478, 479, 480,
3820 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
3821 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
3822 0, 501, 473, 474, 475, 0, 0, 0, 0, 0,
3823 0, 0, 0, 502, 0, 0, 0, 0, 0, 0,
3824 0, 0, 476, 477, 0, 478, 479, 480, 481, 482,
3825 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
3826 493, 494, 495, 496, 497, 498, 499, 500, 0, 501,
3827 473, 474, 475, 0, 0, 0, 0, 0, 0, 0,
3828 0, 502, 0, 0, 0, 0, 0, 0, 0, 0,
3829 476, 477, 0, 478, 479, 480, 481, 482, 483, 484,
3830 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
3831 495, 496, 497, 498, 499, 500, 0, 501, 0, 1276,
3832 0, 473, 474, 475, 0, 0, 0, 0, 0, 502,
3833 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3834 0, 476, 477, 0, 478, 479, 480, 481, 482, 483,
3835 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
3836 494, 495, 496, 497, 498, 499, 500, 1287, 501, 473,
3837 474, 475, 0, 0, 0, 0, 0, 0, 0, 0,
3838 502, 0, 0, 0, 0, 0, 0, 0, 0, 476,
3839 477, 0, 478, 479, 480, 481, 482, 483, 484, 485,
3840 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
3841 496, 497, 498, 499, 500, 1317, 501, 473, 474, 475,
3842 0, 0, 0, 0, 0, 0, 0, 0, 502, 0,
3843 0, 0, 0, 0, 0, 0, 0, 476, 477, 0,
3844 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
3845 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
3846 498, 499, 500, 1588, 501, 473, 474, 475, 0, 0,
3847 0, 0, 0, 0, 0, 0, 502, 0, 0, 0,
3848 0, 0, 0, 0, 0, 476, 477, 0, 478, 479,
3849 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
3850 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
3851 500, 0, 501, 0, 1710, 0, 473, 474, 475, 0,
3852 0, 0, 0, 0, 502, 0, 0, 0, 0, 0,
3853 0, 0, 0, 0, 0, 0, 476, 477, 0, 478,
3854 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
3855 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
3856 499, 500, 1711, 501, 0, 0, 0, 0, 0, 0,
3857 0, 0, 0, 0, 0, 502, 0, 0, 0, 0,
3858 0, 0, 0, 0, 0, 0, 473, 474, 475, 0,
3859 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3860 0, 0, 0, 0, 0, 0, 476, 477, 503, 478,
3861 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
3862 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
3863 499, 500, 0, 501, 473, 474, 475, 0, 0, 0,
3864 0, 0, 0, 0, 0, 502, 0, 0, 0, 0,
3865 0, 0, 0, 0, 476, 477, 587, 478, 479, 480,
3866 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
3867 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
3868 0, 501, 0, 0, 0, 473, 474, 475, 0, 0,
3869 0, 0, 0, 502, 0, 0, 289, 0, 0, 0,
3870 0, 0, 0, 0, 0, 476, 477, 589, 478, 479,
3871 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
3872 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
3873 500, 0, 501, 291, 0, 0, 0, 0, 0, 0,
3874 0, 0, 0, 0, 502, 0, 213, 0, 0, 0,
3875 0, 0, 1524, 0, 0, 473, 474, 475, 0, 0,
3876 0, 0, 0, 0, 0, 0, 0, 289, 0, 50,
3877 0, 0, 0, 0, 0, 476, 477, 608, 478, 479,
3878 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
3879 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
3880 500, 0, 501, 0, 291, 590, 217, 218, 219, 220,
3881 221, 591, 0, 0, 502, 0, 0, 213, 0, 1695,
3882 0, 0, 0, 0, 0, 612, 0, 0, 189, 0,
3883 0, 91, 344, 0, 93, 94, 0, 95, 190, 97,
3884 50, -1131, 0, 0, 0, 0, 289, 0, 0, 0,
3885 0, 0, 348, 0, 0, 0, 0, 458, 187, 188,
3886 65, 66, 67, 108, 350, 0, 0, 0, 0, 0,
3887 0, 0, 0, 0, 0, 828, 590, 217, 218, 219,
3888 220, 221, 591, 291, 0, 0, 0, 0, 0, 0,
3889 0, 0, 0, 0, 289, 0, 213, 0, 0, 189,
3890 0, 0, 91, 344, 0, 93, 94, 0, 95, 190,
3891 97, 0, 0, 0, 0, 0, 0, 0, 0, 50,
3892 0, 0, 0, 348, 0, 0, 0, 597, 0, 0,
3893 459, 291, 0, 0, 108, 350, 0, 0, 0, 0,
3894 0, 0, 289, 0, 213, 851, 0, 0, 0, 0,
3895 1000, 0, 0, 0, 0, 590, 217, 218, 219, 220,
3896 221, 591, 0, 0, 0, 0, 0, 50, 0, 0,
3897 0, 0, 0, 0, 0, 0, 0, 0, 189, 291,
3898 0, 91, 344, 0, 93, 94, 0, 95, 190, 97,
3899 289, 0, 213, 0, 0, 0, 0, 0, 1447, 0,
3900 0, 0, 348, 590, 217, 218, 219, 220, 221, 591,
3901 0, 0, 0, 108, 350, 50, 0, 0, 0, 0,
3902 0, 0, 0, 0, 0, 0, 189, 291, 0, 91,
3903 344, 0, 93, 94, 0, 95, 190, 97, 0, 0,
3904 213, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3905 348, 590, 217, 218, 219, 220, 221, 591, 0, 0,
3906 0, 108, 350, 50, 0, 0, 0, 0, 0, 0,
3907 1380, 0, 0, 0, 189, 0, 0, 91, 344, 0,
3908 93, 94, 0, 95, 190, 97, 0, 0, 881, 882,
3909 0, 0, 0, 0, 883, 0, 884, 0, 348, 590,
3910 217, 218, 219, 220, 221, 591, 0, 0, 885, 108,
3911 350, 0, 0, 0, 0, 0, 34, 35, 36, 213,
3912 0, 0, 189, 0, 0, 91, 344, 0, 93, 94,
3913 215, 95, 190, 97, 0, 0, 0, 0, 0, 0,
3914 0, 0, 50, 0, 0, 0, 348, 0, 0, 0,
3915 0, 0, 1113, 0, 0, 0, 0, 108, 350, 1166,
3916 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176,
3917 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 886, 887,
3918 888, 889, 890, 891, 29, 81, 82, 83, 84, 85,
3919 0, 1185, 34, 35, 36, 213, 222, 214, 40, 0,
3920 0, 189, 89, 90, 91, 92, 215, 93, 94, 0,
3921 95, 190, 97, 0, 0, 0, 99, 0, 50, 0,
3922 0, 0, 0, 0, 0, 892, 893, 0, 0, 0,
3923 0, 105, 0, 0, 0, 216, 108, 894, 0, 0,
3924 881, 882, 0, 0, 0, 0, 883, 0, 884, 0,
3925 0, 0, 0, 74, 75, 217, 218, 219, 220, 221,
3926 885, 81, 82, 83, 84, 85, 0, 0, 34, 35,
3927 36, 213, 222, 0, 0, 0, 0, 189, 89, 90,
3928 91, 92, 215, 93, 94, 0, 95, 190, 97, 0,
3929 0, 0, 99, 0, 50, 0, 0, 0, 0, 0,
3930 0, 0, 0, 0, 0, 0, 0, 105, 0, 0,
3931 0, 0, 108, 223, 0, 0, 1064, 1065, 0, 112,
3932 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3933 886, 887, 888, 889, 890, 891, 1066, 81, 82, 83,
3934 84, 85, 0, 0, 1067, 1068, 1069, 213, 222, 0,
3935 0, 0, 0, 189, 89, 90, 91, 92, 1070, 93,
3936 94, 0, 95, 190, 97, 0, 0, 0, 99, 0,
3937 50, 0, 0, 0, 0, 0, 0, 892, 893, 0,
3938 0, 0, 0, 105, 0, 0, 0, 0, 108, 894,
3939 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3940 0, 0, 0, 0, 0, 0, 1071, 1072, 1073, 1074,
3941 1075, 1076, 29, 0, 0, 0, 0, 0, 0, 0,
3942 34, 35, 36, 213, 1077, 214, 40, 0, 0, 189,
3943 0, 0, 91, 92, 215, 93, 94, 0, 95, 190,
3944 97, 0, 0, 0, 0, 0, 50, 0, 0, 0,
3945 0, 0, 0, 1078, 1079, 0, 0, 0, 0, 0,
3946 0, 0, 0, 216, 108, 0, 0, 0, 0, 0,
3947 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3948 0, 74, 75, 217, 218, 219, 220, 221, 0, 81,
3949 82, 83, 84, 85, 0, 0, 0, 0, 0, 0,
3950 222, 0, 0, 0, 0, 189, 89, 90, 91, 92,
3951 0, 93, 94, 0, 95, 190, 97, 29, 1056, 0,
3952 99, 0, 0, 0, 0, 34, 35, 36, 213, 0,
3953 214, 40, 0, 0, 0, 105, 0, 0, 0, 215,
3954 108, 223, 0, 0, 628, 0, 0, 112, 0, 0,
3955 0, 50, 0, 0, 0, 0, 0, 0, 0, 0,
3956 0, 0, 0, 0, 0, 0, 0, 0, 216, 1168,
3957 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178,
3958 1179, 1180, 1181, 1182, 1183, 1184, 74, 75, 217, 218,
3959 219, 220, 221, 29, 81, 82, 83, 84, 85, 1185,
3960 0, 34, 35, 36, 213, 222, 214, 40, 0, 0,
3961 189, 89, 90, 91, 92, 215, 93, 94, 0, 95,
3962 190, 97, 0, 0, 0, 99, 0, 50, 0, 0,
3963 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3964 105, 0, 0, 0, 216, 108, 223, 0, 0, 0,
3965 0, 0, 112, 0, 0, 0, 0, 0, 0, 0,
3966 0, 0, 74, 75, 217, 218, 219, 220, 221, 0,
3967 81, 82, 83, 84, 85, 0, 0, 0, 0, 0,
3968 0, 222, 0, 0, 0, 0, 189, 89, 90, 91,
3969 92, 0, 93, 94, 0, 95, 190, 97, 0, 0,
3970 0, 99, 0, 0, 0, 0, 473, 474, 475, 0,
3971 0, 0, 0, 0, 0, 0, 105, 0, 0, 0,
3972 0, 108, 223, 0, 0, 0, 476, 477, 112, 478,
3973 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
3974 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
3975 499, 500, 0, 501, 473, 474, 475, 0, 0, 0,
3976 0, 0, 0, 0, 0, 502, 0, 0, 0, 0,
3977 0, 0, 0, 0, 476, 477, 0, 478, 479, 480,
3978 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
3979 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
3980 0, 501, 0, 0, 0, 0, 0, 0, 0, 0,
3981 0, 0, 0, 502, 0, 473, 474, 475, 0, 0,
3982 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3983 0, 0, 0, 0, 549, 476, 477, 0, 478, 479,
3984 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
3985 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
3986 500, 0, 501, 473, 474, 475, 0, 0, 0, 0,
3987 0, 0, 0, 0, 502, 0, 0, 0, 0, 0,
3988 0, 0, 558, 476, 477, 0, 478, 479, 480, 481,
3989 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
3990 492, 493, 494, 495, 496, 497, 498, 499, 500, 0,
3991 501, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3992 0, 0, 502, 0, 473, 474, 475, 0, 0, 0,
3993 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3994 0, 0, 0, 955, 476, 477, 0, 478, 479, 480,
3995 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
3996 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
3997 0, 501, 473, 474, 475, 0, 0, 0, 0, 0,
3998 0, 0, 0, 502, 0, 0, 0, 0, 0, 0,
3999 0, 1042, 476, 477, 0, 478, 479, 480, 481, 482,
4000 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
4001 493, 494, 495, 496, 497, 498, 499, 500, 0, 501,
4002 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4003 0, 502, 0, 473, 474, 475, 0, 0, 0, 0,
4004 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4005 0, 0, 1097, 476, 477, 0, 478, 479, 480, 481,
4006 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
4007 492, 493, 494, 495, 496, 497, 498, 499, 500, 0,
4008 501, 1159, 1160, 1161, 0, 0, 0, 0, 0, 0,
4009 0, 0, 502, 0, 0, 0, 0, 0, 0, 0,
4010 1422, 0, 1162, 0, 0, 1163, 1164, 1165, 1166, 1167,
4011 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177,
4012 1178, 1179, 1180, 1181, 1182, 1183, 1184, 0, 0, 0,
4013 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4014 1185, 1159, 1160, 1161, 0, 0, 0, 0, 0, 0,
4015 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4016 0, 1465, 1162, 0, 0, 1163, 1164, 1165, 1166, 1167,
4017 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177,
4018 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1159, 1160, 1161,
4019 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4020 1185, 0, 0, 0, 0, 0, 0, 0, 1162, 1535,
4021 0, 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171,
4022 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181,
4023 1182, 1183, 1184, 0, 0, 0, 0, 0, 0, 0,
4024 0, 0, 0, 0, 0, 0, 1185, 1159, 1160, 1161,
4025 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4026 0, 0, 0, 0, 0, 0, 0, 0, 1162, 1547,
4027 0, 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171,
4028 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181,
4029 1182, 1183, 1184, 1159, 1160, 1161, 0, 0, 0, 0,
4030 0, 0, 0, 0, 0, 0, 1185, 0, 0, 0,
4031 0, 0, 0, 0, 1162, 1654, 0, 1163, 1164, 1165,
4032 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175,
4033 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 34,
4034 35, 36, 213, 0, 214, 40, 0, 0, 0, 0,
4035 0, 0, 1185, 215, 0, 0, 0, 0, 0, 0,
4036 0, 0, 0, 0, 0, 50, 0, 0, 0, 0,
4037 0, 0, 0, 0, 0, 1750, 0, 0, 0, 0,
4038 0, 0, 243, 0, 0, 0, 0, 0, 0, 0,
4039 0, 0, 0, 244, 0, 0, 0, 0, 0, 0,
4040 0, 0, 217, 218, 219, 220, 221, 0, 81, 82,
4041 83, 84, 85, 0, 0, 0, 0, 0, 0, 222,
4042 0, 1752, 0, 0, 189, 89, 90, 91, 92, 0,
4043 93, 94, 0, 95, 190, 97, 0, 0, 0, 99,
4044 0, 34, 35, 36, 213, 0, 214, 40, 0, 0,
4045 0, 0, 0, 0, 105, 677, 0, 0, 0, 108,
4046 245, 0, 0, 0, 0, 0, 112, 50, 0, 0,
4047 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4048 0, 0, 0, 0, 216, -1132, -1132, -1132, -1132, 1172,
4049 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182,
4050 1183, 1184, 0, 0, 217, 218, 219, 220, 221, 0,
4051 81, 82, 83, 84, 85, 1185, 0, 34, 35, 36,
4052 213, 222, 214, 40, 0, 0, 189, 89, 90, 91,
4053 92, 215, 93, 94, 0, 95, 190, 97, 0, 0,
4054 0, 99, 0, 50, 0, 0, 0, 0, 0, 0,
4055 0, 0, 0, 0, 0, 0, 105, 0, 0, 0,
4056 243, 108, 678, 0, 0, 0, 0, 0, 679, 0,
4057 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4058 217, 218, 219, 220, 221, 0, 81, 82, 83, 84,
4059 85, 0, 0, 0, 0, 0, 0, 222, 0, 0,
4060 0, 0, 189, 89, 90, 91, 92, 0, 93, 94,
4061 0, 95, 190, 97, 0, 0, 0, 99, 0, 0,
4062 0, 0, 473, 474, 475, 0, 0, 0, 0, 0,
4063 0, 0, 105, 0, 0, 0, 0, 108, 245, 863,
4064 0, 0, 476, 477, 112, 478, 479, 480, 481, 482,
4065 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
4066 493, 494, 495, 496, 497, 498, 499, 500, 0, 501,
4067 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4068 0, 502, 0, 0, 0, 0, 0, 0, 0, 0,
4069 0, 0, 0, 0, 0, 0, 473, 474, 475, 0,
4070 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4071 0, 0, 0, 0, 0, 864, 476, 477, 1039, 478,
4072 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
4073 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
4074 499, 500, 0, 501, 473, 474, 475, 0, 0, 0,
4075 0, 0, 0, 0, 0, 502, 0, 0, 0, 0,
4076 0, 0, 0, 0, 476, 477, 0, 478, 479, 480,
4077 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
4078 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
4079 0, 501, 1159, 1160, 1161, 0, 0, 0, 0, 0,
4080 0, 0, 0, 502, 0, 0, 0, 0, 0, 0,
4081 0, 0, 0, 1162, 1552, 0, 1163, 1164, 1165, 1166,
4082 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176,
4083 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1159, 1160,
4084 1161, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4085 0, 1185, 0, 0, 0, 0, 0, 0, 0, 1162,
4086 0, 0, 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170,
4087 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180,
4088 1181, 1182, 1183, 1184, 474, 475, 0, 0, 0, 0,
4089 0, 0, 0, 0, 0, 0, 0, 1185, 0, 0,
4090 0, 0, 0, 476, 477, 0, 478, 479, 480, 481,
4091 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
4092 492, 493, 494, 495, 496, 497, 498, 499, 500, 0,
4093 501, 1160, 1161, 0, 0, 0, 0, 0, 0, 0,
4094 0, 0, 502, 0, 0, 0, 0, 0, 0, 0,
4095 0, 1162, 0, 0, 1163, 1164, 1165, 1166, 1167, 1168,
4096 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178,
4097 1179, 1180, 1181, 1182, 1183, 1184, 475, 0, 0, 0,
4098 0, 0, 0, 0, 0, 0, 0, 0, 0, 1185,
4099 0, 0, 0, 0, 476, 477, 0, 478, 479, 480,
4100 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
4101 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
4102 0, 501, 0, 0, 0, 0, 0, 0, 0, 0,
4103 0, 1162, 0, 502, 1163, 1164, 1165, 1166, 1167, 1168,
4104 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178,
4105 1179, 1180, 1181, 1182, 1183, 1184, 0, 0, 0, 0,
4106 0, 0, 0, 0, 0, 0, 0, 0, 0, 1185,
4107 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
4108 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
4109 498, 499, 500, 0, 501, 0, 0, 0, 0, 0,
4110 0, 0, 0, 0, 0, 0, 502, 1163, 1164, 1165,
4111 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175,
4112 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 0,
4113 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4114 0, 0, 1185, 1164, 1165, 1166, 1167, 1168, 1169, 1170,
4115 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180,
4116 1181, 1182, 1183, 1184, 0, 0, 0, 0, 0, 0,
4117 0, 0, 0, 0, 0, 0, 0, 1185, 1165, 1166,
4118 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176,
4119 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 0, 0,
4120 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4121 0, 1185, 482, 483, 484, 485, 486, 487, 488, 489,
4122 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
4123 500, 0, 501, 0, 0, 0, 0, 0, 0, 0,
4127 static const yytype_int16 yycheck
[] =
4129 5, 6, 132, 8, 9, 10, 11, 12, 13, 167,
4130 15, 16, 17, 18, 56, 109, 21, 22, 23, 24,
4131 25, 26, 27, 28, 29, 193, 31, 109, 44, 124,
4132 508, 734, 98, 573, 417, 4, 696, 103, 104, 44,
4133 172, 173, 109, 33, 124, 4, 854, 52, 998, 54,
4134 4, 124, 57, 417, 59, 417, 46, 561, 30, 4,
4135 692, 51, 4, 723, 194, 131, 996, 167, 30, 609,
4136 86, 501, 862, 795, 869, 30, 879, 986, 537, 538,
4137 1419, 86, 505, 506, 1033, 1112, 1018, 534, 1020, 57,
4138 9, 9, 693, 534, 840, 670, 9, 191, 9, 9,
4139 1888, 447, 1051, 14, 109, 246, 622, 623, 567, 191,
4140 4, 9, 32, 6, 9, 14, 539, 32, 449, 450,
4141 451, 9, 569, 257, 191, 9, 258, 9, 569, 223,
4142 14, 9, 9, 70, 83, 57, 14, 9, 9, 9,
4143 9, 223, 109, 9, 9, 9, 9, 9, 9, 1098,
4144 9, 245, 9, 9, 36, 48, 223, 9, 4, 53,
4145 9, 14, 56, 245, 367, 368, 369, 48, 371, 70,
4146 14, 70, 1698, 81, 83, 84, 162, 116, 1108, 73,
4147 1706, 48, 162, 1222, 91, 0, 191, 103, 398, 91,
4148 400, 199, 83, 48, 199, 122, 199, 1000, 48, 183,
4149 48, 162, 96, 38, 98, 132, 136, 137, 418, 103,
4150 104, 38, 136, 137, 199, 199, 202, 70, 223, 199,
4151 113, 50, 51, 1232, 132, 38, 119, 70, 121, 122,
4152 123, 124, 125, 126, 127, 38, 83, 131, 199, 70,
4153 245, 180, 83, 84, 38, 1154, 195, 70, 83, 54,
4154 166, 1565, 159, 202, 270, 260, 83, 159, 263, 103,
4155 104, 182, 199, 200, 2052, 270, 271, 927, 402, 70,
4156 83, 162, 183, 203, 70, 199, 169, 170, 2066, 172,
4157 83, 8, 202, 201, 202, 204, 201, 70, 201, 83,
4158 201, 201, 460, 996, 70, 389, 205, 202, 199, 70,
4159 199, 194, 1329, 201, 1236, 264, 201, 389, 1054, 268,
4160 203, 70, 70, 201, 208, 196, 358, 201, 200, 859,
4161 70, 167, 389, 201, 201, 1028, 1665, 1122, 200, 1124,
4162 201, 201, 201, 200, 200, 1284, 201, 201, 201, 201,
4163 201, 196, 201, 200, 200, 200, 199, 1873, 200, 176,
4164 200, 200, 200, 447, 359, 184, 199, 83, 205, 202,
4165 1674, 162, 167, 176, 205, 447, 162, 83, 199, 199,
4166 264, 202, 388, 176, 268, 103, 544, 182, 272, 162,
4167 447, 168, 176, 388, 389, 1699, 516, 1701, 454, 394,
4168 395, 396, 397, 398, 399, 400, 70, 202, 1307, 974,
4169 405, 202, 103, 445, 103, 1108, 202, 923, 924, 183,
4170 70, 70, 83, 418, 54, 202, 199, 83, 38, 202,
4171 425, 19, 20, 1462, 70, 199, 70, 70, 433, 1030,
4172 1469, 202, 1471, 162, 107, 108, 1239, 70, 166, 444,
4173 199, 70, 447, 202, 202, 511, 512, 513, 514, 199,
4174 176, 1460, 202, 4, 183, 424, 70, 462, 463, 70,
4175 176, 199, 1501, 83, 358, 166, 30, 166, 473, 474,
4176 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
4177 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
4178 495, 496, 497, 498, 499, 500, 417, 502, 1220, 504,
4179 505, 506, 507, 136, 137, 176, 199, 136, 137, 70,
4180 176, 989, 517, 518, 519, 520, 521, 522, 523, 524,
4181 525, 526, 527, 528, 529, 447, 167, 167, 202, 501,
4182 203, 70, 537, 538, 539, 540, 1326, 504, 432, 501,
4183 545, 546, 202, 202, 549, 1348, 501, 441, 199, 517,
4184 517, 445, 710, 558, 559, 199, 202, 1004, 202, 202,
4185 454, 31, 567, 1004, 168, 699, 199, 701, 199, 202,
4186 575, 162, 577, 202, 83, 136, 137, 181, 1617, 1119,
4187 50, 132, 504, 53, 678, 70, 432, 508, 202, 1048,
4188 199, 202, 183, 107, 108, 517, 199, 1606, 202, 1608,
4189 83, 162, 70, 986, 83, 1944, 1238, 1949, 91, 1951,
4190 710, 202, 91, 534, 508, 509, 510, 511, 512, 513,
4191 514, 580, 986, 628, 986, 83, 1056, 83, 123, 797,
4192 652, 653, 199, 91, 1543, 556, 199, 132, 199, 183,
4193 534, 199, 240, 194, 1447, 566, 70, 788, 569, 4,
4194 159, 160, 161, 575, 1101, 199, 70, 6, 87, 681,
4195 1101, 70, 556, 199, 19, 20, 32, 1268, 136, 137,
4196 1271, 183, 1018, 678, 1020, 569, 742, 160, 161, 1157,
4197 821, 160, 161, 202, 1200, 166, 580, 199, 1019, 203,
4198 118, 1022, 1023, 14, 716, 124, 125, 126, 199, 48,
4199 834, 835, 160, 161, 160, 161, 600, 841, 842, 841,
4200 913, 32, 915, 1722, 917, 166, 721, 1726, 921, 136,
4201 137, 162, 50, 51, 693, 208, 1635, 112, 207, 38,
4202 51, 162, 626, 627, 31, 166, 121, 122, 123, 124,
4203 125, 126, 183, 183, 199, 750, 70, 87, 1470, 83,
4204 201, 202, 183, 50, 895, 202, 53, 91, 199, 199,
4205 70, 202, 784, 201, 113, 659, 660, 908, 83, 84,
4206 119, 1154, 121, 122, 123, 124, 125, 126, 127, 201,
4207 378, 786, 1286, 83, 124, 125, 126, 75, 76, 387,
4208 1154, 91, 1154, 14, 15, 16, 17, 18, 19, 20,
4209 21, 22, 23, 24, 25, 26, 1438, 201, 406, 194,
4210 57, 816, 81, 367, 368, 369, 4, 371, 1277, 417,
4211 169, 170, 69, 172, 201, 159, 160, 161, 1251, 1288,
4212 201, 19, 20, 201, 83, 104, 75, 76, 59, 60,
4213 734, 846, 91, 103, 104, 194, 862, 201, 742, 871,
4214 53, 54, 55, 201, 203, 877, 162, 862, 1580, 159,
4215 160, 161, 70, 1464, 710, 70, 69, 1407, 858, 83,
4216 134, 135, 141, 142, 143, 144, 145, 91, 1887, 201,
4217 202, 432, 1891, 201, 202, 240, 70, 1302, 734, 1304,
4218 1236, 1594, 70, 1308, 163, 1919, 1920, 166, 1915, 1916,
4219 169, 170, 70, 172, 173, 174, 1003, 1004, 867, 264,
4220 70, 160, 161, 268, 199, 136, 137, 199, 1151, 70,
4221 1153, 109, 1155, 166, 1307, 162, 403, 949, 201, 198,
4222 407, 106, 107, 108, 203, 49, 830, 501, 832, 106,
4223 107, 108, 69, 1307, 508, 1307, 160, 161, 394, 395,
4224 955, 183, 957, 1675, 959, 162, 162, 434, 852, 436,
4225 437, 438, 439, 1503, 515, 970, 199, 53, 54, 55,
4226 534, 57, 866, 867, 113, 114, 115, 199, 1518, 200,
4227 985, 19, 20, 69, 199, 162, 8, 199, 201, 1055,
4228 162, 14, 556, 121, 122, 123, 124, 125, 126, 162,
4229 201, 201, 566, 191, 973, 569, 852, 1466, 202, 9,
4230 1015, 201, 14, 1018, 973, 1020, 910, 1618, 200, 973,
4231 1025, 132, 132, 378, 183, 919, 920, 14, 973, 998,
4232 2039, 973, 387, 103, 1039, 223, 200, 1042, 200, 1044,
4233 206, 202, 200, 1048, 200, 199, 112, 2056, 9, 199,
4234 199, 406, 240, 159, 200, 200, 950, 245, 1988, 2009,
4235 200, 1030, 200, 1993, 910, 986, 194, 95, 989, 9,
4236 1092, 201, 14, 201, 183, 199, 264, 432, 9, 973,
4237 268, 2031, 1003, 1004, 1056, 202, 124, 1565, 2018, 201,
4238 2040, 199, 1097, 1439, 1056, 989, 1018, 202, 1020, 1639,
4239 201, 1056, 996, 1025, 202, 1246, 201, 1647, 1249, 1003,
4240 1004, 1442, 1443, 1444, 1136, 1105, 83, 202, 1140, 201,
4241 200, 719, 200, 1663, 200, 1147, 201, 973, 134, 9,
4242 204, 9, 204, 1941, 1028, 204, 204, 204, 1946, 32,
4243 70, 1236, 135, 1602, 1603, 182, 162, 1106, 138, 2079,
4244 996, 9, 200, 162, 200, 14, 1236, 196, 9, 9,
4245 1543, 1055, 830, 1236, 184, 200, 9, 14, 9, 200,
4246 1064, 1065, 1066, 200, 200, 200, 134, 9, 1099, 1543,
4247 1101, 1543, 1028, 734, 14, 204, 1994, 204, 199, 204,
4248 378, 203, 200, 1671, 204, 200, 1674, 162, 103, 387,
4249 798, 389, 240, 1743, 200, 1099, 201, 1101, 9, 201,
4250 138, 162, 1106, 9, 1108, 200, 1110, 199, 406, 1224,
4251 199, 1699, 70, 1701, 70, 580, 70, 199, 70, 1707,
4252 70, 1236, 202, 1154, 9, 203, 14, 1131, 836, 2042,
4253 838, 201, 9, 2046, 432, 184, 1251, 202, 204, 1254,
4254 1219, 176, 1635, 202, 14, 200, 60, 2060, 2061, 447,
4255 1219, 2069, 1108, 1157, 1110, 1219, 864, 201, 32, 196,
4256 70, 1635, 1277, 1635, 1219, 1297, 199, 1219, 199, 32,
4257 1940, 14, 1942, 1288, 88, 1988, 199, 91, 199, 52,
4258 1993, 199, 1186, 121, 122, 123, 124, 125, 126, 1268,
4259 70, 852, 1271, 199, 132, 133, 162, 199, 70, 70,
4260 1326, 1443, 70, 70, 1236, 2018, 9, 200, 138, 201,
4261 201, 1326, 199, 14, 184, 1219, 138, 162, 1318, 9,
4262 1335, 121, 122, 123, 124, 125, 126, 1359, 200, 937,
4263 378, 1363, 132, 133, 69, 1439, 1368, 175, 9, 387,
4264 176, 389, 176, 83, 1376, 1895, 138, 1439, 203, 910,
4265 9, 83, 1321, 201, 719, 830, 194, 204, 406, 2029,
4266 203, 14, 1439, 1219, 203, 83, 2079, 199, 203, 734,
4267 201, 200, 199, 173, 202, 175, 1307, 200, 986, 199,
4268 138, 202, 580, 202, 201, 9, 204, 92, 1066, 189,
4269 159, 191, 32, 202, 194, 1299, 1300, 1301, 1302, 1303,
4270 1304, 1889, 77, 201, 1308, 200, 1310, 1422, 78, 79,
4271 80, 201, 973, 1581, 1429, 989, 138, 1321, 184, 1434,
4272 32, 1436, 92, 204, 1439, 200, 9, 9, 1332, 1003,
4273 1004, 138, 9, 798, 9, 996, 1576, 1452, 1342, 200,
4274 204, 203, 1421, 200, 204, 204, 200, 1426, 204, 200,
4275 1465, 1466, 201, 1485, 201, 201, 201, 1489, 121, 122,
4276 123, 124, 125, 126, 1496, 203, 202, 1028, 201, 14,
4277 83, 836, 199, 838, 199, 204, 1332, 147, 148, 149,
4278 150, 151, 1056, 200, 200, 1464, 200, 852, 158, 201,
4279 199, 202, 200, 9, 164, 165, 200, 138, 204, 864,
4280 9, 138, 867, 200, 1112, 1113, 204, 1439, 178, 204,
4281 204, 1415, 204, 9, 200, 32, 201, 2067, 200, 1697,
4282 200, 719, 201, 193, 201, 1099, 176, 1101, 138, 202,
4283 83, 194, 113, 171, 201, 167, 734, 83, 14, 50,
4284 51, 52, 53, 54, 55, 910, 1154, 1108, 83, 1110,
4285 119, 200, 200, 367, 368, 369, 370, 371, 69, 202,
4286 138, 200, 138, 14, 183, 1421, 1706, 202, 201, 14,
4287 1426, 14, 937, 14, 1478, 83, 1480, 200, 200, 1594,
4288 200, 199, 198, 138, 1599, 83, 138, 1602, 1603, 14,
4289 201, 1066, 1668, 201, 201, 409, 14, 202, 9, 9,
4290 798, 203, 68, 183, 199, 14, 83, 9, 973, 9,
4291 202, 201, 1543, 116, 103, 162, 103, 184, 174, 36,
4292 199, 1299, 1300, 1301, 1302, 1303, 1304, 200, 1607, 201,
4293 1308, 996, 1310, 199, 1613, 184, 1615, 180, 836, 1618,
4294 838, 83, 184, 177, 1252, 9, 200, 83, 83, 200,
4295 1554, 201, 200, 14, 852, 83, 83, 14, 1219, 1638,
4296 83, 1565, 202, 1028, 14, 14, 864, 1571, 83, 867,
4297 83, 719, 1200, 2021, 511, 1644, 509, 43, 44, 45,
4298 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
4299 1594, 57, 1049, 1871, 976, 1327, 2036, 1742, 1554, 1307,
4300 2031, 1716, 514, 69, 1635, 1515, 1314, 1729, 1253, 1767,
4301 630, 1854, 910, 1676, 2077, 2053, 1571, 1567, 1725, 1152,
4302 1624, 1329, 1626, 399, 1628, 1581, 1223, 1303, 1148, 1633,
4303 50, 51, 52, 53, 54, 55, 1640, 57, 1594, 937,
4304 1644, 1106, 1065, 1108, 1648, 1110, 1298, 1112, 1113, 69,
4305 798, 1607, 1731, 1094, 19, 20, 1299, 1613, 445, 1615,
4306 1932, 1989, 1979, 880, 1668, 30, 1208, 1671, 1559, 1132,
4307 1674, 1332, 1741, 1742, 1186, 973, -1, -1, -1, -1,
4308 1684, -1, 1638, -1, 1640, -1, -1, 1691, 836, -1,
4309 838, 56, 1648, -1, -1, 1699, -1, 1701, 996, -1,
4310 1478, -1, 1480, 1707, -1, -1, -1, -1, 622, 623,
4311 6, -1, -1, -1, 1866, -1, 864, -1, -1, -1,
4312 1018, -1, 1020, -1, 1299, 1300, -1, -1, 1303, 1733,
4313 1028, -1, -1, -1, 2002, 1310, 1740, 1741, 1742, -1,
4314 -1, -1, 1746, -1, -1, -1, -1, -1, -1, 1753,
4315 -1, -1, 48, -1, 1219, -1, -1, -1, -1, -1,
4316 -1, -1, -1, 1878, -1, -1, -1, -1, -1, -1,
4317 -1, -1, -1, -1, -1, 1731, -1, 1909, 1910, -1,
4318 1932, -1, -1, -1, 1740, 2025, -1, 1252, -1, 937,
4319 1746, -1, -1, -1, -1, -1, -1, 1753, -1, -1,
4320 -1, -1, -1, -1, -1, -1, -1, -1, 1106, -1,
4321 1108, -1, 1110, -1, 1112, 1113, -1, 113, -1, -1,
4322 -1, -1, -1, 119, -1, 121, 122, 123, 124, 125,
4323 126, 127, -1, -1, -1, 1543, -1, -1, -1, -1,
4324 -1, -1, -1, -1, -1, -1, 1624, -1, 1626, 1314,
4325 1628, -1, -1, -1, -1, 1633, 1321, -1, -1, -1,
4326 -1, -1, 1866, -1, 1329, -1, -1, 1332, -1, -1,
4327 -1, -1, -1, 169, 170, 240, 172, -1, -1, -1,
4328 -1, -1, -1, -1, -1, 1889, -1, -1, -1, 1893,
4329 1894, -1, -1, 1554, -1, 1899, -1, -1, 194, -1,
4330 -1, -1, -1, 1478, 1908, 1480, -1, 203, -1, -1,
4331 -1, 1915, 1916, -1, 1575, 1919, 1920, -1, -1, -1,
4332 -1, 1219, -1, -1, 289, -1, 291, 1635, 1932, -1,
4333 2009, -1, -1, 1594, -1, -1, -1, -1, 1236, -1,
4334 -1, -1, -1, 1899, -1, -1, -1, -1, -1, -1,
4335 1954, -1, 2031, -1, 1252, 1733, -1, -1, -1, -1,
4336 2075, 2040, -1, -1, 1112, 1113, -1, -1, -1, 2084,
4337 -1, -1, -1, -1, -1, -1, -1, 2092, -1, 1640,
4338 2095, -1, -1, -1, 1988, 350, -1, 1648, -1, 1993,
4339 -1, -1, -1, -1, -1, -1, -1, 2001, 1954, 913,
4340 -1, 915, -1, 917, -1, -1, -1, 921, -1, 923,
4341 924, 925, -1, 378, 2018, -1, 1314, -1, -1, -1,
4342 2024, -1, 387, 1321, -1, -1, -1, 6, -1, -1,
4343 -1, 1329, 1988, -1, 1332, -1, -1, 1993, -1, -1,
4344 -1, 406, -1, -1, 1705, -1, 2002, -1, -1, 1624,
4345 -1, 1626, 417, 1628, -1, -1, -1, -1, 1633, -1,
4346 -1, -1, 2018, -1, -1, -1, -1, -1, -1, 48,
4347 -1, -1, -1, -1, 2078, 2079, -1, 442, -1, 1740,
4348 445, -1, 6, -1, -1, 1746, -1, -1, 1236, 1554,
4349 -1, -1, 1753, -1, -1, -1, -1, -1, -1, -1,
4350 -1, -1, -1, -1, 1252, -1, -1, -1, -1, -1,
4351 -1, -1, -1, -1, -1, 1893, 1894, -1, -1, -1,
4352 -1, -1, 2078, 2079, 48, -1, -1, -1, -1, 1594,
4353 -1, -1, -1, -1, 113, -1, 501, -1, -1, -1,
4354 119, 1439, 121, 122, 123, 124, 125, 126, 127, -1,
4355 -1, -1, -1, -1, -1, -1, -1, -1, 1733, -1,
4356 -1, -1, -1, -1, -1, -1, 1314, -1, -1, -1,
4357 -1, -1, -1, -1, -1, 1640, -1, -1, -1, 1644,
4358 -1, 1329, -1, 1648, -1, 6, -1, -1, -1, 113,
4359 169, 170, -1, 172, -1, 119, -1, 121, 122, 123,
4360 124, 125, 126, 127, -1, -1, -1, -1, -1, -1,
4361 -1, -1, -1, -1, -1, 194, -1, -1, -1, -1,
4362 -1, -1, -1, -1, 203, -1, -1, 48, -1, 594,
4363 -1, 596, -1, -1, 599, -1, -1, -1, 1899, -1,
4364 -1, -1, -1, -1, -1, 169, 170, -1, 172, 6,
4365 -1, -1, -1, -1, -1, -1, 1554, -1, -1, -1,
4366 -1, -1, -1, -1, -1, 31, -1, 632, -1, -1,
4367 194, -1, -1, -1, -1, 1740, 1741, 1742, -1, 203,
4368 -1, 1746, -1, -1, -1, -1, 1200, -1, 1753, -1,
4369 -1, 48, 113, 1954, -1, -1, 1594, -1, 119, -1,
4370 121, 122, 123, 124, 125, 126, 127, -1, -1, -1,
4371 -1, -1, -1, -1, -1, 81, -1, -1, 1893, 1894,
4372 -1, -1, -1, -1, 689, 690, -1, 1988, -1, -1,
4373 -1, -1, 1993, 698, -1, -1, -1, -1, 104, -1,
4374 -1, -1, 1640, -1, -1, -1, 1644, -1, 169, 170,
4375 1648, 172, -1, -1, 719, -1, 113, 2018, -1, -1,
4376 -1, 127, 119, -1, 121, 122, 123, 124, 125, 126,
4377 127, -1, -1, 194, 140, 141, 142, 143, 144, 145,
4378 146, -1, 203, 14, 15, 16, 17, 18, 19, 20,
4379 21, 22, 23, 24, 25, 26, -1, 163, -1, -1,
4380 166, 167, -1, 169, 170, -1, 172, 173, 174, -1,
4381 -1, -1, 169, 170, -1, 172, -1, 2078, 2079, -1,
4382 -1, -1, -1, -1, -1, -1, -1, -1, 59, 60,
4383 -1, -1, 198, 798, 1899, -1, -1, 194, -1, -1,
4384 -1, -1, 1740, 1741, 1742, -1, 203, -1, 1746, -1,
4385 -1, -1, 31, -1, -1, 1753, -1, -1, -1, -1,
4386 -1, -1, -1, -1, -1, 830, -1, -1, -1, -1,
4387 -1, 836, -1, 838, -1, -1, 14, 15, 16, 17,
4388 18, 19, 20, 21, 22, 23, 24, 25, 26, 1954,
4389 -1, -1, -1, -1, -1, -1, -1, -1, -1, 864,
4390 865, -1, 81, -1, -1, 136, 137, 872, -1, -1,
4391 -1, -1, -1, 92, 879, 880, 881, 882, 883, 884,
4392 885, 59, 60, 1988, -1, 104, -1, -1, 1993, 894,
4393 -1, 14, 15, 16, 17, 18, 19, 20, 21, 22,
4394 23, 24, 25, 26, -1, -1, 911, -1, -1, -1,
4395 -1, -1, -1, 2018, -1, -1, -1, -1, -1, -1,
4396 -1, -1, 141, 142, 143, 144, 145, -1, -1, 200,
4397 -1, -1, 937, -1, -1, -1, 59, 60, -1, -1,
4398 -1, -1, -1, -1, 163, 81, 951, 166, -1, -1,
4399 169, 170, -1, 172, 173, 174, -1, 176, 136, 137,
4400 -1, 1899, -1, -1, -1, -1, -1, -1, 104, -1,
4401 975, 976, -1, 2078, 2079, -1, 19, 20, -1, 198,
4402 -1, 986, -1, -1, -1, -1, -1, 30, 993, -1,
4403 -1, -1, -1, -1, -1, 1000, 81, -1, 83, 84,
4404 -1, 1006, -1, -1, -1, 141, 142, 143, 144, 145,
4405 -1, -1, 1017, 136, 137, -1, 1954, -1, -1, 104,
4406 -1, -1, 200, -1, -1, -1, -1, 1032, -1, -1,
4407 -1, 167, -1, 169, 170, 171, 172, 173, 174, -1,
4408 -1, -1, -1, -1, -1, -1, -1, 1052, -1, -1,
4409 1988, 1056, -1, -1, -1, 1993, 141, 142, 143, 144,
4410 145, 1066, 198, 199, 14, 15, 16, 17, 18, 19,
4411 20, 21, 22, 23, 24, 25, 26, 200, -1, -1,
4412 2018, -1, 167, -1, 169, 170, -1, 172, 173, 174,
4413 -1, -1, -1, -1, -1, -1, -1, -1, -1, 56,
4414 -1, -1, -1, -1, -1, -1, -1, 1112, 1113, 59,
4415 60, -1, -1, 198, -1, -1, -1, 202, -1, -1,
4416 205, 1126, -1, -1, -1, 1130, -1, 1132, -1, -1,
4417 1135, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4418 2078, 2079, -1, 1148, 1149, 1150, 1151, 1152, 1153, 1154,
4419 1155, -1, -1, 1158, 1159, 1160, 1161, 1162, 1163, 1164,
4420 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174,
4421 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184,
4422 1185, -1, 10, 11, 12, -1, 136, 137, -1, -1,
4423 -1, -1, -1, -1, -1, -1, -1, 240, -1, 1204,
4424 -1, -1, 30, 31, -1, 33, 34, 35, 36, 37,
4425 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
4426 48, 49, 50, 51, 52, 53, 54, 55, 81, 57,
4427 83, 84, 1237, -1, 1239, -1, -1, -1, -1, -1,
4428 -1, 69, -1, -1, -1, -1, -1, 1252, -1, -1,
4429 200, 104, -1, -1, -1, 14, 15, 16, 17, 18,
4430 19, 20, 21, 22, 23, 24, 25, 26, -1, -1,
4431 -1, -1, -1, -1, -1, 1280, -1, -1, 1283, -1,
4432 -1, -1, -1, -1, -1, -1, -1, -1, 141, 142,
4433 143, 144, 145, -1, 1299, 1300, 1301, 1302, 1303, 1304,
4434 59, 60, 1307, 1308, -1, 1310, -1, -1, -1, 1314,
4435 -1, -1, -1, -1, 167, -1, 169, 170, -1, 172,
4436 173, 174, -1, -1, 1329, -1, 1331, -1, -1, -1,
4437 -1, -1, 289, -1, 291, 378, 1341, -1, -1, -1,
4438 -1, -1, -1, 1348, 387, 198, -1, -1, 1353, 202,
4439 1355, -1, 205, -1, -1, -1, -1, -1, -1, -1,
4440 -1, -1, -1, 406, -1, -1, -1, -1, -1, -1,
4441 -1, -1, 56, -1, 417, 1380, 204, 136, 137, 43,
4442 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
4443 54, 55, -1, 350, -1, -1, 10, 11, 12, -1,
4444 -1, -1, -1, -1, -1, 69, -1, -1, -1, -1,
4445 -1, 1416, 1417, -1, -1, 1420, 30, 31, 32, 33,
4446 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
4447 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
4448 54, 55, 1447, 57, -1, -1, -1, -1, -1, -1,
4449 -1, -1, -1, -1, -1, 69, -1, -1, 501, -1,
4450 -1, -1, -1, -1, -1, -1, 10, 11, 12, -1,
4451 -1, -1, -1, 1478, -1, 1480, -1, -1, -1, -1,
4452 -1, -1, -1, -1, -1, 442, 30, 31, 445, 33,
4453 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
4454 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
4455 54, 55, -1, 57, -1, -1, -1, -1, 1523, 1524,
4456 -1, -1, 1527, -1, -1, 69, -1, -1, 1533, -1,
4457 1535, -1, 1537, -1, -1, -1, -1, 1542, 1543, -1,
4458 -1, -1, 1547, -1, 1549, -1, -1, 1552, -1, -1,
4459 81, -1, -1, -1, -1, -1, 599, -1, -1, -1,
4460 1565, 1566, -1, -1, 1569, -1, -1, -1, -1, -1,
4461 -1, 1576, -1, 104, -1, -1, -1, -1, -1, -1,
4462 -1, -1, -1, -1, -1, -1, -1, 201, -1, 632,
4463 -1, -1, -1, -1, -1, -1, -1, -1, -1, 130,
4464 -1, -1, -1, -1, -1, 289, -1, 291, -1, -1,
4465 141, 142, 143, 144, 145, -1, -1, -1, -1, 1624,
4466 -1, 1626, -1, 1628, -1, -1, -1, -1, 1633, -1,
4467 1635, -1, -1, -1, -1, -1, -1, 594, 169, 170,
4468 -1, 172, 173, 174, 1649, -1, -1, -1, -1, 1654,
4469 -1, -1, -1, -1, -1, -1, -1, 201, -1, 203,
4470 -1, 1666, 1667, -1, -1, -1, 350, 198, 199, 1674,
4471 -1, 1676, -1, -1, -1, -1, 719, -1, -1, 10,
4472 11, 12, -1, -1, -1, -1, -1, -1, -1, -1,
4473 -1, -1, 31, -1, 1699, -1, 1701, -1, -1, -1,
4474 31, 1706, 1707, 34, 35, 36, 37, 38, 39, 40,
4475 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
4476 51, 52, 53, 54, 55, -1, -1, -1, 1733, 68,
4477 -1, -1, 689, 690, -1, -1, -1, -1, 69, -1,
4478 -1, -1, 81, -1, -1, 1750, 1751, 1752, 87, -1,
4479 -1, -1, 1757, -1, 1759, 798, -1, -1, 442, -1,
4480 1765, 445, 1767, -1, -1, 104, -1, -1, 14, 15,
4481 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
4482 26, -1, -1, -1, -1, -1, -1, 830, -1, -1,
4483 -1, -1, -1, 836, -1, 838, -1, -1, -1, -1,
4484 -1, 140, 141, 142, 143, 144, 145, 146, -1, -1,
4485 -1, -1, -1, 59, 60, -1, -1, -1, -1, -1,
4486 -1, 864, 865, -1, 163, -1, -1, 166, 167, -1,
4487 169, 170, -1, 172, 173, 174, -1, 176, 881, 882,
4488 883, 884, 885, -1, -1, -1, -1, -1, 187, -1,
4489 -1, 894, -1, -1, -1, 31, -1, -1, 1863, 198,
4490 199, -1, -1, -1, -1, 1870, -1, -1, 911, 200,
4491 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4492 1885, -1, -1, -1, 1889, -1, -1, -1, 1893, 1894,
4493 136, 137, -1, -1, 937, -1, -1, -1, -1, -1,
4494 -1, -1, -1, 1908, -1, 81, -1, -1, 951, 1914,
4495 594, -1, 596, -1, -1, -1, 92, -1, -1, -1,
4496 -1, -1, 879, 880, -1, 1930, -1, -1, 104, -1,
4497 -1, 1936, -1, 976, -1, -1, -1, -1, -1, -1,
4498 -1, -1, -1, 986, -1, -1, -1, -1, -1, -1,
4499 -1, -1, -1, -1, -1, -1, -1, -1, 1963, 19,
4500 20, -1, -1, -1, -1, 141, 142, 143, 144, 145,
4501 30, -1, -1, 1978, 1017, -1, -1, -1, -1, -1,
4502 -1, -1, -1, -1, 1989, -1, 1991, 163, -1, 1032,
4503 166, -1, -1, 169, 170, -1, 172, 173, 174, -1,
4504 176, -1, -1, -1, -1, 689, 690, -1, -1, -1,
4505 -1, -1, -1, 1056, 698, 2020, -1, -1, 975, -1,
4506 -1, -1, 198, 1066, -1, -1, -1, -1, -1, -1,
4507 -1, 2036, -1, -1, -1, -1, 993, 2042, -1, -1,
4508 -1, 2046, -1, -1, -1, -1, -1, -1, -1, 1006,
4509 -1, -1, -1, -1, -1, 2060, 2061, -1, -1, -1,
4510 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1112,
4511 1113, 36, 37, 38, 39, 40, 41, 42, 43, 44,
4512 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
4513 55, -1, 57, -1, -1, 1052, -1, -1, -1, -1,
4514 -1, -1, -1, -1, 69, 1148, 1149, 1150, 1151, 1152,
4515 1153, 1154, 1155, -1, -1, 1158, 1159, 1160, 1161, 1162,
4516 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172,
4517 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182,
4518 1183, 1184, 1185, 38, 39, 40, 41, 42, 43, 44,
4519 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
4520 55, 1204, 57, -1, -1, -1, -1, -1, -1, 1126,
4521 -1, -1, -1, 1130, 69, -1, -1, -1, 1135, -1,
4522 240, -1, -1, -1, -1, -1, -1, -1, 872, -1,
4523 10, 11, 12, -1, -1, 879, 880, -1, -1, -1,
4524 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1252,
4525 30, 31, -1, 33, 34, 35, 36, 37, 38, 39,
4526 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
4527 50, 51, 52, 53, 54, 55, -1, 57, -1, -1,
4528 -1, -1, -1, -1, -1, -1, -1, -1, -1, 69,
4529 -1, -1, -1, -1, -1, -1, 1299, 1300, 1301, 1302,
4530 1303, 1304, -1, -1, 1307, 1308, -1, 1310, -1, -1,
4531 81, 1314, -1, -1, -1, -1, -1, -1, -1, -1,
4532 1237, -1, -1, -1, -1, -1, 1329, -1, 1331, -1,
4533 -1, 975, -1, 104, -1, 14, 15, 16, 17, 18,
4534 19, 20, 21, 22, 23, 24, 25, 26, -1, 993,
4535 1353, -1, 1355, -1, -1, -1, 1000, -1, 378, -1,
4536 -1, -1, 1006, 1280, -1, -1, 1283, 387, -1, -1,
4537 141, 142, 143, 144, 145, -1, -1, 1380, -1, -1,
4538 59, 60, -1, -1, -1, -1, 406, -1, -1, -1,
4539 -1, -1, -1, -1, -1, -1, -1, 417, 169, 170,
4540 -1, 172, 173, 174, -1, -1, -1, -1, 1052, 10,
4541 11, 12, -1, -1, -1, -1, -1, 1420, -1, -1,
4542 -1, -1, -1, 203, 1341, -1, -1, 198, 199, 30,
4543 31, 1348, 33, 34, 35, 36, 37, 38, 39, 40,
4544 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
4545 51, 52, 53, 54, 55, -1, 57, 136, 137, -1,
4546 -1, -1, -1, -1, -1, -1, -1, -1, 69, -1,
4547 -1, -1, -1, -1, -1, 1478, -1, 1480, -1, -1,
4548 -1, 501, 1126, 10, 11, 12, 1130, -1, 1132, -1,
4549 -1, 1135, -1, -1, -1, -1, -1, -1, -1, 1416,
4550 1417, -1, -1, -1, 31, -1, -1, 34, 35, 36,
4551 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
4552 47, 48, 49, 50, 51, 52, 53, 54, 55, -1,
4553 1533, -1, 1535, -1, 1537, -1, -1, -1, -1, 1542,
4554 1543, -1, 69, -1, 1547, -1, 1549, -1, -1, 1552,
4555 -1, -1, -1, 81, -1, -1, -1, -1, -1, -1,
4556 -1, -1, -1, 1566, -1, -1, 1569, -1, -1, -1,
4557 -1, -1, -1, -1, -1, -1, 104, -1, -1, 599,
4558 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4559 -1, -1, -1, 1237, -1, 1239, -1, -1, -1, -1,
4560 -1, -1, 203, -1, -1, -1, 1523, 1524, -1, -1,
4561 1527, 138, 632, 141, 142, 143, 144, 145, -1, -1,
4562 -1, 1624, -1, 1626, -1, 1628, -1, -1, -1, -1,
4563 1633, -1, 1635, -1, -1, -1, 1280, -1, 166, 1283,
4564 -1, 169, 170, -1, 172, 173, 174, -1, 1565, -1,
4565 -1, 1654, -1, -1, -1, -1, -1, -1, -1, 1576,
4566 -1, -1, -1, 1666, 1667, -1, -1, -1, -1, -1,
4567 198, -1, -1, 1676, 202, -1, -1, -1, -1, -1,
4568 -1, -1, 10, 11, 12, -1, -1, -1, -1, -1,
4569 -1, -1, -1, -1, -1, -1, -1, 1341, -1, 719,
4570 -1, -1, 30, 31, 1348, 33, 34, 35, 36, 37,
4571 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
4572 48, 49, 50, 51, 52, 53, 54, 55, -1, 57,
4573 1733, -1, 1649, 78, 79, 80, 81, -1, -1, -1,
4574 -1, 69, -1, -1, -1, -1, -1, 1750, 1751, 1752,
4575 -1, -1, -1, -1, 1757, -1, 1759, 1674, -1, 104,
4576 -1, -1, -1, -1, 1767, -1, -1, -1, -1, -1,
4577 -1, -1, 1416, 1417, -1, -1, -1, -1, 798, -1,
4578 -1, -1, 1699, -1, 1701, -1, -1, -1, -1, 1706,
4579 1707, -1, -1, -1, -1, -1, 141, 142, 143, 144,
4580 145, -1, 599, 1447, -1, -1, -1, 81, -1, -1,
4581 -1, -1, -1, -1, -1, -1, 836, -1, 838, -1,
4582 -1, -1, -1, -1, 169, 170, -1, 172, 173, 174,
4583 104, -1, -1, -1, -1, 632, -1, -1, -1, -1,
4584 -1, -1, -1, -1, 864, 865, -1, 31, 1765, -1,
4585 -1, -1, -1, 198, -1, -1, -1, -1, -1, -1,
4586 1863, 881, 882, 883, 884, 885, -1, 141, 142, 143,
4587 144, 145, -1, -1, 894, 203, -1, -1, -1, 1523,
4588 1524, -1, -1, 1527, 68, 81, -1, -1, -1, -1,
4589 1893, 1894, -1, -1, -1, 169, 170, 81, 172, 173,
4590 174, -1, -1, -1, -1, -1, -1, -1, 104, -1,
4591 -1, 1914, -1, -1, -1, -1, -1, 937, -1, -1,
4592 104, 1565, -1, -1, 198, 199, -1, 1930, 112, -1,
4593 -1, 127, 1576, 1936, -1, -1, -1, 121, 122, 123,
4594 124, 125, 126, -1, 140, 141, 142, 143, 144, 145,
4595 146, -1, -1, 1870, -1, -1, 140, 141, 142, 143,
4596 144, 145, 146, -1, -1, -1, 986, 163, 1885, -1,
4597 166, 167, 1889, 169, 170, 1978, 172, 173, 174, 163,
4598 -1, -1, 166, 167, -1, 169, 170, -1, 172, 173,
4599 174, -1, -1, -1, -1, -1, -1, 1017, -1, -1,
4600 -1, -1, 198, 187, -1, 1649, -1, -1, -1, -1,
4601 194, -1, -1, -1, 198, 199, -1, 2020, -1, 81,
4602 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4603 1674, -1, -1, 2036, -1, -1, 1056, -1, -1, -1,
4604 -1, -1, 104, -1, -1, -1, 1963, -1, -1, -1,
4605 112, 113, -1, -1, -1, 1699, -1, 1701, -1, -1,
4606 -1, -1, 1706, 1707, -1, -1, -1, -1, 865, -1,
4607 -1, -1, 1989, -1, 1991, -1, -1, -1, -1, 141,
4608 142, 143, 144, 145, 881, 882, 883, 884, 885, -1,
4609 -1, -1, 1112, 1113, -1, -1, -1, 894, -1, -1,
4610 -1, 163, -1, -1, 166, -1, -1, 169, 170, -1,
4611 172, 173, 174, -1, -1, -1, -1, -1, -1, -1,
4612 -1, 1765, -1, -1, -1, -1, -1, 189, 1148, 1149,
4613 1150, 1151, 1152, 1153, 1154, 1155, 198, -1, 1158, 1159,
4614 1160, 1161, 1162, 1163, 1164, 1165, 1166, 1167, 1168, 1169,
4615 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179,
4616 1180, 1181, 1182, 1183, 1184, 1185, 10, 11, 12, -1,
4617 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4618 -1, -1, -1, -1, 1204, -1, 30, 31, -1, 33,
4619 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
4620 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
4621 54, 55, 81, 57, -1, -1, -1, -1, -1, -1,
4622 1017, -1, -1, -1, -1, 69, 1870, -1, -1, 81,
4623 -1, 83, 1252, 85, -1, 104, -1, -1, -1, -1,
4624 -1, 1885, -1, 112, 113, 1889, -1, -1, -1, -1,
4625 -1, -1, 104, -1, -1, -1, -1, -1, -1, -1,
4626 -1, -1, -1, -1, 1908, -1, -1, -1, -1, -1,
4627 -1, -1, 141, 142, 143, 144, 145, -1, -1, -1,
4628 -1, -1, -1, -1, -1, -1, -1, 1307, -1, 141,
4629 142, 143, 144, 145, 1314, -1, -1, 166, -1, -1,
4630 169, 170, -1, 172, 173, 174, -1, -1, -1, 1329,
4631 -1, 1331, -1, -1, -1, -1, -1, 169, 170, 1963,
4632 172, 173, 174, -1, -1, -1, -1, -1, -1, 198,
4633 81, -1, -1, 1353, -1, 1355, -1, -1, -1, -1,
4634 -1, 92, -1, -1, -1, 1989, 198, 1991, -1, -1,
4635 -1, 1148, 1149, 104, -1, 1152, -1, -1, -1, 203,
4636 1380, 1158, 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1166,
4637 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176,
4638 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, -1,
4639 141, 142, 143, 144, 145, -1, -1, -1, 2042, -1,
4640 -1, -1, 2046, -1, -1, -1, -1, 1204, -1, -1,
4641 -1, -1, 163, -1, -1, 166, 2060, 2061, 169, 170,
4642 -1, 172, 173, 174, -1, -1, -1, 3, 4, 5,
4643 6, 7, -1, -1, -1, -1, -1, 13, -1, -1,
4644 -1, -1, -1, -1, -1, -1, -1, 198, -1, -1,
4645 -1, 27, 28, 29, -1, -1, -1, -1, -1, -1,
4646 -1, -1, 38, -1, -1, -1, -1, -1, -1, -1,
4647 -1, -1, -1, -1, 50, 51, -1, -1, -1, -1,
4648 56, -1, 58, 59, 60, 61, 62, 63, 64, 65,
4649 66, 67, 68, -1, 70, 71, 72, 73, -1, -1,
4650 -1, -1, 78, 79, 80, 81, 82, 83, 84, -1,
4651 -1, -1, -1, 1533, -1, 1535, 92, 1537, -1, -1,
4652 -1, -1, 1542, 1543, -1, -1, -1, 1547, 104, 1549,
4653 -1, -1, 1552, -1, 1331, -1, 112, -1, -1, -1,
4654 -1, -1, -1, -1, -1, 121, 122, 123, 124, 125,
4655 126, -1, -1, 129, 130, -1, 1353, -1, 1355, -1,
4656 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
4657 -1, 147, 148, 149, 150, 151, -1, -1, -1, -1,
4658 -1, -1, 158, 1380, -1, -1, -1, 163, 164, 165,
4659 166, 167, -1, 169, 170, -1, 172, 173, 174, -1,
4660 -1, -1, 178, -1, -1, 181, -1, -1, -1, -1,
4661 -1, 187, 188, -1, -1, 1635, 81, 193, 194, 195,
4662 -1, -1, 198, 199, 10, 11, 12, -1, -1, 205,
4663 206, 207, 208, -1, 1654, -1, -1, -1, -1, 104,
4664 -1, -1, -1, -1, 30, 31, -1, 33, 34, 35,
4665 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
4666 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
4667 -1, 57, -1, -1, -1, -1, 141, 142, 143, 144,
4668 145, -1, -1, 69, -1, -1, -1, -1, -1, 3,
4669 4, -1, 6, 7, -1, -1, 10, 11, 12, 13,
4670 -1, -1, 167, -1, 169, 170, -1, 172, 173, 174,
4671 -1, -1, -1, -1, 28, 29, -1, -1, -1, -1,
4672 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4673 1750, 1751, 1752, 198, -1, -1, 1533, 1757, 1535, -1,
4674 1537, -1, -1, 57, -1, 1542, 1766, -1, -1, -1,
4675 1547, -1, 1549, -1, -1, 1552, -1, 71, 72, 73,
4676 74, 75, 76, 77, -1, -1, -1, 81, -1, 83,
4677 84, -1, -1, 87, -1, -1, -1, -1, -1, 93,
4678 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
4679 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
4680 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
4681 124, 125, 126, 127, 128, 81, 130, 203, 132, 133,
4682 134, 135, -1, -1, -1, 139, 140, 141, 142, 143,
4683 144, 145, 146, -1, -1, -1, -1, -1, 104, -1,
4684 -1, -1, -1, 1863, -1, -1, -1, -1, -1, 163,
4685 -1, -1, -1, -1, -1, 169, 170, 1654, 172, 173,
4686 174, 175, -1, 177, -1, -1, 180, -1, -1, -1,
4687 -1, -1, -1, -1, 188, 141, 142, 143, 144, 145,
4688 -1, -1, -1, -1, 198, -1, -1, -1, 202, -1,
4689 -1, 205, -1, -1, 1914, -1, -1, 163, -1, -1,
4690 166, 167, -1, 169, 170, -1, 172, 173, 174, -1,
4691 1930, -1, -1, -1, -1, -1, 1936, 3, 4, 5,
4692 6, 7, -1, -1, -1, -1, -1, 13, -1, -1,
4693 -1, -1, 198, -1, -1, -1, -1, -1, -1, -1,
4694 -1, 27, 28, 29, -1, 1965, -1, -1, -1, -1,
4695 -1, -1, -1, 1750, 1751, 1752, -1, -1, 1978, -1,
4696 1757, -1, 48, -1, 50, 51, -1, -1, -1, -1,
4697 56, -1, 58, 59, 60, 61, 62, 63, 64, 65,
4698 66, 67, 68, -1, 70, 71, 72, 73, 74, -1,
4699 -1, -1, 78, 79, 80, 81, 82, 83, 84, -1,
4700 86, -1, 88, -1, -1, -1, 92, 93, 94, 95,
4701 -1, 97, -1, 99, -1, 101, -1, -1, 104, 105,
4702 -1, -1, -1, 109, 110, 111, 112, 113, 114, 115,
4703 -1, 117, 118, 119, 120, 121, 122, 123, 124, 125,
4704 126, -1, 128, 129, 130, 131, 132, 133, -1, -1,
4705 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
4706 -1, 147, 148, 149, 150, 151, 1863, -1, -1, 155,
4707 -1, -1, 158, -1, -1, -1, -1, 163, 164, 165,
4708 166, 167, -1, 169, 170, -1, 172, 173, 174, 175,
4709 -1, -1, 178, -1, -1, 181, -1, -1, -1, -1,
4710 -1, 187, 188, 189, -1, 191, -1, 193, 194, 195,
4711 -1, -1, 198, 199, -1, 201, 202, 1914, -1, 205,
4712 206, 207, 208, -1, -1, -1, -1, 3, 4, 5,
4713 6, 7, -1, 1930, -1, -1, -1, 13, -1, 1936,
4714 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4715 -1, 27, 28, 29, -1, -1, -1, -1, -1, -1,
4716 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4717 -1, -1, 48, -1, 50, 51, -1, -1, -1, -1,
4718 56, 1978, 58, 59, 60, 61, 62, 63, 64, 65,
4719 66, 67, 68, -1, 70, 71, 72, 73, 74, -1,
4720 -1, -1, 78, 79, 80, 81, 82, 83, 84, -1,
4721 86, -1, 88, -1, -1, -1, 92, 93, 94, 95,
4722 -1, 97, -1, 99, -1, 101, -1, -1, 104, 105,
4723 -1, -1, -1, 109, 110, 111, 112, 113, 114, 115,
4724 -1, 117, -1, 119, 120, 121, 122, 123, 124, 125,
4725 126, -1, 128, 129, 130, 131, 132, 133, -1, -1,
4726 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
4727 -1, 147, 148, 149, 150, 151, -1, -1, -1, 155,
4728 -1, -1, 158, -1, -1, -1, -1, 163, 164, 165,
4729 166, 167, -1, 169, 170, -1, 172, 173, 174, 175,
4730 -1, -1, 178, -1, -1, 181, -1, -1, -1, -1,
4731 -1, 187, 188, 189, -1, 191, -1, 193, 194, 195,
4732 -1, -1, 198, 199, -1, 201, 202, 203, -1, 205,
4733 206, 207, 208, 3, 4, 5, 6, 7, -1, -1,
4734 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4735 -1, -1, -1, -1, -1, -1, -1, 27, 28, 29,
4736 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4737 -1, -1, -1, -1, -1, -1, -1, -1, 48, -1,
4738 50, 51, -1, -1, -1, -1, 56, -1, 58, 59,
4739 60, 61, 62, 63, 64, 65, 66, 67, 68, -1,
4740 70, 71, 72, 73, 74, -1, -1, -1, 78, 79,
4741 80, 81, 82, 83, 84, -1, 86, -1, 88, -1,
4742 -1, -1, 92, 93, 94, 95, -1, 97, -1, 99,
4743 -1, 101, -1, -1, 104, 105, -1, -1, -1, 109,
4744 110, 111, 112, 113, 114, 115, -1, 117, -1, 119,
4745 120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
4746 130, 131, 132, 133, -1, -1, -1, -1, -1, 139,
4747 140, 141, 142, 143, 144, 145, -1, 147, 148, 149,
4748 150, 151, -1, -1, -1, 155, -1, -1, 158, -1,
4749 -1, -1, -1, 163, 164, 165, 166, 167, -1, 169,
4750 170, -1, 172, 173, 174, 175, -1, -1, 178, -1,
4751 -1, 181, -1, -1, -1, -1, -1, 187, 188, 189,
4752 -1, 191, -1, 193, 194, 195, -1, -1, 198, 199,
4753 -1, 201, 202, 203, -1, 205, 206, 207, 208, 3,
4754 4, 5, 6, 7, -1, -1, -1, -1, -1, 13,
4755 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4756 -1, -1, -1, 27, 28, 29, -1, -1, -1, -1,
4757 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4758 -1, -1, -1, -1, 48, -1, 50, 51, -1, -1,
4759 -1, -1, 56, -1, 58, 59, 60, 61, 62, 63,
4760 64, 65, 66, 67, 68, -1, 70, 71, 72, 73,
4761 74, -1, -1, -1, 78, 79, 80, 81, 82, 83,
4762 84, -1, 86, -1, 88, -1, -1, -1, 92, 93,
4763 94, 95, -1, 97, -1, 99, -1, 101, -1, -1,
4764 104, 105, -1, -1, -1, 109, 110, 111, 112, -1,
4765 114, 115, -1, 117, -1, -1, 120, 121, 122, 123,
4766 124, 125, 126, -1, 128, 129, 130, -1, 132, 133,
4767 -1, -1, -1, -1, -1, 139, 140, 141, 142, 143,
4768 144, 145, -1, 147, 148, 149, 150, 151, -1, -1,
4769 -1, 155, -1, -1, 158, -1, -1, -1, -1, 163,
4770 164, 165, 166, 167, -1, 169, 170, -1, 172, 173,
4771 174, 175, -1, -1, 178, -1, -1, 181, -1, -1,
4772 -1, -1, -1, 187, 188, -1, -1, -1, -1, 193,
4773 194, 195, -1, -1, 198, 199, -1, 201, 202, 203,
4774 -1, 205, 206, 207, 208, 3, 4, 5, 6, 7,
4775 -1, -1, -1, -1, -1, 13, -1, -1, -1, -1,
4776 -1, -1, -1, -1, -1, -1, -1, -1, -1, 27,
4777 28, 29, -1, -1, -1, -1, -1, -1, -1, -1,
4778 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4779 48, -1, 50, 51, -1, -1, -1, -1, 56, -1,
4780 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
4781 68, -1, 70, 71, 72, 73, 74, -1, -1, -1,
4782 78, 79, 80, 81, 82, 83, 84, -1, 86, -1,
4783 88, -1, -1, -1, 92, 93, 94, 95, -1, 97,
4784 -1, 99, -1, 101, -1, -1, 104, 105, -1, -1,
4785 -1, 109, 110, 111, 112, -1, 114, 115, -1, 117,
4786 -1, -1, 120, 121, 122, 123, 124, 125, 126, -1,
4787 128, 129, 130, -1, 132, 133, -1, -1, -1, -1,
4788 -1, 139, 140, 141, 142, 143, 144, 145, -1, 147,
4789 148, 149, 150, 151, -1, -1, -1, 155, -1, -1,
4790 158, -1, -1, -1, -1, 163, 164, 165, 166, 167,
4791 -1, 169, 170, -1, 172, 173, 174, 175, -1, -1,
4792 178, -1, -1, 181, -1, -1, -1, -1, -1, 187,
4793 188, -1, -1, -1, -1, 193, 194, 195, -1, -1,
4794 198, 199, -1, 201, 202, 203, -1, 205, 206, 207,
4795 208, 3, 4, 5, 6, 7, -1, -1, -1, -1,
4796 -1, 13, -1, -1, -1, -1, -1, -1, -1, -1,
4797 -1, -1, -1, -1, -1, 27, 28, 29, -1, -1,
4798 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4799 -1, -1, -1, -1, -1, -1, 48, -1, 50, 51,
4800 -1, -1, -1, -1, 56, -1, 58, 59, 60, 61,
4801 62, 63, 64, 65, 66, 67, 68, -1, 70, 71,
4802 72, 73, 74, -1, -1, -1, 78, 79, 80, 81,
4803 82, 83, 84, -1, 86, -1, 88, -1, -1, -1,
4804 92, 93, 94, 95, -1, 97, -1, 99, -1, 101,
4805 -1, -1, 104, 105, -1, -1, -1, 109, 110, 111,
4806 112, -1, 114, 115, -1, 117, 118, -1, 120, 121,
4807 122, 123, 124, 125, 126, -1, 128, 129, 130, -1,
4808 132, 133, -1, -1, -1, -1, -1, 139, 140, 141,
4809 142, 143, 144, 145, -1, 147, 148, 149, 150, 151,
4810 -1, -1, -1, 155, -1, -1, 158, -1, -1, -1,
4811 -1, 163, 164, 165, 166, 167, -1, 169, 170, -1,
4812 172, 173, 174, 175, -1, -1, 178, -1, -1, 181,
4813 -1, -1, -1, -1, -1, 187, 188, -1, -1, -1,
4814 -1, 193, 194, 195, -1, -1, 198, 199, -1, 201,
4815 202, -1, -1, 205, 206, 207, 208, 3, 4, 5,
4816 6, 7, -1, -1, -1, -1, -1, 13, -1, -1,
4817 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4818 -1, 27, 28, 29, -1, -1, -1, -1, -1, -1,
4819 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4820 -1, -1, 48, -1, 50, 51, -1, -1, -1, -1,
4821 56, -1, 58, 59, 60, 61, 62, 63, 64, 65,
4822 66, 67, 68, -1, 70, 71, 72, 73, 74, -1,
4823 -1, -1, 78, 79, 80, 81, 82, 83, 84, -1,
4824 86, -1, 88, -1, -1, -1, 92, 93, 94, 95,
4825 -1, 97, -1, 99, -1, 101, -1, -1, 104, 105,
4826 -1, -1, -1, 109, 110, 111, 112, -1, 114, 115,
4827 -1, 117, -1, -1, 120, 121, 122, 123, 124, 125,
4828 126, -1, 128, 129, 130, -1, 132, 133, -1, -1,
4829 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
4830 -1, 147, 148, 149, 150, 151, -1, -1, -1, 155,
4831 -1, -1, 158, -1, -1, -1, -1, 163, 164, 165,
4832 166, 167, -1, 169, 170, -1, 172, 173, 174, 175,
4833 -1, -1, 178, -1, -1, 181, -1, -1, -1, -1,
4834 -1, 187, 188, -1, -1, -1, -1, 193, 194, 195,
4835 -1, -1, 198, 199, -1, 201, 202, 203, -1, 205,
4836 206, 207, 208, 3, 4, 5, 6, 7, -1, -1,
4837 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4838 -1, -1, -1, -1, -1, -1, -1, 27, 28, 29,
4839 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4840 -1, -1, -1, -1, -1, -1, -1, -1, 48, -1,
4841 50, 51, -1, -1, -1, -1, 56, -1, 58, 59,
4842 60, 61, 62, 63, 64, 65, 66, 67, 68, -1,
4843 70, 71, 72, 73, 74, -1, -1, -1, 78, 79,
4844 80, 81, 82, 83, 84, -1, 86, -1, 88, -1,
4845 -1, -1, 92, 93, 94, 95, -1, 97, -1, 99,
4846 -1, 101, -1, -1, 104, 105, -1, -1, -1, 109,
4847 110, 111, 112, -1, 114, 115, -1, 117, -1, -1,
4848 120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
4849 130, -1, 132, 133, -1, -1, -1, -1, -1, 139,
4850 140, 141, 142, 143, 144, 145, -1, 147, 148, 149,
4851 150, 151, -1, -1, -1, 155, -1, -1, 158, -1,
4852 -1, -1, -1, 163, 164, 165, 166, 167, -1, 169,
4853 170, -1, 172, 173, 174, 175, -1, -1, 178, -1,
4854 -1, 181, -1, -1, -1, -1, -1, 187, 188, -1,
4855 -1, -1, -1, 193, 194, 195, -1, -1, 198, 199,
4856 -1, 201, 202, 203, -1, 205, 206, 207, 208, 3,
4857 4, 5, 6, 7, -1, -1, -1, -1, -1, 13,
4858 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4859 -1, -1, -1, 27, 28, 29, -1, -1, -1, -1,
4860 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4861 -1, -1, -1, -1, 48, -1, 50, 51, -1, -1,
4862 -1, -1, 56, -1, 58, 59, 60, 61, 62, 63,
4863 64, 65, 66, 67, 68, -1, 70, 71, 72, 73,
4864 74, -1, -1, -1, 78, 79, 80, 81, 82, 83,
4865 84, -1, 86, -1, 88, -1, -1, -1, 92, 93,
4866 94, 95, -1, 97, -1, 99, -1, 101, -1, -1,
4867 104, 105, -1, -1, -1, 109, 110, 111, 112, -1,
4868 114, 115, -1, 117, -1, -1, 120, 121, 122, 123,
4869 124, 125, 126, -1, 128, 129, 130, -1, 132, 133,
4870 -1, -1, -1, -1, -1, 139, 140, 141, 142, 143,
4871 144, 145, -1, 147, 148, 149, 150, 151, -1, -1,
4872 -1, 155, -1, -1, 158, -1, -1, -1, -1, 163,
4873 164, 165, 166, 167, -1, 169, 170, -1, 172, 173,
4874 174, 175, -1, -1, 178, -1, -1, 181, -1, -1,
4875 -1, -1, -1, 187, 188, -1, -1, -1, -1, 193,
4876 194, 195, -1, -1, 198, 199, -1, 201, 202, 203,
4877 -1, 205, 206, 207, 208, 3, 4, 5, 6, 7,
4878 -1, -1, -1, -1, -1, 13, -1, -1, -1, -1,
4879 -1, -1, -1, -1, -1, -1, -1, -1, -1, 27,
4880 28, 29, -1, -1, -1, -1, -1, -1, -1, -1,
4881 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4882 48, -1, 50, 51, -1, -1, -1, -1, 56, -1,
4883 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
4884 68, -1, 70, 71, 72, 73, 74, -1, -1, -1,
4885 78, 79, 80, 81, 82, 83, 84, -1, 86, -1,
4886 88, -1, -1, -1, 92, 93, 94, 95, -1, 97,
4887 -1, 99, -1, 101, -1, -1, 104, 105, -1, -1,
4888 -1, 109, 110, 111, 112, -1, 114, 115, -1, 117,
4889 -1, -1, 120, 121, 122, 123, 124, 125, 126, -1,
4890 128, 129, 130, -1, 132, 133, -1, -1, -1, -1,
4891 -1, 139, 140, 141, 142, 143, 144, 145, -1, 147,
4892 148, 149, 150, 151, -1, -1, -1, 155, -1, -1,
4893 158, -1, -1, -1, -1, 163, 164, 165, 166, 167,
4894 -1, 169, 170, -1, 172, 173, 174, 175, -1, -1,
4895 178, -1, -1, 181, -1, -1, -1, -1, -1, 187,
4896 188, -1, -1, -1, -1, 193, 194, 195, -1, -1,
4897 198, 199, -1, 201, 202, 203, -1, 205, 206, 207,
4898 208, 3, 4, 5, 6, 7, -1, -1, -1, -1,
4899 -1, 13, -1, -1, -1, -1, -1, -1, -1, -1,
4900 -1, -1, -1, -1, -1, 27, 28, 29, -1, -1,
4901 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4902 -1, -1, -1, -1, -1, -1, 48, -1, 50, 51,
4903 -1, -1, -1, -1, 56, -1, 58, 59, 60, 61,
4904 62, 63, 64, 65, 66, 67, 68, -1, 70, 71,
4905 72, 73, 74, -1, -1, -1, 78, 79, 80, 81,
4906 82, 83, 84, -1, 86, -1, 88, -1, -1, -1,
4907 92, 93, 94, 95, 96, 97, -1, 99, -1, 101,
4908 -1, -1, 104, 105, -1, -1, -1, 109, 110, 111,
4909 112, -1, 114, 115, -1, 117, -1, -1, 120, 121,
4910 122, 123, 124, 125, 126, -1, 128, 129, 130, -1,
4911 132, 133, -1, -1, -1, -1, -1, 139, 140, 141,
4912 142, 143, 144, 145, -1, 147, 148, 149, 150, 151,
4913 -1, -1, -1, 155, -1, -1, 158, -1, -1, -1,
4914 -1, 163, 164, 165, 166, 167, -1, 169, 170, -1,
4915 172, 173, 174, 175, -1, -1, 178, -1, -1, 181,
4916 -1, -1, -1, -1, -1, 187, 188, -1, -1, -1,
4917 -1, 193, 194, 195, -1, -1, 198, 199, -1, 201,
4918 202, -1, -1, 205, 206, 207, 208, 3, 4, 5,
4919 6, 7, -1, -1, -1, -1, -1, 13, -1, -1,
4920 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4921 -1, 27, 28, 29, -1, -1, -1, -1, -1, -1,
4922 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4923 -1, -1, 48, -1, 50, 51, -1, -1, -1, -1,
4924 56, -1, 58, 59, 60, 61, 62, 63, 64, 65,
4925 66, 67, 68, -1, 70, 71, 72, 73, 74, -1,
4926 -1, -1, 78, 79, 80, 81, 82, 83, 84, -1,
4927 86, -1, 88, -1, -1, -1, 92, 93, 94, 95,
4928 -1, 97, -1, 99, -1, 101, 102, -1, 104, 105,
4929 -1, -1, -1, 109, 110, 111, 112, -1, 114, 115,
4930 -1, 117, -1, -1, 120, 121, 122, 123, 124, 125,
4931 126, -1, 128, 129, 130, -1, 132, 133, -1, -1,
4932 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
4933 -1, 147, 148, 149, 150, 151, -1, -1, -1, 155,
4934 -1, -1, 158, -1, -1, -1, -1, 163, 164, 165,
4935 166, 167, -1, 169, 170, -1, 172, 173, 174, 175,
4936 -1, -1, 178, -1, -1, 181, -1, -1, -1, -1,
4937 -1, 187, 188, -1, -1, -1, -1, 193, 194, 195,
4938 -1, -1, 198, 199, -1, 201, 202, -1, -1, 205,
4939 206, 207, 208, 3, 4, 5, 6, 7, -1, -1,
4940 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
4941 -1, -1, -1, -1, -1, -1, -1, 27, 28, 29,
4942 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4943 -1, -1, -1, -1, -1, -1, -1, -1, 48, -1,
4944 50, 51, -1, -1, -1, -1, 56, -1, 58, 59,
4945 60, 61, 62, 63, 64, 65, 66, 67, 68, -1,
4946 70, 71, 72, 73, 74, -1, -1, -1, 78, 79,
4947 80, 81, 82, 83, 84, -1, 86, -1, 88, -1,
4948 -1, -1, 92, 93, 94, 95, -1, 97, -1, 99,
4949 -1, 101, -1, -1, 104, 105, -1, -1, -1, 109,
4950 110, 111, 112, -1, 114, 115, -1, 117, -1, -1,
4951 120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
4952 130, -1, 132, 133, -1, -1, -1, -1, -1, 139,
4953 140, 141, 142, 143, 144, 145, -1, 147, 148, 149,
4954 150, 151, -1, -1, -1, 155, -1, -1, 158, -1,
4955 -1, -1, -1, 163, 164, 165, 166, 167, -1, 169,
4956 170, -1, 172, 173, 174, 175, -1, -1, 178, -1,
4957 -1, 181, -1, -1, -1, -1, -1, 187, 188, -1,
4958 -1, -1, -1, 193, 194, 195, -1, -1, 198, 199,
4959 -1, 201, 202, 203, -1, 205, 206, 207, 208, 3,
4960 4, 5, 6, 7, -1, -1, -1, -1, -1, 13,
4961 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4962 -1, -1, -1, 27, 28, 29, -1, -1, -1, -1,
4963 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4964 -1, -1, -1, -1, 48, -1, 50, 51, -1, -1,
4965 -1, -1, 56, -1, 58, 59, 60, 61, 62, 63,
4966 64, 65, 66, 67, 68, -1, 70, 71, 72, 73,
4967 74, -1, -1, 77, 78, 79, 80, 81, 82, 83,
4968 84, -1, 86, -1, 88, -1, -1, -1, 92, 93,
4969 94, 95, -1, 97, -1, 99, -1, 101, -1, -1,
4970 104, 105, -1, -1, -1, 109, 110, 111, 112, -1,
4971 114, 115, -1, 117, -1, -1, 120, 121, 122, 123,
4972 124, 125, 126, -1, 128, 129, 130, -1, 132, 133,
4973 -1, -1, -1, -1, -1, 139, 140, 141, 142, 143,
4974 144, 145, -1, 147, 148, 149, 150, 151, -1, -1,
4975 -1, 155, -1, -1, 158, -1, -1, -1, -1, 163,
4976 164, 165, 166, 167, -1, 169, 170, -1, 172, 173,
4977 174, 175, -1, -1, 178, -1, -1, 181, -1, -1,
4978 -1, -1, -1, 187, 188, -1, -1, -1, -1, 193,
4979 194, 195, -1, -1, 198, 199, -1, 201, 202, -1,
4980 -1, 205, 206, 207, 208, 3, 4, 5, 6, 7,
4981 -1, -1, -1, -1, -1, 13, -1, -1, -1, -1,
4982 -1, -1, -1, -1, -1, -1, -1, -1, -1, 27,
4983 28, 29, -1, -1, -1, -1, -1, -1, -1, -1,
4984 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4985 48, -1, 50, 51, -1, -1, -1, -1, 56, -1,
4986 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
4987 68, -1, 70, 71, 72, 73, 74, -1, -1, -1,
4988 78, 79, 80, 81, 82, 83, 84, -1, 86, -1,
4989 88, -1, -1, -1, 92, 93, 94, 95, -1, 97,
4990 -1, 99, -1, 101, -1, -1, 104, 105, -1, -1,
4991 -1, 109, 110, 111, 112, -1, 114, 115, -1, 117,
4992 -1, -1, 120, 121, 122, 123, 124, 125, 126, -1,
4993 128, 129, 130, -1, 132, 133, -1, -1, -1, -1,
4994 -1, 139, 140, 141, 142, 143, 144, 145, -1, 147,
4995 148, 149, 150, 151, -1, -1, -1, 155, -1, -1,
4996 158, -1, -1, -1, -1, 163, 164, 165, 166, 167,
4997 -1, 169, 170, -1, 172, 173, 174, 175, -1, -1,
4998 178, -1, -1, 181, -1, -1, -1, -1, -1, 187,
4999 188, -1, -1, -1, -1, 193, 194, 195, -1, -1,
5000 198, 199, -1, 201, 202, 203, -1, 205, 206, 207,
5001 208, 3, 4, 5, 6, 7, -1, -1, -1, -1,
5002 -1, 13, -1, -1, -1, -1, -1, -1, -1, -1,
5003 -1, -1, -1, -1, -1, 27, 28, 29, -1, -1,
5004 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5005 -1, -1, -1, -1, -1, -1, 48, -1, 50, 51,
5006 -1, -1, -1, -1, 56, -1, 58, 59, 60, 61,
5007 62, 63, 64, 65, 66, 67, 68, -1, 70, 71,
5008 72, 73, 74, -1, -1, -1, 78, 79, 80, 81,
5009 82, 83, 84, -1, 86, -1, 88, -1, -1, -1,
5010 92, 93, 94, 95, -1, 97, -1, 99, 100, 101,
5011 -1, -1, 104, 105, -1, -1, -1, 109, 110, 111,
5012 112, -1, 114, 115, -1, 117, -1, -1, 120, 121,
5013 122, 123, 124, 125, 126, -1, 128, 129, 130, -1,
5014 132, 133, -1, -1, -1, -1, -1, 139, 140, 141,
5015 142, 143, 144, 145, -1, 147, 148, 149, 150, 151,
5016 -1, -1, -1, 155, -1, -1, 158, -1, -1, -1,
5017 -1, 163, 164, 165, 166, 167, -1, 169, 170, -1,
5018 172, 173, 174, 175, -1, -1, 178, -1, -1, 181,
5019 -1, -1, -1, -1, -1, 187, 188, -1, -1, -1,
5020 -1, 193, 194, 195, -1, -1, 198, 199, -1, 201,
5021 202, -1, -1, 205, 206, 207, 208, 3, 4, 5,
5022 6, 7, -1, -1, -1, -1, -1, 13, -1, -1,
5023 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5024 -1, 27, 28, 29, -1, -1, -1, -1, -1, -1,
5025 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5026 -1, -1, 48, -1, 50, 51, -1, -1, -1, -1,
5027 56, -1, 58, 59, 60, 61, 62, 63, 64, 65,
5028 66, 67, 68, -1, 70, 71, 72, 73, 74, -1,
5029 -1, -1, 78, 79, 80, 81, 82, 83, 84, -1,
5030 86, -1, 88, -1, -1, -1, 92, 93, 94, 95,
5031 -1, 97, 98, 99, -1, 101, -1, -1, 104, 105,
5032 -1, -1, -1, 109, 110, 111, 112, -1, 114, 115,
5033 -1, 117, -1, -1, 120, 121, 122, 123, 124, 125,
5034 126, -1, 128, 129, 130, -1, 132, 133, -1, -1,
5035 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
5036 -1, 147, 148, 149, 150, 151, -1, -1, -1, 155,
5037 -1, -1, 158, -1, -1, -1, -1, 163, 164, 165,
5038 166, 167, -1, 169, 170, -1, 172, 173, 174, 175,
5039 -1, -1, 178, -1, -1, 181, -1, -1, -1, -1,
5040 -1, 187, 188, -1, -1, -1, -1, 193, 194, 195,
5041 -1, -1, 198, 199, -1, 201, 202, -1, -1, 205,
5042 206, 207, 208, 3, 4, 5, 6, 7, -1, -1,
5043 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
5044 -1, -1, -1, -1, -1, -1, -1, 27, 28, 29,
5045 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5046 -1, -1, -1, -1, -1, -1, -1, -1, 48, -1,
5047 50, 51, -1, -1, -1, -1, 56, -1, 58, 59,
5048 60, 61, 62, 63, 64, 65, 66, 67, 68, -1,
5049 70, 71, 72, 73, 74, -1, -1, -1, 78, 79,
5050 80, 81, 82, 83, 84, -1, 86, -1, 88, -1,
5051 -1, -1, 92, 93, 94, 95, -1, 97, -1, 99,
5052 -1, 101, -1, -1, 104, 105, -1, -1, -1, 109,
5053 110, 111, 112, -1, 114, 115, -1, 117, -1, -1,
5054 120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
5055 130, -1, 132, 133, -1, -1, -1, -1, -1, 139,
5056 140, 141, 142, 143, 144, 145, -1, 147, 148, 149,
5057 150, 151, -1, -1, -1, 155, -1, -1, 158, -1,
5058 -1, -1, -1, 163, 164, 165, 166, 167, -1, 169,
5059 170, -1, 172, 173, 174, 175, -1, -1, 178, -1,
5060 -1, 181, -1, -1, -1, -1, -1, 187, 188, -1,
5061 -1, -1, -1, 193, 194, 195, -1, -1, 198, 199,
5062 -1, 201, 202, 203, -1, 205, 206, 207, 208, 3,
5063 4, 5, 6, 7, -1, -1, -1, -1, -1, 13,
5064 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5065 -1, -1, -1, 27, 28, 29, -1, -1, -1, -1,
5066 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5067 -1, -1, -1, -1, 48, -1, 50, 51, -1, -1,
5068 -1, -1, 56, -1, 58, 59, 60, 61, 62, 63,
5069 64, 65, 66, 67, 68, -1, 70, 71, 72, 73,
5070 74, -1, -1, -1, 78, 79, 80, 81, 82, 83,
5071 84, -1, 86, -1, 88, -1, -1, -1, 92, 93,
5072 94, 95, -1, 97, -1, 99, -1, 101, -1, -1,
5073 104, 105, -1, -1, -1, 109, 110, 111, 112, -1,
5074 114, 115, -1, 117, -1, -1, 120, 121, 122, 123,
5075 124, 125, 126, -1, 128, 129, 130, -1, 132, 133,
5076 -1, -1, -1, -1, -1, 139, 140, 141, 142, 143,
5077 144, 145, -1, 147, 148, 149, 150, 151, -1, -1,
5078 -1, 155, -1, -1, 158, -1, -1, -1, -1, 163,
5079 164, 165, 166, 167, -1, 169, 170, -1, 172, 173,
5080 174, 175, -1, -1, 178, -1, -1, 181, -1, -1,
5081 -1, -1, -1, 187, 188, -1, -1, -1, -1, 193,
5082 194, 195, -1, -1, 198, 199, -1, 201, 202, 203,
5083 -1, 205, 206, 207, 208, 3, 4, 5, 6, 7,
5084 -1, -1, -1, -1, -1, 13, -1, -1, -1, -1,
5085 -1, -1, -1, -1, -1, -1, -1, -1, -1, 27,
5086 28, 29, -1, -1, -1, -1, -1, -1, -1, -1,
5087 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5088 48, -1, 50, 51, -1, -1, -1, -1, 56, -1,
5089 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
5090 68, -1, 70, 71, 72, 73, 74, -1, -1, -1,
5091 78, 79, 80, 81, 82, 83, 84, -1, 86, -1,
5092 88, -1, -1, -1, 92, 93, 94, 95, -1, 97,
5093 -1, 99, -1, 101, -1, -1, 104, 105, -1, -1,
5094 -1, 109, 110, 111, 112, -1, 114, 115, -1, 117,
5095 -1, -1, 120, 121, 122, 123, 124, 125, 126, -1,
5096 128, 129, 130, -1, 132, 133, -1, -1, -1, -1,
5097 -1, 139, 140, 141, 142, 143, 144, 145, -1, 147,
5098 148, 149, 150, 151, -1, -1, -1, 155, -1, -1,
5099 158, -1, -1, -1, -1, 163, 164, 165, 166, 167,
5100 -1, 169, 170, -1, 172, 173, 174, 175, -1, -1,
5101 178, -1, -1, 181, -1, -1, -1, -1, -1, 187,
5102 188, -1, -1, -1, -1, 193, 194, 195, -1, -1,
5103 198, 199, -1, 201, 202, 203, -1, 205, 206, 207,
5104 208, 3, 4, 5, 6, 7, -1, -1, -1, -1,
5105 -1, 13, -1, -1, -1, -1, -1, -1, -1, -1,
5106 -1, -1, -1, -1, -1, 27, 28, 29, -1, -1,
5107 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5108 -1, -1, -1, -1, -1, -1, 48, -1, 50, 51,
5109 -1, -1, -1, -1, 56, -1, 58, 59, 60, 61,
5110 62, 63, 64, 65, 66, 67, 68, -1, 70, 71,
5111 72, 73, 74, -1, -1, -1, 78, 79, 80, 81,
5112 82, 83, 84, -1, 86, -1, 88, -1, -1, -1,
5113 92, 93, 94, 95, -1, 97, -1, 99, -1, 101,
5114 -1, -1, 104, 105, -1, -1, -1, 109, 110, 111,
5115 112, -1, 114, 115, -1, 117, -1, -1, 120, 121,
5116 122, 123, 124, 125, 126, -1, 128, 129, 130, -1,
5117 132, 133, -1, -1, -1, -1, -1, 139, 140, 141,
5118 142, 143, 144, 145, -1, 147, 148, 149, 150, 151,
5119 -1, -1, -1, 155, -1, -1, 158, -1, -1, -1,
5120 -1, 163, 164, 165, 166, 167, -1, 169, 170, -1,
5121 172, 173, 174, 175, -1, -1, 178, -1, -1, 181,
5122 -1, -1, -1, -1, -1, 187, 188, -1, -1, -1,
5123 -1, 193, 194, 195, -1, -1, 198, 199, -1, 201,
5124 202, 203, -1, 205, 206, 207, 208, 3, 4, 5,
5125 6, 7, -1, -1, -1, -1, -1, 13, -1, -1,
5126 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5127 -1, 27, 28, 29, -1, -1, -1, -1, -1, -1,
5128 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5129 -1, -1, 48, -1, 50, 51, -1, -1, -1, -1,
5130 56, -1, 58, 59, 60, 61, 62, 63, 64, 65,
5131 66, 67, 68, -1, 70, 71, 72, 73, 74, -1,
5132 -1, -1, 78, 79, 80, 81, 82, 83, 84, -1,
5133 86, -1, 88, -1, -1, -1, 92, 93, 94, 95,
5134 -1, 97, -1, 99, -1, 101, -1, -1, 104, 105,
5135 -1, -1, -1, 109, 110, 111, 112, -1, 114, 115,
5136 -1, 117, -1, -1, 120, 121, 122, 123, 124, 125,
5137 126, -1, 128, 129, 130, -1, 132, 133, -1, -1,
5138 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
5139 -1, 147, 148, 149, 150, 151, -1, -1, -1, 155,
5140 -1, -1, 158, -1, -1, -1, -1, 163, 164, 165,
5141 166, 167, -1, 169, 170, -1, 172, 173, 174, 175,
5142 -1, -1, 178, -1, -1, 181, -1, -1, -1, -1,
5143 -1, 187, 188, -1, -1, -1, -1, 193, 194, 195,
5144 -1, -1, 198, 199, -1, 201, 202, 203, -1, 205,
5145 206, 207, 208, 3, 4, 5, 6, 7, -1, -1,
5146 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
5147 -1, -1, -1, -1, -1, -1, -1, 27, 28, 29,
5148 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
5149 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5150 50, 51, -1, -1, -1, -1, 56, -1, 58, 59,
5151 60, 61, 62, 63, 64, 65, 66, 67, 68, -1,
5152 70, 71, 72, 73, 74, -1, -1, -1, 78, 79,
5153 80, 81, 82, 83, 84, -1, 86, -1, 88, -1,
5154 -1, -1, 92, 93, 94, 95, -1, 97, -1, 99,
5155 -1, 101, -1, -1, 104, 105, -1, -1, -1, 109,
5156 110, 111, 112, -1, 114, 115, -1, 117, -1, -1,
5157 120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
5158 130, -1, -1, -1, -1, -1, -1, -1, -1, 139,
5159 140, 141, 142, 143, 144, 145, -1, 147, 148, 149,
5160 150, 151, -1, -1, -1, 155, -1, -1, 158, -1,
5161 -1, -1, -1, 163, 164, 165, 166, 167, -1, 169,
5162 170, -1, 172, 173, 174, -1, -1, -1, 178, -1,
5163 -1, 181, -1, -1, -1, -1, -1, 187, 188, -1,
5164 -1, -1, -1, 193, 194, 195, -1, -1, 198, 199,
5165 -1, 201, 202, -1, -1, 205, 206, 207, 208, 3,
5166 4, 5, 6, 7, -1, -1, -1, -1, -1, 13,
5167 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5168 -1, -1, -1, 27, 28, 29, -1, -1, 32, -1,
5169 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5170 -1, -1, -1, -1, -1, -1, 50, 51, -1, -1,
5171 -1, -1, 56, -1, 58, 59, 60, 61, 62, 63,
5172 64, 65, 66, 67, 68, -1, 70, 71, 72, 73,
5173 74, -1, -1, -1, 78, 79, 80, 81, 82, 83,
5174 84, -1, 86, -1, 88, -1, -1, -1, 92, 93,
5175 94, 95, -1, 97, -1, 99, -1, 101, -1, -1,
5176 104, 105, -1, -1, -1, 109, 110, 111, 112, -1,
5177 114, 115, -1, 117, -1, -1, 120, 121, 122, 123,
5178 124, 125, 126, -1, 128, 129, 130, -1, -1, -1,
5179 -1, -1, -1, -1, -1, 139, 140, 141, 142, 143,
5180 144, 145, -1, 147, 148, 149, 150, 151, -1, -1,
5181 -1, 155, -1, -1, 158, -1, -1, -1, -1, 163,
5182 164, 165, 166, 167, -1, 169, 170, -1, 172, 173,
5183 174, -1, -1, -1, 178, -1, -1, 181, -1, -1,
5184 -1, -1, -1, 187, 188, -1, -1, -1, -1, 193,
5185 194, 195, -1, -1, 198, 199, -1, 201, 202, -1,
5186 -1, 205, 206, 207, 208, 3, 4, 5, 6, 7,
5187 -1, -1, -1, -1, -1, 13, -1, -1, -1, -1,
5188 -1, -1, -1, -1, -1, -1, -1, -1, -1, 27,
5189 28, 29, -1, -1, 32, -1, -1, -1, -1, -1,
5190 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5191 -1, -1, 50, 51, -1, -1, -1, -1, 56, -1,
5192 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
5193 68, -1, 70, 71, 72, 73, 74, -1, -1, -1,
5194 78, 79, 80, 81, 82, 83, 84, -1, 86, -1,
5195 88, -1, -1, -1, 92, 93, 94, 95, -1, 97,
5196 -1, 99, -1, 101, -1, -1, 104, 105, -1, -1,
5197 -1, 109, 110, 111, 112, -1, 114, 115, -1, 117,
5198 -1, -1, 120, 121, 122, 123, 124, 125, 126, -1,
5199 128, 129, 130, -1, -1, -1, -1, -1, -1, -1,
5200 -1, 139, 140, 141, 142, 143, 144, 145, -1, 147,
5201 148, 149, 150, 151, -1, -1, -1, 155, -1, -1,
5202 158, -1, -1, -1, -1, 163, 164, 165, 166, 167,
5203 -1, 169, 170, -1, 172, 173, 174, -1, -1, -1,
5204 178, -1, -1, 181, -1, -1, -1, -1, -1, 187,
5205 188, -1, -1, -1, -1, 193, 194, 195, -1, -1,
5206 198, 199, -1, 201, 202, -1, -1, 205, 206, 207,
5207 208, 3, 4, 5, 6, 7, -1, -1, -1, -1,
5208 -1, 13, -1, -1, -1, -1, -1, -1, -1, -1,
5209 -1, -1, -1, -1, -1, 27, 28, 29, -1, -1,
5210 32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5211 -1, -1, -1, -1, -1, -1, -1, -1, 50, 51,
5212 -1, -1, -1, -1, 56, -1, 58, 59, 60, 61,
5213 62, 63, 64, 65, 66, 67, 68, -1, 70, 71,
5214 72, 73, 74, -1, -1, -1, 78, 79, 80, 81,
5215 82, 83, 84, -1, 86, -1, 88, -1, -1, -1,
5216 92, 93, 94, 95, -1, 97, -1, 99, -1, 101,
5217 -1, -1, 104, 105, -1, -1, -1, 109, 110, 111,
5218 112, -1, 114, 115, -1, 117, -1, -1, 120, 121,
5219 122, 123, 124, 125, 126, -1, 128, 129, 130, -1,
5220 -1, -1, -1, -1, -1, -1, -1, 139, 140, 141,
5221 142, 143, 144, 145, -1, 147, 148, 149, 150, 151,
5222 -1, -1, -1, 155, -1, -1, 158, -1, -1, -1,
5223 -1, 163, 164, 165, 166, 167, -1, 169, 170, -1,
5224 172, 173, 174, -1, -1, -1, 178, -1, -1, 181,
5225 -1, -1, -1, -1, -1, 187, 188, -1, -1, -1,
5226 -1, 193, 194, 195, -1, -1, 198, 199, -1, 201,
5227 202, -1, -1, 205, 206, 207, 208, 3, 4, 5,
5228 6, 7, -1, -1, -1, -1, -1, 13, -1, -1,
5229 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5230 -1, 27, 28, 29, -1, -1, 32, -1, -1, -1,
5231 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5232 -1, -1, -1, -1, 50, 51, -1, -1, -1, -1,
5233 56, -1, 58, 59, 60, 61, 62, 63, 64, 65,
5234 66, 67, 68, -1, 70, 71, 72, 73, 74, -1,
5235 -1, -1, 78, 79, 80, 81, 82, 83, 84, -1,
5236 86, -1, 88, -1, -1, -1, 92, 93, 94, 95,
5237 -1, 97, -1, 99, -1, 101, -1, -1, 104, 105,
5238 -1, -1, -1, 109, 110, 111, 112, -1, 114, 115,
5239 -1, 117, -1, -1, 120, 121, 122, 123, 124, 125,
5240 126, -1, 128, 129, 130, -1, -1, -1, -1, -1,
5241 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
5242 -1, 147, 148, 149, 150, 151, -1, -1, -1, 155,
5243 -1, -1, 158, -1, -1, -1, -1, 163, 164, 165,
5244 166, 167, -1, 169, 170, -1, 172, 173, 174, -1,
5245 -1, -1, 178, -1, -1, 181, -1, -1, -1, -1,
5246 -1, 187, 188, -1, -1, -1, -1, 193, 194, 195,
5247 -1, -1, 198, 199, -1, 201, 202, -1, -1, 205,
5248 206, 207, 208, 3, 4, 5, 6, 7, -1, -1,
5249 -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,
5250 -1, -1, -1, -1, -1, -1, -1, 27, 28, 29,
5251 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5252 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5253 50, 51, -1, -1, -1, -1, 56, -1, 58, 59,
5254 60, 61, 62, 63, 64, 65, 66, 67, 68, -1,
5255 70, 71, 72, 73, 74, -1, -1, -1, 78, 79,
5256 80, 81, 82, 83, 84, -1, 86, -1, 88, -1,
5257 -1, -1, 92, 93, 94, 95, -1, 97, -1, 99,
5258 -1, 101, -1, -1, 104, 105, -1, -1, -1, 109,
5259 110, 111, 112, -1, 114, 115, -1, 117, -1, -1,
5260 120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
5261 130, -1, -1, -1, -1, -1, -1, -1, -1, 139,
5262 140, 141, 142, 143, 144, 145, -1, 147, 148, 149,
5263 150, 151, -1, -1, -1, 155, -1, -1, 158, -1,
5264 -1, -1, -1, 163, 164, 165, 166, 167, -1, 169,
5265 170, -1, 172, 173, 174, -1, -1, -1, 178, -1,
5266 -1, 181, -1, -1, -1, -1, -1, 187, 188, -1,
5267 -1, -1, -1, 193, 194, 195, -1, -1, 198, 199,
5268 -1, 201, 202, -1, -1, 205, 206, 207, 208, 3,
5269 4, 5, 6, 7, -1, -1, -1, -1, -1, 13,
5270 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5271 -1, -1, -1, 27, -1, 29, -1, -1, -1, -1,
5272 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5273 -1, -1, -1, -1, -1, -1, 50, 51, -1, -1,
5274 -1, -1, 56, -1, 58, 59, 60, 61, 62, 63,
5275 64, 65, 66, 67, 68, -1, 70, 71, 72, 73,
5276 -1, -1, -1, -1, 78, 79, 80, 81, 82, 83,
5277 84, -1, -1, -1, -1, -1, -1, -1, 92, -1,
5278 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5279 104, -1, -1, -1, -1, -1, -1, -1, 112, -1,
5280 -1, -1, -1, -1, -1, -1, -1, 121, 122, 123,
5281 124, 125, 126, -1, -1, 129, 130, -1, -1, -1,
5282 -1, -1, -1, -1, -1, 139, 140, 141, 142, 143,
5283 144, 145, -1, 147, 148, 149, 150, 151, -1, -1,
5284 -1, -1, -1, -1, 158, -1, -1, -1, -1, 163,
5285 164, 165, 166, 167, -1, 169, 170, -1, 172, 173,
5286 174, -1, -1, -1, 178, -1, -1, 181, 3, 4,
5287 5, 6, 7, 187, 188, -1, -1, -1, 13, 193,
5288 194, 195, -1, -1, 198, 199, -1, 201, -1, -1,
5289 -1, 205, 206, 207, 208, -1, -1, -1, -1, -1,
5290 -1, -1, -1, 38, -1, -1, -1, -1, -1, -1,
5291 -1, -1, -1, -1, -1, 50, 51, -1, -1, -1,
5292 -1, 56, -1, 58, 59, 60, 61, 62, 63, 64,
5293 65, 66, 67, 68, -1, 70, 71, 72, 73, -1,
5294 -1, -1, -1, 78, 79, 80, 81, 82, 83, 84,
5295 -1, -1, 87, -1, -1, -1, -1, 92, -1, -1,
5296 -1, -1, -1, -1, -1, -1, -1, -1, -1, 104,
5297 -1, -1, -1, -1, -1, -1, -1, 112, -1, -1,
5298 -1, -1, -1, -1, -1, -1, 121, 122, 123, 124,
5299 125, 126, -1, -1, 129, 130, -1, -1, -1, -1,
5300 -1, -1, -1, -1, 139, 140, 141, 142, 143, 144,
5301 145, -1, 147, 148, 149, 150, 151, -1, -1, -1,
5302 -1, -1, -1, 158, -1, -1, -1, -1, 163, 164,
5303 165, 166, 167, -1, 169, 170, -1, 172, 173, 174,
5304 -1, 176, -1, 178, -1, -1, 181, 3, 4, 5,
5305 6, 7, 187, 188, -1, -1, -1, 13, 193, 194,
5306 195, -1, -1, 198, 199, -1, -1, -1, -1, -1,
5307 205, 206, 207, 208, -1, -1, -1, -1, -1, -1,
5308 -1, -1, 38, -1, -1, -1, -1, -1, -1, -1,
5309 -1, -1, -1, -1, 50, 51, -1, -1, -1, -1,
5310 56, -1, 58, 59, 60, 61, 62, 63, 64, 65,
5311 66, 67, 68, -1, 70, 71, 72, 73, -1, -1,
5312 -1, -1, 78, 79, 80, 81, 82, 83, 84, -1,
5313 -1, 87, -1, -1, -1, -1, 92, -1, -1, -1,
5314 -1, -1, -1, -1, -1, -1, -1, -1, 104, -1,
5315 -1, -1, -1, -1, -1, -1, 112, -1, -1, -1,
5316 -1, -1, -1, -1, -1, 121, 122, 123, 124, 125,
5317 126, -1, -1, 129, 130, -1, -1, -1, -1, -1,
5318 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
5319 -1, 147, 148, 149, 150, 151, -1, -1, -1, -1,
5320 -1, -1, 158, -1, -1, -1, -1, 163, 164, 165,
5321 166, 167, -1, 169, 170, -1, 172, 173, 174, -1,
5322 176, -1, 178, -1, -1, 181, -1, -1, -1, -1,
5323 -1, 187, 188, -1, -1, -1, -1, 193, 194, 195,
5324 -1, -1, 198, 199, 3, 4, 5, 6, 7, 205,
5325 206, 207, 208, -1, 13, -1, -1, -1, -1, -1,
5326 -1, -1, -1, -1, -1, -1, -1, -1, 27, 28,
5327 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5328 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5329 -1, 50, 51, -1, -1, -1, -1, 56, -1, 58,
5330 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
5331 -1, 70, 71, 72, 73, -1, -1, -1, -1, 78,
5332 79, 80, 81, 82, 83, 84, -1, -1, -1, -1,
5333 -1, -1, -1, 92, -1, -1, -1, -1, -1, -1,
5334 -1, -1, -1, -1, -1, 104, -1, -1, -1, -1,
5335 -1, -1, -1, 112, -1, -1, -1, -1, -1, -1,
5336 -1, -1, 121, 122, 123, 124, 125, 126, -1, -1,
5337 129, 130, -1, -1, -1, -1, -1, -1, -1, -1,
5338 139, 140, 141, 142, 143, 144, 145, -1, 147, 148,
5339 149, 150, 151, -1, -1, -1, -1, -1, -1, 158,
5340 -1, -1, -1, -1, 163, 164, 165, 166, 167, -1,
5341 169, 170, -1, 172, 173, 174, -1, -1, -1, 178,
5342 -1, -1, 181, -1, -1, -1, -1, -1, 187, 188,
5343 -1, -1, -1, -1, 193, 194, 195, -1, -1, 198,
5344 199, 3, 4, 5, 6, 7, 205, 206, 207, 208,
5345 -1, 13, -1, -1, -1, -1, -1, -1, -1, -1,
5346 -1, -1, -1, -1, -1, 27, -1, -1, -1, -1,
5347 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5348 -1, -1, -1, -1, -1, -1, -1, -1, 50, 51,
5349 -1, -1, -1, -1, 56, -1, 58, 59, 60, 61,
5350 62, 63, 64, 65, 66, 67, 68, -1, 70, 71,
5351 72, 73, -1, -1, -1, -1, 78, 79, 80, 81,
5352 82, 83, 84, -1, -1, -1, -1, -1, -1, -1,
5353 92, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5354 -1, -1, 104, -1, -1, -1, -1, -1, -1, -1,
5355 112, -1, -1, -1, -1, -1, -1, -1, -1, 121,
5356 122, 123, 124, 125, 126, -1, -1, 129, 130, -1,
5357 -1, -1, -1, -1, -1, -1, -1, 139, 140, 141,
5358 142, 143, 144, 145, -1, 147, 148, 149, 150, 151,
5359 -1, -1, -1, -1, -1, -1, 158, -1, -1, -1,
5360 -1, 163, 164, 165, 166, 167, -1, 169, 170, -1,
5361 172, 173, 174, -1, -1, -1, 178, -1, -1, 181,
5362 -1, -1, -1, -1, -1, 187, 188, -1, -1, -1,
5363 -1, 193, 194, 195, -1, -1, 198, 199, -1, -1,
5364 202, -1, -1, 205, 206, 207, 208, 3, 4, 5,
5365 6, 7, -1, -1, -1, -1, -1, 13, -1, -1,
5366 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5367 -1, 27, -1, -1, -1, -1, -1, -1, -1, -1,
5368 -1, -1, 38, -1, -1, -1, -1, -1, -1, -1,
5369 -1, -1, -1, -1, 50, 51, -1, -1, -1, -1,
5370 56, -1, 58, 59, 60, 61, 62, 63, 64, 65,
5371 66, 67, 68, -1, 70, 71, 72, 73, -1, -1,
5372 -1, -1, 78, 79, 80, 81, 82, 83, 84, -1,
5373 -1, -1, -1, -1, -1, -1, 92, -1, -1, -1,
5374 -1, -1, -1, -1, -1, -1, -1, -1, 104, -1,
5375 -1, -1, -1, -1, -1, -1, 112, -1, -1, -1,
5376 -1, -1, -1, -1, -1, 121, 122, 123, 124, 125,
5377 126, -1, -1, 129, 130, -1, -1, -1, -1, -1,
5378 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
5379 -1, 147, 148, 149, 150, 151, -1, -1, -1, -1,
5380 -1, -1, 158, -1, -1, -1, -1, 163, 164, 165,
5381 166, 167, -1, 169, 170, -1, 172, 173, 174, -1,
5382 -1, -1, 178, -1, -1, 181, 3, 4, 5, 6,
5383 7, 187, 188, -1, -1, -1, 13, 193, 194, 195,
5384 -1, -1, 198, 199, -1, -1, -1, -1, -1, 205,
5385 206, 207, 208, -1, -1, -1, -1, -1, -1, -1,
5386 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5387 -1, -1, -1, 50, 51, -1, -1, -1, -1, 56,
5388 -1, 58, 59, 60, 61, 62, 63, 64, 65, 66,
5389 67, 68, -1, 70, 71, 72, 73, -1, -1, -1,
5390 -1, 78, 79, 80, 81, 82, 83, 84, -1, -1,
5391 -1, -1, -1, -1, -1, 92, -1, -1, -1, -1,
5392 -1, -1, -1, -1, -1, -1, -1, 104, -1, -1,
5393 -1, -1, 109, -1, -1, 112, -1, -1, -1, -1,
5394 -1, -1, -1, -1, 121, 122, 123, 124, 125, 126,
5395 -1, -1, 129, 130, -1, -1, -1, -1, -1, -1,
5396 -1, -1, 139, 140, 141, 142, 143, 144, 145, -1,
5397 147, 148, 149, 150, 151, -1, -1, -1, -1, -1,
5398 -1, 158, -1, -1, -1, -1, 163, 164, 165, 166,
5399 167, -1, 169, 170, -1, 172, 173, 174, -1, -1,
5400 -1, 178, -1, -1, 181, 3, 4, 5, 6, 7,
5401 187, 188, -1, -1, -1, 13, 193, 194, 195, -1,
5402 -1, 198, 199, -1, -1, -1, -1, -1, 205, 206,
5403 207, 208, -1, -1, -1, -1, -1, -1, -1, -1,
5404 38, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5405 -1, -1, 50, 51, -1, -1, -1, -1, 56, -1,
5406 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
5407 68, -1, 70, 71, 72, 73, -1, -1, -1, -1,
5408 78, 79, 80, 81, 82, 83, 84, -1, -1, -1,
5409 -1, -1, -1, -1, 92, -1, -1, -1, -1, -1,
5410 -1, -1, -1, -1, -1, -1, 104, -1, -1, -1,
5411 -1, -1, -1, -1, 112, -1, -1, -1, -1, -1,
5412 -1, -1, -1, 121, 122, 123, 124, 125, 126, -1,
5413 -1, 129, 130, -1, -1, -1, -1, -1, -1, -1,
5414 -1, 139, 140, 141, 142, 143, 144, 145, -1, 147,
5415 148, 149, 150, 151, -1, -1, -1, -1, -1, -1,
5416 158, -1, -1, -1, -1, 163, 164, 165, 166, 167,
5417 -1, 169, 170, -1, 172, 173, 174, -1, -1, -1,
5418 178, -1, -1, 181, 3, 4, 5, 6, 7, 187,
5419 188, -1, -1, -1, 13, 193, 194, 195, -1, -1,
5420 198, 199, -1, -1, -1, -1, -1, 205, 206, 207,
5421 208, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5422 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5423 -1, 50, 51, -1, -1, -1, -1, 56, -1, 58,
5424 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
5425 -1, 70, 71, 72, 73, -1, -1, -1, -1, 78,
5426 79, 80, 81, 82, 83, 84, -1, -1, -1, -1,
5427 -1, -1, -1, 92, -1, -1, -1, -1, -1, -1,
5428 -1, -1, -1, -1, -1, 104, -1, -1, -1, -1,
5429 -1, -1, -1, 112, -1, -1, -1, -1, -1, -1,
5430 -1, -1, 121, 122, 123, 124, 125, 126, -1, -1,
5431 129, 130, -1, -1, -1, -1, -1, -1, -1, -1,
5432 139, 140, 141, 142, 143, 144, 145, -1, 147, 148,
5433 149, 150, 151, -1, -1, -1, -1, -1, -1, 158,
5434 -1, -1, -1, -1, 163, 164, 165, 166, 167, -1,
5435 169, 170, -1, 172, 173, 174, -1, -1, -1, 178,
5436 -1, -1, 181, 3, 4, 5, 6, 7, 187, 188,
5437 -1, -1, -1, 13, 193, 194, 195, -1, -1, 198,
5438 199, -1, 201, -1, -1, -1, 205, 206, 207, 208,
5439 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5440 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5441 50, 51, -1, -1, -1, -1, 56, -1, 58, 59,
5442 60, 61, 62, 63, 64, 65, 66, 67, 68, -1,
5443 70, 71, 72, 73, -1, -1, -1, -1, 78, 79,
5444 80, 81, 82, 83, 84, -1, -1, -1, -1, -1,
5445 -1, -1, 92, -1, -1, -1, -1, -1, -1, -1,
5446 -1, -1, -1, -1, 104, -1, -1, -1, -1, -1,
5447 -1, -1, 112, -1, -1, -1, -1, -1, -1, -1,
5448 -1, 121, 122, 123, 124, 125, 126, -1, -1, 129,
5449 130, -1, -1, -1, -1, -1, -1, -1, -1, 139,
5450 140, 141, 142, 143, 144, 145, -1, 147, 148, 149,
5451 150, 151, -1, -1, -1, -1, -1, -1, 158, -1,
5452 -1, -1, -1, 163, 164, 165, 166, 167, -1, 169,
5453 170, -1, 172, 173, 174, -1, -1, -1, 178, -1,
5454 -1, 181, -1, -1, -1, -1, -1, 187, 188, -1,
5455 -1, -1, -1, 193, 194, 195, -1, -1, 198, 199,
5456 -1, 201, -1, -1, -1, 205, 206, 207, 208, 3,
5457 4, 5, 6, 7, -1, -1, -1, -1, -1, 13,
5458 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5459 -1, -1, -1, -1, 28, -1, -1, -1, -1, -1,
5460 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5461 -1, -1, -1, -1, -1, -1, 50, 51, -1, -1,
5462 -1, -1, 56, -1, 58, 59, 60, 61, 62, 63,
5463 64, 65, 66, 67, 68, -1, 70, 71, 72, 73,
5464 -1, -1, -1, -1, 78, 79, 80, 81, 82, 83,
5465 84, -1, -1, -1, -1, -1, -1, -1, 92, -1,
5466 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5467 104, -1, -1, -1, -1, -1, -1, -1, 112, -1,
5468 -1, -1, -1, -1, -1, -1, -1, 121, 122, 123,
5469 124, 125, 126, -1, -1, 129, 130, -1, -1, -1,
5470 -1, -1, -1, -1, -1, 139, 140, 141, 142, 143,
5471 144, 145, -1, 147, 148, 149, 150, 151, -1, -1,
5472 -1, -1, -1, -1, 158, -1, -1, -1, -1, 163,
5473 164, 165, 166, 167, -1, 169, 170, -1, 172, 173,
5474 174, -1, -1, -1, 178, -1, -1, 181, 3, 4,
5475 5, 6, 7, 187, 188, -1, -1, -1, 13, 193,
5476 194, 195, -1, -1, 198, 199, -1, -1, -1, -1,
5477 -1, 205, 206, 207, 208, -1, -1, -1, -1, -1,
5478 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5479 -1, -1, -1, -1, -1, 50, 51, -1, -1, -1,
5480 -1, 56, -1, 58, 59, 60, 61, 62, 63, 64,
5481 65, 66, 67, 68, -1, 70, 71, 72, 73, -1,
5482 -1, -1, -1, 78, 79, 80, 81, 82, 83, 84,
5483 -1, -1, -1, -1, -1, -1, -1, 92, -1, -1,
5484 -1, -1, -1, -1, -1, -1, -1, -1, -1, 104,
5485 -1, -1, -1, -1, -1, -1, -1, 112, -1, -1,
5486 -1, -1, -1, -1, -1, -1, 121, 122, 123, 124,
5487 125, 126, -1, -1, 129, 130, -1, -1, -1, -1,
5488 -1, -1, -1, -1, 139, 140, 141, 142, 143, 144,
5489 145, -1, 147, 148, 149, 150, 151, -1, -1, -1,
5490 -1, -1, -1, 158, -1, -1, -1, -1, 163, 164,
5491 165, 166, 167, -1, 169, 170, -1, 172, 173, 174,
5492 -1, -1, -1, 178, -1, -1, 181, -1, -1, -1,
5493 -1, -1, 187, 188, -1, -1, -1, -1, 193, 194,
5494 195, -1, -1, 198, 199, 200, -1, -1, -1, -1,
5495 205, 206, 207, 208, 3, 4, 5, 6, 7, -1,
5496 -1, -1, -1, -1, 13, -1, -1, -1, -1, -1,
5497 -1, -1, -1, -1, -1, -1, -1, -1, 27, -1,
5498 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5499 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5500 -1, 50, 51, -1, -1, -1, -1, 56, -1, 58,
5501 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
5502 -1, 70, 71, 72, 73, -1, -1, -1, -1, 78,
5503 79, 80, 81, 82, 83, 84, -1, -1, -1, -1,
5504 -1, -1, -1, 92, -1, -1, -1, -1, -1, -1,
5505 -1, -1, -1, -1, -1, 104, -1, -1, -1, -1,
5506 -1, -1, -1, 112, -1, -1, -1, -1, -1, -1,
5507 -1, -1, 121, 122, 123, 124, 125, 126, -1, -1,
5508 129, 130, -1, -1, -1, -1, -1, -1, -1, -1,
5509 139, 140, 141, 142, 143, 144, 145, -1, 147, 148,
5510 149, 150, 151, -1, -1, -1, -1, -1, -1, 158,
5511 -1, -1, -1, -1, 163, 164, 165, 166, 167, -1,
5512 169, 170, -1, 172, 173, 174, -1, -1, -1, 178,
5513 -1, -1, 181, 3, 4, 5, 6, 7, 187, 188,
5514 -1, -1, -1, 13, 193, 194, 195, -1, -1, 198,
5515 199, -1, -1, -1, -1, -1, 205, 206, 207, 208,
5516 -1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
5517 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5518 50, 51, -1, -1, -1, -1, 56, -1, 58, 59,
5519 60, 61, 62, 63, 64, 65, 66, 67, 68, -1,
5520 70, 71, 72, 73, -1, -1, -1, -1, 78, 79,
5521 80, 81, 82, 83, 84, -1, -1, -1, -1, -1,
5522 -1, -1, 92, -1, -1, -1, -1, -1, -1, -1,
5523 -1, -1, -1, -1, 104, -1, -1, -1, -1, -1,
5524 -1, -1, 112, -1, -1, -1, -1, -1, -1, -1,
5525 -1, 121, 122, 123, 124, 125, 126, -1, -1, 129,
5526 130, -1, -1, -1, -1, -1, -1, -1, -1, 139,
5527 140, 141, 142, 143, 144, 145, -1, 147, 148, 149,
5528 150, 151, -1, -1, -1, -1, -1, -1, 158, -1,
5529 -1, -1, -1, 163, 164, 165, 166, 167, -1, 169,
5530 170, -1, 172, 173, 174, -1, -1, -1, 178, -1,
5531 -1, 181, 3, 4, 5, 6, 7, 187, 188, -1,
5532 -1, -1, 13, 193, 194, 195, -1, -1, 198, 199,
5533 -1, -1, -1, -1, -1, 205, 206, 207, 208, -1,
5534 -1, -1, -1, -1, -1, -1, -1, 38, -1, -1,
5535 -1, -1, -1, -1, -1, -1, -1, -1, -1, 50,
5536 51, -1, -1, -1, -1, 56, -1, 58, 59, 60,
5537 61, 62, 63, 64, 65, 66, 67, 68, -1, 70,
5538 71, 72, 73, -1, -1, -1, -1, 78, 79, 80,
5539 81, 82, 83, 84, -1, -1, -1, -1, -1, -1,
5540 -1, 92, -1, -1, -1, -1, -1, -1, -1, -1,
5541 -1, -1, -1, 104, -1, -1, -1, -1, -1, -1,
5542 -1, 112, -1, -1, -1, -1, -1, -1, -1, -1,
5543 121, 122, 123, 124, 125, 126, -1, -1, 129, 130,
5544 -1, -1, -1, -1, -1, -1, -1, -1, 139, 140,
5545 141, 142, 143, 144, 145, -1, 147, 148, 149, 150,
5546 151, -1, -1, -1, -1, -1, -1, 158, -1, -1,
5547 -1, -1, 163, 164, 165, 166, 167, -1, 169, 170,
5548 -1, 172, 173, 174, -1, -1, -1, 178, -1, -1,
5549 181, 3, 4, 5, 6, 7, 187, 188, -1, -1,
5550 -1, 13, 193, 194, 195, -1, -1, 198, 199, -1,
5551 -1, -1, -1, -1, 205, 206, 207, 208, -1, -1,
5552 -1, -1, -1, -1, -1, -1, 38, -1, -1, -1,
5553 -1, -1, -1, -1, -1, -1, -1, -1, 50, 51,
5554 -1, -1, -1, -1, 56, -1, 58, 59, 60, 61,
5555 62, 63, 64, 65, 66, 67, 68, -1, 70, 71,
5556 72, 73, -1, -1, -1, -1, 78, 79, 80, 81,
5557 82, 83, 84, -1, -1, -1, -1, -1, -1, -1,
5558 92, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5559 -1, -1, 104, -1, -1, -1, -1, -1, -1, -1,
5560 112, -1, -1, -1, -1, -1, -1, -1, -1, 121,
5561 122, 123, 124, 125, 126, -1, -1, 129, 130, -1,
5562 -1, -1, -1, -1, -1, -1, -1, 139, 140, 141,
5563 142, 143, 144, 145, -1, 147, 148, 149, 150, 151,
5564 -1, -1, -1, -1, -1, -1, 158, -1, -1, -1,
5565 -1, 163, 164, 165, 166, 167, -1, 169, 170, -1,
5566 172, 173, 174, -1, -1, -1, 178, -1, -1, 181,
5567 3, 4, 5, 6, 7, 187, 188, -1, -1, -1,
5568 13, 193, 194, 195, -1, -1, 198, 199, -1, -1,
5569 -1, -1, -1, 205, 206, 207, 208, -1, -1, -1,
5570 -1, -1, -1, -1, -1, 38, -1, -1, -1, -1,
5571 -1, -1, -1, -1, -1, -1, -1, 50, 51, -1,
5572 -1, -1, -1, 56, -1, 58, 59, 60, 61, 62,
5573 63, 64, 65, 66, 67, 68, -1, 70, 71, 72,
5574 73, -1, -1, -1, -1, 78, 79, 80, 81, 82,
5575 83, 84, -1, -1, -1, -1, -1, -1, -1, 92,
5576 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5577 -1, 104, -1, -1, -1, -1, -1, -1, -1, 112,
5578 -1, -1, -1, -1, -1, -1, -1, -1, 121, 122,
5579 123, 124, 125, 126, -1, -1, 129, 130, -1, -1,
5580 -1, -1, -1, -1, -1, -1, 139, 140, 141, 142,
5581 143, 144, 145, -1, 147, 148, 149, 150, 151, -1,
5582 -1, -1, -1, -1, -1, 158, -1, -1, -1, -1,
5583 163, 164, 165, 166, 167, -1, 169, 170, -1, 172,
5584 173, 174, -1, -1, -1, 178, -1, -1, 181, 3,
5585 4, 5, 6, 7, 187, 188, -1, -1, -1, 13,
5586 193, 194, 195, -1, -1, 198, 199, -1, -1, -1,
5587 -1, -1, 205, 206, 207, 208, -1, -1, -1, -1,
5588 -1, -1, -1, -1, 38, -1, -1, -1, -1, -1,
5589 -1, -1, -1, -1, -1, -1, 50, 51, -1, -1,
5590 -1, -1, 56, -1, 58, 59, 60, 61, 62, 63,
5591 64, 65, 66, 67, 68, -1, 70, 71, 72, 73,
5592 -1, -1, -1, -1, 78, 79, 80, 81, 82, 83,
5593 84, -1, -1, -1, -1, -1, -1, -1, 92, -1,
5594 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5595 104, -1, -1, -1, -1, -1, -1, -1, 112, -1,
5596 -1, -1, -1, -1, -1, -1, -1, 121, 122, 123,
5597 124, 125, 126, -1, -1, 129, 130, -1, -1, -1,
5598 -1, -1, -1, -1, -1, 139, 140, 141, 142, 143,
5599 144, 145, -1, 147, 148, 149, 150, 151, -1, -1,
5600 -1, -1, -1, -1, 158, -1, -1, -1, -1, 163,
5601 164, 165, 166, 167, -1, 169, 170, -1, 172, 173,
5602 174, -1, -1, -1, 178, -1, -1, 181, -1, -1,
5603 -1, -1, -1, 187, 188, -1, -1, -1, -1, 193,
5604 194, 195, -1, -1, 198, 199, 3, 4, 5, 6,
5605 7, 205, 206, 207, 208, -1, 13, -1, -1, -1,
5606 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5607 27, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5608 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5609 -1, -1, -1, 50, 51, -1, -1, -1, -1, 56,
5610 -1, 58, 59, 60, 61, 62, 63, 64, 65, 66,
5611 67, 68, -1, 70, 71, 72, 73, -1, -1, -1,
5612 -1, 78, 79, 80, 81, 82, 83, 84, -1, -1,
5613 -1, -1, -1, -1, -1, 92, -1, -1, -1, -1,
5614 -1, -1, -1, -1, -1, -1, -1, 104, -1, -1,
5615 -1, -1, -1, -1, -1, 112, -1, -1, -1, -1,
5616 -1, -1, -1, -1, 121, 122, 123, 124, 125, 126,
5617 -1, -1, 129, 130, -1, -1, -1, -1, -1, -1,
5618 -1, -1, 139, 140, 141, 142, 143, 144, 145, -1,
5619 147, 148, 149, 150, 151, -1, -1, -1, -1, -1,
5620 -1, 158, -1, -1, -1, -1, 163, 164, 165, 166,
5621 167, -1, 169, 170, -1, 172, 173, 174, -1, -1,
5622 -1, 178, -1, -1, 181, 3, 4, 5, 6, 7,
5623 187, 188, -1, -1, -1, 13, 193, 194, 195, -1,
5624 -1, 198, 199, -1, -1, -1, -1, -1, 205, 206,
5625 207, 208, -1, -1, -1, -1, -1, -1, -1, -1,
5626 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5627 -1, -1, 50, 51, -1, -1, -1, -1, 56, -1,
5628 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
5629 68, -1, 70, 71, 72, 73, -1, -1, -1, -1,
5630 78, 79, 80, 81, 82, 83, 84, -1, -1, -1,
5631 -1, -1, -1, -1, 92, -1, -1, -1, -1, -1,
5632 -1, -1, -1, -1, -1, -1, 104, -1, -1, -1,
5633 -1, -1, -1, -1, 112, -1, -1, -1, -1, -1,
5634 -1, -1, -1, 121, 122, 123, 124, 125, 126, -1,
5635 -1, 129, 130, -1, -1, -1, -1, -1, -1, -1,
5636 -1, 139, 140, 141, 142, 143, 144, 145, -1, 147,
5637 148, 149, 150, 151, -1, -1, -1, -1, -1, -1,
5638 158, -1, -1, -1, -1, 163, 164, 165, 166, 167,
5639 -1, 169, 170, -1, 172, 173, 174, -1, -1, -1,
5640 178, -1, -1, 181, 3, 4, 5, 6, 7, 187,
5641 188, -1, -1, -1, 13, 193, 194, 195, -1, -1,
5642 198, 199, -1, -1, -1, -1, -1, 205, 206, 207,
5643 208, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5644 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5645 -1, 50, 51, -1, -1, -1, -1, 56, -1, 58,
5646 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
5647 -1, 70, 71, 72, 73, -1, -1, -1, -1, 78,
5648 79, 80, 81, 82, 83, 84, -1, -1, -1, -1,
5649 -1, -1, -1, 92, -1, -1, -1, -1, -1, -1,
5650 -1, -1, -1, -1, -1, 104, -1, -1, -1, -1,
5651 -1, -1, -1, 112, -1, -1, -1, -1, -1, -1,
5652 -1, -1, 121, 122, 123, 124, 125, 126, -1, -1,
5653 129, 130, -1, -1, -1, -1, -1, -1, -1, -1,
5654 139, 140, 141, 142, 143, 144, 145, -1, 147, 148,
5655 149, 150, 151, -1, -1, -1, -1, -1, -1, 158,
5656 -1, -1, -1, -1, 163, 164, 165, 166, 167, -1,
5657 169, 170, -1, 172, 173, 174, -1, 3, 4, 178,
5658 6, 7, 181, -1, 10, 11, 12, 13, 187, 188,
5659 -1, -1, -1, -1, 193, 194, 195, -1, -1, 198,
5660 199, -1, 28, 29, -1, -1, 205, 206, 207, 208,
5661 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5662 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
5663 55, 57, 57, -1, -1, -1, -1, -1, -1, -1,
5664 -1, -1, -1, -1, 69, 71, 72, 73, 74, 75,
5665 76, 77, -1, -1, -1, 81, -1, 83, 84, -1,
5666 -1, 87, -1, -1, -1, -1, -1, 93, 94, 95,
5667 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
5668 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
5669 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
5670 126, 127, 128, -1, 130, -1, 132, 133, 134, 135,
5671 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
5672 146, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5673 -1, 3, 4, -1, 6, 7, -1, 163, 10, 11,
5674 12, 13, -1, 169, 170, -1, 172, 173, 174, 175,
5675 -1, 177, -1, -1, 180, -1, 28, 29, -1, 31,
5676 -1, -1, 188, -1, -1, -1, -1, -1, -1, -1,
5677 -1, -1, 198, -1, -1, -1, 202, -1, -1, 205,
5678 -1, -1, -1, -1, -1, 57, -1, -1, -1, -1,
5679 -1, -1, -1, -1, -1, -1, 68, -1, -1, 71,
5680 72, 73, 74, 75, 76, 77, -1, -1, -1, 81,
5681 -1, -1, -1, -1, -1, 87, -1, -1, -1, -1,
5682 -1, 93, 94, 95, 96, 97, 98, 99, 100, 101,
5683 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
5684 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
5685 122, 123, 124, 125, 126, 127, 128, -1, 130, -1,
5686 -1, 133, 134, 135, -1, -1, -1, 139, 140, 141,
5687 142, 143, 144, 145, 146, -1, -1, -1, -1, -1,
5688 -1, 81, -1, -1, -1, -1, -1, -1, -1, -1,
5689 -1, 163, -1, -1, 166, 167, -1, 169, 170, -1,
5690 172, 173, 174, 175, 104, 177, -1, -1, 180, -1,
5691 3, 4, -1, 6, 7, 187, 188, 10, 11, 12,
5692 13, -1, -1, -1, -1, -1, 198, 199, -1, -1,
5693 -1, 203, -1, -1, -1, 28, 29, -1, 31, -1,
5694 -1, 141, 142, 143, 144, 145, 38, 39, 40, 41,
5695 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
5696 52, 53, 54, 55, 57, -1, 166, -1, -1, 169,
5697 170, -1, 172, 173, 174, 68, -1, 69, 71, 72,
5698 73, 74, 75, 76, 77, -1, -1, -1, 81, -1,
5699 -1, -1, -1, -1, 87, -1, -1, -1, 198, -1,
5700 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
5701 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
5702 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
5703 123, 124, 125, 126, 127, 128, -1, 130, -1, -1,
5704 133, 134, 135, -1, -1, -1, 139, 140, 141, 142,
5705 143, 144, 145, 146, -1, -1, -1, -1, -1, -1,
5706 81, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5707 163, -1, -1, 166, 167, -1, 169, 170, -1, 172,
5708 173, 174, 175, 104, 177, -1, -1, 180, -1, 3,
5709 4, -1, 6, 7, 187, 188, 10, 11, 12, 13,
5710 -1, -1, -1, -1, -1, 198, 199, -1, -1, -1,
5711 203, -1, -1, -1, 28, 29, -1, 31, -1, -1,
5712 141, 142, 143, 144, 145, -1, 39, 40, 41, 42,
5713 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
5714 53, 54, 55, 57, 57, 166, -1, -1, 169, 170,
5715 -1, 172, 173, 174, 68, -1, 69, 71, 72, 73,
5716 74, 75, 76, 77, -1, -1, -1, 81, -1, -1,
5717 -1, -1, -1, 87, -1, -1, -1, 198, -1, 93,
5718 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
5719 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
5720 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
5721 124, 125, 126, 127, 128, -1, 130, -1, 132, 133,
5722 134, 135, -1, -1, -1, 139, 140, 141, 142, 143,
5723 144, 145, 146, -1, -1, -1, -1, -1, -1, 81,
5724 -1, -1, -1, -1, -1, -1, -1, -1, -1, 163,
5725 -1, -1, 166, 167, -1, 169, 170, -1, 172, 173,
5726 174, 175, 104, 177, -1, -1, 180, -1, 3, 4,
5727 -1, 6, 7, 187, 188, 10, 11, 12, 13, -1,
5728 -1, -1, -1, -1, 198, 199, -1, -1, -1, -1,
5729 -1, -1, -1, 28, 29, -1, 31, -1, -1, 141,
5730 142, 143, 144, 145, -1, 39, 40, 41, 42, 43,
5731 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
5732 54, 55, 57, 57, -1, -1, -1, 169, 170, -1,
5733 172, 173, 174, 68, -1, 69, 71, 72, 73, 74,
5734 75, 76, 77, -1, -1, -1, 81, -1, -1, -1,
5735 -1, -1, 87, -1, -1, -1, 198, -1, 93, 94,
5736 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
5737 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
5738 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
5739 125, 126, 127, 128, -1, 130, -1, -1, 133, 134,
5740 135, -1, -1, -1, 139, 140, 141, 142, 143, 144,
5741 145, 146, -1, -1, -1, -1, -1, -1, -1, -1,
5742 -1, -1, -1, -1, -1, -1, -1, -1, 163, -1,
5743 -1, 166, 167, -1, 169, 170, -1, 172, 173, 174,
5744 175, -1, 177, -1, -1, 180, -1, -1, -1, -1,
5745 -1, -1, 187, 188, 189, -1, -1, -1, 3, 4,
5746 -1, 6, 7, 198, 199, 10, 11, 12, 13, -1,
5747 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5748 -1, -1, -1, 28, 29, -1, 31, 31, -1, 33,
5749 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
5750 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
5751 54, 55, 57, 57, -1, -1, -1, -1, -1, -1,
5752 -1, -1, -1, 68, -1, 69, 71, 72, 73, 74,
5753 75, 76, 77, -1, -1, -1, 81, -1, -1, -1,
5754 -1, -1, 87, -1, -1, -1, -1, -1, 93, 94,
5755 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
5756 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
5757 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
5758 125, 126, 127, 128, -1, 130, -1, -1, 133, 134,
5759 135, -1, -1, -1, 139, 140, 141, 142, 143, 144,
5760 145, 146, -1, -1, -1, -1, -1, -1, -1, -1,
5761 -1, -1, -1, -1, -1, -1, -1, -1, 163, -1,
5762 -1, 166, 167, -1, 169, 170, -1, 172, 173, 174,
5763 175, -1, 177, -1, -1, 180, -1, 3, 4, 5,
5764 6, 7, 187, 188, 10, 11, 12, 13, -1, -1,
5765 -1, -1, -1, 198, 199, -1, -1, -1, -1, -1,
5766 -1, 27, 28, 29, -1, 30, 31, -1, 33, 34,
5767 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5768 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
5769 55, 57, 57, -1, -1, -1, -1, -1, -1, -1,
5770 -1, -1, -1, -1, 69, 71, 72, 73, 74, 75,
5771 76, 77, -1, -1, -1, 81, -1, -1, -1, -1,
5772 -1, 87, -1, -1, -1, -1, -1, 93, 94, 95,
5773 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
5774 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
5775 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
5776 126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
5777 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
5778 -1, 147, 148, 149, 150, 151, -1, -1, -1, -1,
5779 -1, -1, -1, -1, -1, -1, -1, 163, 164, 165,
5780 -1, -1, -1, 169, 170, -1, 172, 173, 174, 175,
5781 -1, 177, 178, -1, 180, -1, -1, -1, -1, -1,
5782 -1, 187, -1, 189, -1, 191, -1, 193, 194, -1,
5783 3, 4, 198, 6, 7, 12, -1, 10, 11, 12,
5784 13, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5785 -1, -1, -1, -1, 31, 28, 29, 34, 35, 36,
5786 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
5787 47, 48, 49, 50, 51, 52, 53, 54, 55, -1,
5788 -1, -1, -1, -1, 57, -1, -1, -1, -1, -1,
5789 -1, -1, 69, -1, -1, -1, -1, -1, 71, 72,
5790 73, 74, 75, 76, 77, -1, -1, -1, 81, -1,
5791 -1, -1, -1, -1, 87, -1, -1, -1, -1, -1,
5792 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
5793 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
5794 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
5795 123, 124, 125, 126, 127, 128, -1, 130, -1, 132,
5796 133, 134, 135, -1, -1, -1, 139, 140, 141, 142,
5797 143, 144, 145, 146, -1, -1, -1, -1, -1, -1,
5798 -1, -1, -1, -1, 3, 4, -1, 6, 7, -1,
5799 163, 10, 11, 12, 13, -1, 169, 170, -1, 172,
5800 173, 174, 175, -1, 177, -1, -1, 180, -1, 28,
5801 29, -1, -1, -1, -1, 188, -1, -1, -1, -1,
5802 -1, -1, -1, -1, -1, 198, -1, -1, -1, -1,
5803 -1, -1, -1, -1, -1, -1, -1, -1, 57, -1,
5804 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5805 -1, -1, 71, 72, 73, 74, 75, 76, 77, -1,
5806 -1, -1, 81, -1, -1, -1, -1, -1, 87, -1,
5807 -1, -1, -1, -1, 93, 94, 95, 96, 97, 98,
5808 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
5809 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
5810 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
5811 -1, 130, -1, 132, 133, 134, 135, -1, -1, -1,
5812 139, 140, 141, 142, 143, 144, 145, 146, -1, -1,
5813 -1, -1, -1, -1, -1, -1, -1, -1, 3, 4,
5814 -1, 6, 7, -1, 163, 10, 11, 12, 13, -1,
5815 169, 170, -1, 172, 173, 174, 175, -1, 177, -1,
5816 -1, 180, -1, 28, 29, -1, -1, -1, -1, 188,
5817 -1, -1, -1, -1, -1, -1, -1, -1, -1, 198,
5818 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5819 -1, -1, 57, -1, -1, -1, -1, -1, -1, -1,
5820 -1, -1, -1, -1, -1, -1, 71, 72, 73, 74,
5821 75, 76, 77, -1, -1, -1, 81, -1, -1, -1,
5822 -1, -1, 87, -1, -1, -1, -1, -1, 93, 94,
5823 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
5824 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
5825 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
5826 125, 126, 127, 128, -1, 130, -1, -1, 133, 134,
5827 135, -1, -1, -1, 139, 140, 141, 142, 143, 144,
5828 145, 146, -1, -1, -1, -1, -1, -1, -1, -1,
5829 -1, -1, -1, -1, -1, -1, -1, -1, 163, -1,
5830 -1, -1, -1, -1, 169, 170, -1, 172, 173, 174,
5831 175, -1, 177, -1, -1, 180, 10, 11, 12, -1,
5832 -1, -1, -1, 188, -1, -1, -1, -1, -1, -1,
5833 -1, -1, -1, 198, -1, -1, 30, 31, -1, 33,
5834 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
5835 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
5836 54, 55, -1, 57, 10, 11, 12, -1, -1, -1,
5837 -1, -1, -1, -1, -1, 69, -1, -1, -1, -1,
5838 -1, -1, -1, -1, 30, 31, -1, 33, 34, 35,
5839 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
5840 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
5841 -1, 57, 10, 11, 12, -1, -1, -1, -1, -1,
5842 -1, -1, -1, 69, -1, -1, -1, -1, -1, -1,
5843 -1, -1, 30, 31, -1, 33, 34, 35, 36, 37,
5844 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
5845 48, 49, 50, 51, 52, 53, 54, 55, -1, 57,
5846 10, 11, 12, -1, -1, -1, -1, -1, -1, -1,
5847 -1, 69, -1, -1, -1, -1, -1, -1, -1, -1,
5848 30, 31, -1, 33, 34, 35, 36, 37, 38, 39,
5849 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
5850 50, 51, 52, 53, 54, 55, -1, 57, -1, 203,
5851 -1, 10, 11, 12, -1, -1, -1, -1, -1, 69,
5852 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5853 -1, 30, 31, -1, 33, 34, 35, 36, 37, 38,
5854 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
5855 49, 50, 51, 52, 53, 54, 55, 203, 57, 10,
5856 11, 12, -1, -1, -1, -1, -1, -1, -1, -1,
5857 69, -1, -1, -1, -1, -1, -1, -1, -1, 30,
5858 31, -1, 33, 34, 35, 36, 37, 38, 39, 40,
5859 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
5860 51, 52, 53, 54, 55, 203, 57, 10, 11, 12,
5861 -1, -1, -1, -1, -1, -1, -1, -1, 69, -1,
5862 -1, -1, -1, -1, -1, -1, -1, 30, 31, -1,
5863 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
5864 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
5865 53, 54, 55, 203, 57, 10, 11, 12, -1, -1,
5866 -1, -1, -1, -1, -1, -1, 69, -1, -1, -1,
5867 -1, -1, -1, -1, -1, 30, 31, -1, 33, 34,
5868 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5869 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
5870 55, -1, 57, -1, 203, -1, 10, 11, 12, -1,
5871 -1, -1, -1, -1, 69, -1, -1, -1, -1, -1,
5872 -1, -1, -1, -1, -1, -1, 30, 31, -1, 33,
5873 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
5874 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
5875 54, 55, 203, 57, -1, -1, -1, -1, -1, -1,
5876 -1, -1, -1, -1, -1, 69, -1, -1, -1, -1,
5877 -1, -1, -1, -1, -1, -1, 10, 11, 12, -1,
5878 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5879 -1, -1, -1, -1, -1, -1, 30, 31, 201, 33,
5880 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
5881 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
5882 54, 55, -1, 57, 10, 11, 12, -1, -1, -1,
5883 -1, -1, -1, -1, -1, 69, -1, -1, -1, -1,
5884 -1, -1, -1, -1, 30, 31, 201, 33, 34, 35,
5885 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
5886 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
5887 -1, 57, -1, -1, -1, 10, 11, 12, -1, -1,
5888 -1, -1, -1, 69, -1, -1, 31, -1, -1, -1,
5889 -1, -1, -1, -1, -1, 30, 31, 201, 33, 34,
5890 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5891 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
5892 55, -1, 57, 68, -1, -1, -1, -1, -1, -1,
5893 -1, -1, -1, -1, 69, -1, 81, -1, -1, -1,
5894 -1, -1, 87, -1, -1, 10, 11, 12, -1, -1,
5895 -1, -1, -1, -1, -1, -1, -1, 31, -1, 104,
5896 -1, -1, -1, -1, -1, 30, 31, 201, 33, 34,
5897 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5898 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
5899 55, -1, 57, -1, 68, 140, 141, 142, 143, 144,
5900 145, 146, -1, -1, 69, -1, -1, 81, -1, 83,
5901 -1, -1, -1, -1, -1, 201, -1, -1, 163, -1,
5902 -1, 166, 167, -1, 169, 170, -1, 172, 173, 174,
5903 104, 176, -1, -1, -1, -1, 31, -1, -1, -1,
5904 -1, -1, 187, -1, -1, -1, -1, 121, 122, 123,
5905 124, 125, 126, 198, 199, -1, -1, -1, -1, -1,
5906 -1, -1, -1, -1, -1, 200, 140, 141, 142, 143,
5907 144, 145, 146, 68, -1, -1, -1, -1, -1, -1,
5908 -1, -1, -1, -1, 31, -1, 81, -1, -1, 163,
5909 -1, -1, 166, 167, -1, 169, 170, -1, 172, 173,
5910 174, -1, -1, -1, -1, -1, -1, -1, -1, 104,
5911 -1, -1, -1, 187, -1, -1, -1, 112, -1, -1,
5912 194, 68, -1, -1, 198, 199, -1, -1, -1, -1,
5913 -1, -1, 31, -1, 81, 200, -1, -1, -1, -1,
5914 87, -1, -1, -1, -1, 140, 141, 142, 143, 144,
5915 145, 146, -1, -1, -1, -1, -1, 104, -1, -1,
5916 -1, -1, -1, -1, -1, -1, -1, -1, 163, 68,
5917 -1, 166, 167, -1, 169, 170, -1, 172, 173, 174,
5918 31, -1, 81, -1, -1, -1, -1, -1, 87, -1,
5919 -1, -1, 187, 140, 141, 142, 143, 144, 145, 146,
5920 -1, -1, -1, 198, 199, 104, -1, -1, -1, -1,
5921 -1, -1, -1, -1, -1, -1, 163, 68, -1, 166,
5922 167, -1, 169, 170, -1, 172, 173, 174, -1, -1,
5923 81, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5924 187, 140, 141, 142, 143, 144, 145, 146, -1, -1,
5925 -1, 198, 199, 104, -1, -1, -1, -1, -1, -1,
5926 32, -1, -1, -1, 163, -1, -1, 166, 167, -1,
5927 169, 170, -1, 172, 173, 174, -1, -1, 50, 51,
5928 -1, -1, -1, -1, 56, -1, 58, -1, 187, 140,
5929 141, 142, 143, 144, 145, 146, -1, -1, 70, 198,
5930 199, -1, -1, -1, -1, -1, 78, 79, 80, 81,
5931 -1, -1, 163, -1, -1, 166, 167, -1, 169, 170,
5932 92, 172, 173, 174, -1, -1, -1, -1, -1, -1,
5933 -1, -1, 104, -1, -1, -1, 187, -1, -1, -1,
5934 -1, -1, 38, -1, -1, -1, -1, 198, 199, 37,
5935 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
5936 48, 49, 50, 51, 52, 53, 54, 55, 140, 141,
5937 142, 143, 144, 145, 70, 147, 148, 149, 150, 151,
5938 -1, 69, 78, 79, 80, 81, 158, 83, 84, -1,
5939 -1, 163, 164, 165, 166, 167, 92, 169, 170, -1,
5940 172, 173, 174, -1, -1, -1, 178, -1, 104, -1,
5941 -1, -1, -1, -1, -1, 187, 188, -1, -1, -1,
5942 -1, 193, -1, -1, -1, 121, 198, 199, -1, -1,
5943 50, 51, -1, -1, -1, -1, 56, -1, 58, -1,
5944 -1, -1, -1, 139, 140, 141, 142, 143, 144, 145,
5945 70, 147, 148, 149, 150, 151, -1, -1, 78, 79,
5946 80, 81, 158, -1, -1, -1, -1, 163, 164, 165,
5947 166, 167, 92, 169, 170, -1, 172, 173, 174, -1,
5948 -1, -1, 178, -1, 104, -1, -1, -1, -1, -1,
5949 -1, -1, -1, -1, -1, -1, -1, 193, -1, -1,
5950 -1, -1, 198, 199, -1, -1, 50, 51, -1, 205,
5951 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5952 140, 141, 142, 143, 144, 145, 70, 147, 148, 149,
5953 150, 151, -1, -1, 78, 79, 80, 81, 158, -1,
5954 -1, -1, -1, 163, 164, 165, 166, 167, 92, 169,
5955 170, -1, 172, 173, 174, -1, -1, -1, 178, -1,
5956 104, -1, -1, -1, -1, -1, -1, 187, 188, -1,
5957 -1, -1, -1, 193, -1, -1, -1, -1, 198, 199,
5958 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5959 -1, -1, -1, -1, -1, -1, 140, 141, 142, 143,
5960 144, 145, 70, -1, -1, -1, -1, -1, -1, -1,
5961 78, 79, 80, 81, 158, 83, 84, -1, -1, 163,
5962 -1, -1, 166, 167, 92, 169, 170, -1, 172, 173,
5963 174, -1, -1, -1, -1, -1, 104, -1, -1, -1,
5964 -1, -1, -1, 187, 188, -1, -1, -1, -1, -1,
5965 -1, -1, -1, 121, 198, -1, -1, -1, -1, -1,
5966 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5967 -1, 139, 140, 141, 142, 143, 144, 145, -1, 147,
5968 148, 149, 150, 151, -1, -1, -1, -1, -1, -1,
5969 158, -1, -1, -1, -1, 163, 164, 165, 166, 167,
5970 -1, 169, 170, -1, 172, 173, 174, 70, 71, -1,
5971 178, -1, -1, -1, -1, 78, 79, 80, 81, -1,
5972 83, 84, -1, -1, -1, 193, -1, -1, -1, 92,
5973 198, 199, -1, -1, 202, -1, -1, 205, -1, -1,
5974 -1, 104, -1, -1, -1, -1, -1, -1, -1, -1,
5975 -1, -1, -1, -1, -1, -1, -1, -1, 121, 39,
5976 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
5977 50, 51, 52, 53, 54, 55, 139, 140, 141, 142,
5978 143, 144, 145, 70, 147, 148, 149, 150, 151, 69,
5979 -1, 78, 79, 80, 81, 158, 83, 84, -1, -1,
5980 163, 164, 165, 166, 167, 92, 169, 170, -1, 172,
5981 173, 174, -1, -1, -1, 178, -1, 104, -1, -1,
5982 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
5983 193, -1, -1, -1, 121, 198, 199, -1, -1, -1,
5984 -1, -1, 205, -1, -1, -1, -1, -1, -1, -1,
5985 -1, -1, 139, 140, 141, 142, 143, 144, 145, -1,
5986 147, 148, 149, 150, 151, -1, -1, -1, -1, -1,
5987 -1, 158, -1, -1, -1, -1, 163, 164, 165, 166,
5988 167, -1, 169, 170, -1, 172, 173, 174, -1, -1,
5989 -1, 178, -1, -1, -1, -1, 10, 11, 12, -1,
5990 -1, -1, -1, -1, -1, -1, 193, -1, -1, -1,
5991 -1, 198, 199, -1, -1, -1, 30, 31, 205, 33,
5992 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
5993 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
5994 54, 55, -1, 57, 10, 11, 12, -1, -1, -1,
5995 -1, -1, -1, -1, -1, 69, -1, -1, -1, -1,
5996 -1, -1, -1, -1, 30, 31, -1, 33, 34, 35,
5997 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
5998 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
5999 -1, 57, -1, -1, -1, -1, -1, -1, -1, -1,
6000 -1, -1, -1, 69, -1, 10, 11, 12, -1, -1,
6001 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6002 -1, -1, -1, -1, 138, 30, 31, -1, 33, 34,
6003 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
6004 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
6005 55, -1, 57, 10, 11, 12, -1, -1, -1, -1,
6006 -1, -1, -1, -1, 69, -1, -1, -1, -1, -1,
6007 -1, -1, 138, 30, 31, -1, 33, 34, 35, 36,
6008 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
6009 47, 48, 49, 50, 51, 52, 53, 54, 55, -1,
6010 57, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6011 -1, -1, 69, -1, 10, 11, 12, -1, -1, -1,
6012 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6013 -1, -1, -1, 138, 30, 31, -1, 33, 34, 35,
6014 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
6015 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
6016 -1, 57, 10, 11, 12, -1, -1, -1, -1, -1,
6017 -1, -1, -1, 69, -1, -1, -1, -1, -1, -1,
6018 -1, 138, 30, 31, -1, 33, 34, 35, 36, 37,
6019 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
6020 48, 49, 50, 51, 52, 53, 54, 55, -1, 57,
6021 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6022 -1, 69, -1, 10, 11, 12, -1, -1, -1, -1,
6023 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6024 -1, -1, 138, 30, 31, -1, 33, 34, 35, 36,
6025 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
6026 47, 48, 49, 50, 51, 52, 53, 54, 55, -1,
6027 57, 10, 11, 12, -1, -1, -1, -1, -1, -1,
6028 -1, -1, 69, -1, -1, -1, -1, -1, -1, -1,
6029 138, -1, 31, -1, -1, 34, 35, 36, 37, 38,
6030 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
6031 49, 50, 51, 52, 53, 54, 55, -1, -1, -1,
6032 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6033 69, 10, 11, 12, -1, -1, -1, -1, -1, -1,
6034 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6035 -1, 138, 31, -1, -1, 34, 35, 36, 37, 38,
6036 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
6037 49, 50, 51, 52, 53, 54, 55, 10, 11, 12,
6038 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6039 69, -1, -1, -1, -1, -1, -1, -1, 31, 138,
6040 -1, 34, 35, 36, 37, 38, 39, 40, 41, 42,
6041 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
6042 53, 54, 55, -1, -1, -1, -1, -1, -1, -1,
6043 -1, -1, -1, -1, -1, -1, 69, 10, 11, 12,
6044 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6045 -1, -1, -1, -1, -1, -1, -1, -1, 31, 138,
6046 -1, 34, 35, 36, 37, 38, 39, 40, 41, 42,
6047 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
6048 53, 54, 55, 10, 11, 12, -1, -1, -1, -1,
6049 -1, -1, -1, -1, -1, -1, 69, -1, -1, -1,
6050 -1, -1, -1, -1, 31, 138, -1, 34, 35, 36,
6051 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
6052 47, 48, 49, 50, 51, 52, 53, 54, 55, 78,
6053 79, 80, 81, -1, 83, 84, -1, -1, -1, -1,
6054 -1, -1, 69, 92, -1, -1, -1, -1, -1, -1,
6055 -1, -1, -1, -1, -1, 104, -1, -1, -1, -1,
6056 -1, -1, -1, -1, -1, 138, -1, -1, -1, -1,
6057 -1, -1, 121, -1, -1, -1, -1, -1, -1, -1,
6058 -1, -1, -1, 132, -1, -1, -1, -1, -1, -1,
6059 -1, -1, 141, 142, 143, 144, 145, -1, 147, 148,
6060 149, 150, 151, -1, -1, -1, -1, -1, -1, 158,
6061 -1, 138, -1, -1, 163, 164, 165, 166, 167, -1,
6062 169, 170, -1, 172, 173, 174, -1, -1, -1, 178,
6063 -1, 78, 79, 80, 81, -1, 83, 84, -1, -1,
6064 -1, -1, -1, -1, 193, 92, -1, -1, -1, 198,
6065 199, -1, -1, -1, -1, -1, 205, 104, -1, -1,
6066 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6067 -1, -1, -1, -1, 121, 39, 40, 41, 42, 43,
6068 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
6069 54, 55, -1, -1, 141, 142, 143, 144, 145, -1,
6070 147, 148, 149, 150, 151, 69, -1, 78, 79, 80,
6071 81, 158, 83, 84, -1, -1, 163, 164, 165, 166,
6072 167, 92, 169, 170, -1, 172, 173, 174, -1, -1,
6073 -1, 178, -1, 104, -1, -1, -1, -1, -1, -1,
6074 -1, -1, -1, -1, -1, -1, 193, -1, -1, -1,
6075 121, 198, 199, -1, -1, -1, -1, -1, 205, -1,
6076 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6077 141, 142, 143, 144, 145, -1, 147, 148, 149, 150,
6078 151, -1, -1, -1, -1, -1, -1, 158, -1, -1,
6079 -1, -1, 163, 164, 165, 166, 167, -1, 169, 170,
6080 -1, 172, 173, 174, -1, -1, -1, 178, -1, -1,
6081 -1, -1, 10, 11, 12, -1, -1, -1, -1, -1,
6082 -1, -1, 193, -1, -1, -1, -1, 198, 199, 27,
6083 -1, -1, 30, 31, 205, 33, 34, 35, 36, 37,
6084 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
6085 48, 49, 50, 51, 52, 53, 54, 55, -1, 57,
6086 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6087 -1, 69, -1, -1, -1, -1, -1, -1, -1, -1,
6088 -1, -1, -1, -1, -1, -1, 10, 11, 12, -1,
6089 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6090 -1, -1, -1, -1, -1, 103, 30, 31, 32, 33,
6091 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
6092 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
6093 54, 55, -1, 57, 10, 11, 12, -1, -1, -1,
6094 -1, -1, -1, -1, -1, 69, -1, -1, -1, -1,
6095 -1, -1, -1, -1, 30, 31, -1, 33, 34, 35,
6096 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
6097 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
6098 -1, 57, 10, 11, 12, -1, -1, -1, -1, -1,
6099 -1, -1, -1, 69, -1, -1, -1, -1, -1, -1,
6100 -1, -1, -1, 31, 32, -1, 34, 35, 36, 37,
6101 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
6102 48, 49, 50, 51, 52, 53, 54, 55, 10, 11,
6103 12, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6104 -1, 69, -1, -1, -1, -1, -1, -1, -1, 31,
6105 -1, -1, 34, 35, 36, 37, 38, 39, 40, 41,
6106 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
6107 52, 53, 54, 55, 11, 12, -1, -1, -1, -1,
6108 -1, -1, -1, -1, -1, -1, -1, 69, -1, -1,
6109 -1, -1, -1, 30, 31, -1, 33, 34, 35, 36,
6110 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
6111 47, 48, 49, 50, 51, 52, 53, 54, 55, -1,
6112 57, 11, 12, -1, -1, -1, -1, -1, -1, -1,
6113 -1, -1, 69, -1, -1, -1, -1, -1, -1, -1,
6114 -1, 31, -1, -1, 34, 35, 36, 37, 38, 39,
6115 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
6116 50, 51, 52, 53, 54, 55, 12, -1, -1, -1,
6117 -1, -1, -1, -1, -1, -1, -1, -1, -1, 69,
6118 -1, -1, -1, -1, 30, 31, -1, 33, 34, 35,
6119 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
6120 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
6121 -1, 57, -1, -1, -1, -1, -1, -1, -1, -1,
6122 -1, 31, -1, 69, 34, 35, 36, 37, 38, 39,
6123 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
6124 50, 51, 52, 53, 54, 55, -1, -1, -1, -1,
6125 -1, -1, -1, -1, -1, -1, -1, -1, -1, 69,
6126 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
6127 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
6128 53, 54, 55, -1, 57, -1, -1, -1, -1, -1,
6129 -1, -1, -1, -1, -1, -1, 69, 34, 35, 36,
6130 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
6131 47, 48, 49, 50, 51, 52, 53, 54, 55, -1,
6132 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6133 -1, -1, 69, 35, 36, 37, 38, 39, 40, 41,
6134 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
6135 52, 53, 54, 55, -1, -1, -1, -1, -1, -1,
6136 -1, -1, -1, -1, -1, -1, -1, 69, 36, 37,
6137 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
6138 48, 49, 50, 51, 52, 53, 54, 55, -1, -1,
6139 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6140 -1, 69, 37, 38, 39, 40, 41, 42, 43, 44,
6141 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
6142 55, -1, 57, -1, -1, -1, -1, -1, -1, -1,
6146 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
6147 symbol of state STATE-NUM. */
6148 static const yytype_uint16 yystos
[] =
6150 0, 210, 211, 0, 212, 3, 4, 5, 6, 7,
6151 13, 27, 28, 29, 48, 50, 51, 56, 58, 59,
6152 60, 61, 62, 63, 64, 65, 66, 67, 68, 70,
6153 71, 72, 73, 74, 78, 79, 80, 81, 82, 83,
6154 84, 86, 88, 92, 93, 94, 95, 97, 99, 101,
6155 104, 105, 109, 110, 111, 112, 113, 114, 115, 117,
6156 119, 120, 121, 122, 123, 124, 125, 126, 128, 129,
6157 130, 131, 132, 133, 139, 140, 141, 142, 143, 144,
6158 145, 147, 148, 149, 150, 151, 155, 158, 163, 164,
6159 165, 166, 167, 169, 170, 172, 173, 174, 175, 178,
6160 181, 187, 188, 189, 191, 193, 194, 195, 198, 199,
6161 201, 202, 205, 206, 207, 208, 213, 216, 226, 227,
6162 228, 229, 230, 236, 245, 246, 257, 258, 262, 265,
6163 272, 278, 337, 338, 346, 347, 350, 351, 352, 353,
6164 354, 355, 356, 357, 359, 360, 361, 363, 366, 378,
6165 379, 386, 389, 392, 395, 398, 401, 407, 409, 410,
6166 412, 422, 423, 424, 426, 431, 436, 456, 464, 466,
6167 467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
6168 477, 478, 480, 491, 493, 495, 121, 122, 123, 163,
6169 173, 199, 216, 257, 337, 359, 379, 468, 359, 199,
6170 359, 359, 359, 359, 109, 359, 359, 454, 455, 359,
6171 359, 359, 359, 81, 83, 92, 121, 141, 142, 143,
6172 144, 145, 158, 199, 227, 379, 423, 426, 431, 468,
6173 472, 468, 359, 359, 359, 359, 359, 359, 359, 359,
6174 38, 359, 483, 121, 132, 199, 227, 270, 423, 424,
6175 425, 427, 431, 465, 466, 467, 476, 481, 482, 359,
6176 199, 358, 428, 199, 358, 370, 348, 359, 238, 358,
6177 199, 199, 199, 358, 201, 359, 216, 201, 359, 3,
6178 4, 6, 7, 10, 11, 12, 13, 28, 29, 31,
6179 57, 68, 71, 72, 73, 74, 75, 76, 77, 87,
6180 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
6181 103, 105, 106, 107, 108, 109, 110, 111, 112, 113,
6182 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
6183 124, 125, 126, 127, 128, 130, 132, 133, 134, 135,
6184 139, 140, 146, 163, 167, 175, 177, 180, 187, 188,
6185 199, 216, 217, 218, 229, 496, 517, 518, 521, 27,
6186 201, 353, 355, 359, 202, 250, 359, 112, 113, 163,
6187 166, 189, 219, 220, 221, 222, 226, 83, 205, 305,
6188 306, 83, 307, 123, 132, 122, 132, 199, 199, 199,
6189 199, 216, 276, 499, 199, 199, 70, 70, 70, 70,
6190 70, 348, 83, 91, 159, 160, 161, 488, 489, 166,
6191 202, 226, 226, 216, 277, 499, 167, 199, 199, 499,
6192 499, 83, 195, 202, 371, 28, 347, 350, 359, 361,
6193 468, 473, 233, 202, 91, 429, 488, 91, 488, 488,
6194 32, 166, 183, 500, 199, 9, 201, 199, 346, 360,
6195 469, 472, 118, 38, 256, 167, 275, 499, 121, 194,
6196 257, 338, 70, 202, 463, 201, 201, 201, 201, 201,
6197 201, 201, 201, 10, 11, 12, 30, 31, 33, 34,
6198 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
6199 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
6200 55, 57, 69, 201, 14, 70, 70, 202, 162, 133,
6201 173, 175, 189, 191, 278, 336, 337, 14, 15, 16,
6202 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
6203 59, 60, 136, 137, 458, 463, 463, 199, 199, 70,
6204 202, 205, 477, 256, 257, 14, 14, 359, 201, 138,
6205 49, 216, 453, 91, 347, 361, 162, 468, 138, 9,
6206 204, 271, 347, 361, 468, 500, 162, 199, 430, 458,
6207 463, 200, 359, 32, 236, 8, 372, 9, 201, 236,
6208 237, 348, 349, 359, 216, 290, 240, 201, 201, 201,
6209 140, 146, 521, 521, 183, 520, 199, 112, 521, 14,
6210 162, 140, 146, 163, 216, 218, 201, 201, 201, 251,
6211 116, 180, 201, 219, 221, 219, 221, 219, 221, 226,
6212 219, 221, 202, 9, 439, 201, 103, 166, 202, 468,
6213 9, 201, 14, 9, 201, 132, 132, 468, 492, 348,
6214 347, 361, 468, 472, 473, 200, 183, 268, 483, 483,
6215 359, 380, 381, 348, 404, 404, 380, 404, 201, 70,
6216 458, 159, 489, 82, 359, 468, 91, 159, 489, 226,
6217 215, 201, 202, 263, 273, 413, 415, 92, 199, 205,
6218 373, 374, 376, 422, 426, 475, 477, 493, 404, 14,
6219 103, 494, 367, 368, 369, 300, 301, 456, 457, 200,
6220 200, 200, 200, 200, 203, 235, 236, 258, 265, 272,
6221 456, 359, 206, 207, 208, 216, 501, 502, 521, 38,
6222 87, 176, 303, 304, 359, 496, 247, 248, 347, 355,
6223 356, 359, 361, 468, 202, 249, 249, 249, 249, 199,
6224 499, 266, 256, 359, 479, 359, 359, 359, 359, 359,
6225 32, 359, 359, 359, 359, 359, 359, 359, 359, 359,
6226 359, 359, 359, 359, 359, 359, 359, 359, 359, 359,
6227 359, 359, 359, 359, 359, 427, 359, 350, 355, 359,
6228 479, 479, 359, 484, 485, 132, 202, 217, 218, 476,
6229 477, 276, 216, 277, 499, 499, 275, 257, 38, 350,
6230 353, 355, 359, 359, 359, 359, 359, 359, 359, 359,
6231 359, 359, 359, 359, 359, 167, 202, 216, 459, 460,
6232 461, 462, 476, 303, 303, 479, 359, 256, 200, 359,
6233 199, 452, 9, 438, 200, 200, 38, 359, 38, 359,
6234 430, 200, 200, 200, 476, 303, 202, 216, 459, 460,
6235 476, 200, 233, 294, 202, 355, 359, 359, 95, 32,
6236 236, 288, 201, 27, 103, 14, 9, 200, 32, 202,
6237 291, 521, 31, 92, 176, 229, 514, 515, 516, 199,
6238 9, 50, 51, 56, 58, 70, 140, 141, 142, 143,
6239 144, 145, 187, 188, 199, 227, 387, 390, 393, 396,
6240 399, 402, 408, 423, 431, 432, 434, 435, 216, 519,
6241 233, 199, 244, 202, 201, 202, 201, 202, 201, 103,
6242 166, 202, 201, 112, 113, 166, 222, 223, 224, 225,
6243 226, 222, 216, 359, 306, 432, 83, 9, 200, 200,
6244 200, 200, 200, 200, 200, 201, 50, 51, 510, 512,
6245 513, 134, 281, 200, 200, 138, 204, 9, 438, 9,
6246 438, 204, 204, 204, 204, 83, 85, 216, 490, 216,
6247 70, 203, 203, 212, 214, 32, 135, 280, 182, 54,
6248 167, 182, 202, 417, 361, 138, 9, 438, 200, 162,
6249 200, 521, 521, 14, 372, 300, 231, 196, 9, 439,
6250 87, 521, 522, 458, 458, 203, 9, 438, 184, 468,
6251 83, 84, 302, 359, 200, 9, 439, 14, 9, 200,
6252 9, 200, 200, 200, 200, 14, 200, 203, 234, 235,
6253 364, 259, 134, 279, 199, 499, 204, 203, 359, 32,
6254 204, 204, 138, 203, 9, 438, 359, 500, 199, 269,
6255 264, 274, 14, 494, 267, 256, 71, 468, 359, 500,
6256 200, 200, 204, 203, 50, 51, 70, 78, 79, 80,
6257 92, 140, 141, 142, 143, 144, 145, 158, 187, 188,
6258 216, 388, 391, 394, 397, 400, 403, 423, 434, 441,
6259 443, 444, 448, 451, 216, 468, 468, 138, 279, 458,
6260 463, 458, 200, 359, 295, 75, 76, 296, 231, 358,
6261 233, 349, 103, 38, 285, 379, 468, 432, 216, 32,
6262 236, 289, 201, 292, 201, 292, 9, 438, 92, 229,
6263 138, 162, 9, 438, 200, 87, 503, 504, 521, 522,
6264 501, 432, 432, 432, 432, 432, 437, 440, 199, 70,
6265 70, 70, 70, 70, 199, 199, 432, 162, 202, 10,
6266 11, 12, 31, 34, 35, 36, 37, 38, 39, 40,
6267 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
6268 51, 52, 53, 54, 55, 69, 162, 500, 203, 423,
6269 202, 253, 221, 221, 221, 216, 221, 222, 222, 226,
6270 9, 439, 203, 203, 14, 468, 201, 184, 9, 438,
6271 216, 282, 423, 202, 359, 359, 204, 359, 203, 212,
6272 521, 282, 202, 416, 176, 14, 200, 359, 373, 476,
6273 201, 521, 196, 203, 232, 235, 245, 32, 508, 457,
6274 522, 38, 83, 176, 459, 460, 462, 459, 460, 462,
6275 521, 70, 38, 87, 176, 359, 432, 248, 355, 356,
6276 468, 249, 248, 249, 249, 203, 235, 300, 199, 423,
6277 280, 365, 260, 359, 359, 359, 203, 199, 303, 281,
6278 32, 280, 521, 14, 279, 499, 427, 203, 199, 78,
6279 79, 80, 216, 442, 442, 444, 446, 447, 52, 199,
6280 70, 70, 70, 70, 70, 91, 159, 199, 199, 162,
6281 9, 438, 200, 452, 38, 359, 280, 203, 75, 76,
6282 297, 358, 236, 203, 201, 96, 201, 285, 468, 138,
6283 284, 14, 233, 292, 106, 107, 108, 292, 203, 521,
6284 184, 138, 162, 521, 216, 176, 514, 521, 9, 438,
6285 200, 176, 438, 138, 204, 9, 438, 437, 382, 383,
6286 432, 405, 432, 433, 405, 382, 405, 373, 375, 377,
6287 405, 200, 132, 217, 432, 486, 487, 432, 432, 432,
6288 32, 432, 432, 432, 432, 432, 432, 432, 432, 432,
6289 432, 432, 432, 432, 432, 432, 432, 432, 432, 432,
6290 432, 432, 432, 432, 432, 519, 83, 254, 203, 203,
6291 203, 203, 225, 201, 432, 513, 103, 104, 509, 511,
6292 9, 311, 138, 204, 203, 494, 311, 168, 181, 202,
6293 412, 419, 359, 168, 202, 418, 138, 201, 508, 199,
6294 248, 346, 360, 469, 472, 521, 372, 87, 522, 83,
6295 83, 176, 14, 83, 500, 500, 479, 468, 302, 359,
6296 200, 300, 202, 300, 199, 138, 199, 303, 200, 202,
6297 521, 202, 201, 521, 280, 261, 430, 303, 138, 204,
6298 9, 438, 443, 446, 384, 385, 444, 406, 444, 445,
6299 406, 384, 406, 159, 373, 449, 450, 406, 81, 444,
6300 468, 202, 358, 32, 77, 236, 201, 349, 284, 285,
6301 200, 432, 102, 106, 201, 359, 32, 201, 293, 203,
6302 184, 521, 216, 138, 87, 521, 522, 32, 200, 432,
6303 432, 200, 204, 9, 438, 138, 204, 9, 438, 204,
6304 204, 204, 138, 9, 438, 200, 200, 138, 203, 9,
6305 438, 432, 32, 200, 233, 201, 201, 201, 201, 216,
6306 521, 521, 509, 423, 6, 113, 119, 122, 127, 169,
6307 170, 172, 203, 312, 335, 336, 337, 342, 343, 344,
6308 345, 456, 359, 203, 202, 203, 54, 359, 203, 359,
6309 359, 372, 468, 201, 202, 522, 38, 83, 176, 14,
6310 83, 359, 199, 199, 204, 508, 200, 311, 200, 300,
6311 359, 303, 200, 311, 494, 311, 201, 202, 199, 200,
6312 444, 444, 200, 204, 9, 438, 138, 204, 9, 438,
6313 204, 204, 204, 138, 200, 9, 438, 200, 311, 32,
6314 233, 201, 200, 200, 241, 201, 201, 293, 233, 138,
6315 521, 521, 176, 521, 138, 432, 432, 432, 432, 373,
6316 432, 432, 432, 202, 203, 511, 134, 135, 189, 217,
6317 497, 521, 283, 423, 113, 345, 31, 127, 140, 146,
6318 167, 173, 319, 320, 321, 322, 423, 171, 327, 328,
6319 130, 199, 216, 329, 330, 83, 341, 257, 521, 9,
6320 201, 9, 201, 201, 494, 336, 337, 308, 167, 414,
6321 203, 203, 359, 83, 83, 176, 14, 83, 359, 303,
6322 303, 119, 362, 508, 203, 508, 200, 200, 203, 202,
6323 203, 311, 300, 138, 444, 444, 444, 444, 373, 203,
6324 233, 239, 242, 32, 236, 287, 233, 521, 200, 432,
6325 138, 138, 138, 233, 423, 423, 499, 14, 217, 9,
6326 201, 202, 497, 494, 322, 183, 202, 9, 201, 3,
6327 4, 5, 6, 7, 10, 11, 12, 13, 27, 28,
6328 29, 57, 71, 72, 73, 74, 75, 76, 77, 87,
6329 93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
6330 103, 105, 106, 107, 108, 109, 110, 111, 112, 113,
6331 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
6332 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
6333 134, 135, 139, 140, 147, 148, 149, 150, 151, 163,
6334 164, 165, 175, 177, 178, 180, 187, 189, 191, 193,
6335 194, 216, 420, 421, 9, 201, 167, 171, 216, 330,
6336 331, 332, 201, 14, 9, 201, 256, 341, 497, 497,
6337 14, 257, 341, 521, 203, 309, 310, 497, 14, 83,
6338 359, 200, 200, 199, 508, 198, 505, 362, 508, 308,
6339 203, 200, 444, 138, 138, 32, 236, 286, 287, 233,
6340 432, 432, 432, 203, 201, 201, 432, 423, 315, 521,
6341 323, 324, 431, 320, 14, 32, 51, 325, 328, 9,
6342 36, 200, 31, 50, 53, 432, 83, 218, 498, 201,
6343 14, 521, 256, 201, 341, 201, 14, 359, 38, 83,
6344 411, 202, 506, 507, 521, 201, 202, 333, 508, 505,
6345 203, 508, 444, 444, 233, 100, 252, 203, 216, 229,
6346 316, 317, 318, 9, 438, 9, 438, 203, 432, 421,
6347 421, 68, 326, 331, 331, 31, 50, 53, 14, 183,
6348 199, 432, 498, 201, 432, 83, 9, 439, 231, 9,
6349 439, 14, 509, 231, 202, 333, 333, 98, 201, 116,
6350 243, 162, 103, 521, 184, 431, 174, 432, 510, 313,
6351 199, 38, 83, 200, 203, 507, 521, 203, 231, 201,
6352 199, 180, 255, 216, 336, 337, 184, 184, 298, 299,
6353 457, 314, 83, 203, 423, 253, 177, 216, 201, 200,
6354 9, 439, 87, 124, 125, 126, 339, 340, 298, 83,
6355 283, 201, 508, 457, 522, 522, 200, 200, 201, 505,
6356 87, 339, 83, 38, 83, 176, 508, 202, 201, 202,
6357 334, 522, 522, 83, 176, 14, 83, 505, 233, 231,
6358 83, 38, 83, 176, 14, 83, 359, 334, 203, 203,
6359 83, 176, 14, 83, 359, 14, 83, 359, 359
6362 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
6363 static const yytype_uint16 yyr1
[] =
6365 0, 209, 211, 210, 212, 212, 213, 213, 213, 213,
6366 213, 213, 213, 213, 214, 213, 215, 213, 213, 213,
6367 213, 213, 213, 213, 213, 213, 213, 213, 213, 216,
6368 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
6369 216, 216, 217, 217, 217, 217, 217, 217, 217, 217,
6370 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
6371 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
6372 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
6373 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
6374 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
6375 217, 217, 217, 217, 217, 217, 217, 217, 217, 218,
6376 218, 219, 219, 220, 220, 221, 222, 222, 222, 222,
6377 223, 223, 224, 225, 225, 225, 226, 226, 227, 227,
6378 227, 228, 229, 230, 230, 231, 231, 232, 232, 233,
6379 233, 234, 234, 235, 235, 235, 235, 236, 236, 236,
6380 237, 236, 238, 236, 239, 236, 240, 236, 236, 236,
6381 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
6382 236, 236, 236, 241, 236, 242, 236, 236, 243, 236,
6383 244, 236, 236, 236, 236, 236, 236, 236, 236, 236,
6384 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
6385 236, 236, 236, 245, 246, 246, 247, 247, 248, 248,
6386 248, 249, 249, 251, 250, 252, 252, 254, 253, 255,
6387 255, 256, 256, 257, 259, 258, 260, 258, 261, 258,
6388 263, 262, 264, 262, 266, 265, 267, 265, 268, 265,
6389 269, 265, 271, 270, 273, 272, 274, 272, 275, 275,
6390 276, 277, 278, 278, 278, 278, 278, 279, 279, 280,
6391 280, 281, 281, 282, 282, 283, 283, 284, 284, 285,
6392 285, 285, 286, 286, 287, 287, 288, 288, 289, 289,
6393 290, 290, 291, 291, 291, 291, 292, 292, 292, 293,
6394 293, 294, 294, 295, 295, 296, 296, 297, 297, 298,
6395 298, 298, 298, 298, 298, 298, 298, 299, 299, 299,
6396 299, 299, 299, 299, 299, 299, 299, 300, 300, 300,
6397 300, 300, 300, 300, 300, 301, 301, 301, 301, 301,
6398 301, 301, 301, 301, 301, 302, 302, 302, 303, 303,
6399 304, 304, 304, 304, 304, 304, 304, 304, 305, 305,
6400 306, 306, 306, 307, 307, 307, 307, 308, 308, 309,
6401 310, 311, 311, 312, 312, 312, 312, 312, 312, 312,
6402 313, 312, 314, 312, 312, 312, 312, 312, 312, 312,
6403 312, 315, 315, 315, 316, 317, 317, 318, 318, 319,
6404 319, 320, 320, 321, 321, 322, 322, 322, 322, 322,
6405 322, 322, 323, 323, 324, 325, 325, 326, 326, 327,
6406 327, 328, 329, 329, 329, 330, 330, 330, 330, 331,
6407 331, 331, 331, 331, 331, 331, 332, 332, 332, 333,
6408 333, 334, 334, 335, 335, 336, 336, 337, 337, 338,
6409 338, 338, 338, 338, 338, 338, 339, 339, 340, 340,
6410 340, 341, 341, 341, 341, 342, 342, 343, 343, 344,
6411 344, 345, 346, 347, 347, 347, 347, 347, 347, 348,
6412 348, 349, 349, 350, 350, 350, 350, 351, 352, 353,
6413 354, 355, 356, 357, 358, 359, 359, 359, 359, 359,
6414 360, 361, 361, 361, 361, 361, 361, 361, 361, 361,
6415 361, 361, 361, 361, 361, 361, 361, 361, 361, 361,
6416 361, 361, 361, 361, 361, 361, 361, 361, 361, 361,
6417 361, 361, 361, 361, 361, 361, 361, 361, 361, 361,
6418 361, 361, 361, 361, 361, 361, 361, 361, 361, 361,
6419 361, 361, 361, 361, 361, 361, 361, 361, 361, 361,
6420 361, 361, 361, 361, 361, 361, 361, 361, 361, 361,
6421 361, 361, 361, 361, 361, 361, 361, 361, 361, 362,
6422 362, 364, 363, 365, 363, 367, 366, 368, 366, 369,
6423 366, 370, 366, 371, 366, 372, 372, 372, 373, 373,
6424 374, 374, 375, 375, 376, 376, 377, 377, 378, 379,
6425 379, 379, 380, 380, 381, 381, 382, 382, 383, 383,
6426 384, 384, 385, 385, 386, 387, 388, 389, 390, 391,
6427 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
6428 402, 403, 404, 404, 405, 405, 406, 406, 407, 408,
6429 409, 409, 410, 410, 410, 410, 410, 410, 410, 410,
6430 410, 410, 410, 410, 411, 411, 411, 411, 412, 413,
6431 413, 414, 414, 415, 415, 415, 416, 416, 417, 418,
6432 418, 419, 419, 419, 420, 420, 420, 421, 421, 421,
6433 421, 421, 421, 421, 421, 421, 421, 421, 421, 421,
6434 421, 421, 421, 421, 421, 421, 421, 421, 421, 421,
6435 421, 421, 421, 421, 421, 421, 421, 421, 421, 421,
6436 421, 421, 421, 421, 421, 421, 421, 421, 421, 421,
6437 421, 421, 421, 421, 421, 421, 421, 421, 421, 421,
6438 421, 421, 421, 421, 421, 421, 421, 421, 421, 421,
6439 421, 421, 421, 421, 421, 421, 421, 421, 421, 421,
6440 421, 421, 421, 421, 421, 421, 421, 421, 421, 421,
6441 422, 423, 423, 424, 424, 424, 424, 424, 425, 425,
6442 426, 426, 426, 426, 427, 427, 427, 428, 428, 428,
6443 429, 429, 429, 430, 430, 431, 431, 431, 431, 431,
6444 431, 431, 431, 431, 431, 431, 431, 431, 431, 431,
6445 432, 432, 432, 432, 432, 432, 432, 432, 432, 432,
6446 432, 432, 432, 432, 432, 432, 432, 432, 432, 432,
6447 432, 432, 432, 432, 432, 432, 432, 432, 432, 432,
6448 432, 432, 432, 432, 432, 432, 432, 432, 432, 432,
6449 432, 432, 432, 432, 432, 432, 433, 433, 434, 435,
6450 435, 436, 436, 436, 436, 436, 436, 436, 437, 437,
6451 438, 438, 439, 439, 440, 440, 440, 440, 441, 441,
6452 441, 441, 441, 442, 442, 442, 442, 443, 443, 444,
6453 444, 444, 444, 444, 444, 444, 444, 444, 444, 444,
6454 444, 444, 444, 444, 444, 445, 445, 446, 446, 447,
6455 447, 447, 447, 448, 448, 449, 449, 450, 450, 451,
6456 451, 452, 452, 453, 453, 455, 454, 456, 457, 457,
6457 458, 458, 459, 459, 459, 460, 460, 461, 461, 462,
6458 462, 463, 463, 464, 464, 464, 465, 465, 466, 466,
6459 467, 467, 468, 468, 468, 468, 468, 468, 468, 468,
6460 468, 468, 468, 469, 470, 470, 470, 470, 470, 470,
6461 470, 471, 471, 471, 471, 471, 471, 471, 471, 471,
6462 471, 471, 472, 473, 473, 474, 474, 474, 475, 475,
6463 475, 476, 476, 477, 477, 477, 478, 478, 478, 479,
6464 479, 480, 480, 481, 481, 481, 481, 481, 481, 482,
6465 482, 482, 482, 482, 483, 483, 483, 483, 483, 483,
6466 483, 483, 483, 483, 484, 484, 485, 485, 485, 485,
6467 486, 486, 487, 487, 487, 487, 488, 488, 488, 488,
6468 489, 489, 489, 489, 489, 489, 490, 490, 490, 491,
6469 491, 491, 491, 491, 491, 491, 491, 491, 491, 491,
6470 492, 492, 493, 493, 494, 494, 495, 495, 495, 495,
6471 496, 496, 497, 497, 498, 498, 499, 499, 500, 500,
6472 501, 501, 502, 503, 503, 503, 503, 503, 503, 504,
6473 504, 504, 504, 505, 505, 506, 506, 507, 507, 508,
6474 508, 509, 509, 510, 511, 511, 512, 512, 512, 512,
6475 513, 513, 513, 514, 514, 514, 514, 515, 515, 516,
6476 516, 516, 516, 517, 518, 519, 519, 520, 520, 521,
6477 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
6481 /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
6482 static const yytype_uint8 yyr2
[] =
6484 0, 2, 0, 2, 2, 0, 1, 1, 1, 1,
6485 1, 1, 4, 3, 0, 6, 0, 5, 3, 4,
6486 4, 4, 4, 6, 7, 7, 7, 7, 2, 1,
6487 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6488 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6489 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6490 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6491 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6492 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6493 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6494 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6495 1, 2, 3, 3, 1, 2, 1, 2, 3, 4,
6496 3, 1, 2, 1, 2, 2, 1, 3, 1, 3,
6497 2, 2, 2, 5, 4, 2, 0, 1, 3, 2,
6498 0, 2, 1, 1, 1, 1, 1, 3, 5, 8,
6499 0, 4, 0, 6, 0, 10, 0, 4, 2, 3,
6500 2, 3, 2, 3, 3, 3, 3, 3, 3, 5,
6501 1, 1, 1, 0, 9, 0, 10, 5, 0, 13,
6502 0, 5, 3, 3, 3, 3, 5, 5, 5, 3,
6503 3, 2, 2, 2, 2, 2, 2, 3, 2, 2,
6504 3, 2, 2, 2, 1, 0, 3, 3, 1, 1,
6505 1, 3, 2, 0, 4, 9, 0, 0, 4, 2,
6506 0, 1, 0, 1, 0, 10, 0, 11, 0, 11,
6507 0, 9, 0, 10, 0, 8, 0, 9, 0, 7,
6508 0, 8, 0, 8, 0, 7, 0, 8, 1, 1,
6509 1, 1, 1, 2, 3, 3, 2, 2, 0, 2,
6510 0, 2, 0, 1, 3, 1, 3, 2, 0, 1,
6511 2, 1, 1, 4, 1, 4, 1, 4, 1, 4,
6512 3, 5, 3, 4, 4, 5, 5, 4, 0, 1,
6513 1, 4, 0, 5, 0, 2, 0, 3, 0, 7,
6514 8, 6, 2, 5, 6, 4, 0, 4, 4, 5,
6515 7, 6, 6, 6, 7, 9, 8, 6, 7, 5,
6516 2, 4, 5, 3, 0, 3, 4, 4, 6, 5,
6517 5, 6, 6, 8, 7, 4, 1, 1, 2, 0,
6518 1, 2, 2, 2, 3, 4, 4, 4, 3, 1,
6519 1, 2, 4, 3, 5, 1, 3, 2, 0, 2,
6520 3, 2, 0, 3, 4, 4, 5, 2, 2, 2,
6521 0, 11, 0, 12, 3, 3, 3, 4, 4, 3,
6522 5, 2, 2, 0, 6, 5, 4, 3, 1, 1,
6523 3, 4, 1, 2, 1, 1, 5, 6, 1, 1,
6524 4, 1, 1, 3, 2, 2, 0, 2, 0, 1,
6525 3, 1, 1, 1, 1, 3, 4, 4, 4, 1,
6526 1, 2, 2, 2, 3, 3, 1, 1, 1, 1,
6527 3, 1, 3, 1, 1, 1, 0, 1, 2, 1,
6528 1, 1, 1, 1, 1, 1, 1, 0, 1, 1,
6529 1, 3, 5, 1, 3, 5, 4, 3, 3, 3,
6530 4, 3, 3, 3, 3, 2, 2, 1, 1, 3,
6531 1, 1, 0, 1, 2, 4, 3, 3, 3, 2,
6532 3, 2, 3, 3, 3, 1, 1, 1, 1, 1,
6533 3, 3, 3, 4, 6, 3, 3, 3, 3, 3,
6534 3, 3, 3, 3, 3, 3, 3, 2, 2, 2,
6535 2, 3, 3, 3, 3, 3, 3, 3, 3, 3,
6536 3, 3, 3, 3, 3, 3, 3, 3, 3, 2,
6537 2, 2, 2, 3, 3, 3, 3, 3, 3, 3,
6538 3, 3, 3, 1, 5, 4, 3, 1, 2, 2,
6539 2, 2, 2, 2, 2, 2, 2, 1, 1, 1,
6540 1, 1, 1, 1, 1, 1, 3, 2, 1, 5,
6541 0, 0, 12, 0, 13, 0, 4, 0, 7, 0,
6542 5, 0, 3, 0, 6, 2, 2, 4, 1, 1,
6543 5, 3, 5, 3, 2, 0, 2, 0, 4, 4,
6544 3, 4, 2, 0, 5, 3, 2, 0, 5, 3,
6545 2, 0, 5, 3, 4, 4, 4, 4, 4, 4,
6546 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
6547 4, 4, 2, 0, 2, 0, 2, 0, 4, 4,
6548 4, 4, 1, 1, 1, 1, 1, 1, 1, 1,
6549 1, 1, 3, 1, 3, 4, 1, 2, 4, 2,
6550 6, 0, 1, 0, 5, 4, 2, 0, 1, 1,
6551 3, 1, 3, 1, 1, 3, 3, 1, 1, 1,
6552 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6553 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6554 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6555 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6556 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6557 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6558 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6559 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
6560 4, 1, 1, 1, 1, 1, 1, 3, 1, 3,
6561 1, 1, 1, 3, 1, 1, 1, 2, 1, 0,
6562 0, 1, 1, 3, 0, 1, 1, 1, 1, 1,
6563 1, 1, 1, 1, 1, 1, 1, 1, 3, 2,
6564 1, 1, 4, 3, 4, 1, 1, 1, 1, 1,
6565 1, 1, 1, 3, 3, 3, 3, 3, 3, 3,
6566 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
6567 3, 2, 2, 2, 2, 3, 3, 3, 3, 3,
6568 3, 3, 3, 3, 5, 4, 3, 1, 3, 3,
6569 1, 1, 1, 1, 1, 3, 3, 3, 2, 0,
6570 1, 0, 1, 0, 5, 3, 3, 1, 1, 1,
6571 1, 3, 2, 1, 1, 1, 1, 1, 3, 1,
6572 1, 1, 3, 1, 2, 2, 4, 3, 4, 1,
6573 1, 1, 1, 1, 1, 3, 1, 2, 0, 5,
6574 3, 3, 1, 3, 1, 2, 0, 5, 3, 2,
6575 0, 3, 0, 4, 2, 0, 3, 3, 1, 0,
6576 1, 1, 1, 1, 3, 1, 1, 1, 3, 1,
6577 1, 3, 3, 2, 2, 2, 2, 4, 5, 5,
6578 5, 5, 1, 1, 1, 1, 1, 1, 3, 3,
6579 4, 4, 3, 3, 1, 1, 1, 1, 3, 1,
6580 4, 1, 1, 1, 1, 1, 3, 3, 1, 1,
6581 4, 4, 3, 1, 1, 7, 9, 9, 7, 6,
6582 8, 1, 2, 4, 4, 1, 1, 1, 4, 1,
6583 0, 1, 2, 1, 1, 1, 3, 3, 3, 0,
6584 1, 1, 3, 3, 4, 3, 2, 1, 5, 6,
6585 4, 3, 2, 0, 2, 0, 5, 3, 3, 1,
6586 2, 0, 5, 3, 3, 1, 2, 2, 1, 2,
6587 1, 4, 3, 3, 6, 3, 1, 1, 1, 4,
6588 4, 4, 4, 4, 4, 2, 2, 4, 2, 2,
6589 1, 3, 3, 3, 0, 2, 5, 6, 6, 7,
6590 1, 2, 1, 2, 1, 4, 1, 4, 3, 0,
6591 1, 3, 2, 1, 2, 4, 3, 3, 1, 4,
6592 2, 2, 0, 0, 3, 1, 3, 3, 2, 0,
6593 2, 2, 2, 2, 1, 2, 4, 2, 5, 3,
6594 1, 1, 0, 3, 4, 5, 6, 3, 1, 3,
6595 2, 1, 0, 4, 1, 3, 2, 4, 5, 2,
6596 2, 1, 1, 1, 1, 3, 2, 1, 8, 6,
6601 #define yyerrok (yyerrstatus = 0)
6602 #define yyclearin (yychar = YYEMPTY)
6603 #define YYEMPTY (-2)
6606 #define YYACCEPT goto yyacceptlab
6607 #define YYABORT goto yyabortlab
6608 #define YYERROR goto yyerrorlab
6611 #define YYRECOVERING() (!!yyerrstatus)
6613 #define YYBACKUP(Token, Value) \
6615 if (yychar == YYEMPTY) \
6619 YYPOPSTACK (yylen); \
6625 yyerror (&yylloc, _p, YY_("syntax error: cannot back up")); \
6630 /* Error token number */
6632 #define YYERRCODE 256
6635 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
6636 If N is 0, then set CURRENT to the empty location which ends
6637 the previous symbol: RHS[0] (always defined). */
6639 #ifndef YYLLOC_DEFAULT
6640 # define YYLLOC_DEFAULT(Current, Rhs, N) \
6644 (Current).line0 = YYRHSLOC (Rhs, 1).line0; \
6645 (Current).char0 = YYRHSLOC (Rhs, 1).char0; \
6646 (Current).line1 = YYRHSLOC (Rhs, N).line1; \
6647 (Current).char1 = YYRHSLOC (Rhs, N).char1; \
6651 (Current).line0 = (Current).line1 = \
6652 YYRHSLOC (Rhs, 0).line1; \
6653 (Current).char0 = (Current).char1 = \
6654 YYRHSLOC (Rhs, 0).char1; \
6659 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
6662 /* Enable debugging if requested. */
6666 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
6667 # define YYFPRINTF fprintf
6670 # define YYDPRINTF(Args) \
6677 /* YY_LOCATION_PRINT -- Print the location on the stream.
6678 This macro was not mandated originally: define only if we know
6679 we won't break user code: when these are the locations we know. */
6681 #ifndef YY_LOCATION_PRINT
6682 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
6684 /* Print *YYLOCP on YYO. Private, do not rely on its existence. */
6688 yy_location_print_ (FILE *yyo
, YYLTYPE
const * const yylocp
)
6691 int end_col
= 0 != yylocp
->char1
? yylocp
->char1
- 1 : 0;
6692 if (0 <= yylocp
->line0
)
6694 res
+= YYFPRINTF (yyo
, "%d", yylocp
->line0
);
6695 if (0 <= yylocp
->char0
)
6696 res
+= YYFPRINTF (yyo
, ".%d", yylocp
->char0
);
6698 if (0 <= yylocp
->line1
)
6700 if (yylocp
->line0
< yylocp
->line1
)
6702 res
+= YYFPRINTF (yyo
, "-%d", yylocp
->line1
);
6704 res
+= YYFPRINTF (yyo
, ".%d", end_col
);
6706 else if (0 <= end_col
&& yylocp
->char0
< end_col
)
6707 res
+= YYFPRINTF (yyo
, "-%d", end_col
);
6712 # define YY_LOCATION_PRINT(File, Loc) \
6713 yy_location_print_ (File, &(Loc))
6716 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
6721 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
6725 YYFPRINTF (stderr, "%s ", Title); \
6726 yy_symbol_print (stderr, \
6727 Type, Value, Location, _p); \
6728 YYFPRINTF (stderr, "\n"); \
6733 /*----------------------------------------.
6734 | Print this symbol's value on YYOUTPUT. |
6735 `----------------------------------------*/
6738 yy_symbol_value_print (FILE *yyoutput
, int yytype
, YYSTYPE
const * const yyvaluep
, YYLTYPE
const * const yylocationp
, HPHP::HPHP_PARSER_NS::Parser
*_p
)
6740 FILE *yyo
= yyoutput
;
6742 YYUSE (yylocationp
);
6747 if (yytype
< YYNTOKENS
)
6748 YYPRINT (yyoutput
, yytoknum
[yytype
], *yyvaluep
);
6754 /*--------------------------------.
6755 | Print this symbol on YYOUTPUT. |
6756 `--------------------------------*/
6759 yy_symbol_print (FILE *yyoutput
, int yytype
, YYSTYPE
const * const yyvaluep
, YYLTYPE
const * const yylocationp
, HPHP::HPHP_PARSER_NS::Parser
*_p
)
6761 YYFPRINTF (yyoutput
, "%s %s (",
6762 yytype
< YYNTOKENS
? "token" : "nterm", yytname
[yytype
]);
6764 YY_LOCATION_PRINT (yyoutput
, *yylocationp
);
6765 YYFPRINTF (yyoutput
, ": ");
6766 yy_symbol_value_print (yyoutput
, yytype
, yyvaluep
, yylocationp
, _p
);
6767 YYFPRINTF (yyoutput
, ")");
6770 /*------------------------------------------------------------------.
6771 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
6773 `------------------------------------------------------------------*/
6776 yy_stack_print (yytype_int16
*yybottom
, yytype_int16
*yytop
)
6778 YYFPRINTF (stderr
, "Stack now");
6779 for (; yybottom
<= yytop
; yybottom
++)
6781 int yybot
= *yybottom
;
6782 YYFPRINTF (stderr
, " %d", yybot
);
6784 YYFPRINTF (stderr
, "\n");
6787 # define YY_STACK_PRINT(Bottom, Top) \
6790 yy_stack_print ((Bottom), (Top)); \
6794 /*------------------------------------------------.
6795 | Report that the YYRULE is going to be reduced. |
6796 `------------------------------------------------*/
6799 yy_reduce_print (yytype_int16
*yyssp
, YYSTYPE
*yyvsp
, YYLTYPE
*yylsp
, int yyrule
, HPHP::HPHP_PARSER_NS::Parser
*_p
)
6801 unsigned long yylno
= yyrline
[yyrule
];
6802 int yynrhs
= yyr2
[yyrule
];
6804 YYFPRINTF (stderr
, "Reducing stack by rule %d (line %lu):\n",
6806 /* The symbols being reduced. */
6807 for (yyi
= 0; yyi
< yynrhs
; yyi
++)
6809 YYFPRINTF (stderr
, " $%d = ", yyi
+ 1);
6810 yy_symbol_print (stderr
,
6811 yystos
[yyssp
[yyi
+ 1 - yynrhs
]],
6812 &(yyvsp
[(yyi
+ 1) - (yynrhs
)])
6813 , &(yylsp
[(yyi
+ 1) - (yynrhs
)]) , _p
);
6814 YYFPRINTF (stderr
, "\n");
6818 # define YY_REDUCE_PRINT(Rule) \
6821 yy_reduce_print (yyssp, yyvsp, yylsp, Rule, _p); \
6824 /* Nonzero means print parse trace. It is left uninitialized so that
6825 multiple parsers can coexist. */
6827 #else /* !YYDEBUG */
6828 # define YYDPRINTF(Args)
6829 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
6830 # define YY_STACK_PRINT(Bottom, Top)
6831 # define YY_REDUCE_PRINT(Rule)
6832 #endif /* !YYDEBUG */
6835 /* YYINITDEPTH -- initial size of the parser's stacks. */
6837 # define YYINITDEPTH 200
6840 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
6841 if the built-in stack extension method is used).
6843 Do not make this value too large; the results are undefined if
6844 YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
6845 evaluated with infinite-precision integer arithmetic. */
6848 # define YYMAXDEPTH 10000
6855 # if defined __GLIBC__ && defined _STRING_H
6856 # define yystrlen strlen
6858 /* Return the length of YYSTR. */
6860 yystrlen (const char *yystr
)
6863 for (yylen
= 0; yystr
[yylen
]; yylen
++)
6871 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
6872 # define yystpcpy stpcpy
6874 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
6877 yystpcpy (char *yydest
, const char *yysrc
)
6880 const char *yys
= yysrc
;
6882 while ((*yyd
++ = *yys
++) != '\0')
6891 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
6892 quotes and backslashes, so that it's suitable for yyerror. The
6893 heuristic is that double-quoting is unnecessary unless the string
6894 contains an apostrophe, a comma, or backslash (other than
6895 backslash-backslash). YYSTR is taken from yytname. If YYRES is
6896 null, do not copy; instead, return the length of what the result
6899 yytnamerr (char *yyres
, const char *yystr
)
6904 char const *yyp
= yystr
;
6911 goto do_not_strip_quotes
;
6915 goto do_not_strip_quotes
;
6928 do_not_strip_quotes
: ;
6932 return yystrlen (yystr
);
6934 return yystpcpy (yyres
, yystr
) - yyres
;
6938 /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
6939 about the unexpected token YYTOKEN for the state stack whose top is
6942 Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is
6943 not large enough to hold the message. In that case, also set
6944 *YYMSG_ALLOC to the required number of bytes. Return 2 if the
6945 required number of bytes is too large to store. */
6947 yysyntax_error (YYSIZE_T
*yymsg_alloc
, char **yymsg
,
6948 yytype_int16
*yyssp
, int yytoken
)
6950 YYSIZE_T yysize0
= yytnamerr (YY_NULLPTR
, yytname
[yytoken
]);
6951 YYSIZE_T yysize
= yysize0
;
6952 enum { YYERROR_VERBOSE_ARGS_MAXIMUM
= 5 };
6953 /* Internationalized format string. */
6954 const char *yyformat
= YY_NULLPTR
;
6955 /* Arguments of yyformat. */
6956 char const *yyarg
[YYERROR_VERBOSE_ARGS_MAXIMUM
];
6957 /* Number of reported tokens (one for the "unexpected", one per
6961 /* There are many possibilities here to consider:
6962 - If this state is a consistent state with a default action, then
6963 the only way this function was invoked is if the default action
6964 is an error action. In that case, don't check for expected
6965 tokens because there are none.
6966 - The only way there can be no lookahead present (in yychar) is if
6967 this state is a consistent state with a default action. Thus,
6968 detecting the absence of a lookahead is sufficient to determine
6969 that there is no unexpected or expected token to report. In that
6970 case, just report a simple "syntax error".
6971 - Don't assume there isn't a lookahead just because this state is a
6972 consistent state with a default action. There might have been a
6973 previous inconsistent state, consistent state with a non-default
6974 action, or user semantic action that manipulated yychar.
6975 - Of course, the expected token list depends on states to have
6976 correct lookahead information, and it depends on the parser not
6977 to perform extra reductions after fetching a lookahead from the
6978 scanner and before detecting a syntax error. Thus, state merging
6979 (from LALR or IELR) and default reductions corrupt the expected
6980 token list. However, the list is correct for canonical LR with
6981 one exception: it will still contain any token that will not be
6982 accepted due to an error action in a later state.
6984 if (yytoken
!= YYEMPTY
)
6986 int yyn
= yypact
[*yyssp
];
6987 yyarg
[yycount
++] = yytname
[yytoken
];
6988 if (!yypact_value_is_default (yyn
))
6990 /* Start YYX at -YYN if negative to avoid negative indexes in
6991 YYCHECK. In other words, skip the first -YYN actions for
6992 this state because they are default actions. */
6993 int yyxbegin
= yyn
< 0 ? -yyn
: 0;
6994 /* Stay within bounds of both yycheck and yytname. */
6995 int yychecklim
= YYLAST
- yyn
+ 1;
6996 int yyxend
= yychecklim
< YYNTOKENS
? yychecklim
: YYNTOKENS
;
6999 for (yyx
= yyxbegin
; yyx
< yyxend
; ++yyx
)
7000 if (yycheck
[yyx
+ yyn
] == yyx
&& yyx
!= YYTERROR
7001 && !yytable_value_is_error (yytable
[yyx
+ yyn
]))
7003 if (yycount
== YYERROR_VERBOSE_ARGS_MAXIMUM
)
7009 yyarg
[yycount
++] = yytname
[yyx
];
7011 YYSIZE_T yysize1
= yysize
+ yytnamerr (YY_NULLPTR
, yytname
[yyx
]);
7012 if (! (yysize
<= yysize1
7013 && yysize1
<= YYSTACK_ALLOC_MAXIMUM
))
7023 # define YYCASE_(N, S) \
7027 default: /* Avoid compiler warnings. */
7028 YYCASE_(0, YY_("syntax error"));
7029 YYCASE_(1, YY_("syntax error, unexpected %s"));
7030 YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
7031 YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
7032 YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
7033 YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
7038 YYSIZE_T yysize1
= yysize
+ yystrlen (yyformat
);
7039 if (! (yysize
<= yysize1
&& yysize1
<= YYSTACK_ALLOC_MAXIMUM
))
7044 if (*yymsg_alloc
< yysize
)
7046 *yymsg_alloc
= 2 * yysize
;
7047 if (! (yysize
<= *yymsg_alloc
7048 && *yymsg_alloc
<= YYSTACK_ALLOC_MAXIMUM
))
7049 *yymsg_alloc
= YYSTACK_ALLOC_MAXIMUM
;
7053 /* Avoid sprintf, as that infringes on the user's name space.
7054 Don't have undefined behavior even if the translation
7055 produced a string with the wrong number of "%s"s. */
7059 while ((*yyp
= *yyformat
) != '\0')
7060 if (*yyp
== '%' && yyformat
[1] == 's' && yyi
< yycount
)
7062 yyp
+= yytnamerr (yyp
, yyarg
[yyi
++]);
7073 #endif /* YYERROR_VERBOSE */
7075 /*-----------------------------------------------.
7076 | Release the memory associated to this symbol. |
7077 `-----------------------------------------------*/
7080 yydestruct (const char *yymsg
, int yytype
, YYSTYPE
*yyvaluep
, YYLTYPE
*yylocationp
, HPHP::HPHP_PARSER_NS::Parser
*_p
)
7083 YYUSE (yylocationp
);
7087 YY_SYMBOL_PRINT (yymsg
, yytype
, yyvaluep
, yylocationp
);
7089 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
7091 YY_IGNORE_MAYBE_UNINITIALIZED_END
7102 yyparse (HPHP::HPHP_PARSER_NS::Parser
*_p
)
7104 /* The lookahead symbol. */
7108 /* The semantic value of the lookahead symbol. */
7109 /* Default value used for initialization, for pacifying older GCCs
7110 or non-GCC compilers. */
7111 YY_INITIAL_VALUE (static YYSTYPE yyval_default
;)
7112 YYSTYPE yylval
YY_INITIAL_VALUE (= yyval_default
);
7114 /* Location data for the lookahead symbol. */
7115 static YYLTYPE yyloc_default
7116 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
7120 YYLTYPE yylloc
= yyloc_default
;
7122 /* Number of syntax errors so far. */
7126 /* Number of tokens to shift before error messages enabled. */
7129 /* The stacks and their tools:
7130 'yyss': related to states.
7131 'yyvs': related to semantic values.
7132 'yyls': related to locations.
7134 Refer to the stacks through separate pointers, to allow yyoverflow
7135 to reallocate them elsewhere. */
7137 /* The state stack. */
7138 yytype_int16 yyssa
[YYINITDEPTH
];
7140 yytype_int16
*yyssp
;
7142 /* The semantic value stack. */
7143 YYSTYPE yyvsa
[YYINITDEPTH
];
7147 /* The location stack. */
7148 YYLTYPE yylsa
[YYINITDEPTH
];
7152 /* The locations where the error started and ended. */
7153 YYLTYPE yyerror_range
[3];
7155 YYSIZE_T yystacksize
;
7159 /* Lookahead token as an internal (translated) token number. */
7161 /* The variables used to return semantic value and location from the
7167 /* Buffer for error messages, and its allocated size. */
7169 char *yymsg
= yymsgbuf
;
7170 YYSIZE_T yymsg_alloc
= sizeof yymsgbuf
;
7173 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
7175 /* The number of symbols on the RHS of the reduced rule.
7176 Keep to zero when no symbol should be popped. */
7179 yyssp
= yyss
= yyssa
;
7180 yyvsp
= yyvs
= yyvsa
;
7181 yylsp
= yyls
= yylsa
;
7182 yystacksize
= YYINITDEPTH
;
7184 YYDPRINTF ((stderr
, "Starting parse\n"));
7189 yychar
= YYEMPTY
; /* Cause a token to be read. */
7193 /*------------------------------------------------------------.
7194 | yynewstate -- Push a new state, which is found in yystate. |
7195 `------------------------------------------------------------*/
7197 /* In all cases, when you get here, the value and location stacks
7198 have just been pushed. So pushing a state here evens the stacks. */
7204 if (yyss
+ yystacksize
- 1 <= yyssp
)
7206 /* Get the current used size of the three stacks, in elements. */
7207 YYSIZE_T yysize
= yyssp
- yyss
+ 1;
7211 /* Give user a chance to reallocate the stack. Use copies of
7212 these so that the &'s don't force the real ones into
7214 YYSTYPE
*yyvs1
= yyvs
;
7215 yytype_int16
*yyss1
= yyss
;
7216 YYLTYPE
*yyls1
= yyls
;
7218 /* Each stack pointer address is followed by the size of the
7219 data in use in that stack, in bytes. This used to be a
7220 conditional around just the two extra args, but that might
7221 be undefined if yyoverflow is a macro. */
7222 yyoverflow (YY_("memory exhausted"),
7223 &yyss1
, yysize
* sizeof (*yyssp
),
7224 &yyvs1
, yysize
* sizeof (*yyvsp
),
7225 &yyls1
, yysize
* sizeof (*yylsp
),
7232 #else /* no yyoverflow */
7233 # ifndef YYSTACK_RELOCATE
7234 goto yyexhaustedlab
;
7236 /* Extend the stack our own way. */
7237 if (YYMAXDEPTH
<= yystacksize
)
7238 goto yyexhaustedlab
;
7240 if (YYMAXDEPTH
< yystacksize
)
7241 yystacksize
= YYMAXDEPTH
;
7244 yytype_int16
*yyss1
= yyss
;
7245 struct yyalloc
*yyptr
=
7246 (struct yyalloc
*) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize
));
7247 memset(yyptr
, 0, YYSTACK_BYTES (yystacksize
));
7249 goto yyexhaustedlab
;
7250 YYSTACK_RELOCATE (yyss_alloc
, yyss
);
7251 YYSTACK_RELOCATE_RESET (yyvs_alloc
, yyvs
);
7252 YYSTACK_RELOCATE (yyls_alloc
, yyls
);
7253 # undef YYSTACK_RELOCATE
7255 YYSTACK_FREE (yyss1
);
7258 #endif /* no yyoverflow */
7260 yyssp
= yyss
+ yysize
- 1;
7261 yyvsp
= yyvs
+ yysize
- 1;
7262 yylsp
= yyls
+ yysize
- 1;
7264 YYDPRINTF ((stderr
, "Stack size increased to %lu\n",
7265 (unsigned long) yystacksize
));
7267 if (yyss
+ yystacksize
- 1 <= yyssp
)
7271 YYDPRINTF ((stderr
, "Entering state %d\n", yystate
));
7273 if (yystate
== YYFINAL
)
7283 /* Do appropriate processing given the current state. Read a
7284 lookahead token if we need one and don't already have one. */
7286 /* First try to decide what to do without reference to lookahead token. */
7287 yyn
= yypact
[yystate
];
7288 if (yypact_value_is_default (yyn
))
7291 /* Not known => get a lookahead token if don't already have one. */
7293 /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
7294 if (yychar
== YYEMPTY
)
7296 YYDPRINTF ((stderr
, "Reading a token: "));
7297 yychar
= yylex (&yylval
, &yylloc
, _p
);
7300 if (yychar
<= YYEOF
)
7302 yychar
= yytoken
= YYEOF
;
7303 YYDPRINTF ((stderr
, "Now at end of input.\n"));
7307 yytoken
= YYTRANSLATE (yychar
);
7308 YY_SYMBOL_PRINT ("Next token is", yytoken
, &yylval
, &yylloc
);
7311 /* If the proper action on seeing token YYTOKEN is to reduce or to
7312 detect an error, take that action. */
7314 if (yyn
< 0 || YYLAST
< yyn
|| yycheck
[yyn
] != yytoken
)
7319 if (yytable_value_is_error (yyn
))
7325 /* Count tokens shifted since error; after three, turn off error
7330 /* Shift the lookahead token. */
7331 YY_SYMBOL_PRINT ("Shifting", yytoken
, &yylval
, &yylloc
);
7333 /* Discard the shifted token. */
7337 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
7339 YY_IGNORE_MAYBE_UNINITIALIZED_END
7344 /*-----------------------------------------------------------.
7345 | yydefault -- do the default action for the current state. |
7346 `-----------------------------------------------------------*/
7348 yyn
= yydefact
[yystate
];
7354 /*-----------------------------.
7355 | yyreduce -- Do a reduction. |
7356 `-----------------------------*/
7358 /* yyn is the number of a rule to reduce with. */
7361 /* If YYLEN is nonzero, implement the default value of the action:
7364 Otherwise, the following line sets YYVAL to garbage.
7365 This behavior is undocumented and Bison
7366 users should not rely upon it. Assigning to YYVAL
7367 unconditionally makes the parser a bit smaller, and it avoids a
7368 GCC warning that YYVAL may be used uninitialized. */
7369 yyval
= yyvsp
[1-yylen
];
7371 /* Default location. */
7372 YYLLOC_DEFAULT (yyloc
, (yylsp
- yylen
), yylen
);
7373 yyerror_range
[1] = yyloc
;
7374 YY_REDUCE_PRINT (yyn
);
7378 #line 821 "hphp.y" /* yacc.c:1651 */
7379 { _p
->onNewLabelScope(true);
7380 _p
->initParseTree();}
7381 #line 7380 "hphp.5.tab.cpp" /* yacc.c:1651 */
7385 #line 824 "hphp.y" /* yacc.c:1651 */
7386 { _p
->popLabelInfo();
7387 _p
->finiParseTree();
7388 _p
->onCompleteLabelScope(true);}
7389 #line 7388 "hphp.5.tab.cpp" /* yacc.c:1651 */
7393 #line 831 "hphp.y" /* yacc.c:1651 */
7394 { _p
->addTopStatement((yyvsp
[0]));}
7395 #line 7394 "hphp.5.tab.cpp" /* yacc.c:1651 */
7399 #line 832 "hphp.y" /* yacc.c:1651 */
7401 #line 7400 "hphp.5.tab.cpp" /* yacc.c:1651 */
7405 #line 835 "hphp.y" /* yacc.c:1651 */
7406 { _p
->nns((yyvsp
[0]).num(), (yyvsp
[0]).text()); (yyval
) = (yyvsp
[0]);}
7407 #line 7406 "hphp.5.tab.cpp" /* yacc.c:1651 */
7411 #line 836 "hphp.y" /* yacc.c:1651 */
7412 { _p
->nns(); (yyval
) = (yyvsp
[0]);}
7413 #line 7412 "hphp.5.tab.cpp" /* yacc.c:1651 */
7417 #line 837 "hphp.y" /* yacc.c:1651 */
7418 { _p
->nns(); (yyval
) = (yyvsp
[0]);}
7419 #line 7418 "hphp.5.tab.cpp" /* yacc.c:1651 */
7423 #line 838 "hphp.y" /* yacc.c:1651 */
7424 { _p
->nns(); (yyval
) = (yyvsp
[0]);}
7425 #line 7424 "hphp.5.tab.cpp" /* yacc.c:1651 */
7429 #line 839 "hphp.y" /* yacc.c:1651 */
7430 { _p
->nns(); (yyval
) = (yyvsp
[0]);}
7431 #line 7430 "hphp.5.tab.cpp" /* yacc.c:1651 */
7435 #line 840 "hphp.y" /* yacc.c:1651 */
7436 { (yyval
) = (yyvsp
[0]); }
7437 #line 7436 "hphp.5.tab.cpp" /* yacc.c:1651 */
7441 #line 841 "hphp.y" /* yacc.c:1651 */
7442 { _p
->onHaltCompiler();
7443 _p
->finiParseTree();
7445 #line 7444 "hphp.5.tab.cpp" /* yacc.c:1651 */
7449 #line 844 "hphp.y" /* yacc.c:1651 */
7450 { _p
->onNamespaceStart((yyvsp
[-1]).text(), true);
7452 #line 7451 "hphp.5.tab.cpp" /* yacc.c:1651 */
7456 #line 846 "hphp.y" /* yacc.c:1651 */
7457 { _p
->onNamespaceStart((yyvsp
[-1]).text());}
7458 #line 7457 "hphp.5.tab.cpp" /* yacc.c:1651 */
7462 #line 847 "hphp.y" /* yacc.c:1651 */
7463 { _p
->onNamespaceEnd(); (yyval
) = (yyvsp
[-1]);}
7464 #line 7463 "hphp.5.tab.cpp" /* yacc.c:1651 */
7468 #line 848 "hphp.y" /* yacc.c:1651 */
7469 { _p
->onNamespaceStart("");}
7470 #line 7469 "hphp.5.tab.cpp" /* yacc.c:1651 */
7474 #line 849 "hphp.y" /* yacc.c:1651 */
7475 { _p
->onNamespaceEnd(); (yyval
) = (yyvsp
[-1]);}
7476 #line 7475 "hphp.5.tab.cpp" /* yacc.c:1651 */
7480 #line 850 "hphp.y" /* yacc.c:1651 */
7481 { _p
->onUse((yyvsp
[-1]),
7482 &Parser::useClassAndNamespace
);
7483 _p
->nns(T_USE
); (yyval
).reset();}
7484 #line 7483 "hphp.5.tab.cpp" /* yacc.c:1651 */
7488 #line 854 "hphp.y" /* yacc.c:1651 */
7490 only_in_hh_syntax(_p
);
7491 _p
->onUse((yyvsp
[-1]), &Parser::useNamespace
);
7492 _p
->nns(T_USE
); (yyval
).reset();}
7493 #line 7492 "hphp.5.tab.cpp" /* yacc.c:1651 */
7497 #line 859 "hphp.y" /* yacc.c:1651 */
7499 only_in_hh_syntax(_p
);
7500 _p
->onUse((yyvsp
[-1]), &Parser::useClass
);
7501 _p
->nns(T_USE
); (yyval
).reset();}
7502 #line 7501 "hphp.5.tab.cpp" /* yacc.c:1651 */
7506 #line 864 "hphp.y" /* yacc.c:1651 */
7507 { _p
->onUse((yyvsp
[-1]), &Parser::useFunction
);
7508 _p
->nns(T_USE
); (yyval
).reset();}
7509 #line 7508 "hphp.5.tab.cpp" /* yacc.c:1651 */
7513 #line 867 "hphp.y" /* yacc.c:1651 */
7514 { _p
->onUse((yyvsp
[-1]), &Parser::useConst
);
7515 _p
->nns(T_USE
); (yyval
).reset();}
7516 #line 7515 "hphp.5.tab.cpp" /* yacc.c:1651 */
7520 #line 870 "hphp.y" /* yacc.c:1651 */
7521 { _p
->onGroupUse((yyvsp
[-4]).text(), (yyvsp
[-2]),
7523 _p
->nns(T_USE
); (yyval
).reset();}
7524 #line 7523 "hphp.5.tab.cpp" /* yacc.c:1651 */
7528 #line 874 "hphp.y" /* yacc.c:1651 */
7529 { _p
->onGroupUse((yyvsp
[-4]).text(), (yyvsp
[-2]),
7530 &Parser::useFunction
);
7531 _p
->nns(T_USE
); (yyval
).reset();}
7532 #line 7531 "hphp.5.tab.cpp" /* yacc.c:1651 */
7536 #line 878 "hphp.y" /* yacc.c:1651 */
7537 { _p
->onGroupUse((yyvsp
[-4]).text(), (yyvsp
[-2]),
7539 _p
->nns(T_USE
); (yyval
).reset();}
7540 #line 7539 "hphp.5.tab.cpp" /* yacc.c:1651 */
7544 #line 882 "hphp.y" /* yacc.c:1651 */
7545 { _p
->onGroupUse((yyvsp
[-4]).text(), (yyvsp
[-2]),
7546 &Parser::useNamespace
);
7547 _p
->nns(T_USE
); (yyval
).reset();}
7548 #line 7547 "hphp.5.tab.cpp" /* yacc.c:1651 */
7552 #line 886 "hphp.y" /* yacc.c:1651 */
7553 { _p
->onGroupUse((yyvsp
[-4]).text(), (yyvsp
[-2]),
7555 _p
->nns(T_USE
); (yyval
).reset();}
7556 #line 7555 "hphp.5.tab.cpp" /* yacc.c:1651 */
7560 #line 889 "hphp.y" /* yacc.c:1651 */
7562 _p
->finishStatement((yyval
), (yyvsp
[-1])); (yyval
) = 1;}
7563 #line 7562 "hphp.5.tab.cpp" /* yacc.c:1651 */
7567 #line 894 "hphp.y" /* yacc.c:1651 */
7568 { (yyval
) = (yyvsp
[0]);}
7569 #line 7568 "hphp.5.tab.cpp" /* yacc.c:1651 */
7573 #line 895 "hphp.y" /* yacc.c:1651 */
7574 { (yyval
) = (yyvsp
[0]);}
7575 #line 7574 "hphp.5.tab.cpp" /* yacc.c:1651 */
7579 #line 896 "hphp.y" /* yacc.c:1651 */
7580 { (yyval
) = (yyvsp
[0]);}
7581 #line 7580 "hphp.5.tab.cpp" /* yacc.c:1651 */
7585 #line 897 "hphp.y" /* yacc.c:1651 */
7586 { (yyval
) = (yyvsp
[0]);}
7587 #line 7586 "hphp.5.tab.cpp" /* yacc.c:1651 */
7591 #line 898 "hphp.y" /* yacc.c:1651 */
7592 { (yyval
) = (yyvsp
[0]);}
7593 #line 7592 "hphp.5.tab.cpp" /* yacc.c:1651 */
7597 #line 899 "hphp.y" /* yacc.c:1651 */
7598 { (yyval
) = (yyvsp
[0]);}
7599 #line 7598 "hphp.5.tab.cpp" /* yacc.c:1651 */
7603 #line 900 "hphp.y" /* yacc.c:1651 */
7604 { (yyval
) = (yyvsp
[0]);}
7605 #line 7604 "hphp.5.tab.cpp" /* yacc.c:1651 */
7609 #line 901 "hphp.y" /* yacc.c:1651 */
7610 { (yyval
) = (yyvsp
[0]);}
7611 #line 7610 "hphp.5.tab.cpp" /* yacc.c:1651 */
7615 #line 902 "hphp.y" /* yacc.c:1651 */
7616 { (yyval
) = (yyvsp
[0]);}
7617 #line 7616 "hphp.5.tab.cpp" /* yacc.c:1651 */
7621 #line 903 "hphp.y" /* yacc.c:1651 */
7622 { (yyval
) = (yyvsp
[0]);}
7623 #line 7622 "hphp.5.tab.cpp" /* yacc.c:1651 */
7627 #line 904 "hphp.y" /* yacc.c:1651 */
7628 { (yyval
) = (yyvsp
[0]);}
7629 #line 7628 "hphp.5.tab.cpp" /* yacc.c:1651 */
7633 #line 905 "hphp.y" /* yacc.c:1651 */
7634 { (yyval
) = (yyvsp
[0]);}
7635 #line 7634 "hphp.5.tab.cpp" /* yacc.c:1651 */
7639 #line 906 "hphp.y" /* yacc.c:1651 */
7640 { (yyval
) = (yyvsp
[0]);}
7641 #line 7640 "hphp.5.tab.cpp" /* yacc.c:1651 */
7645 #line 988 "hphp.y" /* yacc.c:1651 */
7646 { (yyval
) = (yyvsp
[-1]);}
7647 #line 7646 "hphp.5.tab.cpp" /* yacc.c:1651 */
7651 #line 990 "hphp.y" /* yacc.c:1651 */
7652 { (yyval
) = (yyvsp
[-1]);}
7653 #line 7652 "hphp.5.tab.cpp" /* yacc.c:1651 */
7657 #line 995 "hphp.y" /* yacc.c:1651 */
7658 { _p
->addStatement((yyval
),(yyvsp
[-2]),(yyvsp
[0]));}
7659 #line 7658 "hphp.5.tab.cpp" /* yacc.c:1651 */
7663 #line 996 "hphp.y" /* yacc.c:1651 */
7665 _p
->addStatement((yyval
),(yyval
),(yyvsp
[0]));}
7666 #line 7665 "hphp.5.tab.cpp" /* yacc.c:1651 */
7670 #line 1002 "hphp.y" /* yacc.c:1651 */
7671 { (yyval
) = (yyvsp
[-1]);}
7672 #line 7671 "hphp.5.tab.cpp" /* yacc.c:1651 */
7676 #line 1006 "hphp.y" /* yacc.c:1651 */
7677 { _p
->onUseDeclaration((yyval
), (yyvsp
[0]).text(),"");}
7678 #line 7677 "hphp.5.tab.cpp" /* yacc.c:1651 */
7682 #line 1007 "hphp.y" /* yacc.c:1651 */
7683 { _p
->onUseDeclaration((yyval
), (yyvsp
[0]).text(),"");}
7684 #line 7683 "hphp.5.tab.cpp" /* yacc.c:1651 */
7688 #line 1009 "hphp.y" /* yacc.c:1651 */
7689 { _p
->onUseDeclaration((yyval
), (yyvsp
[-2]).text(),(yyvsp
[0]).text());}
7690 #line 7689 "hphp.5.tab.cpp" /* yacc.c:1651 */
7694 #line 1011 "hphp.y" /* yacc.c:1651 */
7695 { _p
->onUseDeclaration((yyval
), (yyvsp
[-2]).text(),(yyvsp
[0]).text());}
7696 #line 7695 "hphp.5.tab.cpp" /* yacc.c:1651 */
7700 #line 1016 "hphp.y" /* yacc.c:1651 */
7701 { _p
->addStatement((yyval
),(yyvsp
[-2]),(yyvsp
[0]));}
7702 #line 7701 "hphp.5.tab.cpp" /* yacc.c:1651 */
7706 #line 1017 "hphp.y" /* yacc.c:1651 */
7708 _p
->addStatement((yyval
),(yyval
),(yyvsp
[0]));}
7709 #line 7708 "hphp.5.tab.cpp" /* yacc.c:1651 */
7713 #line 1023 "hphp.y" /* yacc.c:1651 */
7714 { (yyval
) = (yyvsp
[-1]);}
7715 #line 7714 "hphp.5.tab.cpp" /* yacc.c:1651 */
7719 #line 1027 "hphp.y" /* yacc.c:1651 */
7720 { _p
->onMixedUseDeclaration((yyval
), (yyvsp
[0]),
7721 &Parser::useClassAndNamespace
);}
7722 #line 7721 "hphp.5.tab.cpp" /* yacc.c:1651 */
7726 #line 1029 "hphp.y" /* yacc.c:1651 */
7727 { _p
->onMixedUseDeclaration((yyval
), (yyvsp
[0]),
7728 &Parser::useFunction
);}
7729 #line 7728 "hphp.5.tab.cpp" /* yacc.c:1651 */
7733 #line 1031 "hphp.y" /* yacc.c:1651 */
7734 { _p
->onMixedUseDeclaration((yyval
), (yyvsp
[0]),
7735 &Parser::useConst
);}
7736 #line 7735 "hphp.5.tab.cpp" /* yacc.c:1651 */
7740 #line 1036 "hphp.y" /* yacc.c:1651 */
7741 { (yyval
) = (yyvsp
[0]);}
7742 #line 7741 "hphp.5.tab.cpp" /* yacc.c:1651 */
7746 #line 1038 "hphp.y" /* yacc.c:1651 */
7747 { (yyval
) = (yyvsp
[-2]) + (yyvsp
[-1]) + (yyvsp
[0]); (yyval
) = (yyvsp
[-2]).num() | 2;}
7748 #line 7747 "hphp.5.tab.cpp" /* yacc.c:1651 */
7752 #line 1041 "hphp.y" /* yacc.c:1651 */
7753 { (yyval
) = (yyvsp
[0]); (yyval
) = (yyval
).num() | 1;}
7754 #line 7753 "hphp.5.tab.cpp" /* yacc.c:1651 */
7758 #line 1043 "hphp.y" /* yacc.c:1651 */
7759 { (yyval
).set((yyvsp
[0]).num() | 2, _p
->nsDecl((yyvsp
[0]).text()));}
7760 #line 7759 "hphp.5.tab.cpp" /* yacc.c:1651 */
7764 #line 1044 "hphp.y" /* yacc.c:1651 */
7765 { (yyval
) = (yyvsp
[0]); (yyval
) = (yyval
).num() | 2;}
7766 #line 7765 "hphp.5.tab.cpp" /* yacc.c:1651 */
7770 #line 1049 "hphp.y" /* yacc.c:1651 */
7771 { if ((yyvsp
[-1]).num() & 1) {
7772 (yyvsp
[-1]).setText(_p
->resolve((yyvsp
[-1]).text(),0));
7774 (yyval
) = (yyvsp
[-1]);}
7775 #line 7774 "hphp.5.tab.cpp" /* yacc.c:1651 */
7779 #line 1056 "hphp.y" /* yacc.c:1651 */
7780 { if ((yyvsp
[-1]).num() & 1) {
7781 (yyvsp
[-1]).setText(_p
->resolve((yyvsp
[-1]).text(),1));
7783 _p
->onTypeAnnotation((yyval
), (yyvsp
[-1]), (yyvsp
[0]));}
7784 #line 7783 "hphp.5.tab.cpp" /* yacc.c:1651 */
7788 #line 1064 "hphp.y" /* yacc.c:1651 */
7789 { (yyvsp
[-2]).setText(_p
->nsDecl((yyvsp
[-2]).text()));
7790 _p
->onConst((yyval
),(yyvsp
[-2]),(yyvsp
[0]));}
7791 #line 7790 "hphp.5.tab.cpp" /* yacc.c:1651 */
7795 #line 1067 "hphp.y" /* yacc.c:1651 */
7796 { (yyvsp
[-2]).setText(_p
->nsDecl((yyvsp
[-2]).text()));
7797 _p
->onConst((yyval
),(yyvsp
[-2]),(yyvsp
[0]));}
7798 #line 7797 "hphp.5.tab.cpp" /* yacc.c:1651 */
7802 #line 1073 "hphp.y" /* yacc.c:1651 */
7803 { _p
->addStatement((yyval
),(yyvsp
[-1]),(yyvsp
[0])); }
7804 #line 7803 "hphp.5.tab.cpp" /* yacc.c:1651 */
7808 #line 1074 "hphp.y" /* yacc.c:1651 */
7809 { _p
->onStatementListStart((yyval
)); }
7810 #line 7809 "hphp.5.tab.cpp" /* yacc.c:1651 */
7814 #line 1079 "hphp.y" /* yacc.c:1651 */
7816 _p
->onUsing((yyval
), (yyvsp
[-2]), true, (yyvsp
[-1]), nullptr);
7818 #line 7817 "hphp.5.tab.cpp" /* yacc.c:1651 */
7822 #line 1086 "hphp.y" /* yacc.c:1651 */
7823 { _p
->addStatement((yyval
),(yyvsp
[-1]),(yyvsp
[0]));}
7824 #line 7823 "hphp.5.tab.cpp" /* yacc.c:1651 */
7828 #line 1087 "hphp.y" /* yacc.c:1651 */
7829 { _p
->onStatementListStart((yyval
));}
7830 #line 7829 "hphp.5.tab.cpp" /* yacc.c:1651 */
7834 #line 1092 "hphp.y" /* yacc.c:1651 */
7835 { _p
->addStatement((yyval
), (yyvsp
[-1]), (yyvsp
[0])); }
7836 #line 7835 "hphp.5.tab.cpp" /* yacc.c:1651 */
7840 #line 1093 "hphp.y" /* yacc.c:1651 */
7842 _p
->addStatement((yyval
), (yyval
), (yyvsp
[0])); }
7843 #line 7842 "hphp.5.tab.cpp" /* yacc.c:1651 */
7847 #line 1098 "hphp.y" /* yacc.c:1651 */
7848 { (yyval
) = (yyvsp
[0]);}
7849 #line 7848 "hphp.5.tab.cpp" /* yacc.c:1651 */
7853 #line 1099 "hphp.y" /* yacc.c:1651 */
7854 { (yyval
) = (yyvsp
[0]);}
7855 #line 7854 "hphp.5.tab.cpp" /* yacc.c:1651 */
7859 #line 1100 "hphp.y" /* yacc.c:1651 */
7860 { (yyval
) = (yyvsp
[0]);}
7861 #line 7860 "hphp.5.tab.cpp" /* yacc.c:1651 */
7865 #line 1101 "hphp.y" /* yacc.c:1651 */
7866 { (yyval
) = (yyvsp
[0]);}
7867 #line 7866 "hphp.5.tab.cpp" /* yacc.c:1651 */
7871 #line 1104 "hphp.y" /* yacc.c:1651 */
7872 { _p
->onBlock((yyval
), (yyvsp
[-1]));}
7873 #line 7872 "hphp.5.tab.cpp" /* yacc.c:1651 */
7877 #line 1108 "hphp.y" /* yacc.c:1651 */
7878 { _p
->onIf((yyval
),(yyvsp
[-3]),(yyvsp
[-2]),(yyvsp
[-1]),(yyvsp
[0]));}
7879 #line 7878 "hphp.5.tab.cpp" /* yacc.c:1651 */
7883 #line 1113 "hphp.y" /* yacc.c:1651 */
7884 { _p
->onIf((yyval
),(yyvsp
[-6]),(yyvsp
[-4]),(yyvsp
[-3]),(yyvsp
[-2]));}
7885 #line 7884 "hphp.5.tab.cpp" /* yacc.c:1651 */
7889 #line 1114 "hphp.y" /* yacc.c:1651 */
7890 { _p
->onNewLabelScope(false);
7891 _p
->pushLabelScope(LS::LoopSwitch
);}
7892 #line 7891 "hphp.5.tab.cpp" /* yacc.c:1651 */
7896 #line 1116 "hphp.y" /* yacc.c:1651 */
7897 { _p
->popLabelScope();
7898 _p
->onWhile((yyval
),(yyvsp
[-2]),(yyvsp
[0]));
7899 _p
->onCompleteLabelScope(false);}
7900 #line 7899 "hphp.5.tab.cpp" /* yacc.c:1651 */
7904 #line 1120 "hphp.y" /* yacc.c:1651 */
7905 { _p
->onNewLabelScope(false);
7906 _p
->pushLabelScope(LS::LoopSwitch
);}
7907 #line 7906 "hphp.5.tab.cpp" /* yacc.c:1651 */
7911 #line 1123 "hphp.y" /* yacc.c:1651 */
7912 { _p
->popLabelScope();
7913 _p
->onDo((yyval
),(yyvsp
[-3]),(yyvsp
[-1]));
7914 _p
->onCompleteLabelScope(false);}
7915 #line 7914 "hphp.5.tab.cpp" /* yacc.c:1651 */
7919 #line 1127 "hphp.y" /* yacc.c:1651 */
7920 { _p
->onNewLabelScope(false);
7921 _p
->pushLabelScope(LS::LoopSwitch
);}
7922 #line 7921 "hphp.5.tab.cpp" /* yacc.c:1651 */
7926 #line 1129 "hphp.y" /* yacc.c:1651 */
7927 { _p
->popLabelScope();
7928 _p
->onFor((yyval
),(yyvsp
[-7]),(yyvsp
[-5]),(yyvsp
[-3]),(yyvsp
[0]));
7929 _p
->onCompleteLabelScope(false);}
7930 #line 7929 "hphp.5.tab.cpp" /* yacc.c:1651 */
7934 #line 1132 "hphp.y" /* yacc.c:1651 */
7935 { _p
->onNewLabelScope(false);
7936 _p
->pushLabelScope(LS::LoopSwitch
);}
7937 #line 7936 "hphp.5.tab.cpp" /* yacc.c:1651 */
7941 #line 1134 "hphp.y" /* yacc.c:1651 */
7942 { _p
->popLabelScope();
7943 _p
->onSwitch((yyval
),(yyvsp
[-2]),(yyvsp
[0]));
7944 _p
->onCompleteLabelScope(false);}
7945 #line 7944 "hphp.5.tab.cpp" /* yacc.c:1651 */
7949 #line 1137 "hphp.y" /* yacc.c:1651 */
7950 { _p
->onBreakContinue((yyval
), true, NULL
);}
7951 #line 7950 "hphp.5.tab.cpp" /* yacc.c:1651 */
7955 #line 1138 "hphp.y" /* yacc.c:1651 */
7956 { _p
->onBreakContinue((yyval
), true, &(yyvsp
[-1]));}
7957 #line 7956 "hphp.5.tab.cpp" /* yacc.c:1651 */
7961 #line 1139 "hphp.y" /* yacc.c:1651 */
7962 { _p
->onBreakContinue((yyval
), false, NULL
);}
7963 #line 7962 "hphp.5.tab.cpp" /* yacc.c:1651 */
7967 #line 1140 "hphp.y" /* yacc.c:1651 */
7968 { _p
->onBreakContinue((yyval
), false, &(yyvsp
[-1]));}
7969 #line 7968 "hphp.5.tab.cpp" /* yacc.c:1651 */
7973 #line 1141 "hphp.y" /* yacc.c:1651 */
7974 { _p
->onReturn((yyval
), NULL
);}
7975 #line 7974 "hphp.5.tab.cpp" /* yacc.c:1651 */
7979 #line 1142 "hphp.y" /* yacc.c:1651 */
7980 { _p
->onReturn((yyval
), &(yyvsp
[-1]));}
7981 #line 7980 "hphp.5.tab.cpp" /* yacc.c:1651 */
7985 #line 1143 "hphp.y" /* yacc.c:1651 */
7986 { _p
->onYieldBreak((yyval
));}
7987 #line 7986 "hphp.5.tab.cpp" /* yacc.c:1651 */
7991 #line 1144 "hphp.y" /* yacc.c:1651 */
7992 { _p
->onGlobal((yyval
), (yyvsp
[-1]));}
7993 #line 7992 "hphp.5.tab.cpp" /* yacc.c:1651 */
7997 #line 1145 "hphp.y" /* yacc.c:1651 */
7998 { _p
->onStatic((yyval
), (yyvsp
[-1]));}
7999 #line 7998 "hphp.5.tab.cpp" /* yacc.c:1651 */
8003 #line 1146 "hphp.y" /* yacc.c:1651 */
8004 { _p
->onEcho((yyval
), (yyvsp
[-1]), 0);}
8005 #line 8004 "hphp.5.tab.cpp" /* yacc.c:1651 */
8009 #line 1147 "hphp.y" /* yacc.c:1651 */
8010 { _p
->onEcho((yyval
), (yyvsp
[-1]), 0);}
8011 #line 8010 "hphp.5.tab.cpp" /* yacc.c:1651 */
8015 #line 1148 "hphp.y" /* yacc.c:1651 */
8016 { _p
->onUnset((yyval
), (yyvsp
[-2]));}
8017 #line 8016 "hphp.5.tab.cpp" /* yacc.c:1651 */
8021 #line 1149 "hphp.y" /* yacc.c:1651 */
8022 { (yyval
).reset(); (yyval
) = ';';}
8023 #line 8022 "hphp.5.tab.cpp" /* yacc.c:1651 */
8027 #line 1150 "hphp.y" /* yacc.c:1651 */
8028 { _p
->onEcho((yyval
), (yyvsp
[0]), 1);}
8029 #line 8028 "hphp.5.tab.cpp" /* yacc.c:1651 */
8033 #line 1151 "hphp.y" /* yacc.c:1651 */
8034 { _p
->onHashBang((yyval
), (yyvsp
[0]));
8035 (yyval
) = T_HASHBANG
;}
8036 #line 8035 "hphp.5.tab.cpp" /* yacc.c:1651 */
8040 #line 1155 "hphp.y" /* yacc.c:1651 */
8041 { _p
->onNewLabelScope(false);
8042 _p
->pushLabelScope(LS::LoopSwitch
);}
8043 #line 8042 "hphp.5.tab.cpp" /* yacc.c:1651 */
8047 #line 1157 "hphp.y" /* yacc.c:1651 */
8048 { _p
->popLabelScope();
8049 _p
->onForEach((yyval
),(yyvsp
[-6]),(yyvsp
[-4]),(yyvsp
[-3]),(yyvsp
[0]), false);
8050 _p
->onCompleteLabelScope(false);}
8051 #line 8050 "hphp.5.tab.cpp" /* yacc.c:1651 */
8055 #line 1162 "hphp.y" /* yacc.c:1651 */
8056 { _p
->onNewLabelScope(false);
8057 _p
->pushLabelScope(LS::LoopSwitch
);}
8058 #line 8057 "hphp.5.tab.cpp" /* yacc.c:1651 */
8062 #line 1164 "hphp.y" /* yacc.c:1651 */
8063 { _p
->popLabelScope();
8064 _p
->onForEach((yyval
),(yyvsp
[-7]),(yyvsp
[-4]),(yyvsp
[-3]),(yyvsp
[0]), true);
8065 _p
->onCompleteLabelScope(false);}
8066 #line 8065 "hphp.5.tab.cpp" /* yacc.c:1651 */
8070 #line 1168 "hphp.y" /* yacc.c:1651 */
8071 { _p
->onDeclare((yyvsp
[-2]), (yyvsp
[0]));
8072 (yyval
) = (yyvsp
[-2]);
8073 (yyval
) = T_DECLARE
;}
8074 #line 8073 "hphp.5.tab.cpp" /* yacc.c:1651 */
8078 #line 1177 "hphp.y" /* yacc.c:1651 */
8079 { _p
->onCompleteLabelScope(false);}
8080 #line 8079 "hphp.5.tab.cpp" /* yacc.c:1651 */
8084 #line 1178 "hphp.y" /* yacc.c:1651 */
8085 { _p
->onTry((yyval
),(yyvsp
[-11]),(yyvsp
[-8]),(yyvsp
[-7]),(yyvsp
[-4]),(yyvsp
[-2]),(yyvsp
[0]));}
8086 #line 8085 "hphp.5.tab.cpp" /* yacc.c:1651 */
8090 #line 1181 "hphp.y" /* yacc.c:1651 */
8091 { _p
->onCompleteLabelScope(false); }
8092 #line 8091 "hphp.5.tab.cpp" /* yacc.c:1651 */
8096 #line 1182 "hphp.y" /* yacc.c:1651 */
8097 { _p
->onTry((yyval
), (yyvsp
[-3]), (yyvsp
[0]));}
8098 #line 8097 "hphp.5.tab.cpp" /* yacc.c:1651 */
8102 #line 1184 "hphp.y" /* yacc.c:1651 */
8103 { _p
->onUsing((yyval
), (yyvsp
[-2]), false, (yyvsp
[-1]), &(yyvsp
[0]));
8104 _p
->onCompleteLabelScope(false);
8105 _p
->popLabelScope(); }
8106 #line 8105 "hphp.5.tab.cpp" /* yacc.c:1651 */
8110 #line 1188 "hphp.y" /* yacc.c:1651 */
8111 { _p
->onUsing((yyval
), (yyvsp
[-2]), false, (yyvsp
[-1]), &(yyvsp
[0]));
8112 _p
->onCompleteLabelScope(false);
8113 _p
->popLabelScope(); }
8114 #line 8113 "hphp.5.tab.cpp" /* yacc.c:1651 */
8118 #line 1192 "hphp.y" /* yacc.c:1651 */
8119 { _p
->onUsing((yyval
), (yyvsp
[-2]), false, (yyvsp
[-1]), &(yyvsp
[0]));
8120 _p
->onCompleteLabelScope(false);
8121 _p
->popLabelScope(); }
8122 #line 8121 "hphp.5.tab.cpp" /* yacc.c:1651 */
8126 #line 1196 "hphp.y" /* yacc.c:1651 */
8127 { _p
->onUsing((yyval
), (yyvsp
[-2]), false, (yyvsp
[-1]), &(yyvsp
[0]));
8128 _p
->onCompleteLabelScope(false);
8129 _p
->popLabelScope(); }
8130 #line 8129 "hphp.5.tab.cpp" /* yacc.c:1651 */
8134 #line 1200 "hphp.y" /* yacc.c:1651 */
8135 { _p
->onUsing((yyval
), (yyvsp
[-4]), false, (yyvsp
[-2]), &(yyvsp
[0]));
8136 _p
->onCompleteLabelScope(false);
8137 _p
->popLabelScope(); }
8138 #line 8137 "hphp.5.tab.cpp" /* yacc.c:1651 */
8142 #line 1204 "hphp.y" /* yacc.c:1651 */
8143 { _p
->onUsing((yyval
), (yyvsp
[-4]), false, (yyvsp
[-2]), &(yyvsp
[0]));
8144 _p
->onCompleteLabelScope(false);
8145 _p
->popLabelScope(); }
8146 #line 8145 "hphp.5.tab.cpp" /* yacc.c:1651 */
8150 #line 1209 "hphp.y" /* yacc.c:1651 */
8151 { _p
->onUsing((yyval
), (yyvsp
[-4]), false, (yyvsp
[-2]), &(yyvsp
[0]));
8152 _p
->onCompleteLabelScope(false);
8153 _p
->popLabelScope(); }
8154 #line 8153 "hphp.5.tab.cpp" /* yacc.c:1651 */
8158 #line 1212 "hphp.y" /* yacc.c:1651 */
8159 { _p
->onThrow((yyval
), (yyvsp
[-1]));}
8160 #line 8159 "hphp.5.tab.cpp" /* yacc.c:1651 */
8164 #line 1213 "hphp.y" /* yacc.c:1651 */
8165 { _p
->onGoto((yyval
), (yyvsp
[-1]), true);
8166 _p
->addGoto((yyvsp
[-1]).text(),
8169 #line 8168 "hphp.5.tab.cpp" /* yacc.c:1651 */
8173 #line 1217 "hphp.y" /* yacc.c:1651 */
8174 { _p
->onExpStatement((yyval
), (yyvsp
[-1]));}
8175 #line 8174 "hphp.5.tab.cpp" /* yacc.c:1651 */
8179 #line 1218 "hphp.y" /* yacc.c:1651 */
8180 { _p
->onExpStatement((yyval
), (yyvsp
[-1]));}
8181 #line 8180 "hphp.5.tab.cpp" /* yacc.c:1651 */
8185 #line 1219 "hphp.y" /* yacc.c:1651 */
8186 { _p
->onExpStatement((yyval
), (yyvsp
[-1]));}
8187 #line 8186 "hphp.5.tab.cpp" /* yacc.c:1651 */
8191 #line 1220 "hphp.y" /* yacc.c:1651 */
8192 { _p
->onExpStatement((yyval
), (yyvsp
[-1]));}
8193 #line 8192 "hphp.5.tab.cpp" /* yacc.c:1651 */
8197 #line 1221 "hphp.y" /* yacc.c:1651 */
8198 { _p
->onExpStatement((yyval
), (yyvsp
[-1]));}
8199 #line 8198 "hphp.5.tab.cpp" /* yacc.c:1651 */
8203 #line 1222 "hphp.y" /* yacc.c:1651 */
8204 { _p
->onExpStatement((yyval
), (yyvsp
[-1]));}
8205 #line 8204 "hphp.5.tab.cpp" /* yacc.c:1651 */
8209 #line 1223 "hphp.y" /* yacc.c:1651 */
8210 { _p
->onReturn((yyval
), &(yyvsp
[-1]));}
8211 #line 8210 "hphp.5.tab.cpp" /* yacc.c:1651 */
8215 #line 1224 "hphp.y" /* yacc.c:1651 */
8216 { _p
->onExpStatement((yyval
), (yyvsp
[-1]));}
8217 #line 8216 "hphp.5.tab.cpp" /* yacc.c:1651 */
8221 #line 1225 "hphp.y" /* yacc.c:1651 */
8222 { _p
->onExpStatement((yyval
), (yyvsp
[-1]));}
8223 #line 8222 "hphp.5.tab.cpp" /* yacc.c:1651 */
8227 #line 1226 "hphp.y" /* yacc.c:1651 */
8228 { _p
->onReturn((yyval
), &(yyvsp
[-1])); }
8229 #line 8228 "hphp.5.tab.cpp" /* yacc.c:1651 */
8233 #line 1227 "hphp.y" /* yacc.c:1651 */
8234 { _p
->onExpStatement((yyval
), (yyvsp
[-1]));}
8235 #line 8234 "hphp.5.tab.cpp" /* yacc.c:1651 */
8239 #line 1228 "hphp.y" /* yacc.c:1651 */
8240 { _p
->onLabel((yyval
), (yyvsp
[-1]));
8241 _p
->addLabel((yyvsp
[-1]).text(),
8244 _p
->onScopeLabel((yyval
), (yyvsp
[-1]));}
8245 #line 8244 "hphp.5.tab.cpp" /* yacc.c:1651 */
8249 #line 1250 "hphp.y" /* yacc.c:1651 */
8250 { _p
->pushLabelScope(LS::Using
);
8251 _p
->onNewLabelScope(false);
8252 (yyval
) = (yyvsp
[-1]); }
8253 #line 8252 "hphp.5.tab.cpp" /* yacc.c:1651 */
8257 #line 1256 "hphp.y" /* yacc.c:1651 */
8259 #line 8258 "hphp.5.tab.cpp" /* yacc.c:1651 */
8263 #line 1257 "hphp.y" /* yacc.c:1651 */
8264 { (yyval
).reset(); }
8265 #line 8264 "hphp.5.tab.cpp" /* yacc.c:1651 */
8269 #line 1266 "hphp.y" /* yacc.c:1651 */
8270 { _p
->onExprListElem((yyval
), nullptr, (yyvsp
[-2]));
8271 _p
->onExprListElem((yyval
), &(yyval
), (yyvsp
[0])); }
8272 #line 8271 "hphp.5.tab.cpp" /* yacc.c:1651 */
8276 #line 1268 "hphp.y" /* yacc.c:1651 */
8277 { _p
->onExprListElem((yyval
), &(yyvsp
[-2]), (yyvsp
[0])); }
8278 #line 8277 "hphp.5.tab.cpp" /* yacc.c:1651 */
8282 #line 1278 "hphp.y" /* yacc.c:1651 */
8283 { (yyval
) = (yyvsp
[-1]); }
8284 #line 8283 "hphp.5.tab.cpp" /* yacc.c:1651 */
8288 #line 1279 "hphp.y" /* yacc.c:1651 */
8289 { (yyval
).reset(); }
8290 #line 8289 "hphp.5.tab.cpp" /* yacc.c:1651 */
8294 #line 1283 "hphp.y" /* yacc.c:1651 */
8295 { _p
->onNewLabelScope(false); }
8296 #line 8295 "hphp.5.tab.cpp" /* yacc.c:1651 */
8300 #line 1284 "hphp.y" /* yacc.c:1651 */
8301 { (yyval
) = (yyvsp
[-1]); }
8302 #line 8301 "hphp.5.tab.cpp" /* yacc.c:1651 */
8306 #line 1293 "hphp.y" /* yacc.c:1651 */
8307 { _p
->onCatch((yyval
), (yyvsp
[-8]), (yyvsp
[-5]), (yyvsp
[-4]), (yyvsp
[-1]));}
8308 #line 8307 "hphp.5.tab.cpp" /* yacc.c:1651 */
8312 #line 1294 "hphp.y" /* yacc.c:1651 */
8314 #line 8313 "hphp.5.tab.cpp" /* yacc.c:1651 */
8318 #line 1298 "hphp.y" /* yacc.c:1651 */
8319 { _p
->onNewLabelScope(false);
8320 _p
->pushLabelScope(LS::Finally
);}
8321 #line 8320 "hphp.5.tab.cpp" /* yacc.c:1651 */
8325 #line 1300 "hphp.y" /* yacc.c:1651 */
8326 { _p
->onFinally((yyval
), (yyvsp
[-1]));
8327 _p
->popLabelScope();
8328 _p
->onCompleteLabelScope(false);}
8329 #line 8328 "hphp.5.tab.cpp" /* yacc.c:1651 */
8333 #line 1306 "hphp.y" /* yacc.c:1651 */
8334 { (yyval
) = (yyvsp
[0]);}
8335 #line 8334 "hphp.5.tab.cpp" /* yacc.c:1651 */
8339 #line 1307 "hphp.y" /* yacc.c:1651 */
8341 #line 8340 "hphp.5.tab.cpp" /* yacc.c:1651 */
8345 #line 1311 "hphp.y" /* yacc.c:1651 */
8347 #line 8346 "hphp.5.tab.cpp" /* yacc.c:1651 */
8351 #line 1312 "hphp.y" /* yacc.c:1651 */
8353 #line 8352 "hphp.5.tab.cpp" /* yacc.c:1651 */
8357 #line 1316 "hphp.y" /* yacc.c:1651 */
8358 { _p
->pushFuncLocation(); }
8359 #line 8358 "hphp.5.tab.cpp" /* yacc.c:1651 */
8363 #line 1322 "hphp.y" /* yacc.c:1651 */
8364 { (yyvsp
[0]).setText(_p
->nsDecl((yyvsp
[0]).text()));
8365 _p
->onNewLabelScope(true);
8366 _p
->onFunctionStart((yyvsp
[0]));
8367 _p
->pushLabelInfo();}
8368 #line 8367 "hphp.5.tab.cpp" /* yacc.c:1651 */
8372 #line 1329 "hphp.y" /* yacc.c:1651 */
8373 { _p
->onFunction((yyval
),nullptr,(yyvsp
[-2]),(yyvsp
[-8]),(yyvsp
[-7]),(yyvsp
[-4]),(yyvsp
[0]),nullptr);
8374 _p
->closeActiveUsings();
8377 _p
->onCompleteLabelScope(true);}
8378 #line 8377 "hphp.5.tab.cpp" /* yacc.c:1651 */
8382 #line 1337 "hphp.y" /* yacc.c:1651 */
8383 { (yyvsp
[0]).setText(_p
->nsDecl((yyvsp
[0]).text()));
8384 _p
->onNewLabelScope(true);
8385 _p
->onFunctionStart((yyvsp
[0]));
8386 _p
->pushLabelInfo();}
8387 #line 8386 "hphp.5.tab.cpp" /* yacc.c:1651 */
8391 #line 1344 "hphp.y" /* yacc.c:1651 */
8392 { _p
->onFunction((yyval
),&(yyvsp
[-10]),(yyvsp
[-2]),(yyvsp
[-8]),(yyvsp
[-7]),(yyvsp
[-4]),(yyvsp
[0]),nullptr);
8393 _p
->closeActiveUsings();
8396 _p
->onCompleteLabelScope(true);}
8397 #line 8396 "hphp.5.tab.cpp" /* yacc.c:1651 */
8401 #line 1352 "hphp.y" /* yacc.c:1651 */
8402 { (yyvsp
[0]).setText(_p
->nsDecl((yyvsp
[0]).text()));
8403 _p
->onNewLabelScope(true);
8404 _p
->onFunctionStart((yyvsp
[0]));
8405 _p
->pushLabelInfo();}
8406 #line 8405 "hphp.5.tab.cpp" /* yacc.c:1651 */
8410 #line 1358 "hphp.y" /* yacc.c:1651 */
8411 { _p
->onFunction((yyval
),&(yyvsp
[-9]),(yyvsp
[-1]),(yyvsp
[-7]),(yyvsp
[-6]),(yyvsp
[-3]),(yyvsp
[0]),&(yyvsp
[-10]));
8412 _p
->closeActiveUsings();
8415 _p
->onCompleteLabelScope(true);}
8416 #line 8415 "hphp.5.tab.cpp" /* yacc.c:1651 */
8420 #line 1367 "hphp.y" /* yacc.c:1651 */
8421 { (yyvsp
[0]).setText(_p
->nsClassDecl((yyvsp
[0]).text()));
8422 _p
->onClassStart(T_ENUM
,(yyvsp
[0]));}
8423 #line 8422 "hphp.5.tab.cpp" /* yacc.c:1651 */
8427 #line 1371 "hphp.y" /* yacc.c:1651 */
8428 { _p
->onEnum((yyval
),(yyvsp
[-7]),(yyvsp
[-4]),(yyvsp
[-1]),0); }
8429 #line 8428 "hphp.5.tab.cpp" /* yacc.c:1651 */
8433 #line 1375 "hphp.y" /* yacc.c:1651 */
8434 { (yyvsp
[0]).setText(_p
->nsClassDecl((yyvsp
[0]).text()));
8435 _p
->onClassStart(T_ENUM
,(yyvsp
[0]));}
8436 #line 8435 "hphp.5.tab.cpp" /* yacc.c:1651 */
8440 #line 1379 "hphp.y" /* yacc.c:1651 */
8441 { _p
->onEnum((yyval
),(yyvsp
[-7]),(yyvsp
[-4]),(yyvsp
[-1]),&(yyvsp
[-9])); }
8442 #line 8441 "hphp.5.tab.cpp" /* yacc.c:1651 */
8446 #line 1385 "hphp.y" /* yacc.c:1651 */
8447 { (yyvsp
[0]).setText(_p
->nsClassDecl((yyvsp
[0]).text()));
8448 _p
->onClassStart((yyvsp
[-1]).num(),(yyvsp
[0]));}
8449 #line 8448 "hphp.5.tab.cpp" /* yacc.c:1651 */
8453 #line 1388 "hphp.y" /* yacc.c:1651 */
8455 if (_p
->peekClass()) {
8456 xhp_collect_attributes(_p
,stmts
,(yyvsp
[-1]));
8458 stmts
= (yyvsp
[-1]);
8460 _p
->onClass((yyval
),(yyvsp
[-7]).num(),(yyvsp
[-6]),(yyvsp
[-4]),(yyvsp
[-3]),
8462 if (_p
->peekClass()) {
8463 _p
->xhpResetAttributes();
8466 _p
->popTypeScope();}
8467 #line 8466 "hphp.5.tab.cpp" /* yacc.c:1651 */
8471 #line 1403 "hphp.y" /* yacc.c:1651 */
8472 { (yyvsp
[0]).setText(_p
->nsClassDecl((yyvsp
[0]).text()));
8473 _p
->onClassStart((yyvsp
[-1]).num(),(yyvsp
[0]));}
8474 #line 8473 "hphp.5.tab.cpp" /* yacc.c:1651 */
8478 #line 1406 "hphp.y" /* yacc.c:1651 */
8480 if (_p
->peekClass()) {
8481 xhp_collect_attributes(_p
,stmts
,(yyvsp
[-1]));
8483 stmts
= (yyvsp
[-1]);
8485 _p
->onClass((yyval
),(yyvsp
[-7]).num(),(yyvsp
[-6]),(yyvsp
[-4]),(yyvsp
[-3]),
8486 stmts
,&(yyvsp
[-8]),nullptr);
8487 if (_p
->peekClass()) {
8488 _p
->xhpResetAttributes();
8491 _p
->popTypeScope();}
8492 #line 8491 "hphp.5.tab.cpp" /* yacc.c:1651 */
8496 #line 1420 "hphp.y" /* yacc.c:1651 */
8497 { (yyvsp
[0]).setText(_p
->nsClassDecl((yyvsp
[0]).text()));
8498 _p
->onClassStart(T_INTERFACE
,(yyvsp
[0]));}
8499 #line 8498 "hphp.5.tab.cpp" /* yacc.c:1651 */
8503 #line 1423 "hphp.y" /* yacc.c:1651 */
8504 { _p
->onInterface((yyval
),(yyvsp
[-5]),(yyvsp
[-3]),(yyvsp
[-1]),0);
8506 _p
->popTypeScope();}
8507 #line 8506 "hphp.5.tab.cpp" /* yacc.c:1651 */
8511 #line 1428 "hphp.y" /* yacc.c:1651 */
8512 { (yyvsp
[0]).setText(_p
->nsClassDecl((yyvsp
[0]).text()));
8513 _p
->onClassStart(T_INTERFACE
,(yyvsp
[0]));}
8514 #line 8513 "hphp.5.tab.cpp" /* yacc.c:1651 */
8518 #line 1431 "hphp.y" /* yacc.c:1651 */
8519 { _p
->onInterface((yyval
),(yyvsp
[-5]),(yyvsp
[-3]),(yyvsp
[-1]),&(yyvsp
[-7]));
8521 _p
->popTypeScope();}
8522 #line 8521 "hphp.5.tab.cpp" /* yacc.c:1651 */
8526 #line 1437 "hphp.y" /* yacc.c:1651 */
8527 { _p
->onClassExpressionStart(); }
8528 #line 8527 "hphp.5.tab.cpp" /* yacc.c:1651 */
8532 #line 1440 "hphp.y" /* yacc.c:1651 */
8533 { _p
->onClassExpression((yyval
), (yyvsp
[-5]), (yyvsp
[-4]), (yyvsp
[-3]), (yyvsp
[-1])); }
8534 #line 8533 "hphp.5.tab.cpp" /* yacc.c:1651 */
8538 #line 1444 "hphp.y" /* yacc.c:1651 */
8539 { (yyvsp
[0]).setText(_p
->nsClassDecl((yyvsp
[0]).text()));
8540 _p
->onClassStart(T_TRAIT
, (yyvsp
[0]));}
8541 #line 8540 "hphp.5.tab.cpp" /* yacc.c:1651 */
8545 #line 1447 "hphp.y" /* yacc.c:1651 */
8548 _p
->onClass((yyval
),T_TRAIT
,(yyvsp
[-5]),t_ext
,(yyvsp
[-3]),
8549 (yyvsp
[-1]), 0, nullptr);
8551 _p
->popTypeScope();}
8552 #line 8551 "hphp.5.tab.cpp" /* yacc.c:1651 */
8556 #line 1455 "hphp.y" /* yacc.c:1651 */
8557 { (yyvsp
[0]).setText(_p
->nsClassDecl((yyvsp
[0]).text()));
8558 _p
->onClassStart(T_TRAIT
, (yyvsp
[0]));}
8559 #line 8558 "hphp.5.tab.cpp" /* yacc.c:1651 */
8563 #line 1458 "hphp.y" /* yacc.c:1651 */
8566 _p
->onClass((yyval
),T_TRAIT
,(yyvsp
[-5]),t_ext
,(yyvsp
[-3]),
8567 (yyvsp
[-1]), &(yyvsp
[-7]), nullptr);
8569 _p
->popTypeScope();}
8570 #line 8569 "hphp.5.tab.cpp" /* yacc.c:1651 */
8574 #line 1466 "hphp.y" /* yacc.c:1651 */
8575 { _p
->pushClass(false); (yyval
) = (yyvsp
[0]);}
8576 #line 8575 "hphp.5.tab.cpp" /* yacc.c:1651 */
8580 #line 1467 "hphp.y" /* yacc.c:1651 */
8581 { (yyvsp
[0]).xhpLabel(); _p
->pushTypeScope();
8582 _p
->pushClass(true); (yyval
) = (yyvsp
[0]);}
8583 #line 8582 "hphp.5.tab.cpp" /* yacc.c:1651 */
8587 #line 1471 "hphp.y" /* yacc.c:1651 */
8588 { _p
->pushClass(false); (yyval
) = (yyvsp
[0]);}
8589 #line 8588 "hphp.5.tab.cpp" /* yacc.c:1651 */
8593 #line 1474 "hphp.y" /* yacc.c:1651 */
8594 { _p
->pushClass(false); (yyval
) = (yyvsp
[0]);}
8595 #line 8594 "hphp.5.tab.cpp" /* yacc.c:1651 */
8599 #line 1477 "hphp.y" /* yacc.c:1651 */
8600 { (yyval
) = T_CLASS
;}
8601 #line 8600 "hphp.5.tab.cpp" /* yacc.c:1651 */
8605 #line 1478 "hphp.y" /* yacc.c:1651 */
8606 { (yyval
) = T_ABSTRACT
; }
8607 #line 8606 "hphp.5.tab.cpp" /* yacc.c:1651 */
8611 #line 1479 "hphp.y" /* yacc.c:1651 */
8612 { only_in_hh_syntax(_p
);
8613 /* hacky, but transforming to a single token is quite convenient */
8614 (yyval
) = T_STATIC
; }
8615 #line 8614 "hphp.5.tab.cpp" /* yacc.c:1651 */
8619 #line 1482 "hphp.y" /* yacc.c:1651 */
8620 { only_in_hh_syntax(_p
); (yyval
) = T_STATIC
; }
8621 #line 8620 "hphp.5.tab.cpp" /* yacc.c:1651 */
8625 #line 1483 "hphp.y" /* yacc.c:1651 */
8626 { (yyval
) = T_FINAL
;}
8627 #line 8626 "hphp.5.tab.cpp" /* yacc.c:1651 */
8631 #line 1487 "hphp.y" /* yacc.c:1651 */
8632 { (yyval
) = (yyvsp
[0]);}
8633 #line 8632 "hphp.5.tab.cpp" /* yacc.c:1651 */
8637 #line 1488 "hphp.y" /* yacc.c:1651 */
8639 #line 8638 "hphp.5.tab.cpp" /* yacc.c:1651 */
8643 #line 1491 "hphp.y" /* yacc.c:1651 */
8644 { (yyval
) = (yyvsp
[0]);}
8645 #line 8644 "hphp.5.tab.cpp" /* yacc.c:1651 */
8649 #line 1492 "hphp.y" /* yacc.c:1651 */
8651 #line 8650 "hphp.5.tab.cpp" /* yacc.c:1651 */
8655 #line 1495 "hphp.y" /* yacc.c:1651 */
8656 { (yyval
) = (yyvsp
[0]);}
8657 #line 8656 "hphp.5.tab.cpp" /* yacc.c:1651 */
8661 #line 1496 "hphp.y" /* yacc.c:1651 */
8663 #line 8662 "hphp.5.tab.cpp" /* yacc.c:1651 */
8667 #line 1499 "hphp.y" /* yacc.c:1651 */
8668 { _p
->onInterfaceName((yyval
), NULL
, (yyvsp
[0]));}
8669 #line 8668 "hphp.5.tab.cpp" /* yacc.c:1651 */
8673 #line 1501 "hphp.y" /* yacc.c:1651 */
8674 { _p
->onInterfaceName((yyval
), &(yyvsp
[-2]), (yyvsp
[0]));}
8675 #line 8674 "hphp.5.tab.cpp" /* yacc.c:1651 */
8679 #line 1504 "hphp.y" /* yacc.c:1651 */
8680 { _p
->onTraitName((yyval
), NULL
, (yyvsp
[0]));}
8681 #line 8680 "hphp.5.tab.cpp" /* yacc.c:1651 */
8685 #line 1506 "hphp.y" /* yacc.c:1651 */
8686 { _p
->onTraitName((yyval
), &(yyvsp
[-2]), (yyvsp
[0]));}
8687 #line 8686 "hphp.5.tab.cpp" /* yacc.c:1651 */
8691 #line 1510 "hphp.y" /* yacc.c:1651 */
8692 { (yyval
) = (yyvsp
[0]);}
8693 #line 8692 "hphp.5.tab.cpp" /* yacc.c:1651 */
8697 #line 1511 "hphp.y" /* yacc.c:1651 */
8699 #line 8698 "hphp.5.tab.cpp" /* yacc.c:1651 */
8703 #line 1514 "hphp.y" /* yacc.c:1651 */
8704 { (yyval
) = (yyvsp
[0]); (yyval
) = 0;}
8705 #line 8704 "hphp.5.tab.cpp" /* yacc.c:1651 */
8709 #line 1515 "hphp.y" /* yacc.c:1651 */
8710 { (yyval
) = (yyvsp
[0]); (yyval
) = 1;}
8711 #line 8710 "hphp.5.tab.cpp" /* yacc.c:1651 */
8715 #line 1516 "hphp.y" /* yacc.c:1651 */
8716 { _p
->onListAssignment((yyval
), (yyvsp
[0]), NULL
);}
8717 #line 8716 "hphp.5.tab.cpp" /* yacc.c:1651 */
8721 #line 1520 "hphp.y" /* yacc.c:1651 */
8722 { (yyval
) = (yyvsp
[0]);}
8723 #line 8722 "hphp.5.tab.cpp" /* yacc.c:1651 */
8727 #line 1522 "hphp.y" /* yacc.c:1651 */
8728 { (yyval
) = (yyvsp
[-2]);}
8729 #line 8728 "hphp.5.tab.cpp" /* yacc.c:1651 */
8733 #line 1525 "hphp.y" /* yacc.c:1651 */
8734 { (yyval
) = (yyvsp
[0]);}
8735 #line 8734 "hphp.5.tab.cpp" /* yacc.c:1651 */
8739 #line 1527 "hphp.y" /* yacc.c:1651 */
8740 { (yyval
) = (yyvsp
[-2]);}
8741 #line 8740 "hphp.5.tab.cpp" /* yacc.c:1651 */
8745 #line 1530 "hphp.y" /* yacc.c:1651 */
8746 { (yyval
) = (yyvsp
[0]);}
8747 #line 8746 "hphp.5.tab.cpp" /* yacc.c:1651 */
8751 #line 1532 "hphp.y" /* yacc.c:1651 */
8752 { (yyval
) = (yyvsp
[-2]);}
8753 #line 8752 "hphp.5.tab.cpp" /* yacc.c:1651 */
8757 #line 1535 "hphp.y" /* yacc.c:1651 */
8758 { _p
->onBlock((yyval
), (yyvsp
[0]));}
8759 #line 8758 "hphp.5.tab.cpp" /* yacc.c:1651 */
8763 #line 1537 "hphp.y" /* yacc.c:1651 */
8764 { _p
->onBlock((yyval
), (yyvsp
[-2]));}
8765 #line 8764 "hphp.5.tab.cpp" /* yacc.c:1651 */
8769 #line 1541 "hphp.y" /* yacc.c:1651 */
8770 {_p
->onDeclareList((yyval
), (yyvsp
[-2]), (yyvsp
[0]));}
8771 #line 8770 "hphp.5.tab.cpp" /* yacc.c:1651 */
8775 #line 1543 "hphp.y" /* yacc.c:1651 */
8776 {_p
->onDeclareList((yyvsp
[-4]), (yyvsp
[-2]), (yyvsp
[0]));
8777 (yyval
) = (yyvsp
[-4]);}
8778 #line 8777 "hphp.5.tab.cpp" /* yacc.c:1651 */
8782 #line 1548 "hphp.y" /* yacc.c:1651 */
8783 { (yyval
) = (yyvsp
[-1]);}
8784 #line 8783 "hphp.5.tab.cpp" /* yacc.c:1651 */
8788 #line 1549 "hphp.y" /* yacc.c:1651 */
8789 { (yyval
) = (yyvsp
[-1]);}
8790 #line 8789 "hphp.5.tab.cpp" /* yacc.c:1651 */
8794 #line 1550 "hphp.y" /* yacc.c:1651 */
8795 { (yyval
) = (yyvsp
[-2]);}
8796 #line 8795 "hphp.5.tab.cpp" /* yacc.c:1651 */
8800 #line 1551 "hphp.y" /* yacc.c:1651 */
8801 { (yyval
) = (yyvsp
[-2]);}
8802 #line 8801 "hphp.5.tab.cpp" /* yacc.c:1651 */
8806 #line 1556 "hphp.y" /* yacc.c:1651 */
8807 { _p
->onCase((yyval
),(yyvsp
[-4]),&(yyvsp
[-2]),(yyvsp
[0]));}
8808 #line 8807 "hphp.5.tab.cpp" /* yacc.c:1651 */
8812 #line 1558 "hphp.y" /* yacc.c:1651 */
8813 { _p
->onCase((yyval
),(yyvsp
[-3]),NULL
,(yyvsp
[0]));}
8814 #line 8813 "hphp.5.tab.cpp" /* yacc.c:1651 */
8818 #line 1559 "hphp.y" /* yacc.c:1651 */
8820 #line 8819 "hphp.5.tab.cpp" /* yacc.c:1651 */
8824 #line 1562 "hphp.y" /* yacc.c:1651 */
8826 #line 8825 "hphp.5.tab.cpp" /* yacc.c:1651 */
8830 #line 1563 "hphp.y" /* yacc.c:1651 */
8832 #line 8831 "hphp.5.tab.cpp" /* yacc.c:1651 */
8836 #line 1568 "hphp.y" /* yacc.c:1651 */
8837 { _p
->onElseIf((yyval
),(yyvsp
[-3]),(yyvsp
[-1]),(yyvsp
[0]));}
8838 #line 8837 "hphp.5.tab.cpp" /* yacc.c:1651 */
8842 #line 1569 "hphp.y" /* yacc.c:1651 */
8844 #line 8843 "hphp.5.tab.cpp" /* yacc.c:1651 */
8848 #line 1574 "hphp.y" /* yacc.c:1651 */
8849 { _p
->onElseIf((yyval
),(yyvsp
[-4]),(yyvsp
[-2]),(yyvsp
[0]));}
8850 #line 8849 "hphp.5.tab.cpp" /* yacc.c:1651 */
8854 #line 1575 "hphp.y" /* yacc.c:1651 */
8856 #line 8855 "hphp.5.tab.cpp" /* yacc.c:1651 */
8860 #line 1578 "hphp.y" /* yacc.c:1651 */
8861 { (yyval
) = (yyvsp
[0]);}
8862 #line 8861 "hphp.5.tab.cpp" /* yacc.c:1651 */
8866 #line 1579 "hphp.y" /* yacc.c:1651 */
8868 #line 8867 "hphp.5.tab.cpp" /* yacc.c:1651 */
8872 #line 1582 "hphp.y" /* yacc.c:1651 */
8873 { (yyval
) = (yyvsp
[0]);}
8874 #line 8873 "hphp.5.tab.cpp" /* yacc.c:1651 */
8878 #line 1583 "hphp.y" /* yacc.c:1651 */
8880 #line 8879 "hphp.5.tab.cpp" /* yacc.c:1651 */
8884 #line 1591 "hphp.y" /* yacc.c:1651 */
8885 { _p
->onVariadicParam((yyval
),&(yyvsp
[-6]),(yyvsp
[-2]),(yyvsp
[0]),false,
8886 &(yyvsp
[-4]),&(yyvsp
[-3])); }
8887 #line 8886 "hphp.5.tab.cpp" /* yacc.c:1651 */
8891 #line 1597 "hphp.y" /* yacc.c:1651 */
8892 { _p
->onVariadicParam((yyval
),&(yyvsp
[-7]),(yyvsp
[-3]),(yyvsp
[0]),true,
8893 &(yyvsp
[-5]),&(yyvsp
[-4])); }
8894 #line 8893 "hphp.5.tab.cpp" /* yacc.c:1651 */
8898 #line 1603 "hphp.y" /* yacc.c:1651 */
8899 { validate_hh_variadic_variant(
8900 _p
, (yyvsp
[-3]), (yyvsp
[-1]), &(yyvsp
[-2]));
8901 (yyval
) = (yyvsp
[-5]); }
8902 #line 8901 "hphp.5.tab.cpp" /* yacc.c:1651 */
8906 #line 1607 "hphp.y" /* yacc.c:1651 */
8907 { (yyval
) = (yyvsp
[-1]);}
8908 #line 8907 "hphp.5.tab.cpp" /* yacc.c:1651 */
8912 #line 1611 "hphp.y" /* yacc.c:1651 */
8913 { _p
->onVariadicParam((yyval
),NULL
,(yyvsp
[-2]),(yyvsp
[0]),false,
8914 &(yyvsp
[-4]),&(yyvsp
[-3])); }
8915 #line 8914 "hphp.5.tab.cpp" /* yacc.c:1651 */
8919 #line 1616 "hphp.y" /* yacc.c:1651 */
8920 { _p
->onVariadicParam((yyval
),NULL
,(yyvsp
[-3]),(yyvsp
[0]),true,
8921 &(yyvsp
[-5]),&(yyvsp
[-4])); }
8922 #line 8921 "hphp.5.tab.cpp" /* yacc.c:1651 */
8926 #line 1621 "hphp.y" /* yacc.c:1651 */
8927 { validate_hh_variadic_variant(
8928 _p
, (yyvsp
[-3]), (yyvsp
[-1]), &(yyvsp
[-2]));
8930 #line 8929 "hphp.5.tab.cpp" /* yacc.c:1651 */
8934 #line 1624 "hphp.y" /* yacc.c:1651 */
8935 { (yyval
).reset(); }
8936 #line 8935 "hphp.5.tab.cpp" /* yacc.c:1651 */
8940 #line 1630 "hphp.y" /* yacc.c:1651 */
8941 { _p
->onParam((yyval
),NULL
,(yyvsp
[-1]),(yyvsp
[0]),
8943 NULL
,&(yyvsp
[-3]),&(yyvsp
[-2]));}
8944 #line 8943 "hphp.5.tab.cpp" /* yacc.c:1651 */
8948 #line 1635 "hphp.y" /* yacc.c:1651 */
8949 { _p
->onParam((yyval
),NULL
,(yyvsp
[-1]),(yyvsp
[0]),
8951 NULL
,&(yyvsp
[-3]),NULL
);}
8952 #line 8951 "hphp.5.tab.cpp" /* yacc.c:1651 */
8956 #line 1640 "hphp.y" /* yacc.c:1651 */
8957 { _p
->onParam((yyval
),NULL
,(yyvsp
[-2]),(yyvsp
[0]),
8959 NULL
,&(yyvsp
[-4]),&(yyvsp
[-3]));}
8960 #line 8959 "hphp.5.tab.cpp" /* yacc.c:1651 */
8964 #line 1646 "hphp.y" /* yacc.c:1651 */
8965 { _p
->onParam((yyval
),NULL
,(yyvsp
[-4]),(yyvsp
[-2]),
8967 &(yyvsp
[0]),&(yyvsp
[-6]),&(yyvsp
[-5]));}
8968 #line 8967 "hphp.5.tab.cpp" /* yacc.c:1651 */
8972 #line 1652 "hphp.y" /* yacc.c:1651 */
8973 { _p
->onParam((yyval
),NULL
,(yyvsp
[-3]),(yyvsp
[-2]),
8975 &(yyvsp
[0]),&(yyvsp
[-5]),&(yyvsp
[-4]));}
8976 #line 8975 "hphp.5.tab.cpp" /* yacc.c:1651 */
8980 #line 1658 "hphp.y" /* yacc.c:1651 */
8981 { _p
->onParam((yyval
),&(yyvsp
[-5]),(yyvsp
[-1]),(yyvsp
[0]),
8983 NULL
,&(yyvsp
[-3]),&(yyvsp
[-2]));}
8984 #line 8983 "hphp.5.tab.cpp" /* yacc.c:1651 */
8988 #line 1664 "hphp.y" /* yacc.c:1651 */
8989 { _p
->onParam((yyval
),&(yyvsp
[-5]),(yyvsp
[-1]),(yyvsp
[0]),
8991 NULL
,&(yyvsp
[-3]),NULL
);}
8992 #line 8991 "hphp.5.tab.cpp" /* yacc.c:1651 */
8996 #line 1670 "hphp.y" /* yacc.c:1651 */
8997 { _p
->onParam((yyval
),&(yyvsp
[-6]),(yyvsp
[-2]),(yyvsp
[0]),
8999 NULL
,&(yyvsp
[-4]),&(yyvsp
[-3]));}
9000 #line 8999 "hphp.5.tab.cpp" /* yacc.c:1651 */
9004 #line 1677 "hphp.y" /* yacc.c:1651 */
9005 { _p
->onParam((yyval
),&(yyvsp
[-8]),(yyvsp
[-4]),(yyvsp
[-2]),
9007 &(yyvsp
[0]),&(yyvsp
[-6]),&(yyvsp
[-5]));}
9008 #line 9007 "hphp.5.tab.cpp" /* yacc.c:1651 */
9012 #line 1684 "hphp.y" /* yacc.c:1651 */
9013 { _p
->onParam((yyval
),&(yyvsp
[-7]),(yyvsp
[-3]),(yyvsp
[-2]),
9015 &(yyvsp
[0]),&(yyvsp
[-5]),&(yyvsp
[-4]));}
9016 #line 9015 "hphp.5.tab.cpp" /* yacc.c:1651 */
9020 #line 1693 "hphp.y" /* yacc.c:1651 */
9021 { _p
->onVariadicParam((yyval
),&(yyvsp
[-5]),(yyvsp
[-2]),(yyvsp
[0]),
9022 false,&(yyvsp
[-3]),NULL
); }
9023 #line 9022 "hphp.5.tab.cpp" /* yacc.c:1651 */
9027 #line 1698 "hphp.y" /* yacc.c:1651 */
9028 { _p
->onVariadicParam((yyval
),&(yyvsp
[-6]),(yyvsp
[-3]),(yyvsp
[0]),
9029 true,&(yyvsp
[-4]),NULL
); }
9030 #line 9029 "hphp.5.tab.cpp" /* yacc.c:1651 */
9034 #line 1703 "hphp.y" /* yacc.c:1651 */
9035 { validate_hh_variadic_variant(
9036 _p
, (yyvsp
[-2]), (yyvsp
[-1]), NULL
);
9037 (yyval
) = (yyvsp
[-4]); }
9038 #line 9037 "hphp.5.tab.cpp" /* yacc.c:1651 */
9042 #line 1707 "hphp.y" /* yacc.c:1651 */
9043 { (yyval
) = (yyvsp
[-1]);}
9044 #line 9043 "hphp.5.tab.cpp" /* yacc.c:1651 */
9048 #line 1710 "hphp.y" /* yacc.c:1651 */
9049 { _p
->onVariadicParam((yyval
),NULL
,(yyvsp
[-2]),(yyvsp
[0]),
9050 false,&(yyvsp
[-3]),NULL
); }
9051 #line 9050 "hphp.5.tab.cpp" /* yacc.c:1651 */
9055 #line 1714 "hphp.y" /* yacc.c:1651 */
9056 { _p
->onVariadicParam((yyval
),NULL
,(yyvsp
[-3]),(yyvsp
[0]),
9057 true,&(yyvsp
[-4]),NULL
); }
9058 #line 9057 "hphp.5.tab.cpp" /* yacc.c:1651 */
9062 #line 1718 "hphp.y" /* yacc.c:1651 */
9063 { validate_hh_variadic_variant(
9064 _p
, (yyvsp
[-2]), (yyvsp
[-1]), NULL
);
9066 #line 9065 "hphp.5.tab.cpp" /* yacc.c:1651 */
9070 #line 1721 "hphp.y" /* yacc.c:1651 */
9072 #line 9071 "hphp.5.tab.cpp" /* yacc.c:1651 */
9076 #line 1726 "hphp.y" /* yacc.c:1651 */
9077 { _p
->onParam((yyval
),NULL
,(yyvsp
[-1]),(yyvsp
[0]),
9079 NULL
,&(yyvsp
[-2]),NULL
); }
9080 #line 9079 "hphp.5.tab.cpp" /* yacc.c:1651 */
9084 #line 1730 "hphp.y" /* yacc.c:1651 */
9085 { _p
->onParam((yyval
),NULL
,(yyvsp
[-1]),(yyvsp
[0]),
9087 NULL
,&(yyvsp
[-3]),NULL
); }
9088 #line 9087 "hphp.5.tab.cpp" /* yacc.c:1651 */
9092 #line 1734 "hphp.y" /* yacc.c:1651 */
9093 { _p
->onParam((yyval
),NULL
,(yyvsp
[-2]),(yyvsp
[0]),
9095 NULL
,&(yyvsp
[-3]),NULL
); }
9096 #line 9095 "hphp.5.tab.cpp" /* yacc.c:1651 */
9100 #line 1739 "hphp.y" /* yacc.c:1651 */
9101 { _p
->onParam((yyval
),NULL
,(yyvsp
[-4]),(yyvsp
[-2]),
9103 &(yyvsp
[0]),&(yyvsp
[-5]),NULL
); }
9104 #line 9103 "hphp.5.tab.cpp" /* yacc.c:1651 */
9108 #line 1744 "hphp.y" /* yacc.c:1651 */
9109 { _p
->onParam((yyval
),NULL
,(yyvsp
[-3]),(yyvsp
[-2]),
9111 &(yyvsp
[0]),&(yyvsp
[-4]),NULL
); }
9112 #line 9111 "hphp.5.tab.cpp" /* yacc.c:1651 */
9116 #line 1749 "hphp.y" /* yacc.c:1651 */
9117 { _p
->onParam((yyval
),&(yyvsp
[-4]),(yyvsp
[-1]),(yyvsp
[0]),
9119 NULL
,&(yyvsp
[-2]),NULL
); }
9120 #line 9119 "hphp.5.tab.cpp" /* yacc.c:1651 */
9124 #line 1754 "hphp.y" /* yacc.c:1651 */
9125 { _p
->onParam((yyval
),&(yyvsp
[-5]),(yyvsp
[-1]),(yyvsp
[0]),
9127 NULL
,&(yyvsp
[-3]),NULL
); }
9128 #line 9127 "hphp.5.tab.cpp" /* yacc.c:1651 */
9132 #line 1759 "hphp.y" /* yacc.c:1651 */
9133 { _p
->onParam((yyval
),&(yyvsp
[-5]),(yyvsp
[-2]),(yyvsp
[0]),
9135 NULL
,&(yyvsp
[-3]),NULL
); }
9136 #line 9135 "hphp.5.tab.cpp" /* yacc.c:1651 */
9140 #line 1765 "hphp.y" /* yacc.c:1651 */
9141 { _p
->onParam((yyval
),&(yyvsp
[-7]),(yyvsp
[-4]),(yyvsp
[-2]),
9143 &(yyvsp
[0]),&(yyvsp
[-5]),NULL
); }
9144 #line 9143 "hphp.5.tab.cpp" /* yacc.c:1651 */
9148 #line 1771 "hphp.y" /* yacc.c:1651 */
9149 { _p
->onParam((yyval
),&(yyvsp
[-6]),(yyvsp
[-3]),(yyvsp
[-2]),
9151 &(yyvsp
[0]),&(yyvsp
[-4]),NULL
); }
9152 #line 9151 "hphp.5.tab.cpp" /* yacc.c:1651 */
9156 #line 1777 "hphp.y" /* yacc.c:1651 */
9157 { _p
->onRefDim((yyval
), (yyvsp
[-3]), (yyvsp
[-1]));}
9158 #line 9157 "hphp.5.tab.cpp" /* yacc.c:1651 */
9162 #line 1778 "hphp.y" /* yacc.c:1651 */
9163 { _p
->onSimpleVariable((yyval
), (yyvsp
[0]));}
9164 #line 9163 "hphp.5.tab.cpp" /* yacc.c:1651 */
9168 #line 1779 "hphp.y" /* yacc.c:1651 */
9169 { _p
->onPipeVariable((yyval
));}
9170 #line 9169 "hphp.5.tab.cpp" /* yacc.c:1651 */
9174 #line 1784 "hphp.y" /* yacc.c:1651 */
9175 { (yyval
) = (yyvsp
[-1]);}
9176 #line 9175 "hphp.5.tab.cpp" /* yacc.c:1651 */
9180 #line 1785 "hphp.y" /* yacc.c:1651 */
9182 #line 9181 "hphp.5.tab.cpp" /* yacc.c:1651 */
9186 #line 1788 "hphp.y" /* yacc.c:1651 */
9187 { _p
->onCallParam((yyval
),NULL
,(yyvsp
[0]),
9188 ParamMode::In
,false);}
9189 #line 9188 "hphp.5.tab.cpp" /* yacc.c:1651 */
9193 #line 1790 "hphp.y" /* yacc.c:1651 */
9194 { _p
->onCallParam((yyval
),NULL
,(yyvsp
[0]),
9195 ParamMode::InOut
,false);}
9196 #line 9195 "hphp.5.tab.cpp" /* yacc.c:1651 */
9200 #line 1792 "hphp.y" /* yacc.c:1651 */
9201 { _p
->onCallParam((yyval
),NULL
,(yyvsp
[0]),
9202 ParamMode::Ref
,false);}
9203 #line 9202 "hphp.5.tab.cpp" /* yacc.c:1651 */
9207 #line 1794 "hphp.y" /* yacc.c:1651 */
9208 { _p
->onCallParam((yyval
),NULL
,(yyvsp
[0]),
9209 ParamMode::In
,true);}
9210 #line 9209 "hphp.5.tab.cpp" /* yacc.c:1651 */
9214 #line 1797 "hphp.y" /* yacc.c:1651 */
9215 { _p
->onCallParam((yyval
),&(yyvsp
[-2]),(yyvsp
[0]),
9216 ParamMode::In
,false);}
9217 #line 9216 "hphp.5.tab.cpp" /* yacc.c:1651 */
9221 #line 1800 "hphp.y" /* yacc.c:1651 */
9222 { _p
->onCallParam((yyval
),&(yyvsp
[-3]),(yyvsp
[0]),
9223 ParamMode::In
,true);}
9224 #line 9223 "hphp.5.tab.cpp" /* yacc.c:1651 */
9228 #line 1803 "hphp.y" /* yacc.c:1651 */
9229 { _p
->onCallParam((yyval
),&(yyvsp
[-3]),(yyvsp
[0]),
9230 ParamMode::Ref
,false);}
9231 #line 9230 "hphp.5.tab.cpp" /* yacc.c:1651 */
9235 #line 1806 "hphp.y" /* yacc.c:1651 */
9236 { _p
->onCallParam((yyval
),&(yyvsp
[-3]),(yyvsp
[0]),
9237 ParamMode::InOut
,false);}
9238 #line 9237 "hphp.5.tab.cpp" /* yacc.c:1651 */
9242 #line 1811 "hphp.y" /* yacc.c:1651 */
9243 { _p
->onGlobalVar((yyval
), &(yyvsp
[-2]), (yyvsp
[0]));}
9244 #line 9243 "hphp.5.tab.cpp" /* yacc.c:1651 */
9248 #line 1812 "hphp.y" /* yacc.c:1651 */
9249 { _p
->onGlobalVar((yyval
), NULL
, (yyvsp
[0]));}
9250 #line 9249 "hphp.5.tab.cpp" /* yacc.c:1651 */
9254 #line 1815 "hphp.y" /* yacc.c:1651 */
9255 { (yyval
) = (yyvsp
[0]);}
9256 #line 9255 "hphp.5.tab.cpp" /* yacc.c:1651 */
9260 #line 1816 "hphp.y" /* yacc.c:1651 */
9261 { (yyval
) = (yyvsp
[0]); (yyval
) = 1;}
9262 #line 9261 "hphp.5.tab.cpp" /* yacc.c:1651 */
9266 #line 1817 "hphp.y" /* yacc.c:1651 */
9267 { (yyval
) = (yyvsp
[-1]); (yyval
) = 1;}
9268 #line 9267 "hphp.5.tab.cpp" /* yacc.c:1651 */
9272 #line 1821 "hphp.y" /* yacc.c:1651 */
9273 { _p
->onStaticVariable((yyval
),&(yyvsp
[-2]),(yyvsp
[0]),0);}
9274 #line 9273 "hphp.5.tab.cpp" /* yacc.c:1651 */
9278 #line 1823 "hphp.y" /* yacc.c:1651 */
9279 { _p
->onStaticVariable((yyval
),&(yyvsp
[-4]),(yyvsp
[-2]),&(yyvsp
[0]));}
9280 #line 9279 "hphp.5.tab.cpp" /* yacc.c:1651 */
9284 #line 1824 "hphp.y" /* yacc.c:1651 */
9285 { _p
->onStaticVariable((yyval
),0,(yyvsp
[0]),0);}
9286 #line 9285 "hphp.5.tab.cpp" /* yacc.c:1651 */
9290 #line 1825 "hphp.y" /* yacc.c:1651 */
9291 { _p
->onStaticVariable((yyval
),0,(yyvsp
[-2]),&(yyvsp
[0]));}
9292 #line 9291 "hphp.5.tab.cpp" /* yacc.c:1651 */
9296 #line 1830 "hphp.y" /* yacc.c:1651 */
9297 { _p
->onClassStatement((yyval
), (yyvsp
[-1]), (yyvsp
[0]));}
9298 #line 9297 "hphp.5.tab.cpp" /* yacc.c:1651 */
9302 #line 1831 "hphp.y" /* yacc.c:1651 */
9304 #line 9303 "hphp.5.tab.cpp" /* yacc.c:1651 */
9308 #line 1834 "hphp.y" /* yacc.c:1651 */
9309 { _p
->onClassVariableStart
9310 ((yyval
),NULL
,(yyvsp
[-1]),NULL
,NULL
);}
9311 #line 9310 "hphp.5.tab.cpp" /* yacc.c:1651 */
9315 #line 1839 "hphp.y" /* yacc.c:1651 */
9316 { _p
->onClassConstant((yyval
),0,(yyvsp
[-2]),(yyvsp
[0]));}
9317 #line 9316 "hphp.5.tab.cpp" /* yacc.c:1651 */
9321 #line 1845 "hphp.y" /* yacc.c:1651 */
9322 { _p
->onClassStatement((yyval
), (yyvsp
[-1]), (yyvsp
[0]));}
9323 #line 9322 "hphp.5.tab.cpp" /* yacc.c:1651 */
9327 #line 1846 "hphp.y" /* yacc.c:1651 */
9329 #line 9328 "hphp.5.tab.cpp" /* yacc.c:1651 */
9333 #line 1850 "hphp.y" /* yacc.c:1651 */
9334 { _p
->onClassVariableStart
9335 ((yyval
),&(yyvsp
[-2]),(yyvsp
[-1]),NULL
,NULL
);}
9336 #line 9335 "hphp.5.tab.cpp" /* yacc.c:1651 */
9340 #line 1854 "hphp.y" /* yacc.c:1651 */
9341 { _p
->onClassVariableStart
9342 ((yyval
),&(yyvsp
[-3]),(yyvsp
[-1]),&(yyvsp
[-2]),NULL
);}
9343 #line 9342 "hphp.5.tab.cpp" /* yacc.c:1651 */
9347 #line 1858 "hphp.y" /* yacc.c:1651 */
9348 { _p
->onClassVariableStart
9349 ((yyval
),&(yyvsp
[-2]),(yyvsp
[-1]),NULL
,&(yyvsp
[-3]));}
9350 #line 9349 "hphp.5.tab.cpp" /* yacc.c:1651 */
9354 #line 1863 "hphp.y" /* yacc.c:1651 */
9355 { _p
->onClassVariableStart
9356 ((yyval
),&(yyvsp
[-3]),(yyvsp
[-1]),&(yyvsp
[-2]),&(yyvsp
[-4]));}
9357 #line 9356 "hphp.5.tab.cpp" /* yacc.c:1651 */
9361 #line 1865 "hphp.y" /* yacc.c:1651 */
9362 { _p
->onClassVariableStart
9363 ((yyval
),NULL
,(yyvsp
[-1]),NULL
,NULL
);}
9364 #line 9363 "hphp.5.tab.cpp" /* yacc.c:1651 */
9368 #line 1868 "hphp.y" /* yacc.c:1651 */
9369 { _p
->onClassVariableStart
9370 ((yyval
),NULL
,(yyvsp
[-1]),NULL
,NULL
,true);}
9371 #line 9370 "hphp.5.tab.cpp" /* yacc.c:1651 */
9375 #line 1870 "hphp.y" /* yacc.c:1651 */
9376 { (yyval
) = (yyvsp
[-1]); }
9377 #line 9376 "hphp.5.tab.cpp" /* yacc.c:1651 */
9381 #line 1873 "hphp.y" /* yacc.c:1651 */
9382 { _p
->onNewLabelScope(true);
9383 _p
->onMethodStart((yyvsp
[-1]), (yyvsp
[-4]));
9384 _p
->pushLabelInfo();}
9385 #line 9384 "hphp.5.tab.cpp" /* yacc.c:1651 */
9389 #line 1880 "hphp.y" /* yacc.c:1651 */
9390 { _p
->onMethod((yyval
),(yyvsp
[-10]),(yyvsp
[-2]),(yyvsp
[-8]),(yyvsp
[-7]),(yyvsp
[-4]),(yyvsp
[0]),nullptr);
9391 _p
->closeActiveUsings();
9394 _p
->onCompleteLabelScope(true);}
9395 #line 9394 "hphp.5.tab.cpp" /* yacc.c:1651 */
9399 #line 1888 "hphp.y" /* yacc.c:1651 */
9400 { _p
->onNewLabelScope(true);
9401 _p
->onMethodStart((yyvsp
[-1]), (yyvsp
[-4]));
9402 _p
->pushLabelInfo();}
9403 #line 9402 "hphp.5.tab.cpp" /* yacc.c:1651 */
9407 #line 1895 "hphp.y" /* yacc.c:1651 */
9408 { _p
->onMethod((yyval
),(yyvsp
[-10]),(yyvsp
[-2]),(yyvsp
[-8]),(yyvsp
[-7]),(yyvsp
[-4]),(yyvsp
[0]),&(yyvsp
[-11]));
9409 _p
->closeActiveUsings();
9412 _p
->onCompleteLabelScope(true);}
9413 #line 9412 "hphp.5.tab.cpp" /* yacc.c:1651 */
9417 #line 1901 "hphp.y" /* yacc.c:1651 */
9418 { _p
->xhpSetAttributes((yyvsp
[-1]));}
9419 #line 9418 "hphp.5.tab.cpp" /* yacc.c:1651 */
9423 #line 1903 "hphp.y" /* yacc.c:1651 */
9424 { xhp_category_stmt(_p
,(yyval
),(yyvsp
[-1]));}
9425 #line 9424 "hphp.5.tab.cpp" /* yacc.c:1651 */
9429 #line 1905 "hphp.y" /* yacc.c:1651 */
9430 { xhp_children_stmt(_p
,(yyval
),(yyvsp
[-1]));}
9431 #line 9430 "hphp.5.tab.cpp" /* yacc.c:1651 */
9435 #line 1907 "hphp.y" /* yacc.c:1651 */
9436 { _p
->onClassRequire((yyval
), (yyvsp
[-1]), true); }
9437 #line 9436 "hphp.5.tab.cpp" /* yacc.c:1651 */
9441 #line 1909 "hphp.y" /* yacc.c:1651 */
9442 { _p
->onClassRequire((yyval
), (yyvsp
[-1]), false); }
9443 #line 9442 "hphp.5.tab.cpp" /* yacc.c:1651 */
9447 #line 1910 "hphp.y" /* yacc.c:1651 */
9448 { Token t
; t
.reset();
9449 _p
->onTraitUse((yyval
),(yyvsp
[-1]),t
); }
9450 #line 9449 "hphp.5.tab.cpp" /* yacc.c:1651 */
9454 #line 1913 "hphp.y" /* yacc.c:1651 */
9455 { _p
->onTraitUse((yyval
),(yyvsp
[-3]),(yyvsp
[-1])); }
9456 #line 9455 "hphp.5.tab.cpp" /* yacc.c:1651 */
9460 #line 1916 "hphp.y" /* yacc.c:1651 */
9461 { _p
->onTraitRule((yyval
),(yyvsp
[-1]),(yyvsp
[0])); }
9462 #line 9461 "hphp.5.tab.cpp" /* yacc.c:1651 */
9466 #line 1917 "hphp.y" /* yacc.c:1651 */
9467 { _p
->onTraitRule((yyval
),(yyvsp
[-1]),(yyvsp
[0])); }
9468 #line 9467 "hphp.5.tab.cpp" /* yacc.c:1651 */
9472 #line 1918 "hphp.y" /* yacc.c:1651 */
9473 { (yyval
).reset(); }
9474 #line 9473 "hphp.5.tab.cpp" /* yacc.c:1651 */
9478 #line 1924 "hphp.y" /* yacc.c:1651 */
9479 { _p
->onTraitPrecRule((yyval
),(yyvsp
[-5]),(yyvsp
[-3]),(yyvsp
[-1]));}
9480 #line 9479 "hphp.5.tab.cpp" /* yacc.c:1651 */
9484 #line 1929 "hphp.y" /* yacc.c:1651 */
9485 { _p
->onTraitAliasRuleModify((yyval
),(yyvsp
[-4]),(yyvsp
[-2]),
9487 #line 9486 "hphp.5.tab.cpp" /* yacc.c:1651 */
9491 #line 1932 "hphp.y" /* yacc.c:1651 */
9492 { Token t
; t
.reset();
9493 _p
->onTraitAliasRuleModify((yyval
),(yyvsp
[-3]),(yyvsp
[-1]),
9495 #line 9494 "hphp.5.tab.cpp" /* yacc.c:1651 */
9499 #line 1939 "hphp.y" /* yacc.c:1651 */
9500 { _p
->onTraitAliasRuleStart((yyval
),(yyvsp
[-2]),(yyvsp
[0]));}
9501 #line 9500 "hphp.5.tab.cpp" /* yacc.c:1651 */
9505 #line 1940 "hphp.y" /* yacc.c:1651 */
9506 { Token t
; t
.reset();
9507 _p
->onTraitAliasRuleStart((yyval
),t
,(yyvsp
[0]));}
9508 #line 9507 "hphp.5.tab.cpp" /* yacc.c:1651 */
9512 #line 1945 "hphp.y" /* yacc.c:1651 */
9513 { xhp_attribute_list(_p
,(yyval
),
9514 _p
->xhpGetAttributes(),(yyvsp
[0]));}
9515 #line 9514 "hphp.5.tab.cpp" /* yacc.c:1651 */
9519 #line 1948 "hphp.y" /* yacc.c:1651 */
9520 { xhp_attribute_list(_p
,(yyval
), &(yyvsp
[-2]),(yyvsp
[0]));}
9521 #line 9520 "hphp.5.tab.cpp" /* yacc.c:1651 */
9525 #line 1955 "hphp.y" /* yacc.c:1651 */
9526 { xhp_attribute(_p
,(yyval
),(yyvsp
[-3]),(yyvsp
[-2]),(yyvsp
[-1]),(yyvsp
[0]));
9528 #line 9527 "hphp.5.tab.cpp" /* yacc.c:1651 */
9532 #line 1957 "hphp.y" /* yacc.c:1651 */
9533 { (yyval
) = (yyvsp
[0]); (yyval
) = 0;}
9534 #line 9533 "hphp.5.tab.cpp" /* yacc.c:1651 */
9538 #line 1961 "hphp.y" /* yacc.c:1651 */
9539 { (yyval
) = (yyvsp
[0]);}
9540 #line 9539 "hphp.5.tab.cpp" /* yacc.c:1651 */
9544 #line 1966 "hphp.y" /* yacc.c:1651 */
9546 #line 9545 "hphp.5.tab.cpp" /* yacc.c:1651 */
9550 #line 1968 "hphp.y" /* yacc.c:1651 */
9552 #line 9551 "hphp.5.tab.cpp" /* yacc.c:1651 */
9556 #line 1970 "hphp.y" /* yacc.c:1651 */
9558 #line 9557 "hphp.5.tab.cpp" /* yacc.c:1651 */
9562 #line 1971 "hphp.y" /* yacc.c:1651 */
9563 { /* This case handles all types other
9564 than "array", "var" and "enum".
9565 For now we just use type code 5;
9566 later xhp_attribute() will fix up
9567 the type code as appropriate. */
9568 (yyval
) = 5; (yyval
).setText((yyvsp
[0]));}
9569 #line 9568 "hphp.5.tab.cpp" /* yacc.c:1651 */
9573 #line 1977 "hphp.y" /* yacc.c:1651 */
9575 #line 9574 "hphp.5.tab.cpp" /* yacc.c:1651 */
9579 #line 1979 "hphp.y" /* yacc.c:1651 */
9580 { (yyval
) = (yyvsp
[-1]); (yyval
) = 7;}
9581 #line 9580 "hphp.5.tab.cpp" /* yacc.c:1651 */
9585 #line 1980 "hphp.y" /* yacc.c:1651 */
9587 #line 9586 "hphp.5.tab.cpp" /* yacc.c:1651 */
9591 #line 1984 "hphp.y" /* yacc.c:1651 */
9592 { _p
->onExprListElem((yyval
),nullptr,(yyvsp
[0])); }
9593 #line 9592 "hphp.5.tab.cpp" /* yacc.c:1651 */
9597 #line 1986 "hphp.y" /* yacc.c:1651 */
9598 { _p
->onExprListElem((yyval
),&(yyvsp
[-2]),(yyvsp
[0])); }
9599 #line 9598 "hphp.5.tab.cpp" /* yacc.c:1651 */
9603 #line 1991 "hphp.y" /* yacc.c:1651 */
9604 { (yyval
) = (yyvsp
[-1]);}
9605 #line 9604 "hphp.5.tab.cpp" /* yacc.c:1651 */
9609 #line 1994 "hphp.y" /* yacc.c:1651 */
9610 { (yyval
) = (yyvsp
[0]);}
9611 #line 9610 "hphp.5.tab.cpp" /* yacc.c:1651 */
9615 #line 1995 "hphp.y" /* yacc.c:1651 */
9616 { scalar_null(_p
, (yyval
));}
9617 #line 9616 "hphp.5.tab.cpp" /* yacc.c:1651 */
9621 #line 1999 "hphp.y" /* yacc.c:1651 */
9622 { scalar_num(_p
, (yyval
), "1");}
9623 #line 9622 "hphp.5.tab.cpp" /* yacc.c:1651 */
9627 #line 2000 "hphp.y" /* yacc.c:1651 */
9628 { scalar_num(_p
, (yyval
), "0");}
9629 #line 9628 "hphp.5.tab.cpp" /* yacc.c:1651 */
9633 #line 2004 "hphp.y" /* yacc.c:1651 */
9634 { Token t
; scalar_num(_p
, t
, "1");
9635 _p
->onArrayPair((yyval
),0,&(yyvsp
[0]),&t
,0);}
9636 #line 9635 "hphp.5.tab.cpp" /* yacc.c:1651 */
9640 #line 2007 "hphp.y" /* yacc.c:1651 */
9641 { Token t
; scalar_num(_p
, t
, "1");
9642 _p
->onArrayPair((yyval
),&(yyvsp
[-2]),&(yyvsp
[0]),&t
,0);}
9643 #line 9642 "hphp.5.tab.cpp" /* yacc.c:1651 */
9647 #line 2012 "hphp.y" /* yacc.c:1651 */
9648 { _p
->onScalar((yyval
),
9649 T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[0]));}
9650 #line 9649 "hphp.5.tab.cpp" /* yacc.c:1651 */
9654 #line 2017 "hphp.y" /* yacc.c:1651 */
9655 { (yyval
) = (yyvsp
[0]); (yyval
) = 2;}
9656 #line 9655 "hphp.5.tab.cpp" /* yacc.c:1651 */
9660 #line 2018 "hphp.y" /* yacc.c:1651 */
9662 if ((yyvsp
[0]).same("any")) (yyval
) = 1;}
9663 #line 9662 "hphp.5.tab.cpp" /* yacc.c:1651 */
9667 #line 2020 "hphp.y" /* yacc.c:1651 */
9669 #line 9668 "hphp.5.tab.cpp" /* yacc.c:1651 */
9673 #line 2024 "hphp.y" /* yacc.c:1651 */
9674 { xhp_children_paren(_p
, (yyval
), (yyvsp
[-1]), 0);}
9675 #line 9674 "hphp.5.tab.cpp" /* yacc.c:1651 */
9679 #line 2025 "hphp.y" /* yacc.c:1651 */
9680 { xhp_children_paren(_p
, (yyval
), (yyvsp
[-2]), 1);}
9681 #line 9680 "hphp.5.tab.cpp" /* yacc.c:1651 */
9685 #line 2026 "hphp.y" /* yacc.c:1651 */
9686 { xhp_children_paren(_p
, (yyval
), (yyvsp
[-2]), 2);}
9687 #line 9686 "hphp.5.tab.cpp" /* yacc.c:1651 */
9691 #line 2027 "hphp.y" /* yacc.c:1651 */
9692 { xhp_children_paren(_p
, (yyval
), (yyvsp
[-2]), 3);}
9693 #line 9692 "hphp.5.tab.cpp" /* yacc.c:1651 */
9697 #line 2031 "hphp.y" /* yacc.c:1651 */
9698 { (yyval
) = (yyvsp
[0]);}
9699 #line 9698 "hphp.5.tab.cpp" /* yacc.c:1651 */
9703 #line 2032 "hphp.y" /* yacc.c:1651 */
9704 { xhp_children_decl(_p
,(yyval
),(yyvsp
[0]),0, 0);}
9705 #line 9704 "hphp.5.tab.cpp" /* yacc.c:1651 */
9709 #line 2033 "hphp.y" /* yacc.c:1651 */
9710 { xhp_children_decl(_p
,(yyval
),(yyvsp
[-1]),1, 0);}
9711 #line 9710 "hphp.5.tab.cpp" /* yacc.c:1651 */
9715 #line 2034 "hphp.y" /* yacc.c:1651 */
9716 { xhp_children_decl(_p
,(yyval
),(yyvsp
[-1]),2, 0);}
9717 #line 9716 "hphp.5.tab.cpp" /* yacc.c:1651 */
9721 #line 2035 "hphp.y" /* yacc.c:1651 */
9722 { xhp_children_decl(_p
,(yyval
),(yyvsp
[-1]),3, 0);}
9723 #line 9722 "hphp.5.tab.cpp" /* yacc.c:1651 */
9727 #line 2037 "hphp.y" /* yacc.c:1651 */
9728 { xhp_children_decl(_p
,(yyval
),(yyvsp
[-2]),4,&(yyvsp
[0]));}
9729 #line 9728 "hphp.5.tab.cpp" /* yacc.c:1651 */
9733 #line 2039 "hphp.y" /* yacc.c:1651 */
9734 { xhp_children_decl(_p
,(yyval
),(yyvsp
[-2]),5,&(yyvsp
[0]));}
9735 #line 9734 "hphp.5.tab.cpp" /* yacc.c:1651 */
9739 #line 2043 "hphp.y" /* yacc.c:1651 */
9741 if ((yyvsp
[0]).same("any")) (yyval
) = 1; else
9742 if ((yyvsp
[0]).same("pcdata")) (yyval
) = 2;}
9743 #line 9742 "hphp.5.tab.cpp" /* yacc.c:1651 */
9747 #line 2046 "hphp.y" /* yacc.c:1651 */
9748 { (yyvsp
[0]).xhpLabel(); (yyval
) = (yyvsp
[0]); (yyval
) = 3;}
9749 #line 9748 "hphp.5.tab.cpp" /* yacc.c:1651 */
9753 #line 2047 "hphp.y" /* yacc.c:1651 */
9754 { (yyvsp
[0]).xhpLabel(0); (yyval
) = (yyvsp
[0]); (yyval
) = 4;}
9755 #line 9754 "hphp.5.tab.cpp" /* yacc.c:1651 */
9759 #line 2051 "hphp.y" /* yacc.c:1651 */
9761 #line 9760 "hphp.5.tab.cpp" /* yacc.c:1651 */
9765 #line 2052 "hphp.y" /* yacc.c:1651 */
9766 { _p
->finishStatement((yyval
), (yyvsp
[-1])); (yyval
) = 1;}
9767 #line 9766 "hphp.5.tab.cpp" /* yacc.c:1651 */
9771 #line 2056 "hphp.y" /* yacc.c:1651 */
9773 #line 9772 "hphp.5.tab.cpp" /* yacc.c:1651 */
9777 #line 2057 "hphp.y" /* yacc.c:1651 */
9778 { _p
->finishStatement((yyval
), (yyvsp
[-1])); (yyval
) = 1;}
9779 #line 9778 "hphp.5.tab.cpp" /* yacc.c:1651 */
9783 #line 2060 "hphp.y" /* yacc.c:1651 */
9784 { (yyval
) = (yyvsp
[0]);}
9785 #line 9784 "hphp.5.tab.cpp" /* yacc.c:1651 */
9789 #line 2061 "hphp.y" /* yacc.c:1651 */
9791 #line 9790 "hphp.5.tab.cpp" /* yacc.c:1651 */
9795 #line 2064 "hphp.y" /* yacc.c:1651 */
9796 { (yyval
) = (yyvsp
[0]);}
9797 #line 9796 "hphp.5.tab.cpp" /* yacc.c:1651 */
9801 #line 2065 "hphp.y" /* yacc.c:1651 */
9803 #line 9802 "hphp.5.tab.cpp" /* yacc.c:1651 */
9807 #line 2068 "hphp.y" /* yacc.c:1651 */
9808 { _p
->onMemberModifier((yyval
),NULL
,(yyvsp
[0]));}
9809 #line 9808 "hphp.5.tab.cpp" /* yacc.c:1651 */
9813 #line 2070 "hphp.y" /* yacc.c:1651 */
9814 { _p
->onMemberModifier((yyval
),&(yyvsp
[-1]),(yyvsp
[0]));}
9815 #line 9814 "hphp.5.tab.cpp" /* yacc.c:1651 */
9819 #line 2073 "hphp.y" /* yacc.c:1651 */
9820 { (yyval
) = T_PUBLIC
;}
9821 #line 9820 "hphp.5.tab.cpp" /* yacc.c:1651 */
9825 #line 2074 "hphp.y" /* yacc.c:1651 */
9826 { (yyval
) = T_PROTECTED
;}
9827 #line 9826 "hphp.5.tab.cpp" /* yacc.c:1651 */
9831 #line 2075 "hphp.y" /* yacc.c:1651 */
9832 { (yyval
) = T_PRIVATE
;}
9833 #line 9832 "hphp.5.tab.cpp" /* yacc.c:1651 */
9837 #line 2076 "hphp.y" /* yacc.c:1651 */
9838 { (yyval
) = T_STATIC
;}
9839 #line 9838 "hphp.5.tab.cpp" /* yacc.c:1651 */
9843 #line 2077 "hphp.y" /* yacc.c:1651 */
9844 { (yyval
) = T_ABSTRACT
;}
9845 #line 9844 "hphp.5.tab.cpp" /* yacc.c:1651 */
9849 #line 2078 "hphp.y" /* yacc.c:1651 */
9850 { (yyval
) = T_FINAL
;}
9851 #line 9850 "hphp.5.tab.cpp" /* yacc.c:1651 */
9855 #line 2079 "hphp.y" /* yacc.c:1651 */
9856 { (yyval
) = T_ASYNC
;}
9857 #line 9856 "hphp.5.tab.cpp" /* yacc.c:1651 */
9861 #line 2083 "hphp.y" /* yacc.c:1651 */
9862 { (yyval
) = (yyvsp
[0]);}
9863 #line 9862 "hphp.5.tab.cpp" /* yacc.c:1651 */
9867 #line 2084 "hphp.y" /* yacc.c:1651 */
9869 #line 9868 "hphp.5.tab.cpp" /* yacc.c:1651 */
9873 #line 2087 "hphp.y" /* yacc.c:1651 */
9874 { (yyval
) = T_PUBLIC
;}
9875 #line 9874 "hphp.5.tab.cpp" /* yacc.c:1651 */
9879 #line 2088 "hphp.y" /* yacc.c:1651 */
9880 { (yyval
) = T_PROTECTED
;}
9881 #line 9880 "hphp.5.tab.cpp" /* yacc.c:1651 */
9885 #line 2089 "hphp.y" /* yacc.c:1651 */
9886 { (yyval
) = T_PRIVATE
;}
9887 #line 9886 "hphp.5.tab.cpp" /* yacc.c:1651 */
9891 #line 2093 "hphp.y" /* yacc.c:1651 */
9892 { _p
->onClassVariable((yyval
),&(yyvsp
[-2]),(yyvsp
[0]),0);}
9893 #line 9892 "hphp.5.tab.cpp" /* yacc.c:1651 */
9897 #line 2095 "hphp.y" /* yacc.c:1651 */
9898 { _p
->onClassVariable((yyval
),&(yyvsp
[-4]),(yyvsp
[-2]),&(yyvsp
[0]));}
9899 #line 9898 "hphp.5.tab.cpp" /* yacc.c:1651 */
9903 #line 2096 "hphp.y" /* yacc.c:1651 */
9904 { _p
->onClassVariable((yyval
),0,(yyvsp
[0]),0);}
9905 #line 9904 "hphp.5.tab.cpp" /* yacc.c:1651 */
9909 #line 2097 "hphp.y" /* yacc.c:1651 */
9910 { _p
->onClassVariable((yyval
),0,(yyvsp
[-2]),&(yyvsp
[0]));}
9911 #line 9910 "hphp.5.tab.cpp" /* yacc.c:1651 */
9915 #line 2101 "hphp.y" /* yacc.c:1651 */
9916 { _p
->onClassConstant((yyval
),&(yyvsp
[-4]),(yyvsp
[-2]),(yyvsp
[0]));}
9917 #line 9916 "hphp.5.tab.cpp" /* yacc.c:1651 */
9921 #line 2103 "hphp.y" /* yacc.c:1651 */
9922 { _p
->onClassConstant((yyval
),0,(yyvsp
[-2]),(yyvsp
[0]));}
9923 #line 9922 "hphp.5.tab.cpp" /* yacc.c:1651 */
9927 #line 2112 "hphp.y" /* yacc.c:1651 */
9928 { _p
->onClassAbstractConstant((yyval
),&(yyvsp
[-2]),(yyvsp
[0]));}
9929 #line 9928 "hphp.5.tab.cpp" /* yacc.c:1651 */
9933 #line 2114 "hphp.y" /* yacc.c:1651 */
9934 { _p
->onClassAbstractConstant((yyval
),NULL
,(yyvsp
[0]));}
9935 #line 9934 "hphp.5.tab.cpp" /* yacc.c:1651 */
9939 #line 2118 "hphp.y" /* yacc.c:1651 */
9941 _p
->onClassTypeConstant((yyval
), (yyvsp
[-1]), t
);
9942 _p
->popTypeScope(); }
9943 #line 9942 "hphp.5.tab.cpp" /* yacc.c:1651 */
9947 #line 2122 "hphp.y" /* yacc.c:1651 */
9948 { _p
->onClassTypeConstant((yyval
), (yyvsp
[-3]), (yyvsp
[0]));
9949 _p
->popTypeScope(); }
9950 #line 9949 "hphp.5.tab.cpp" /* yacc.c:1651 */
9954 #line 2126 "hphp.y" /* yacc.c:1651 */
9955 { (yyval
) = (yyvsp
[0]); }
9956 #line 9955 "hphp.5.tab.cpp" /* yacc.c:1651 */
9960 #line 2130 "hphp.y" /* yacc.c:1651 */
9961 { (yyval
) = (yyvsp
[-1]); }
9962 #line 9961 "hphp.5.tab.cpp" /* yacc.c:1651 */
9966 #line 2134 "hphp.y" /* yacc.c:1651 */
9967 { (yyval
) = (yyvsp
[-1]);}
9968 #line 9967 "hphp.5.tab.cpp" /* yacc.c:1651 */
9972 #line 2136 "hphp.y" /* yacc.c:1651 */
9973 { _p
->onNewObject((yyval
), (yyvsp
[-1]), (yyvsp
[0]));}
9974 #line 9973 "hphp.5.tab.cpp" /* yacc.c:1651 */
9978 #line 2137 "hphp.y" /* yacc.c:1651 */
9979 { (yyval
) = (yyvsp
[0]);}
9980 #line 9979 "hphp.5.tab.cpp" /* yacc.c:1651 */
9984 #line 2138 "hphp.y" /* yacc.c:1651 */
9985 { UEXP((yyval
),(yyvsp
[0]),T_CLONE
,1);}
9986 #line 9985 "hphp.5.tab.cpp" /* yacc.c:1651 */
9990 #line 2139 "hphp.y" /* yacc.c:1651 */
9991 { (yyval
) = (yyvsp
[0]);}
9992 #line 9991 "hphp.5.tab.cpp" /* yacc.c:1651 */
9996 #line 2140 "hphp.y" /* yacc.c:1651 */
9997 { (yyval
) = (yyvsp
[0]);}
9998 #line 9997 "hphp.5.tab.cpp" /* yacc.c:1651 */
10002 #line 2143 "hphp.y" /* yacc.c:1651 */
10003 { _p
->onExprListElem((yyval
), &(yyvsp
[-2]), (yyvsp
[0]));}
10004 #line 10003 "hphp.5.tab.cpp" /* yacc.c:1651 */
10008 #line 2144 "hphp.y" /* yacc.c:1651 */
10009 { _p
->onExprListElem((yyval
), NULL
, (yyvsp
[0]));}
10010 #line 10009 "hphp.5.tab.cpp" /* yacc.c:1651 */
10014 #line 2148 "hphp.y" /* yacc.c:1651 */
10015 { (yyval
) = (yyvsp
[0]);}
10016 #line 10015 "hphp.5.tab.cpp" /* yacc.c:1651 */
10020 #line 2149 "hphp.y" /* yacc.c:1651 */
10021 { (yyval
).reset();}
10022 #line 10021 "hphp.5.tab.cpp" /* yacc.c:1651 */
10026 #line 2153 "hphp.y" /* yacc.c:1651 */
10027 { _p
->onYield((yyval
), NULL
);}
10028 #line 10027 "hphp.5.tab.cpp" /* yacc.c:1651 */
10032 #line 2154 "hphp.y" /* yacc.c:1651 */
10033 { _p
->onYield((yyval
), &(yyvsp
[0]));}
10034 #line 10033 "hphp.5.tab.cpp" /* yacc.c:1651 */
10038 #line 2155 "hphp.y" /* yacc.c:1651 */
10039 { _p
->onYieldPair((yyval
), &(yyvsp
[-2]), &(yyvsp
[0]));}
10040 #line 10039 "hphp.5.tab.cpp" /* yacc.c:1651 */
10044 #line 2156 "hphp.y" /* yacc.c:1651 */
10045 { (yyval
) = (yyvsp
[-1]); }
10046 #line 10045 "hphp.5.tab.cpp" /* yacc.c:1651 */
10050 #line 2160 "hphp.y" /* yacc.c:1651 */
10051 { _p
->onAssign((yyval
), (yyvsp
[-2]), (yyvsp
[0]), 0, true);}
10052 #line 10051 "hphp.5.tab.cpp" /* yacc.c:1651 */
10056 #line 2165 "hphp.y" /* yacc.c:1651 */
10057 { _p
->onListAssignment((yyval
), (yyvsp
[-2]), &(yyvsp
[0]), true);}
10058 #line 10057 "hphp.5.tab.cpp" /* yacc.c:1651 */
10062 #line 2169 "hphp.y" /* yacc.c:1651 */
10063 { _p
->onYieldFrom((yyval
),&(yyvsp
[0]));}
10064 #line 10063 "hphp.5.tab.cpp" /* yacc.c:1651 */
10068 #line 2173 "hphp.y" /* yacc.c:1651 */
10069 { _p
->onAssign((yyval
), (yyvsp
[-2]), (yyvsp
[0]), 0, true);}
10070 #line 10069 "hphp.5.tab.cpp" /* yacc.c:1651 */
10074 #line 2177 "hphp.y" /* yacc.c:1651 */
10075 { _p
->onAwait((yyval
), (yyvsp
[0])); }
10076 #line 10075 "hphp.5.tab.cpp" /* yacc.c:1651 */
10080 #line 2181 "hphp.y" /* yacc.c:1651 */
10081 { _p
->onAssign((yyval
), (yyvsp
[-2]), (yyvsp
[0]), 0, true);}
10082 #line 10081 "hphp.5.tab.cpp" /* yacc.c:1651 */
10086 #line 2186 "hphp.y" /* yacc.c:1651 */
10087 { _p
->onListAssignment((yyval
), (yyvsp
[-2]), &(yyvsp
[0]), true);}
10088 #line 10087 "hphp.5.tab.cpp" /* yacc.c:1651 */
10092 #line 2190 "hphp.y" /* yacc.c:1651 */
10093 { (yyval
) = (yyvsp
[-1]);}
10094 #line 10093 "hphp.5.tab.cpp" /* yacc.c:1651 */
10098 #line 2194 "hphp.y" /* yacc.c:1651 */
10099 { (yyval
) = (yyvsp
[0]);}
10100 #line 10099 "hphp.5.tab.cpp" /* yacc.c:1651 */
10104 #line 2195 "hphp.y" /* yacc.c:1651 */
10105 { (yyval
) = (yyvsp
[0]);}
10106 #line 10105 "hphp.5.tab.cpp" /* yacc.c:1651 */
10110 #line 2196 "hphp.y" /* yacc.c:1651 */
10111 { (yyval
) = (yyvsp
[0]);}
10112 #line 10111 "hphp.5.tab.cpp" /* yacc.c:1651 */
10116 #line 2197 "hphp.y" /* yacc.c:1651 */
10117 { (yyval
) = (yyvsp
[0]);}
10118 #line 10117 "hphp.5.tab.cpp" /* yacc.c:1651 */
10122 #line 2198 "hphp.y" /* yacc.c:1651 */
10123 { (yyval
) = (yyvsp
[0]);}
10124 #line 10123 "hphp.5.tab.cpp" /* yacc.c:1651 */
10128 #line 2202 "hphp.y" /* yacc.c:1651 */
10129 { (yyval
) = (yyvsp
[-1]); }
10130 #line 10129 "hphp.5.tab.cpp" /* yacc.c:1651 */
10134 #line 2207 "hphp.y" /* yacc.c:1651 */
10135 { _p
->onListAssignment((yyval
), (yyvsp
[-2]), &(yyvsp
[0]));}
10136 #line 10135 "hphp.5.tab.cpp" /* yacc.c:1651 */
10140 #line 2208 "hphp.y" /* yacc.c:1651 */
10141 { _p
->onAssign((yyval
), (yyvsp
[-2]), (yyvsp
[0]), 0);}
10142 #line 10141 "hphp.5.tab.cpp" /* yacc.c:1651 */
10146 #line 2209 "hphp.y" /* yacc.c:1651 */
10147 { _p
->onAssign((yyval
), (yyvsp
[-3]), (yyvsp
[0]), 1);}
10148 #line 10147 "hphp.5.tab.cpp" /* yacc.c:1651 */
10152 #line 2212 "hphp.y" /* yacc.c:1651 */
10153 { _p
->onAssignNew((yyval
),(yyvsp
[-5]),(yyvsp
[-1]),(yyvsp
[0]));}
10154 #line 10153 "hphp.5.tab.cpp" /* yacc.c:1651 */
10158 #line 2213 "hphp.y" /* yacc.c:1651 */
10159 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_PLUS_EQUAL
);}
10160 #line 10159 "hphp.5.tab.cpp" /* yacc.c:1651 */
10164 #line 2214 "hphp.y" /* yacc.c:1651 */
10165 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_MINUS_EQUAL
);}
10166 #line 10165 "hphp.5.tab.cpp" /* yacc.c:1651 */
10170 #line 2215 "hphp.y" /* yacc.c:1651 */
10171 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_MUL_EQUAL
);}
10172 #line 10171 "hphp.5.tab.cpp" /* yacc.c:1651 */
10176 #line 2216 "hphp.y" /* yacc.c:1651 */
10177 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_DIV_EQUAL
);}
10178 #line 10177 "hphp.5.tab.cpp" /* yacc.c:1651 */
10182 #line 2217 "hphp.y" /* yacc.c:1651 */
10183 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_CONCAT_EQUAL
);}
10184 #line 10183 "hphp.5.tab.cpp" /* yacc.c:1651 */
10188 #line 2218 "hphp.y" /* yacc.c:1651 */
10189 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_MOD_EQUAL
);}
10190 #line 10189 "hphp.5.tab.cpp" /* yacc.c:1651 */
10194 #line 2219 "hphp.y" /* yacc.c:1651 */
10195 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_AND_EQUAL
);}
10196 #line 10195 "hphp.5.tab.cpp" /* yacc.c:1651 */
10200 #line 2220 "hphp.y" /* yacc.c:1651 */
10201 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_OR_EQUAL
);}
10202 #line 10201 "hphp.5.tab.cpp" /* yacc.c:1651 */
10206 #line 2221 "hphp.y" /* yacc.c:1651 */
10207 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_XOR_EQUAL
);}
10208 #line 10207 "hphp.5.tab.cpp" /* yacc.c:1651 */
10212 #line 2222 "hphp.y" /* yacc.c:1651 */
10213 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_SL_EQUAL
);}
10214 #line 10213 "hphp.5.tab.cpp" /* yacc.c:1651 */
10218 #line 2223 "hphp.y" /* yacc.c:1651 */
10219 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_SR_EQUAL
);}
10220 #line 10219 "hphp.5.tab.cpp" /* yacc.c:1651 */
10224 #line 2224 "hphp.y" /* yacc.c:1651 */
10225 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_POW_EQUAL
);}
10226 #line 10225 "hphp.5.tab.cpp" /* yacc.c:1651 */
10230 #line 2225 "hphp.y" /* yacc.c:1651 */
10231 { UEXP((yyval
),(yyvsp
[-1]),T_INC
,0);}
10232 #line 10231 "hphp.5.tab.cpp" /* yacc.c:1651 */
10236 #line 2226 "hphp.y" /* yacc.c:1651 */
10237 { UEXP((yyval
),(yyvsp
[0]),T_INC
,1);}
10238 #line 10237 "hphp.5.tab.cpp" /* yacc.c:1651 */
10242 #line 2227 "hphp.y" /* yacc.c:1651 */
10243 { UEXP((yyval
),(yyvsp
[-1]),T_DEC
,0);}
10244 #line 10243 "hphp.5.tab.cpp" /* yacc.c:1651 */
10248 #line 2228 "hphp.y" /* yacc.c:1651 */
10249 { UEXP((yyval
),(yyvsp
[0]),T_DEC
,1);}
10250 #line 10249 "hphp.5.tab.cpp" /* yacc.c:1651 */
10254 #line 2229 "hphp.y" /* yacc.c:1651 */
10255 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_BOOLEAN_OR
);}
10256 #line 10255 "hphp.5.tab.cpp" /* yacc.c:1651 */
10260 #line 2230 "hphp.y" /* yacc.c:1651 */
10261 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_BOOLEAN_AND
);}
10262 #line 10261 "hphp.5.tab.cpp" /* yacc.c:1651 */
10266 #line 2231 "hphp.y" /* yacc.c:1651 */
10267 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_LOGICAL_OR
);}
10268 #line 10267 "hphp.5.tab.cpp" /* yacc.c:1651 */
10272 #line 2232 "hphp.y" /* yacc.c:1651 */
10273 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_LOGICAL_AND
);}
10274 #line 10273 "hphp.5.tab.cpp" /* yacc.c:1651 */
10278 #line 2233 "hphp.y" /* yacc.c:1651 */
10279 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_LOGICAL_XOR
);}
10280 #line 10279 "hphp.5.tab.cpp" /* yacc.c:1651 */
10284 #line 2234 "hphp.y" /* yacc.c:1651 */
10285 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'|');}
10286 #line 10285 "hphp.5.tab.cpp" /* yacc.c:1651 */
10290 #line 2235 "hphp.y" /* yacc.c:1651 */
10291 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'&');}
10292 #line 10291 "hphp.5.tab.cpp" /* yacc.c:1651 */
10296 #line 2236 "hphp.y" /* yacc.c:1651 */
10297 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'^');}
10298 #line 10297 "hphp.5.tab.cpp" /* yacc.c:1651 */
10302 #line 2237 "hphp.y" /* yacc.c:1651 */
10303 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'.');}
10304 #line 10303 "hphp.5.tab.cpp" /* yacc.c:1651 */
10308 #line 2238 "hphp.y" /* yacc.c:1651 */
10309 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'+');}
10310 #line 10309 "hphp.5.tab.cpp" /* yacc.c:1651 */
10314 #line 2239 "hphp.y" /* yacc.c:1651 */
10315 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'-');}
10316 #line 10315 "hphp.5.tab.cpp" /* yacc.c:1651 */
10320 #line 2240 "hphp.y" /* yacc.c:1651 */
10321 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'*');}
10322 #line 10321 "hphp.5.tab.cpp" /* yacc.c:1651 */
10326 #line 2241 "hphp.y" /* yacc.c:1651 */
10327 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'/');}
10328 #line 10327 "hphp.5.tab.cpp" /* yacc.c:1651 */
10332 #line 2242 "hphp.y" /* yacc.c:1651 */
10333 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_POW
);}
10334 #line 10333 "hphp.5.tab.cpp" /* yacc.c:1651 */
10338 #line 2243 "hphp.y" /* yacc.c:1651 */
10339 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'%');}
10340 #line 10339 "hphp.5.tab.cpp" /* yacc.c:1651 */
10344 #line 2244 "hphp.y" /* yacc.c:1651 */
10345 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_PIPE
);}
10346 #line 10345 "hphp.5.tab.cpp" /* yacc.c:1651 */
10350 #line 2245 "hphp.y" /* yacc.c:1651 */
10351 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_SL
);}
10352 #line 10351 "hphp.5.tab.cpp" /* yacc.c:1651 */
10356 #line 2246 "hphp.y" /* yacc.c:1651 */
10357 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_SR
);}
10358 #line 10357 "hphp.5.tab.cpp" /* yacc.c:1651 */
10362 #line 2247 "hphp.y" /* yacc.c:1651 */
10363 { UEXP((yyval
),(yyvsp
[0]),'+',1);}
10364 #line 10363 "hphp.5.tab.cpp" /* yacc.c:1651 */
10368 #line 2248 "hphp.y" /* yacc.c:1651 */
10369 { UEXP((yyval
),(yyvsp
[0]),'-',1);}
10370 #line 10369 "hphp.5.tab.cpp" /* yacc.c:1651 */
10374 #line 2249 "hphp.y" /* yacc.c:1651 */
10375 { UEXP((yyval
),(yyvsp
[0]),'!',1);}
10376 #line 10375 "hphp.5.tab.cpp" /* yacc.c:1651 */
10380 #line 2250 "hphp.y" /* yacc.c:1651 */
10381 { UEXP((yyval
),(yyvsp
[0]),'~',1);}
10382 #line 10381 "hphp.5.tab.cpp" /* yacc.c:1651 */
10386 #line 2251 "hphp.y" /* yacc.c:1651 */
10387 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_IS_IDENTICAL
);}
10388 #line 10387 "hphp.5.tab.cpp" /* yacc.c:1651 */
10392 #line 2252 "hphp.y" /* yacc.c:1651 */
10393 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_IS_NOT_IDENTICAL
);}
10394 #line 10393 "hphp.5.tab.cpp" /* yacc.c:1651 */
10398 #line 2253 "hphp.y" /* yacc.c:1651 */
10399 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_IS_EQUAL
);}
10400 #line 10399 "hphp.5.tab.cpp" /* yacc.c:1651 */
10404 #line 2254 "hphp.y" /* yacc.c:1651 */
10405 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_IS_NOT_EQUAL
);}
10406 #line 10405 "hphp.5.tab.cpp" /* yacc.c:1651 */
10410 #line 2255 "hphp.y" /* yacc.c:1651 */
10411 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'<');}
10412 #line 10411 "hphp.5.tab.cpp" /* yacc.c:1651 */
10416 #line 2256 "hphp.y" /* yacc.c:1651 */
10417 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),
10418 T_IS_SMALLER_OR_EQUAL
);}
10419 #line 10418 "hphp.5.tab.cpp" /* yacc.c:1651 */
10423 #line 2258 "hphp.y" /* yacc.c:1651 */
10424 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'>');}
10425 #line 10424 "hphp.5.tab.cpp" /* yacc.c:1651 */
10429 #line 2259 "hphp.y" /* yacc.c:1651 */
10430 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),
10431 T_IS_GREATER_OR_EQUAL
);}
10432 #line 10431 "hphp.5.tab.cpp" /* yacc.c:1651 */
10436 #line 2261 "hphp.y" /* yacc.c:1651 */
10437 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_SPACESHIP
);}
10438 #line 10437 "hphp.5.tab.cpp" /* yacc.c:1651 */
10442 #line 2263 "hphp.y" /* yacc.c:1651 */
10443 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_INSTANCEOF
);}
10444 #line 10443 "hphp.5.tab.cpp" /* yacc.c:1651 */
10448 #line 2264 "hphp.y" /* yacc.c:1651 */
10449 { (yyval
) = (yyvsp
[0]);}
10450 #line 10449 "hphp.5.tab.cpp" /* yacc.c:1651 */
10454 #line 2265 "hphp.y" /* yacc.c:1651 */
10455 { _p
->onQOp((yyval
), (yyvsp
[-4]), &(yyvsp
[-2]), (yyvsp
[0]));}
10456 #line 10455 "hphp.5.tab.cpp" /* yacc.c:1651 */
10460 #line 2266 "hphp.y" /* yacc.c:1651 */
10461 { _p
->onQOp((yyval
), (yyvsp
[-3]), 0, (yyvsp
[0]));}
10462 #line 10461 "hphp.5.tab.cpp" /* yacc.c:1651 */
10466 #line 2267 "hphp.y" /* yacc.c:1651 */
10467 { _p
->onNullCoalesce((yyval
), (yyvsp
[-2]), (yyvsp
[0]));}
10468 #line 10467 "hphp.5.tab.cpp" /* yacc.c:1651 */
10472 #line 2268 "hphp.y" /* yacc.c:1651 */
10473 { (yyval
) = (yyvsp
[0]);}
10474 #line 10473 "hphp.5.tab.cpp" /* yacc.c:1651 */
10478 #line 2269 "hphp.y" /* yacc.c:1651 */
10479 { UEXP((yyval
),(yyvsp
[0]),T_INT_CAST
,1);}
10480 #line 10479 "hphp.5.tab.cpp" /* yacc.c:1651 */
10484 #line 2270 "hphp.y" /* yacc.c:1651 */
10485 { UEXP((yyval
),(yyvsp
[0]),T_DOUBLE_CAST
,1);}
10486 #line 10485 "hphp.5.tab.cpp" /* yacc.c:1651 */
10490 #line 2271 "hphp.y" /* yacc.c:1651 */
10491 { UEXP((yyval
),(yyvsp
[0]),T_STRING_CAST
,1);}
10492 #line 10491 "hphp.5.tab.cpp" /* yacc.c:1651 */
10496 #line 2272 "hphp.y" /* yacc.c:1651 */
10497 { UEXP((yyval
),(yyvsp
[0]),T_ARRAY_CAST
,1);}
10498 #line 10497 "hphp.5.tab.cpp" /* yacc.c:1651 */
10502 #line 2273 "hphp.y" /* yacc.c:1651 */
10503 { UEXP((yyval
),(yyvsp
[0]),T_OBJECT_CAST
,1);}
10504 #line 10503 "hphp.5.tab.cpp" /* yacc.c:1651 */
10508 #line 2274 "hphp.y" /* yacc.c:1651 */
10509 { UEXP((yyval
),(yyvsp
[0]),T_BOOL_CAST
,1);}
10510 #line 10509 "hphp.5.tab.cpp" /* yacc.c:1651 */
10514 #line 2275 "hphp.y" /* yacc.c:1651 */
10515 { UEXP((yyval
),(yyvsp
[0]),T_UNSET_CAST
,1);}
10516 #line 10515 "hphp.5.tab.cpp" /* yacc.c:1651 */
10520 #line 2276 "hphp.y" /* yacc.c:1651 */
10521 { UEXP((yyval
),(yyvsp
[0]),T_EXIT
,1);}
10522 #line 10521 "hphp.5.tab.cpp" /* yacc.c:1651 */
10526 #line 2277 "hphp.y" /* yacc.c:1651 */
10527 { UEXP((yyval
),(yyvsp
[0]),'@',1);}
10528 #line 10527 "hphp.5.tab.cpp" /* yacc.c:1651 */
10532 #line 2278 "hphp.y" /* yacc.c:1651 */
10533 { (yyval
) = (yyvsp
[0]); }
10534 #line 10533 "hphp.5.tab.cpp" /* yacc.c:1651 */
10538 #line 2279 "hphp.y" /* yacc.c:1651 */
10539 { (yyval
) = (yyvsp
[0]); }
10540 #line 10539 "hphp.5.tab.cpp" /* yacc.c:1651 */
10544 #line 2280 "hphp.y" /* yacc.c:1651 */
10545 { (yyval
) = (yyvsp
[0]); }
10546 #line 10545 "hphp.5.tab.cpp" /* yacc.c:1651 */
10550 #line 2281 "hphp.y" /* yacc.c:1651 */
10551 { (yyval
) = (yyvsp
[0]); }
10552 #line 10551 "hphp.5.tab.cpp" /* yacc.c:1651 */
10556 #line 2282 "hphp.y" /* yacc.c:1651 */
10557 { (yyval
) = (yyvsp
[0]); }
10558 #line 10557 "hphp.5.tab.cpp" /* yacc.c:1651 */
10562 #line 2283 "hphp.y" /* yacc.c:1651 */
10563 { (yyval
) = (yyvsp
[0]); }
10564 #line 10563 "hphp.5.tab.cpp" /* yacc.c:1651 */
10568 #line 2284 "hphp.y" /* yacc.c:1651 */
10569 { (yyval
) = (yyvsp
[0]); }
10570 #line 10569 "hphp.5.tab.cpp" /* yacc.c:1651 */
10574 #line 2285 "hphp.y" /* yacc.c:1651 */
10575 { (yyval
) = (yyvsp
[0]); }
10576 #line 10575 "hphp.5.tab.cpp" /* yacc.c:1651 */
10580 #line 2286 "hphp.y" /* yacc.c:1651 */
10581 { (yyval
) = (yyvsp
[0]); }
10582 #line 10581 "hphp.5.tab.cpp" /* yacc.c:1651 */
10586 #line 2287 "hphp.y" /* yacc.c:1651 */
10587 { _p
->onEncapsList((yyval
),'`',(yyvsp
[-1]));}
10588 #line 10587 "hphp.5.tab.cpp" /* yacc.c:1651 */
10592 #line 2288 "hphp.y" /* yacc.c:1651 */
10593 { UEXP((yyval
),(yyvsp
[0]),T_PRINT
,1);}
10594 #line 10593 "hphp.5.tab.cpp" /* yacc.c:1651 */
10598 #line 2289 "hphp.y" /* yacc.c:1651 */
10599 { (yyval
) = (yyvsp
[0]);}
10600 #line 10599 "hphp.5.tab.cpp" /* yacc.c:1651 */
10604 #line 2296 "hphp.y" /* yacc.c:1651 */
10605 { (yyval
) = (yyvsp
[-2]);}
10606 #line 10605 "hphp.5.tab.cpp" /* yacc.c:1651 */
10610 #line 2297 "hphp.y" /* yacc.c:1651 */
10611 { (yyval
).reset();}
10612 #line 10611 "hphp.5.tab.cpp" /* yacc.c:1651 */
10616 #line 2302 "hphp.y" /* yacc.c:1651 */
10618 _p
->onNewLabelScope(true);
10619 _p
->onClosureStart(t
);
10620 _p
->pushLabelInfo(); }
10621 #line 10620 "hphp.5.tab.cpp" /* yacc.c:1651 */
10625 #line 2308 "hphp.y" /* yacc.c:1651 */
10626 { _p
->finishStatement((yyvsp
[-1]), (yyvsp
[-1])); (yyvsp
[-1]) = 1;
10627 (yyval
) = _p
->onClosure(
10628 ClosureType::Long
, nullptr,
10629 (yyvsp
[-10]),(yyvsp
[-7]),(yyvsp
[-4]),(yyvsp
[-1]),(yyvsp
[-5]),&(yyvsp
[-3]));
10630 _p
->closeActiveUsings();
10631 _p
->popLabelInfo();
10632 _p
->onCompleteLabelScope(true);}
10633 #line 10632 "hphp.5.tab.cpp" /* yacc.c:1651 */
10637 #line 2317 "hphp.y" /* yacc.c:1651 */
10639 _p
->onNewLabelScope(true);
10640 _p
->onClosureStart(t
);
10641 _p
->pushLabelInfo(); }
10642 #line 10641 "hphp.5.tab.cpp" /* yacc.c:1651 */
10646 #line 2323 "hphp.y" /* yacc.c:1651 */
10647 { _p
->finishStatement((yyvsp
[-1]), (yyvsp
[-1])); (yyvsp
[-1]) = 1;
10648 (yyval
) = _p
->onClosure(
10649 ClosureType::Long
, &(yyvsp
[-12]),
10650 (yyvsp
[-10]),(yyvsp
[-7]),(yyvsp
[-4]),(yyvsp
[-1]),(yyvsp
[-5]),&(yyvsp
[-3]));
10651 _p
->closeActiveUsings();
10652 _p
->popLabelInfo();
10653 _p
->onCompleteLabelScope(true);}
10654 #line 10653 "hphp.5.tab.cpp" /* yacc.c:1651 */
10658 #line 2334 "hphp.y" /* yacc.c:1651 */
10659 { _p
->pushFuncLocation();
10661 _p
->onNewLabelScope(true);
10662 _p
->onClosureStart(t
);
10663 _p
->pushLabelInfo();
10665 _p
->onParam((yyvsp
[0]),NULL
,u
,(yyvsp
[0]),
10668 #line 10667 "hphp.5.tab.cpp" /* yacc.c:1651 */
10672 #line 2343 "hphp.y" /* yacc.c:1651 */
10673 { Token v
; Token w
; Token x
;
10674 (yyvsp
[-3]) = T_ASYNC
;
10675 _p
->onMemberModifier((yyvsp
[-3]), nullptr, (yyvsp
[-3]));
10676 _p
->finishStatement((yyvsp
[0]), (yyvsp
[0])); (yyvsp
[0]) = 1;
10677 (yyval
) = _p
->onClosure(ClosureType::Short
,
10679 v
,(yyvsp
[-2]),w
,(yyvsp
[0]),x
);
10680 _p
->closeActiveUsings();
10681 _p
->popLabelInfo();
10682 _p
->onCompleteLabelScope(true);}
10683 #line 10682 "hphp.5.tab.cpp" /* yacc.c:1651 */
10687 #line 2354 "hphp.y" /* yacc.c:1651 */
10688 { _p
->pushFuncLocation();
10690 _p
->onNewLabelScope(true);
10691 _p
->onClosureStart(t
);
10692 _p
->pushLabelInfo();}
10693 #line 10692 "hphp.5.tab.cpp" /* yacc.c:1651 */
10697 #line 2362 "hphp.y" /* yacc.c:1651 */
10698 { Token u
; Token v
;
10699 (yyvsp
[-6]) = T_ASYNC
;
10700 _p
->onMemberModifier((yyvsp
[-6]), nullptr, (yyvsp
[-6]));
10701 _p
->finishStatement((yyvsp
[0]), (yyvsp
[0])); (yyvsp
[0]) = 1;
10702 (yyval
) = _p
->onClosure(ClosureType::Short
,
10704 u
,(yyvsp
[-3]),v
,(yyvsp
[0]),(yyvsp
[-1]));
10705 _p
->closeActiveUsings();
10706 _p
->popLabelInfo();
10707 _p
->onCompleteLabelScope(true);}
10708 #line 10707 "hphp.5.tab.cpp" /* yacc.c:1651 */
10712 #line 2373 "hphp.y" /* yacc.c:1651 */
10713 { _p
->pushFuncLocation();
10715 _p
->onNewLabelScope(true);
10716 _p
->onClosureStart(t
);
10717 _p
->pushLabelInfo();}
10718 #line 10717 "hphp.5.tab.cpp" /* yacc.c:1651 */
10722 #line 2379 "hphp.y" /* yacc.c:1651 */
10723 { Token u
; Token v
; Token w
; Token x
;
10725 (yyvsp
[-4]) = T_ASYNC
;
10726 _p
->onMemberModifier((yyvsp
[-4]), nullptr, (yyvsp
[-4]));
10727 _p
->finishStatement((yyvsp
[-1]), (yyvsp
[-1])); (yyvsp
[-1]) = 1;
10728 (yyval
) = _p
->onClosure(ClosureType::Short
,
10730 u
,v
,w
,(yyvsp
[-1]),x
);
10731 _p
->closeActiveUsings();
10732 _p
->popLabelInfo();
10733 _p
->onCompleteLabelScope(true);
10734 _p
->onCall((yyval
),1,(yyval
),y
,NULL
);}
10735 #line 10734 "hphp.5.tab.cpp" /* yacc.c:1651 */
10739 #line 2391 "hphp.y" /* yacc.c:1651 */
10740 { _p
->pushFuncLocation();
10742 _p
->onNewLabelScope(true);
10743 _p
->onClosureStart(t
);
10744 _p
->pushLabelInfo();
10746 _p
->onParam((yyvsp
[0]),NULL
,u
,(yyvsp
[0]),
10749 #line 10748 "hphp.5.tab.cpp" /* yacc.c:1651 */
10753 #line 2400 "hphp.y" /* yacc.c:1651 */
10754 { Token v
; Token w
; Token x
;
10755 _p
->finishStatement((yyvsp
[0]), (yyvsp
[0])); (yyvsp
[0]) = 1;
10756 (yyval
) = _p
->onClosure(ClosureType::Short
,
10758 v
,(yyvsp
[-2]),w
,(yyvsp
[0]),x
);
10759 _p
->closeActiveUsings();
10760 _p
->popLabelInfo();
10761 _p
->onCompleteLabelScope(true);}
10762 #line 10761 "hphp.5.tab.cpp" /* yacc.c:1651 */
10766 #line 2408 "hphp.y" /* yacc.c:1651 */
10767 { _p
->pushFuncLocation();
10769 _p
->onNewLabelScope(true);
10770 _p
->onClosureStart(t
);
10771 _p
->pushLabelInfo();}
10772 #line 10771 "hphp.5.tab.cpp" /* yacc.c:1651 */
10776 #line 2416 "hphp.y" /* yacc.c:1651 */
10777 { Token u
; Token v
;
10778 _p
->finishStatement((yyvsp
[0]), (yyvsp
[0])); (yyvsp
[0]) = 1;
10779 (yyval
) = _p
->onClosure(ClosureType::Short
,
10781 u
,(yyvsp
[-3]),v
,(yyvsp
[0]),(yyvsp
[-1]));
10782 _p
->closeActiveUsings();
10783 _p
->popLabelInfo();
10784 _p
->onCompleteLabelScope(true);}
10785 #line 10784 "hphp.5.tab.cpp" /* yacc.c:1651 */
10789 #line 2427 "hphp.y" /* yacc.c:1651 */
10790 { (yyval
) = _p
->onExprForLambda((yyvsp
[0]));}
10791 #line 10790 "hphp.5.tab.cpp" /* yacc.c:1651 */
10795 #line 2428 "hphp.y" /* yacc.c:1651 */
10796 { (yyval
) = _p
->onExprForLambda((yyvsp
[0]));}
10797 #line 10796 "hphp.5.tab.cpp" /* yacc.c:1651 */
10801 #line 2430 "hphp.y" /* yacc.c:1651 */
10802 { (yyval
) = (yyvsp
[-1]); }
10803 #line 10802 "hphp.5.tab.cpp" /* yacc.c:1651 */
10807 #line 2434 "hphp.y" /* yacc.c:1651 */
10808 { validate_shape_keyname((yyvsp
[0]), _p
);
10809 _p
->onScalar((yyval
), T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[0])); }
10810 #line 10809 "hphp.5.tab.cpp" /* yacc.c:1651 */
10814 #line 2436 "hphp.y" /* yacc.c:1651 */
10815 { (yyval
) = (yyvsp
[0]); }
10816 #line 10815 "hphp.5.tab.cpp" /* yacc.c:1651 */
10820 #line 2443 "hphp.y" /* yacc.c:1651 */
10821 { _p
->onArrayPair((yyval
),&(yyvsp
[-4]),&(yyvsp
[-2]),&(yyvsp
[0]),0); }
10822 #line 10821 "hphp.5.tab.cpp" /* yacc.c:1651 */
10826 #line 2446 "hphp.y" /* yacc.c:1651 */
10827 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[-2]),&(yyvsp
[0]),0); }
10828 #line 10827 "hphp.5.tab.cpp" /* yacc.c:1651 */
10832 #line 2453 "hphp.y" /* yacc.c:1651 */
10833 { _p
->onArrayPair((yyval
),&(yyvsp
[-4]),&(yyvsp
[-2]),&(yyvsp
[0]),0); }
10834 #line 10833 "hphp.5.tab.cpp" /* yacc.c:1651 */
10838 #line 2456 "hphp.y" /* yacc.c:1651 */
10839 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[-2]),&(yyvsp
[0]),0); }
10840 #line 10839 "hphp.5.tab.cpp" /* yacc.c:1651 */
10844 #line 2461 "hphp.y" /* yacc.c:1651 */
10845 { (yyval
) = (yyvsp
[-1]); }
10846 #line 10845 "hphp.5.tab.cpp" /* yacc.c:1651 */
10850 #line 2462 "hphp.y" /* yacc.c:1651 */
10851 { (yyval
).reset(); }
10852 #line 10851 "hphp.5.tab.cpp" /* yacc.c:1651 */
10856 #line 2467 "hphp.y" /* yacc.c:1651 */
10857 { (yyval
) = (yyvsp
[-1]); }
10858 #line 10857 "hphp.5.tab.cpp" /* yacc.c:1651 */
10862 #line 2468 "hphp.y" /* yacc.c:1651 */
10863 { (yyval
).reset(); }
10864 #line 10863 "hphp.5.tab.cpp" /* yacc.c:1651 */
10868 #line 2472 "hphp.y" /* yacc.c:1651 */
10869 { _p
->onDArray((yyval
), (yyvsp
[-1]));}
10870 #line 10869 "hphp.5.tab.cpp" /* yacc.c:1651 */
10874 #line 2476 "hphp.y" /* yacc.c:1651 */
10875 { _p
->onArray((yyval
),(yyvsp
[-1]),T_ARRAY
);}
10876 #line 10875 "hphp.5.tab.cpp" /* yacc.c:1651 */
10880 #line 2477 "hphp.y" /* yacc.c:1651 */
10881 { _p
->onArray((yyval
),(yyvsp
[-1]),T_ARRAY
);}
10882 #line 10881 "hphp.5.tab.cpp" /* yacc.c:1651 */
10886 #line 2478 "hphp.y" /* yacc.c:1651 */
10887 { _p
->onArray((yyval
),(yyvsp
[-1]),T_ARRAY
);}
10888 #line 10887 "hphp.5.tab.cpp" /* yacc.c:1651 */
10892 #line 2483 "hphp.y" /* yacc.c:1651 */
10893 { (yyval
) = (yyvsp
[-1]);}
10894 #line 10893 "hphp.5.tab.cpp" /* yacc.c:1651 */
10898 #line 2484 "hphp.y" /* yacc.c:1651 */
10899 { (yyval
).reset();}
10900 #line 10899 "hphp.5.tab.cpp" /* yacc.c:1651 */
10904 #line 2489 "hphp.y" /* yacc.c:1651 */
10905 { _p
->onArrayPair((yyval
),&(yyvsp
[-4]),&(yyvsp
[-2]),&(yyvsp
[0]),0);}
10906 #line 10905 "hphp.5.tab.cpp" /* yacc.c:1651 */
10910 #line 2490 "hphp.y" /* yacc.c:1651 */
10911 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[-2]),&(yyvsp
[0]),0);}
10912 #line 10911 "hphp.5.tab.cpp" /* yacc.c:1651 */
10916 #line 2495 "hphp.y" /* yacc.c:1651 */
10917 { (yyval
) = (yyvsp
[-1]);}
10918 #line 10917 "hphp.5.tab.cpp" /* yacc.c:1651 */
10922 #line 2496 "hphp.y" /* yacc.c:1651 */
10923 { (yyval
).reset();}
10924 #line 10923 "hphp.5.tab.cpp" /* yacc.c:1651 */
10928 #line 2502 "hphp.y" /* yacc.c:1651 */
10929 { _p
->onArrayPair((yyval
),&(yyvsp
[-4]),&(yyvsp
[-2]),&(yyvsp
[0]),0);}
10930 #line 10929 "hphp.5.tab.cpp" /* yacc.c:1651 */
10934 #line 2504 "hphp.y" /* yacc.c:1651 */
10935 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[-2]),&(yyvsp
[0]),0);}
10936 #line 10935 "hphp.5.tab.cpp" /* yacc.c:1651 */
10940 #line 2509 "hphp.y" /* yacc.c:1651 */
10941 { (yyval
) = (yyvsp
[-1]);}
10942 #line 10941 "hphp.5.tab.cpp" /* yacc.c:1651 */
10946 #line 2510 "hphp.y" /* yacc.c:1651 */
10947 { (yyval
).reset();}
10948 #line 10947 "hphp.5.tab.cpp" /* yacc.c:1651 */
10952 #line 2516 "hphp.y" /* yacc.c:1651 */
10953 { _p
->onArrayPair((yyval
),&(yyvsp
[-4]),&(yyvsp
[-2]),&(yyvsp
[0]),0);}
10954 #line 10953 "hphp.5.tab.cpp" /* yacc.c:1651 */
10958 #line 2518 "hphp.y" /* yacc.c:1651 */
10959 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[-2]),&(yyvsp
[0]),0);}
10960 #line 10959 "hphp.5.tab.cpp" /* yacc.c:1651 */
10964 #line 2522 "hphp.y" /* yacc.c:1651 */
10965 { _p
->onDict((yyval
), (yyvsp
[-1])); }
10966 #line 10965 "hphp.5.tab.cpp" /* yacc.c:1651 */
10970 #line 2526 "hphp.y" /* yacc.c:1651 */
10971 { _p
->onDict((yyval
), (yyvsp
[-1])); }
10972 #line 10971 "hphp.5.tab.cpp" /* yacc.c:1651 */
10976 #line 2530 "hphp.y" /* yacc.c:1651 */
10977 { _p
->onDict((yyval
), (yyvsp
[-1])); }
10978 #line 10977 "hphp.5.tab.cpp" /* yacc.c:1651 */
10982 #line 2534 "hphp.y" /* yacc.c:1651 */
10983 { _p
->onVec((yyval
), (yyvsp
[-1])); }
10984 #line 10983 "hphp.5.tab.cpp" /* yacc.c:1651 */
10988 #line 2538 "hphp.y" /* yacc.c:1651 */
10989 { _p
->onVec((yyval
), (yyvsp
[-1])); }
10990 #line 10989 "hphp.5.tab.cpp" /* yacc.c:1651 */
10994 #line 2542 "hphp.y" /* yacc.c:1651 */
10995 { _p
->onVec((yyval
), (yyvsp
[-1])); }
10996 #line 10995 "hphp.5.tab.cpp" /* yacc.c:1651 */
11000 #line 2546 "hphp.y" /* yacc.c:1651 */
11001 { _p
->onKeyset((yyval
), (yyvsp
[-1])); }
11002 #line 11001 "hphp.5.tab.cpp" /* yacc.c:1651 */
11006 #line 2550 "hphp.y" /* yacc.c:1651 */
11007 { _p
->onKeyset((yyval
), (yyvsp
[-1])); }
11008 #line 11007 "hphp.5.tab.cpp" /* yacc.c:1651 */
11012 #line 2554 "hphp.y" /* yacc.c:1651 */
11013 { _p
->onKeyset((yyval
), (yyvsp
[-1])); }
11014 #line 11013 "hphp.5.tab.cpp" /* yacc.c:1651 */
11018 #line 2558 "hphp.y" /* yacc.c:1651 */
11019 { _p
->onVArray((yyval
),(yyvsp
[-1])); }
11020 #line 11019 "hphp.5.tab.cpp" /* yacc.c:1651 */
11024 #line 2562 "hphp.y" /* yacc.c:1651 */
11025 { _p
->onVArray((yyval
),(yyvsp
[-1])); }
11026 #line 11025 "hphp.5.tab.cpp" /* yacc.c:1651 */
11030 #line 2566 "hphp.y" /* yacc.c:1651 */
11031 { _p
->onVArray((yyval
),(yyvsp
[-1])); }
11032 #line 11031 "hphp.5.tab.cpp" /* yacc.c:1651 */
11036 #line 2570 "hphp.y" /* yacc.c:1651 */
11037 { _p
->onVArray((yyval
),(yyvsp
[-1])); }
11038 #line 11037 "hphp.5.tab.cpp" /* yacc.c:1651 */
11042 #line 2574 "hphp.y" /* yacc.c:1651 */
11043 { _p
->onVArray((yyval
),(yyvsp
[-1])); }
11044 #line 11043 "hphp.5.tab.cpp" /* yacc.c:1651 */
11048 #line 2578 "hphp.y" /* yacc.c:1651 */
11049 { _p
->onVArray((yyval
),(yyvsp
[-1])); }
11050 #line 11049 "hphp.5.tab.cpp" /* yacc.c:1651 */
11054 #line 2582 "hphp.y" /* yacc.c:1651 */
11055 { _p
->onDArray((yyval
),(yyvsp
[-1])); }
11056 #line 11055 "hphp.5.tab.cpp" /* yacc.c:1651 */
11060 #line 2586 "hphp.y" /* yacc.c:1651 */
11061 { _p
->onDArray((yyval
),(yyvsp
[-1])); }
11062 #line 11061 "hphp.5.tab.cpp" /* yacc.c:1651 */
11066 #line 2590 "hphp.y" /* yacc.c:1651 */
11067 { _p
->onDArray((yyval
),(yyvsp
[-1])); }
11068 #line 11067 "hphp.5.tab.cpp" /* yacc.c:1651 */
11072 #line 2595 "hphp.y" /* yacc.c:1651 */
11073 { (yyval
) = (yyvsp
[-1]);}
11074 #line 11073 "hphp.5.tab.cpp" /* yacc.c:1651 */
11078 #line 2596 "hphp.y" /* yacc.c:1651 */
11079 { (yyval
).reset();}
11080 #line 11079 "hphp.5.tab.cpp" /* yacc.c:1651 */
11084 #line 2601 "hphp.y" /* yacc.c:1651 */
11085 { (yyval
) = (yyvsp
[-1]);}
11086 #line 11085 "hphp.5.tab.cpp" /* yacc.c:1651 */
11090 #line 2602 "hphp.y" /* yacc.c:1651 */
11091 { (yyval
).reset();}
11092 #line 11091 "hphp.5.tab.cpp" /* yacc.c:1651 */
11096 #line 2607 "hphp.y" /* yacc.c:1651 */
11097 { (yyval
) = (yyvsp
[-1]);}
11098 #line 11097 "hphp.5.tab.cpp" /* yacc.c:1651 */
11102 #line 2608 "hphp.y" /* yacc.c:1651 */
11103 { (yyval
).reset();}
11104 #line 11103 "hphp.5.tab.cpp" /* yacc.c:1651 */
11108 #line 2613 "hphp.y" /* yacc.c:1651 */
11110 _p
->onName(t
,(yyvsp
[-3]),Parser::StringName
);
11111 BEXP((yyval
),t
,(yyvsp
[-1]),T_COLLECTION
);}
11112 #line 11111 "hphp.5.tab.cpp" /* yacc.c:1651 */
11116 #line 2620 "hphp.y" /* yacc.c:1651 */
11118 _p
->onName(t
,(yyvsp
[-3]),Parser::StringName
);
11119 BEXP((yyval
),t
,(yyvsp
[-1]),T_COLLECTION
);}
11120 #line 11119 "hphp.5.tab.cpp" /* yacc.c:1651 */
11124 #line 2627 "hphp.y" /* yacc.c:1651 */
11125 { _p
->onRefDim((yyval
), (yyvsp
[-3]), (yyvsp
[-1]));}
11126 #line 11125 "hphp.5.tab.cpp" /* yacc.c:1651 */
11130 #line 2629 "hphp.y" /* yacc.c:1651 */
11131 { _p
->onRefDim((yyval
), (yyvsp
[-3]), (yyvsp
[-1]));}
11132 #line 11131 "hphp.5.tab.cpp" /* yacc.c:1651 */
11136 #line 2633 "hphp.y" /* yacc.c:1651 */
11137 { (yyval
) = (yyvsp
[0]);}
11138 #line 11137 "hphp.5.tab.cpp" /* yacc.c:1651 */
11142 #line 2634 "hphp.y" /* yacc.c:1651 */
11143 { (yyval
) = (yyvsp
[0]);}
11144 #line 11143 "hphp.5.tab.cpp" /* yacc.c:1651 */
11148 #line 2635 "hphp.y" /* yacc.c:1651 */
11149 { (yyval
) = (yyvsp
[0]);}
11150 #line 11149 "hphp.5.tab.cpp" /* yacc.c:1651 */
11154 #line 2636 "hphp.y" /* yacc.c:1651 */
11155 { (yyval
) = (yyvsp
[0]);}
11156 #line 11155 "hphp.5.tab.cpp" /* yacc.c:1651 */
11160 #line 2637 "hphp.y" /* yacc.c:1651 */
11161 { (yyval
) = (yyvsp
[0]);}
11162 #line 11161 "hphp.5.tab.cpp" /* yacc.c:1651 */
11166 #line 2638 "hphp.y" /* yacc.c:1651 */
11167 { (yyval
) = (yyvsp
[0]);}
11168 #line 11167 "hphp.5.tab.cpp" /* yacc.c:1651 */
11172 #line 2639 "hphp.y" /* yacc.c:1651 */
11173 { (yyval
) = (yyvsp
[0]);}
11174 #line 11173 "hphp.5.tab.cpp" /* yacc.c:1651 */
11178 #line 2640 "hphp.y" /* yacc.c:1651 */
11179 { (yyval
) = (yyvsp
[0]);}
11180 #line 11179 "hphp.5.tab.cpp" /* yacc.c:1651 */
11184 #line 2641 "hphp.y" /* yacc.c:1651 */
11185 { (yyval
) = (yyvsp
[0]);}
11186 #line 11185 "hphp.5.tab.cpp" /* yacc.c:1651 */
11190 #line 2642 "hphp.y" /* yacc.c:1651 */
11191 { _p
->onScalar((yyval
),
11192 T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[0])); }
11193 #line 11192 "hphp.5.tab.cpp" /* yacc.c:1651 */
11197 #line 2644 "hphp.y" /* yacc.c:1651 */
11198 { (yyval
) = (yyvsp
[-1]);}
11199 #line 11198 "hphp.5.tab.cpp" /* yacc.c:1651 */
11203 #line 2645 "hphp.y" /* yacc.c:1651 */
11204 { (yyval
) = (yyvsp
[0]);}
11205 #line 11204 "hphp.5.tab.cpp" /* yacc.c:1651 */
11209 #line 2649 "hphp.y" /* yacc.c:1651 */
11210 { _p
->onClosureParam((yyval
),&(yyvsp
[-2]),(yyvsp
[0]),0);}
11211 #line 11210 "hphp.5.tab.cpp" /* yacc.c:1651 */
11215 #line 2650 "hphp.y" /* yacc.c:1651 */
11216 { _p
->onClosureParam((yyval
),&(yyvsp
[-3]),(yyvsp
[0]),1);}
11217 #line 11216 "hphp.5.tab.cpp" /* yacc.c:1651 */
11221 #line 2651 "hphp.y" /* yacc.c:1651 */
11222 { _p
->onClosureParam((yyval
), 0,(yyvsp
[0]),0);}
11223 #line 11222 "hphp.5.tab.cpp" /* yacc.c:1651 */
11227 #line 2652 "hphp.y" /* yacc.c:1651 */
11228 { _p
->onClosureParam((yyval
), 0,(yyvsp
[0]),1);}
11229 #line 11228 "hphp.5.tab.cpp" /* yacc.c:1651 */
11233 #line 2659 "hphp.y" /* yacc.c:1651 */
11234 { xhp_tag(_p
,(yyval
),(yyvsp
[-2]),(yyvsp
[-1]));}
11235 #line 11234 "hphp.5.tab.cpp" /* yacc.c:1651 */
11239 #line 2662 "hphp.y" /* yacc.c:1651 */
11240 { Token t1
; _p
->onDArray(t1
,(yyvsp
[-1]));
11241 Token t2
; _p
->onVArray(t2
,(yyvsp
[0]));
11242 Token file
; scalar_file(_p
, file
);
11243 Token line
; scalar_line(_p
, line
);
11244 _p
->onCallParam((yyvsp
[-1]),NULL
,t1
,
11246 _p
->onCallParam((yyval
), &(yyvsp
[-1]),t2
,
11248 _p
->onCallParam((yyvsp
[-1]), &(yyvsp
[-1]),file
,
11250 _p
->onCallParam((yyvsp
[-1]), &(yyvsp
[-1]),line
,
11252 (yyval
).setText("");}
11253 #line 11252 "hphp.5.tab.cpp" /* yacc.c:1651 */
11257 #line 2677 "hphp.y" /* yacc.c:1651 */
11258 { Token file
; scalar_file(_p
, file
);
11259 Token line
; scalar_line(_p
, line
);
11260 _p
->onDArray((yyvsp
[-2]),(yyvsp
[-5]));
11261 _p
->onVArray((yyvsp
[-1]),(yyvsp
[-3]));
11262 _p
->onCallParam((yyvsp
[-4]),NULL
,(yyvsp
[-2]),
11264 _p
->onCallParam((yyval
), &(yyvsp
[-4]),(yyvsp
[-1]),
11266 _p
->onCallParam((yyvsp
[-4]), &(yyvsp
[-4]),file
,
11268 _p
->onCallParam((yyvsp
[-4]), &(yyvsp
[-4]),line
,
11270 (yyval
).setText((yyvsp
[0]).text());}
11271 #line 11270 "hphp.5.tab.cpp" /* yacc.c:1651 */
11275 #line 2692 "hphp.y" /* yacc.c:1651 */
11276 { (yyval
).reset(); (yyval
).setText("");}
11277 #line 11276 "hphp.5.tab.cpp" /* yacc.c:1651 */
11281 #line 2693 "hphp.y" /* yacc.c:1651 */
11282 { (yyval
).reset(); (yyval
).setText((yyvsp
[0]));}
11283 #line 11282 "hphp.5.tab.cpp" /* yacc.c:1651 */
11287 #line 2696 "hphp.y" /* yacc.c:1651 */
11288 { _p
->onXhpAttributesStart(); (yyval
).reset();}
11289 #line 11288 "hphp.5.tab.cpp" /* yacc.c:1651 */
11293 #line 2698 "hphp.y" /* yacc.c:1651 */
11294 { _p
->onXhpAttributeSpread((yyval
), &(yyvsp
[-4]), (yyvsp
[-1]));}
11295 #line 11294 "hphp.5.tab.cpp" /* yacc.c:1651 */
11299 #line 2701 "hphp.y" /* yacc.c:1651 */
11300 { _p
->onArrayPair((yyval
),&(yyvsp
[-3]),&(yyvsp
[-2]),&(yyvsp
[0]),0);}
11301 #line 11300 "hphp.5.tab.cpp" /* yacc.c:1651 */
11305 #line 2704 "hphp.y" /* yacc.c:1651 */
11306 { _p
->onOptExprListElem((yyval
), &(yyvsp
[-1]), (yyvsp
[0])); }
11307 #line 11306 "hphp.5.tab.cpp" /* yacc.c:1651 */
11311 #line 2705 "hphp.y" /* yacc.c:1651 */
11312 { (yyval
).reset();}
11313 #line 11312 "hphp.5.tab.cpp" /* yacc.c:1651 */
11317 #line 2708 "hphp.y" /* yacc.c:1651 */
11318 { _p
->onScalar((yyval
),
11319 T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[0]));}
11320 #line 11319 "hphp.5.tab.cpp" /* yacc.c:1651 */
11324 #line 2712 "hphp.y" /* yacc.c:1651 */
11325 { (yyvsp
[0]).xhpDecode();
11326 _p
->onScalar((yyval
),
11327 T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[0]));}
11328 #line 11327 "hphp.5.tab.cpp" /* yacc.c:1651 */
11332 #line 2715 "hphp.y" /* yacc.c:1651 */
11333 { (yyval
) = (yyvsp
[-1]);}
11334 #line 11333 "hphp.5.tab.cpp" /* yacc.c:1651 */
11338 #line 2718 "hphp.y" /* yacc.c:1651 */
11340 if ((yyvsp
[0]).htmlTrim()) {
11341 (yyvsp
[0]).xhpDecode();
11342 _p
->onScalar((yyval
),
11343 T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[0]));
11346 #line 11345 "hphp.5.tab.cpp" /* yacc.c:1651 */
11350 #line 2725 "hphp.y" /* yacc.c:1651 */
11351 { (yyval
) = (yyvsp
[-1]); }
11352 #line 11351 "hphp.5.tab.cpp" /* yacc.c:1651 */
11356 #line 2726 "hphp.y" /* yacc.c:1651 */
11357 { (yyval
) = (yyvsp
[0]); }
11358 #line 11357 "hphp.5.tab.cpp" /* yacc.c:1651 */
11362 #line 2730 "hphp.y" /* yacc.c:1651 */
11363 { (yyval
) = (yyvsp
[0]);}
11364 #line 11363 "hphp.5.tab.cpp" /* yacc.c:1651 */
11368 #line 2732 "hphp.y" /* yacc.c:1651 */
11369 { (yyval
) = (yyvsp
[-2]) + ":" + (yyvsp
[0]);}
11370 #line 11369 "hphp.5.tab.cpp" /* yacc.c:1651 */
11374 #line 2734 "hphp.y" /* yacc.c:1651 */
11375 { (yyval
) = (yyvsp
[-2]) + "-" + (yyvsp
[0]);}
11376 #line 11375 "hphp.5.tab.cpp" /* yacc.c:1651 */
11380 #line 2738 "hphp.y" /* yacc.c:1651 */
11381 { (yyval
) = (yyvsp
[0]);}
11382 #line 11381 "hphp.5.tab.cpp" /* yacc.c:1651 */
11386 #line 2739 "hphp.y" /* yacc.c:1651 */
11387 { (yyval
) = (yyvsp
[0]);}
11388 #line 11387 "hphp.5.tab.cpp" /* yacc.c:1651 */
11392 #line 2740 "hphp.y" /* yacc.c:1651 */
11393 { (yyval
) = (yyvsp
[0]);}
11394 #line 11393 "hphp.5.tab.cpp" /* yacc.c:1651 */
11398 #line 2741 "hphp.y" /* yacc.c:1651 */
11399 { (yyval
) = (yyvsp
[0]);}
11400 #line 11399 "hphp.5.tab.cpp" /* yacc.c:1651 */
11404 #line 2742 "hphp.y" /* yacc.c:1651 */
11405 { (yyval
) = (yyvsp
[0]);}
11406 #line 11405 "hphp.5.tab.cpp" /* yacc.c:1651 */
11410 #line 2743 "hphp.y" /* yacc.c:1651 */
11411 { (yyval
) = (yyvsp
[0]);}
11412 #line 11411 "hphp.5.tab.cpp" /* yacc.c:1651 */
11416 #line 2744 "hphp.y" /* yacc.c:1651 */
11417 { (yyval
) = (yyvsp
[0]);}
11418 #line 11417 "hphp.5.tab.cpp" /* yacc.c:1651 */
11422 #line 2745 "hphp.y" /* yacc.c:1651 */
11423 { (yyval
) = (yyvsp
[0]);}
11424 #line 11423 "hphp.5.tab.cpp" /* yacc.c:1651 */
11428 #line 2746 "hphp.y" /* yacc.c:1651 */
11429 { (yyval
) = (yyvsp
[0]);}
11430 #line 11429 "hphp.5.tab.cpp" /* yacc.c:1651 */
11434 #line 2747 "hphp.y" /* yacc.c:1651 */
11435 { (yyval
) = (yyvsp
[0]);}
11436 #line 11435 "hphp.5.tab.cpp" /* yacc.c:1651 */
11440 #line 2748 "hphp.y" /* yacc.c:1651 */
11441 { (yyval
) = (yyvsp
[0]);}
11442 #line 11441 "hphp.5.tab.cpp" /* yacc.c:1651 */
11446 #line 2749 "hphp.y" /* yacc.c:1651 */
11447 { (yyval
) = (yyvsp
[0]);}
11448 #line 11447 "hphp.5.tab.cpp" /* yacc.c:1651 */
11452 #line 2750 "hphp.y" /* yacc.c:1651 */
11453 { (yyval
) = (yyvsp
[0]);}
11454 #line 11453 "hphp.5.tab.cpp" /* yacc.c:1651 */
11458 #line 2751 "hphp.y" /* yacc.c:1651 */
11459 { (yyval
) = (yyvsp
[0]);}
11460 #line 11459 "hphp.5.tab.cpp" /* yacc.c:1651 */
11464 #line 2752 "hphp.y" /* yacc.c:1651 */
11465 { (yyval
) = (yyvsp
[0]);}
11466 #line 11465 "hphp.5.tab.cpp" /* yacc.c:1651 */
11470 #line 2753 "hphp.y" /* yacc.c:1651 */
11471 { (yyval
) = (yyvsp
[0]);}
11472 #line 11471 "hphp.5.tab.cpp" /* yacc.c:1651 */
11476 #line 2754 "hphp.y" /* yacc.c:1651 */
11477 { (yyval
) = (yyvsp
[0]);}
11478 #line 11477 "hphp.5.tab.cpp" /* yacc.c:1651 */
11482 #line 2755 "hphp.y" /* yacc.c:1651 */
11483 { (yyval
) = (yyvsp
[0]);}
11484 #line 11483 "hphp.5.tab.cpp" /* yacc.c:1651 */
11488 #line 2756 "hphp.y" /* yacc.c:1651 */
11489 { (yyval
) = (yyvsp
[0]);}
11490 #line 11489 "hphp.5.tab.cpp" /* yacc.c:1651 */
11494 #line 2757 "hphp.y" /* yacc.c:1651 */
11495 { (yyval
) = (yyvsp
[0]);}
11496 #line 11495 "hphp.5.tab.cpp" /* yacc.c:1651 */
11500 #line 2758 "hphp.y" /* yacc.c:1651 */
11501 { (yyval
) = (yyvsp
[0]);}
11502 #line 11501 "hphp.5.tab.cpp" /* yacc.c:1651 */
11506 #line 2759 "hphp.y" /* yacc.c:1651 */
11507 { (yyval
) = (yyvsp
[0]);}
11508 #line 11507 "hphp.5.tab.cpp" /* yacc.c:1651 */
11512 #line 2760 "hphp.y" /* yacc.c:1651 */
11513 { (yyval
) = (yyvsp
[0]);}
11514 #line 11513 "hphp.5.tab.cpp" /* yacc.c:1651 */
11518 #line 2761 "hphp.y" /* yacc.c:1651 */
11519 { (yyval
) = (yyvsp
[0]);}
11520 #line 11519 "hphp.5.tab.cpp" /* yacc.c:1651 */
11524 #line 2762 "hphp.y" /* yacc.c:1651 */
11525 { (yyval
) = (yyvsp
[0]);}
11526 #line 11525 "hphp.5.tab.cpp" /* yacc.c:1651 */
11530 #line 2763 "hphp.y" /* yacc.c:1651 */
11531 { (yyval
) = (yyvsp
[0]);}
11532 #line 11531 "hphp.5.tab.cpp" /* yacc.c:1651 */
11536 #line 2764 "hphp.y" /* yacc.c:1651 */
11537 { (yyval
) = (yyvsp
[0]);}
11538 #line 11537 "hphp.5.tab.cpp" /* yacc.c:1651 */
11542 #line 2765 "hphp.y" /* yacc.c:1651 */
11543 { (yyval
) = (yyvsp
[0]);}
11544 #line 11543 "hphp.5.tab.cpp" /* yacc.c:1651 */
11548 #line 2766 "hphp.y" /* yacc.c:1651 */
11549 { (yyval
) = (yyvsp
[0]);}
11550 #line 11549 "hphp.5.tab.cpp" /* yacc.c:1651 */
11554 #line 2767 "hphp.y" /* yacc.c:1651 */
11555 { (yyval
) = (yyvsp
[0]);}
11556 #line 11555 "hphp.5.tab.cpp" /* yacc.c:1651 */
11560 #line 2768 "hphp.y" /* yacc.c:1651 */
11561 { (yyval
) = (yyvsp
[0]);}
11562 #line 11561 "hphp.5.tab.cpp" /* yacc.c:1651 */
11566 #line 2769 "hphp.y" /* yacc.c:1651 */
11567 { (yyval
) = (yyvsp
[0]);}
11568 #line 11567 "hphp.5.tab.cpp" /* yacc.c:1651 */
11572 #line 2770 "hphp.y" /* yacc.c:1651 */
11573 { (yyval
) = (yyvsp
[0]);}
11574 #line 11573 "hphp.5.tab.cpp" /* yacc.c:1651 */
11578 #line 2771 "hphp.y" /* yacc.c:1651 */
11579 { (yyval
) = (yyvsp
[0]);}
11580 #line 11579 "hphp.5.tab.cpp" /* yacc.c:1651 */
11584 #line 2772 "hphp.y" /* yacc.c:1651 */
11585 { (yyval
) = (yyvsp
[0]);}
11586 #line 11585 "hphp.5.tab.cpp" /* yacc.c:1651 */
11590 #line 2773 "hphp.y" /* yacc.c:1651 */
11591 { (yyval
) = (yyvsp
[0]);}
11592 #line 11591 "hphp.5.tab.cpp" /* yacc.c:1651 */
11596 #line 2774 "hphp.y" /* yacc.c:1651 */
11597 { (yyval
) = (yyvsp
[0]);}
11598 #line 11597 "hphp.5.tab.cpp" /* yacc.c:1651 */
11602 #line 2775 "hphp.y" /* yacc.c:1651 */
11603 { (yyval
) = (yyvsp
[0]);}
11604 #line 11603 "hphp.5.tab.cpp" /* yacc.c:1651 */
11608 #line 2776 "hphp.y" /* yacc.c:1651 */
11609 { (yyval
) = (yyvsp
[0]);}
11610 #line 11609 "hphp.5.tab.cpp" /* yacc.c:1651 */
11614 #line 2777 "hphp.y" /* yacc.c:1651 */
11615 { (yyval
) = (yyvsp
[0]);}
11616 #line 11615 "hphp.5.tab.cpp" /* yacc.c:1651 */
11620 #line 2778 "hphp.y" /* yacc.c:1651 */
11621 { (yyval
) = (yyvsp
[0]);}
11622 #line 11621 "hphp.5.tab.cpp" /* yacc.c:1651 */
11626 #line 2779 "hphp.y" /* yacc.c:1651 */
11627 { (yyval
) = (yyvsp
[0]);}
11628 #line 11627 "hphp.5.tab.cpp" /* yacc.c:1651 */
11632 #line 2780 "hphp.y" /* yacc.c:1651 */
11633 { (yyval
) = (yyvsp
[0]);}
11634 #line 11633 "hphp.5.tab.cpp" /* yacc.c:1651 */
11638 #line 2781 "hphp.y" /* yacc.c:1651 */
11639 { (yyval
) = (yyvsp
[0]);}
11640 #line 11639 "hphp.5.tab.cpp" /* yacc.c:1651 */
11644 #line 2782 "hphp.y" /* yacc.c:1651 */
11645 { (yyval
) = (yyvsp
[0]);}
11646 #line 11645 "hphp.5.tab.cpp" /* yacc.c:1651 */
11650 #line 2783 "hphp.y" /* yacc.c:1651 */
11651 { (yyval
) = (yyvsp
[0]);}
11652 #line 11651 "hphp.5.tab.cpp" /* yacc.c:1651 */
11656 #line 2784 "hphp.y" /* yacc.c:1651 */
11657 { (yyval
) = (yyvsp
[0]);}
11658 #line 11657 "hphp.5.tab.cpp" /* yacc.c:1651 */
11662 #line 2785 "hphp.y" /* yacc.c:1651 */
11663 { (yyval
) = (yyvsp
[0]);}
11664 #line 11663 "hphp.5.tab.cpp" /* yacc.c:1651 */
11668 #line 2786 "hphp.y" /* yacc.c:1651 */
11669 { (yyval
) = (yyvsp
[0]);}
11670 #line 11669 "hphp.5.tab.cpp" /* yacc.c:1651 */
11674 #line 2787 "hphp.y" /* yacc.c:1651 */
11675 { (yyval
) = (yyvsp
[0]);}
11676 #line 11675 "hphp.5.tab.cpp" /* yacc.c:1651 */
11680 #line 2788 "hphp.y" /* yacc.c:1651 */
11681 { (yyval
) = (yyvsp
[0]);}
11682 #line 11681 "hphp.5.tab.cpp" /* yacc.c:1651 */
11686 #line 2789 "hphp.y" /* yacc.c:1651 */
11687 { (yyval
) = (yyvsp
[0]);}
11688 #line 11687 "hphp.5.tab.cpp" /* yacc.c:1651 */
11692 #line 2790 "hphp.y" /* yacc.c:1651 */
11693 { (yyval
) = (yyvsp
[0]);}
11694 #line 11693 "hphp.5.tab.cpp" /* yacc.c:1651 */
11698 #line 2791 "hphp.y" /* yacc.c:1651 */
11699 { (yyval
) = (yyvsp
[0]);}
11700 #line 11699 "hphp.5.tab.cpp" /* yacc.c:1651 */
11704 #line 2792 "hphp.y" /* yacc.c:1651 */
11705 { (yyval
) = (yyvsp
[0]);}
11706 #line 11705 "hphp.5.tab.cpp" /* yacc.c:1651 */
11710 #line 2793 "hphp.y" /* yacc.c:1651 */
11711 { (yyval
) = (yyvsp
[0]);}
11712 #line 11711 "hphp.5.tab.cpp" /* yacc.c:1651 */
11716 #line 2794 "hphp.y" /* yacc.c:1651 */
11717 { (yyval
) = (yyvsp
[0]);}
11718 #line 11717 "hphp.5.tab.cpp" /* yacc.c:1651 */
11722 #line 2795 "hphp.y" /* yacc.c:1651 */
11723 { (yyval
) = (yyvsp
[0]);}
11724 #line 11723 "hphp.5.tab.cpp" /* yacc.c:1651 */
11728 #line 2796 "hphp.y" /* yacc.c:1651 */
11729 { (yyval
) = (yyvsp
[0]);}
11730 #line 11729 "hphp.5.tab.cpp" /* yacc.c:1651 */
11734 #line 2797 "hphp.y" /* yacc.c:1651 */
11735 { (yyval
) = (yyvsp
[0]);}
11736 #line 11735 "hphp.5.tab.cpp" /* yacc.c:1651 */
11740 #line 2798 "hphp.y" /* yacc.c:1651 */
11741 { (yyval
) = (yyvsp
[0]);}
11742 #line 11741 "hphp.5.tab.cpp" /* yacc.c:1651 */
11746 #line 2799 "hphp.y" /* yacc.c:1651 */
11747 { (yyval
) = (yyvsp
[0]);}
11748 #line 11747 "hphp.5.tab.cpp" /* yacc.c:1651 */
11752 #line 2800 "hphp.y" /* yacc.c:1651 */
11753 { (yyval
) = (yyvsp
[0]);}
11754 #line 11753 "hphp.5.tab.cpp" /* yacc.c:1651 */
11758 #line 2801 "hphp.y" /* yacc.c:1651 */
11759 { (yyval
) = (yyvsp
[0]);}
11760 #line 11759 "hphp.5.tab.cpp" /* yacc.c:1651 */
11764 #line 2802 "hphp.y" /* yacc.c:1651 */
11765 { (yyval
) = (yyvsp
[0]);}
11766 #line 11765 "hphp.5.tab.cpp" /* yacc.c:1651 */
11770 #line 2803 "hphp.y" /* yacc.c:1651 */
11771 { (yyval
) = (yyvsp
[0]);}
11772 #line 11771 "hphp.5.tab.cpp" /* yacc.c:1651 */
11776 #line 2804 "hphp.y" /* yacc.c:1651 */
11777 { (yyval
) = (yyvsp
[0]);}
11778 #line 11777 "hphp.5.tab.cpp" /* yacc.c:1651 */
11782 #line 2805 "hphp.y" /* yacc.c:1651 */
11783 { (yyval
) = (yyvsp
[0]);}
11784 #line 11783 "hphp.5.tab.cpp" /* yacc.c:1651 */
11788 #line 2806 "hphp.y" /* yacc.c:1651 */
11789 { (yyval
) = (yyvsp
[0]);}
11790 #line 11789 "hphp.5.tab.cpp" /* yacc.c:1651 */
11794 #line 2807 "hphp.y" /* yacc.c:1651 */
11795 { (yyval
) = (yyvsp
[0]);}
11796 #line 11795 "hphp.5.tab.cpp" /* yacc.c:1651 */
11800 #line 2808 "hphp.y" /* yacc.c:1651 */
11801 { (yyval
) = (yyvsp
[0]);}
11802 #line 11801 "hphp.5.tab.cpp" /* yacc.c:1651 */
11806 #line 2809 "hphp.y" /* yacc.c:1651 */
11807 { (yyval
) = (yyvsp
[0]);}
11808 #line 11807 "hphp.5.tab.cpp" /* yacc.c:1651 */
11812 #line 2810 "hphp.y" /* yacc.c:1651 */
11813 { (yyval
) = (yyvsp
[0]);}
11814 #line 11813 "hphp.5.tab.cpp" /* yacc.c:1651 */
11818 #line 2811 "hphp.y" /* yacc.c:1651 */
11819 { (yyval
) = (yyvsp
[0]);}
11820 #line 11819 "hphp.5.tab.cpp" /* yacc.c:1651 */
11824 #line 2812 "hphp.y" /* yacc.c:1651 */
11825 { (yyval
) = (yyvsp
[0]);}
11826 #line 11825 "hphp.5.tab.cpp" /* yacc.c:1651 */
11830 #line 2813 "hphp.y" /* yacc.c:1651 */
11831 { (yyval
) = (yyvsp
[0]);}
11832 #line 11831 "hphp.5.tab.cpp" /* yacc.c:1651 */
11836 #line 2814 "hphp.y" /* yacc.c:1651 */
11837 { (yyval
) = (yyvsp
[0]);}
11838 #line 11837 "hphp.5.tab.cpp" /* yacc.c:1651 */
11842 #line 2815 "hphp.y" /* yacc.c:1651 */
11843 { (yyval
) = (yyvsp
[0]);}
11844 #line 11843 "hphp.5.tab.cpp" /* yacc.c:1651 */
11848 #line 2816 "hphp.y" /* yacc.c:1651 */
11849 { (yyval
) = (yyvsp
[0]);}
11850 #line 11849 "hphp.5.tab.cpp" /* yacc.c:1651 */
11854 #line 2817 "hphp.y" /* yacc.c:1651 */
11855 { (yyval
) = (yyvsp
[0]);}
11856 #line 11855 "hphp.5.tab.cpp" /* yacc.c:1651 */
11860 #line 2818 "hphp.y" /* yacc.c:1651 */
11861 { (yyval
) = (yyvsp
[0]);}
11862 #line 11861 "hphp.5.tab.cpp" /* yacc.c:1651 */
11866 #line 2819 "hphp.y" /* yacc.c:1651 */
11867 { (yyval
) = (yyvsp
[0]);}
11868 #line 11867 "hphp.5.tab.cpp" /* yacc.c:1651 */
11872 #line 2820 "hphp.y" /* yacc.c:1651 */
11873 { (yyval
) = (yyvsp
[0]);}
11874 #line 11873 "hphp.5.tab.cpp" /* yacc.c:1651 */
11878 #line 2825 "hphp.y" /* yacc.c:1651 */
11879 { _p
->onCall((yyval
),0,(yyvsp
[-3]),(yyvsp
[-1]),NULL
);}
11880 #line 11879 "hphp.5.tab.cpp" /* yacc.c:1651 */
11884 #line 2829 "hphp.y" /* yacc.c:1651 */
11885 { (yyval
) = (yyvsp
[0]);}
11886 #line 11885 "hphp.5.tab.cpp" /* yacc.c:1651 */
11890 #line 2830 "hphp.y" /* yacc.c:1651 */
11891 { (yyvsp
[0]).xhpLabel(); (yyval
) = (yyvsp
[0]);}
11892 #line 11891 "hphp.5.tab.cpp" /* yacc.c:1651 */
11896 #line 2834 "hphp.y" /* yacc.c:1651 */
11897 { _p
->onName((yyval
),(yyvsp
[0]),Parser::StringName
);}
11898 #line 11897 "hphp.5.tab.cpp" /* yacc.c:1651 */
11902 #line 2835 "hphp.y" /* yacc.c:1651 */
11903 { _p
->onName((yyval
),(yyvsp
[0]),Parser::StringName
);}
11904 #line 11903 "hphp.5.tab.cpp" /* yacc.c:1651 */
11908 #line 2836 "hphp.y" /* yacc.c:1651 */
11909 { _p
->onName((yyval
),(yyvsp
[0]),Parser::StaticName
);}
11910 #line 11909 "hphp.5.tab.cpp" /* yacc.c:1651 */
11914 #line 2837 "hphp.y" /* yacc.c:1651 */
11915 { _p
->onName((yyval
),(yyvsp
[0]),
11916 Parser::StaticClassExprName
);}
11917 #line 11916 "hphp.5.tab.cpp" /* yacc.c:1651 */
11921 #line 2839 "hphp.y" /* yacc.c:1651 */
11922 { _p
->onName((yyval
),(yyvsp
[-1]),
11923 Parser::StaticClassExprName
);}
11924 #line 11923 "hphp.5.tab.cpp" /* yacc.c:1651 */
11928 #line 2843 "hphp.y" /* yacc.c:1651 */
11929 { (yyval
) = (yyvsp
[0]); }
11930 #line 11929 "hphp.5.tab.cpp" /* yacc.c:1651 */
11934 #line 2852 "hphp.y" /* yacc.c:1651 */
11935 { _p
->onStaticMember((yyval
),(yyvsp
[-2]),(yyvsp
[0]));}
11936 #line 11935 "hphp.5.tab.cpp" /* yacc.c:1651 */
11940 #line 2855 "hphp.y" /* yacc.c:1651 */
11941 { (yyval
) = (yyvsp
[0]); }
11942 #line 11941 "hphp.5.tab.cpp" /* yacc.c:1651 */
11946 #line 2856 "hphp.y" /* yacc.c:1651 */
11947 { _p
->onName((yyval
),(yyvsp
[0]),
11948 Parser::StaticClassExprName
);}
11949 #line 11948 "hphp.5.tab.cpp" /* yacc.c:1651 */
11953 #line 2858 "hphp.y" /* yacc.c:1651 */
11954 { _p
->onName((yyval
), (yyvsp
[0]),
11955 Parser::StaticClassExprName
);}
11956 #line 11955 "hphp.5.tab.cpp" /* yacc.c:1651 */
11960 #line 2868 "hphp.y" /* yacc.c:1651 */
11961 { _p
->onStaticMember((yyval
),(yyvsp
[-2]),(yyvsp
[0]));}
11962 #line 11961 "hphp.5.tab.cpp" /* yacc.c:1651 */
11966 #line 2872 "hphp.y" /* yacc.c:1651 */
11967 { _p
->onName((yyval
),(yyvsp
[0]),Parser::StringName
);}
11968 #line 11967 "hphp.5.tab.cpp" /* yacc.c:1651 */
11972 #line 2873 "hphp.y" /* yacc.c:1651 */
11973 { _p
->onName((yyval
),(yyvsp
[0]),Parser::StaticName
);}
11974 #line 11973 "hphp.5.tab.cpp" /* yacc.c:1651 */
11978 #line 2874 "hphp.y" /* yacc.c:1651 */
11979 { _p
->onName((yyval
),(yyvsp
[0]),Parser::ExprName
);}
11980 #line 11979 "hphp.5.tab.cpp" /* yacc.c:1651 */
11984 #line 2878 "hphp.y" /* yacc.c:1651 */
11985 { (yyval
).reset();}
11986 #line 11985 "hphp.5.tab.cpp" /* yacc.c:1651 */
11990 #line 2879 "hphp.y" /* yacc.c:1651 */
11991 { (yyval
) = (yyvsp
[0]);}
11992 #line 11991 "hphp.5.tab.cpp" /* yacc.c:1651 */
11996 #line 2880 "hphp.y" /* yacc.c:1651 */
11997 { (yyval
).reset();}
11998 #line 11997 "hphp.5.tab.cpp" /* yacc.c:1651 */
12002 #line 2884 "hphp.y" /* yacc.c:1651 */
12003 { (yyval
).reset();}
12004 #line 12003 "hphp.5.tab.cpp" /* yacc.c:1651 */
12008 #line 2885 "hphp.y" /* yacc.c:1651 */
12009 { _p
->addEncap((yyval
), NULL
, (yyvsp
[0]), 0);}
12010 #line 12009 "hphp.5.tab.cpp" /* yacc.c:1651 */
12014 #line 2886 "hphp.y" /* yacc.c:1651 */
12015 { (yyval
) = (yyvsp
[0]);}
12016 #line 12015 "hphp.5.tab.cpp" /* yacc.c:1651 */
12020 #line 2890 "hphp.y" /* yacc.c:1651 */
12021 { (yyval
) = (yyvsp
[-1]);}
12022 #line 12021 "hphp.5.tab.cpp" /* yacc.c:1651 */
12026 #line 2891 "hphp.y" /* yacc.c:1651 */
12027 { (yyval
).reset();}
12028 #line 12027 "hphp.5.tab.cpp" /* yacc.c:1651 */
12032 #line 2895 "hphp.y" /* yacc.c:1651 */
12033 { _p
->onScalar((yyval
), T_LNUMBER
, (yyvsp
[0]));}
12034 #line 12033 "hphp.5.tab.cpp" /* yacc.c:1651 */
12038 #line 2896 "hphp.y" /* yacc.c:1651 */
12039 { _p
->onScalar((yyval
), T_DNUMBER
, (yyvsp
[0]));}
12040 #line 12039 "hphp.5.tab.cpp" /* yacc.c:1651 */
12044 #line 2897 "hphp.y" /* yacc.c:1651 */
12045 { _p
->onScalar((yyval
), T_ONUMBER
, (yyvsp
[0]));}
12046 #line 12045 "hphp.5.tab.cpp" /* yacc.c:1651 */
12050 #line 2898 "hphp.y" /* yacc.c:1651 */
12051 { _p
->onScalar((yyval
),
12052 T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[0]));}
12053 #line 12052 "hphp.5.tab.cpp" /* yacc.c:1651 */
12057 #line 2900 "hphp.y" /* yacc.c:1651 */
12058 { _p
->onScalar((yyval
), T_LINE
, (yyvsp
[0]));}
12059 #line 12058 "hphp.5.tab.cpp" /* yacc.c:1651 */
12063 #line 2901 "hphp.y" /* yacc.c:1651 */
12064 { _p
->onScalar((yyval
), T_FILE
, (yyvsp
[0]));}
12065 #line 12064 "hphp.5.tab.cpp" /* yacc.c:1651 */
12069 #line 2902 "hphp.y" /* yacc.c:1651 */
12070 { _p
->onScalar((yyval
), T_DIR
, (yyvsp
[0]));}
12071 #line 12070 "hphp.5.tab.cpp" /* yacc.c:1651 */
12075 #line 2903 "hphp.y" /* yacc.c:1651 */
12076 { _p
->onScalar((yyval
), T_CLASS_C
, (yyvsp
[0]));}
12077 #line 12076 "hphp.5.tab.cpp" /* yacc.c:1651 */
12081 #line 2904 "hphp.y" /* yacc.c:1651 */
12082 { _p
->onScalar((yyval
), T_TRAIT_C
, (yyvsp
[0]));}
12083 #line 12082 "hphp.5.tab.cpp" /* yacc.c:1651 */
12087 #line 2905 "hphp.y" /* yacc.c:1651 */
12088 { _p
->onScalar((yyval
), T_METHOD_C
, (yyvsp
[0]));}
12089 #line 12088 "hphp.5.tab.cpp" /* yacc.c:1651 */
12093 #line 2906 "hphp.y" /* yacc.c:1651 */
12094 { _p
->onScalar((yyval
), T_FUNC_C
, (yyvsp
[0]));}
12095 #line 12094 "hphp.5.tab.cpp" /* yacc.c:1651 */
12099 #line 2907 "hphp.y" /* yacc.c:1651 */
12100 { _p
->onScalar((yyval
), T_NS_C
, (yyvsp
[0]));}
12101 #line 12100 "hphp.5.tab.cpp" /* yacc.c:1651 */
12105 #line 2908 "hphp.y" /* yacc.c:1651 */
12106 { _p
->onScalar((yyval
), T_COMPILER_HALT_OFFSET
, (yyvsp
[0]));}
12107 #line 12106 "hphp.5.tab.cpp" /* yacc.c:1651 */
12111 #line 2911 "hphp.y" /* yacc.c:1651 */
12112 { _p
->onScalar((yyval
), T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[-1]));}
12113 #line 12112 "hphp.5.tab.cpp" /* yacc.c:1651 */
12117 #line 2913 "hphp.y" /* yacc.c:1651 */
12118 { (yyval
).setText(""); _p
->onScalar((yyval
), T_CONSTANT_ENCAPSED_STRING
, (yyval
));}
12119 #line 12118 "hphp.5.tab.cpp" /* yacc.c:1651 */
12123 #line 2917 "hphp.y" /* yacc.c:1651 */
12124 { (yyval
) = (yyvsp
[0]);}
12125 #line 12124 "hphp.5.tab.cpp" /* yacc.c:1651 */
12129 #line 2918 "hphp.y" /* yacc.c:1651 */
12130 { _p
->onConstantValue((yyval
), (yyvsp
[0]));}
12131 #line 12130 "hphp.5.tab.cpp" /* yacc.c:1651 */
12135 #line 2920 "hphp.y" /* yacc.c:1651 */
12136 { _p
->onArray((yyval
),(yyvsp
[-1]),T_ARRAY
); }
12137 #line 12136 "hphp.5.tab.cpp" /* yacc.c:1651 */
12141 #line 2921 "hphp.y" /* yacc.c:1651 */
12142 { _p
->onArray((yyval
),(yyvsp
[-1]),T_ARRAY
); }
12143 #line 12142 "hphp.5.tab.cpp" /* yacc.c:1651 */
12147 #line 2923 "hphp.y" /* yacc.c:1651 */
12148 { _p
->onDArray((yyval
),(yyvsp
[-1]));}
12149 #line 12148 "hphp.5.tab.cpp" /* yacc.c:1651 */
12153 #line 2924 "hphp.y" /* yacc.c:1651 */
12154 { (yyval
) = (yyvsp
[0]);}
12155 #line 12154 "hphp.5.tab.cpp" /* yacc.c:1651 */
12159 #line 2925 "hphp.y" /* yacc.c:1651 */
12160 { (yyval
) = (yyvsp
[0]);}
12161 #line 12160 "hphp.5.tab.cpp" /* yacc.c:1651 */
12165 #line 2926 "hphp.y" /* yacc.c:1651 */
12166 { (yyval
) = (yyvsp
[0]);}
12167 #line 12166 "hphp.5.tab.cpp" /* yacc.c:1651 */
12171 #line 2927 "hphp.y" /* yacc.c:1651 */
12172 { (yyval
) = (yyvsp
[0]);}
12173 #line 12172 "hphp.5.tab.cpp" /* yacc.c:1651 */
12177 #line 2928 "hphp.y" /* yacc.c:1651 */
12178 { (yyval
) = (yyvsp
[0]);}
12179 #line 12178 "hphp.5.tab.cpp" /* yacc.c:1651 */
12183 #line 2929 "hphp.y" /* yacc.c:1651 */
12184 { (yyval
) = (yyvsp
[0]);}
12185 #line 12184 "hphp.5.tab.cpp" /* yacc.c:1651 */
12189 #line 2930 "hphp.y" /* yacc.c:1651 */
12190 { (yyval
) = (yyvsp
[0]);}
12191 #line 12190 "hphp.5.tab.cpp" /* yacc.c:1651 */
12195 #line 2931 "hphp.y" /* yacc.c:1651 */
12196 { (yyval
) = (yyvsp
[0]);}
12197 #line 12196 "hphp.5.tab.cpp" /* yacc.c:1651 */
12201 #line 2932 "hphp.y" /* yacc.c:1651 */
12202 { (yyval
) = (yyvsp
[-1]);}
12203 #line 12202 "hphp.5.tab.cpp" /* yacc.c:1651 */
12207 #line 2934 "hphp.y" /* yacc.c:1651 */
12208 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_BOOLEAN_OR
);}
12209 #line 12208 "hphp.5.tab.cpp" /* yacc.c:1651 */
12213 #line 2936 "hphp.y" /* yacc.c:1651 */
12214 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_BOOLEAN_AND
);}
12215 #line 12214 "hphp.5.tab.cpp" /* yacc.c:1651 */
12219 #line 2938 "hphp.y" /* yacc.c:1651 */
12220 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_LOGICAL_OR
);}
12221 #line 12220 "hphp.5.tab.cpp" /* yacc.c:1651 */
12225 #line 2940 "hphp.y" /* yacc.c:1651 */
12226 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_LOGICAL_AND
);}
12227 #line 12226 "hphp.5.tab.cpp" /* yacc.c:1651 */
12231 #line 2942 "hphp.y" /* yacc.c:1651 */
12232 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_LOGICAL_XOR
);}
12233 #line 12232 "hphp.5.tab.cpp" /* yacc.c:1651 */
12237 #line 2943 "hphp.y" /* yacc.c:1651 */
12238 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'|');}
12239 #line 12238 "hphp.5.tab.cpp" /* yacc.c:1651 */
12243 #line 2944 "hphp.y" /* yacc.c:1651 */
12244 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'&');}
12245 #line 12244 "hphp.5.tab.cpp" /* yacc.c:1651 */
12249 #line 2945 "hphp.y" /* yacc.c:1651 */
12250 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'^');}
12251 #line 12250 "hphp.5.tab.cpp" /* yacc.c:1651 */
12255 #line 2946 "hphp.y" /* yacc.c:1651 */
12256 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'.');}
12257 #line 12256 "hphp.5.tab.cpp" /* yacc.c:1651 */
12261 #line 2947 "hphp.y" /* yacc.c:1651 */
12262 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'+');}
12263 #line 12262 "hphp.5.tab.cpp" /* yacc.c:1651 */
12267 #line 2948 "hphp.y" /* yacc.c:1651 */
12268 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'-');}
12269 #line 12268 "hphp.5.tab.cpp" /* yacc.c:1651 */
12273 #line 2949 "hphp.y" /* yacc.c:1651 */
12274 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'*');}
12275 #line 12274 "hphp.5.tab.cpp" /* yacc.c:1651 */
12279 #line 2950 "hphp.y" /* yacc.c:1651 */
12280 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'/');}
12281 #line 12280 "hphp.5.tab.cpp" /* yacc.c:1651 */
12285 #line 2951 "hphp.y" /* yacc.c:1651 */
12286 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'%');}
12287 #line 12286 "hphp.5.tab.cpp" /* yacc.c:1651 */
12291 #line 2952 "hphp.y" /* yacc.c:1651 */
12292 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_SL
);}
12293 #line 12292 "hphp.5.tab.cpp" /* yacc.c:1651 */
12297 #line 2953 "hphp.y" /* yacc.c:1651 */
12298 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_SR
);}
12299 #line 12298 "hphp.5.tab.cpp" /* yacc.c:1651 */
12303 #line 2954 "hphp.y" /* yacc.c:1651 */
12304 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_POW
);}
12305 #line 12304 "hphp.5.tab.cpp" /* yacc.c:1651 */
12309 #line 2955 "hphp.y" /* yacc.c:1651 */
12310 { UEXP((yyval
),(yyvsp
[0]),'!',1);}
12311 #line 12310 "hphp.5.tab.cpp" /* yacc.c:1651 */
12315 #line 2956 "hphp.y" /* yacc.c:1651 */
12316 { UEXP((yyval
),(yyvsp
[0]),'~',1);}
12317 #line 12316 "hphp.5.tab.cpp" /* yacc.c:1651 */
12321 #line 2957 "hphp.y" /* yacc.c:1651 */
12322 { UEXP((yyval
),(yyvsp
[0]),'+',1);}
12323 #line 12322 "hphp.5.tab.cpp" /* yacc.c:1651 */
12327 #line 2958 "hphp.y" /* yacc.c:1651 */
12328 { UEXP((yyval
),(yyvsp
[0]),'-',1);}
12329 #line 12328 "hphp.5.tab.cpp" /* yacc.c:1651 */
12333 #line 2960 "hphp.y" /* yacc.c:1651 */
12334 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_IS_IDENTICAL
);}
12335 #line 12334 "hphp.5.tab.cpp" /* yacc.c:1651 */
12339 #line 2962 "hphp.y" /* yacc.c:1651 */
12340 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_IS_NOT_IDENTICAL
);}
12341 #line 12340 "hphp.5.tab.cpp" /* yacc.c:1651 */
12345 #line 2964 "hphp.y" /* yacc.c:1651 */
12346 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_IS_EQUAL
);}
12347 #line 12346 "hphp.5.tab.cpp" /* yacc.c:1651 */
12351 #line 2966 "hphp.y" /* yacc.c:1651 */
12352 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_IS_NOT_EQUAL
);}
12353 #line 12352 "hphp.5.tab.cpp" /* yacc.c:1651 */
12357 #line 2967 "hphp.y" /* yacc.c:1651 */
12358 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'<');}
12359 #line 12358 "hphp.5.tab.cpp" /* yacc.c:1651 */
12363 #line 2969 "hphp.y" /* yacc.c:1651 */
12364 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),
12365 T_IS_SMALLER_OR_EQUAL
);}
12366 #line 12365 "hphp.5.tab.cpp" /* yacc.c:1651 */
12370 #line 2971 "hphp.y" /* yacc.c:1651 */
12371 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),'>');}
12372 #line 12371 "hphp.5.tab.cpp" /* yacc.c:1651 */
12376 #line 2974 "hphp.y" /* yacc.c:1651 */
12377 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),
12378 T_IS_GREATER_OR_EQUAL
);}
12379 #line 12378 "hphp.5.tab.cpp" /* yacc.c:1651 */
12383 #line 2978 "hphp.y" /* yacc.c:1651 */
12384 { BEXP((yyval
),(yyvsp
[-2]),(yyvsp
[0]),T_SPACESHIP
);}
12385 #line 12384 "hphp.5.tab.cpp" /* yacc.c:1651 */
12389 #line 2981 "hphp.y" /* yacc.c:1651 */
12390 { _p
->onQOp((yyval
), (yyvsp
[-4]), &(yyvsp
[-2]), (yyvsp
[0]));}
12391 #line 12390 "hphp.5.tab.cpp" /* yacc.c:1651 */
12395 #line 2982 "hphp.y" /* yacc.c:1651 */
12396 { _p
->onQOp((yyval
), (yyvsp
[-3]), 0, (yyvsp
[0]));}
12397 #line 12396 "hphp.5.tab.cpp" /* yacc.c:1651 */
12401 #line 2986 "hphp.y" /* yacc.c:1651 */
12402 { _p
->onExprListElem((yyval
), &(yyvsp
[-2]), (yyvsp
[0]));}
12403 #line 12402 "hphp.5.tab.cpp" /* yacc.c:1651 */
12407 #line 2987 "hphp.y" /* yacc.c:1651 */
12408 { _p
->onExprListElem((yyval
), NULL
, (yyvsp
[0]));}
12409 #line 12408 "hphp.5.tab.cpp" /* yacc.c:1651 */
12413 #line 2993 "hphp.y" /* yacc.c:1651 */
12414 { _p
->onClassClass((yyval
), (yyvsp
[-2]), (yyvsp
[0]), 1);}
12415 #line 12414 "hphp.5.tab.cpp" /* yacc.c:1651 */
12419 #line 2999 "hphp.y" /* yacc.c:1651 */
12420 { _p
->onClassConst((yyval
), (yyvsp
[-2]), (yyvsp
[0]), 1);}
12421 #line 12420 "hphp.5.tab.cpp" /* yacc.c:1651 */
12425 #line 3000 "hphp.y" /* yacc.c:1651 */
12426 { (yyval
) = (yyvsp
[0]);}
12427 #line 12426 "hphp.5.tab.cpp" /* yacc.c:1651 */
12431 #line 3004 "hphp.y" /* yacc.c:1651 */
12432 { _p
->onConstantValue((yyval
), (yyvsp
[0]));}
12433 #line 12432 "hphp.5.tab.cpp" /* yacc.c:1651 */
12437 #line 3005 "hphp.y" /* yacc.c:1651 */
12438 { _p
->onConstantValue((yyval
), (yyvsp
[0]));}
12439 #line 12438 "hphp.5.tab.cpp" /* yacc.c:1651 */
12443 #line 3006 "hphp.y" /* yacc.c:1651 */
12444 { (yyval
) = (yyvsp
[0]);}
12445 #line 12444 "hphp.5.tab.cpp" /* yacc.c:1651 */
12449 #line 3007 "hphp.y" /* yacc.c:1651 */
12450 { (yyval
) = (yyvsp
[0]);}
12451 #line 12450 "hphp.5.tab.cpp" /* yacc.c:1651 */
12455 #line 3008 "hphp.y" /* yacc.c:1651 */
12456 { _p
->onEncapsList((yyval
),'"',(yyvsp
[-1]));}
12457 #line 12456 "hphp.5.tab.cpp" /* yacc.c:1651 */
12461 #line 3009 "hphp.y" /* yacc.c:1651 */
12462 { _p
->onEncapsList((yyval
),'\'',(yyvsp
[-1]));}
12463 #line 12462 "hphp.5.tab.cpp" /* yacc.c:1651 */
12467 #line 3011 "hphp.y" /* yacc.c:1651 */
12468 { _p
->onEncapsList((yyval
),T_START_HEREDOC
,
12470 #line 12469 "hphp.5.tab.cpp" /* yacc.c:1651 */
12474 #line 3016 "hphp.y" /* yacc.c:1651 */
12475 { (yyval
) = (yyvsp
[-1]);}
12476 #line 12475 "hphp.5.tab.cpp" /* yacc.c:1651 */
12480 #line 3017 "hphp.y" /* yacc.c:1651 */
12481 { (yyval
).reset();}
12482 #line 12481 "hphp.5.tab.cpp" /* yacc.c:1651 */
12486 #line 3021 "hphp.y" /* yacc.c:1651 */
12487 { (yyval
).reset();}
12488 #line 12487 "hphp.5.tab.cpp" /* yacc.c:1651 */
12492 #line 3022 "hphp.y" /* yacc.c:1651 */
12493 { (yyval
).reset();}
12494 #line 12493 "hphp.5.tab.cpp" /* yacc.c:1651 */
12498 #line 3025 "hphp.y" /* yacc.c:1651 */
12499 { only_in_hh_syntax(_p
); (yyval
).reset();}
12500 #line 12499 "hphp.5.tab.cpp" /* yacc.c:1651 */
12504 #line 3026 "hphp.y" /* yacc.c:1651 */
12505 { (yyval
).reset();}
12506 #line 12505 "hphp.5.tab.cpp" /* yacc.c:1651 */
12510 #line 3032 "hphp.y" /* yacc.c:1651 */
12511 { _p
->onArrayPair((yyval
),&(yyvsp
[-4]),&(yyvsp
[-2]),&(yyvsp
[0]),0);}
12512 #line 12511 "hphp.5.tab.cpp" /* yacc.c:1651 */
12516 #line 3034 "hphp.y" /* yacc.c:1651 */
12517 { _p
->onArrayPair((yyval
),&(yyvsp
[-2]), 0,&(yyvsp
[0]),0);}
12518 #line 12517 "hphp.5.tab.cpp" /* yacc.c:1651 */
12522 #line 3036 "hphp.y" /* yacc.c:1651 */
12523 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[-2]),&(yyvsp
[0]),0);}
12524 #line 12523 "hphp.5.tab.cpp" /* yacc.c:1651 */
12528 #line 3037 "hphp.y" /* yacc.c:1651 */
12529 { _p
->onArrayPair((yyval
), 0, 0,&(yyvsp
[0]),0);}
12530 #line 12529 "hphp.5.tab.cpp" /* yacc.c:1651 */
12534 #line 3041 "hphp.y" /* yacc.c:1651 */
12535 { _p
->onScalar((yyval
), T_LNUMBER
, (yyvsp
[0]));}
12536 #line 12535 "hphp.5.tab.cpp" /* yacc.c:1651 */
12540 #line 3042 "hphp.y" /* yacc.c:1651 */
12541 { _p
->onScalar((yyval
), T_DNUMBER
, (yyvsp
[0]));}
12542 #line 12541 "hphp.5.tab.cpp" /* yacc.c:1651 */
12546 #line 3043 "hphp.y" /* yacc.c:1651 */
12547 { _p
->onScalar((yyval
), T_ONUMBER
, (yyvsp
[0]));}
12548 #line 12547 "hphp.5.tab.cpp" /* yacc.c:1651 */
12552 #line 3046 "hphp.y" /* yacc.c:1651 */
12553 { _p
->onScalar((yyval
), T_CONSTANT_ENCAPSED_STRING
, (yyvsp
[-1]));}
12554 #line 12553 "hphp.5.tab.cpp" /* yacc.c:1651 */
12558 #line 3048 "hphp.y" /* yacc.c:1651 */
12559 { (yyval
).setText(""); _p
->onScalar((yyval
), T_CONSTANT_ENCAPSED_STRING
, (yyval
));}
12560 #line 12559 "hphp.5.tab.cpp" /* yacc.c:1651 */
12564 #line 3051 "hphp.y" /* yacc.c:1651 */
12565 { _p
->onScalar((yyval
),T_LNUMBER
,(yyvsp
[0]));}
12566 #line 12565 "hphp.5.tab.cpp" /* yacc.c:1651 */
12570 #line 3052 "hphp.y" /* yacc.c:1651 */
12571 { _p
->onScalar((yyval
),T_DNUMBER
,(yyvsp
[0]));}
12572 #line 12571 "hphp.5.tab.cpp" /* yacc.c:1651 */
12576 #line 3053 "hphp.y" /* yacc.c:1651 */
12577 { _p
->onScalar((yyval
),T_ONUMBER
,(yyvsp
[0]));}
12578 #line 12577 "hphp.5.tab.cpp" /* yacc.c:1651 */
12582 #line 3054 "hphp.y" /* yacc.c:1651 */
12583 { constant_ae(_p
,(yyval
),(yyvsp
[0]));}
12584 #line 12583 "hphp.5.tab.cpp" /* yacc.c:1651 */
12588 #line 3058 "hphp.y" /* yacc.c:1651 */
12589 { _p
->onScalar((yyval
),
12590 T_CONSTANT_ENCAPSED_STRING
,(yyvsp
[0]));}
12591 #line 12590 "hphp.5.tab.cpp" /* yacc.c:1651 */
12595 #line 3061 "hphp.y" /* yacc.c:1651 */
12596 { _p
->onScalar((yyval
),
12597 T_CONSTANT_ENCAPSED_STRING
,
12598 (yyvsp
[-2]) + (yyvsp
[0]));}
12599 #line 12598 "hphp.5.tab.cpp" /* yacc.c:1651 */
12603 #line 3068 "hphp.y" /* yacc.c:1651 */
12604 { (yyval
) = (yyvsp
[0]);}
12605 #line 12604 "hphp.5.tab.cpp" /* yacc.c:1651 */
12609 #line 3069 "hphp.y" /* yacc.c:1651 */
12610 { (yyval
) = (yyvsp
[0]);}
12611 #line 12610 "hphp.5.tab.cpp" /* yacc.c:1651 */
12615 #line 3072 "hphp.y" /* yacc.c:1651 */
12616 { HPHP_PARSER_ERROR("User-defined "
12617 "constants are not allowed in "
12618 "user attribute expressions", _p
);}
12619 #line 12618 "hphp.5.tab.cpp" /* yacc.c:1651 */
12623 #line 3075 "hphp.y" /* yacc.c:1651 */
12624 { constant_ae(_p
,(yyval
),(yyvsp
[0]));}
12625 #line 12624 "hphp.5.tab.cpp" /* yacc.c:1651 */
12629 #line 3076 "hphp.y" /* yacc.c:1651 */
12630 { UEXP((yyval
),(yyvsp
[0]),'+',1);}
12631 #line 12630 "hphp.5.tab.cpp" /* yacc.c:1651 */
12635 #line 3077 "hphp.y" /* yacc.c:1651 */
12636 { UEXP((yyval
),(yyvsp
[0]),'-',1);}
12637 #line 12636 "hphp.5.tab.cpp" /* yacc.c:1651 */
12641 #line 3079 "hphp.y" /* yacc.c:1651 */
12642 { _p
->onArray((yyval
),(yyvsp
[-1]),T_ARRAY
);}
12643 #line 12642 "hphp.5.tab.cpp" /* yacc.c:1651 */
12647 #line 3080 "hphp.y" /* yacc.c:1651 */
12648 { _p
->onArray((yyval
),(yyvsp
[-1]),T_ARRAY
);}
12649 #line 12648 "hphp.5.tab.cpp" /* yacc.c:1651 */
12653 #line 3082 "hphp.y" /* yacc.c:1651 */
12654 { _p
->onDArray((yyval
),(yyvsp
[-1]));}
12655 #line 12654 "hphp.5.tab.cpp" /* yacc.c:1651 */
12659 #line 3083 "hphp.y" /* yacc.c:1651 */
12660 { (yyval
) = (yyvsp
[0]);}
12661 #line 12660 "hphp.5.tab.cpp" /* yacc.c:1651 */
12665 #line 3084 "hphp.y" /* yacc.c:1651 */
12666 { (yyval
) = (yyvsp
[0]);}
12667 #line 12666 "hphp.5.tab.cpp" /* yacc.c:1651 */
12671 #line 3085 "hphp.y" /* yacc.c:1651 */
12672 { (yyval
) = (yyvsp
[0]);}
12673 #line 12672 "hphp.5.tab.cpp" /* yacc.c:1651 */
12677 #line 3086 "hphp.y" /* yacc.c:1651 */
12678 { (yyval
) = (yyvsp
[0]);}
12679 #line 12678 "hphp.5.tab.cpp" /* yacc.c:1651 */
12683 #line 3087 "hphp.y" /* yacc.c:1651 */
12684 { (yyval
) = (yyvsp
[0]);}
12685 #line 12684 "hphp.5.tab.cpp" /* yacc.c:1651 */
12689 #line 3088 "hphp.y" /* yacc.c:1651 */
12690 { (yyval
) = (yyvsp
[0]);}
12691 #line 12690 "hphp.5.tab.cpp" /* yacc.c:1651 */
12695 #line 3093 "hphp.y" /* yacc.c:1651 */
12696 { _p
->onExprListElem((yyval
), &(yyvsp
[-2]), (yyvsp
[0]));}
12697 #line 12696 "hphp.5.tab.cpp" /* yacc.c:1651 */
12701 #line 3094 "hphp.y" /* yacc.c:1651 */
12702 { _p
->onExprListElem((yyval
), NULL
, (yyvsp
[0]));}
12703 #line 12702 "hphp.5.tab.cpp" /* yacc.c:1651 */
12707 #line 3099 "hphp.y" /* yacc.c:1651 */
12708 { (yyval
) = (yyvsp
[-1]);}
12709 #line 12708 "hphp.5.tab.cpp" /* yacc.c:1651 */
12713 #line 3100 "hphp.y" /* yacc.c:1651 */
12714 { (yyval
).reset();}
12715 #line 12714 "hphp.5.tab.cpp" /* yacc.c:1651 */
12719 #line 3105 "hphp.y" /* yacc.c:1651 */
12720 { _p
->onArrayPair((yyval
),&(yyvsp
[-4]),&(yyvsp
[-2]),&(yyvsp
[0]),0);}
12721 #line 12720 "hphp.5.tab.cpp" /* yacc.c:1651 */
12725 #line 3107 "hphp.y" /* yacc.c:1651 */
12726 { _p
->onArrayPair((yyval
),&(yyvsp
[-2]), 0,&(yyvsp
[0]),0);}
12727 #line 12726 "hphp.5.tab.cpp" /* yacc.c:1651 */
12731 #line 3109 "hphp.y" /* yacc.c:1651 */
12732 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[-2]),&(yyvsp
[0]),0);}
12733 #line 12732 "hphp.5.tab.cpp" /* yacc.c:1651 */
12737 #line 3110 "hphp.y" /* yacc.c:1651 */
12738 { _p
->onArrayPair((yyval
), 0, 0,&(yyvsp
[0]),0);}
12739 #line 12738 "hphp.5.tab.cpp" /* yacc.c:1651 */
12743 #line 3114 "hphp.y" /* yacc.c:1651 */
12744 { _p
->onArrayPair((yyval
),&(yyvsp
[-2]), 0,&(yyvsp
[0]),0);}
12745 #line 12744 "hphp.5.tab.cpp" /* yacc.c:1651 */
12749 #line 3115 "hphp.y" /* yacc.c:1651 */
12750 { _p
->onArrayPair((yyval
), 0, 0,&(yyvsp
[0]),0);}
12751 #line 12750 "hphp.5.tab.cpp" /* yacc.c:1651 */
12755 #line 3120 "hphp.y" /* yacc.c:1651 */
12756 { (yyval
) = (yyvsp
[-1]); }
12757 #line 12756 "hphp.5.tab.cpp" /* yacc.c:1651 */
12761 #line 3121 "hphp.y" /* yacc.c:1651 */
12762 { (yyval
).reset(); }
12763 #line 12762 "hphp.5.tab.cpp" /* yacc.c:1651 */
12767 #line 3126 "hphp.y" /* yacc.c:1651 */
12768 { _p
->onArrayPair((yyval
),&(yyvsp
[-4]),&(yyvsp
[-2]),&(yyvsp
[0]),0); }
12769 #line 12768 "hphp.5.tab.cpp" /* yacc.c:1651 */
12773 #line 3129 "hphp.y" /* yacc.c:1651 */
12774 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[-2]),&(yyvsp
[0]),0); }
12775 #line 12774 "hphp.5.tab.cpp" /* yacc.c:1651 */
12779 #line 3134 "hphp.y" /* yacc.c:1651 */
12780 { (yyval
) = (yyvsp
[-1]);}
12781 #line 12780 "hphp.5.tab.cpp" /* yacc.c:1651 */
12785 #line 3135 "hphp.y" /* yacc.c:1651 */
12786 { (yyval
).reset();}
12787 #line 12786 "hphp.5.tab.cpp" /* yacc.c:1651 */
12791 #line 3138 "hphp.y" /* yacc.c:1651 */
12792 { _p
->onArray((yyval
),(yyvsp
[-1]),T_ARRAY
);}
12793 #line 12792 "hphp.5.tab.cpp" /* yacc.c:1651 */
12797 #line 3139 "hphp.y" /* yacc.c:1651 */
12798 { Token t
; t
.reset();
12799 _p
->onArray((yyval
),t
,T_ARRAY
);}
12800 #line 12799 "hphp.5.tab.cpp" /* yacc.c:1651 */
12804 #line 3146 "hphp.y" /* yacc.c:1651 */
12805 { _p
->onUserAttribute((yyval
),&(yyvsp
[-3]),(yyvsp
[-1]),(yyvsp
[0]));}
12806 #line 12805 "hphp.5.tab.cpp" /* yacc.c:1651 */
12810 #line 3148 "hphp.y" /* yacc.c:1651 */
12811 { _p
->onUserAttribute((yyval
), 0,(yyvsp
[-1]),(yyvsp
[0]));}
12812 #line 12811 "hphp.5.tab.cpp" /* yacc.c:1651 */
12816 #line 3151 "hphp.y" /* yacc.c:1651 */
12817 { only_in_hh_syntax(_p
);}
12818 #line 12817 "hphp.5.tab.cpp" /* yacc.c:1651 */
12822 #line 3153 "hphp.y" /* yacc.c:1651 */
12823 { (yyval
) = (yyvsp
[-1]);}
12824 #line 12823 "hphp.5.tab.cpp" /* yacc.c:1651 */
12828 #line 3156 "hphp.y" /* yacc.c:1651 */
12829 { (yyval
) = (yyvsp
[-1]);}
12830 #line 12829 "hphp.5.tab.cpp" /* yacc.c:1651 */
12834 #line 3159 "hphp.y" /* yacc.c:1651 */
12835 { (yyval
) = (yyvsp
[0]);}
12836 #line 12835 "hphp.5.tab.cpp" /* yacc.c:1651 */
12840 #line 3160 "hphp.y" /* yacc.c:1651 */
12841 { (yyval
).reset();}
12842 #line 12841 "hphp.5.tab.cpp" /* yacc.c:1651 */
12846 #line 3164 "hphp.y" /* yacc.c:1651 */
12847 { (yyval
) = (yyvsp
[0]); (yyval
) = 0;}
12848 #line 12847 "hphp.5.tab.cpp" /* yacc.c:1651 */
12852 #line 3165 "hphp.y" /* yacc.c:1651 */
12853 { (yyval
) = (yyvsp
[0]); (yyval
) = 1;}
12854 #line 12853 "hphp.5.tab.cpp" /* yacc.c:1651 */
12858 #line 3169 "hphp.y" /* yacc.c:1651 */
12859 { (yyval
) = (yyvsp
[0]); (yyval
) = HPHP::ObjPropNormal
;}
12860 #line 12859 "hphp.5.tab.cpp" /* yacc.c:1651 */
12864 #line 3170 "hphp.y" /* yacc.c:1651 */
12865 { (yyval
) = (yyvsp
[0]); (yyval
) = HPHP::ObjPropXhpAttr
;}
12866 #line 12865 "hphp.5.tab.cpp" /* yacc.c:1651 */
12870 #line 3171 "hphp.y" /* yacc.c:1651 */
12871 { (yyval
) = (yyvsp
[-1]); (yyval
) = HPHP::ObjPropNormal
;}
12872 #line 12871 "hphp.5.tab.cpp" /* yacc.c:1651 */
12876 #line 3175 "hphp.y" /* yacc.c:1651 */
12877 { (yyval
) = (yyvsp
[0]);}
12878 #line 12877 "hphp.5.tab.cpp" /* yacc.c:1651 */
12882 #line 3177 "hphp.y" /* yacc.c:1651 */
12883 { (yyval
) = (yyvsp
[0]); (yyval
) = HPHP::ObjPropNormal
;}
12884 #line 12883 "hphp.5.tab.cpp" /* yacc.c:1651 */
12888 #line 3185 "hphp.y" /* yacc.c:1651 */
12889 { (yyval
) = (yyvsp
[0]);}
12890 #line 12889 "hphp.5.tab.cpp" /* yacc.c:1651 */
12894 #line 3186 "hphp.y" /* yacc.c:1651 */
12895 { (yyval
) = (yyvsp
[-1]);}
12896 #line 12895 "hphp.5.tab.cpp" /* yacc.c:1651 */
12900 #line 3190 "hphp.y" /* yacc.c:1651 */
12901 { (yyval
) = (yyvsp
[0]);}
12902 #line 12901 "hphp.5.tab.cpp" /* yacc.c:1651 */
12906 #line 3192 "hphp.y" /* yacc.c:1651 */
12907 { (yyval
) = (yyvsp
[0]);}
12908 #line 12907 "hphp.5.tab.cpp" /* yacc.c:1651 */
12912 #line 3200 "hphp.y" /* yacc.c:1651 */
12913 { (yyval
) = (yyvsp
[-1]);}
12914 #line 12913 "hphp.5.tab.cpp" /* yacc.c:1651 */
12918 #line 3201 "hphp.y" /* yacc.c:1651 */
12919 { (yyval
) = (yyvsp
[-1]);}
12920 #line 12919 "hphp.5.tab.cpp" /* yacc.c:1651 */
12924 #line 3206 "hphp.y" /* yacc.c:1651 */
12925 { _p
->onRefDim((yyval
), (yyvsp
[-1]), (yyvsp
[0]));}
12926 #line 12925 "hphp.5.tab.cpp" /* yacc.c:1651 */
12930 #line 3207 "hphp.y" /* yacc.c:1651 */
12931 { _p
->onRefDim((yyval
), (yyvsp
[-1]), (yyvsp
[0]));}
12932 #line 12931 "hphp.5.tab.cpp" /* yacc.c:1651 */
12936 #line 3209 "hphp.y" /* yacc.c:1651 */
12937 { _p
->onRefDim((yyval
), (yyvsp
[-1]), (yyvsp
[0]));}
12938 #line 12937 "hphp.5.tab.cpp" /* yacc.c:1651 */
12942 #line 3214 "hphp.y" /* yacc.c:1651 */
12943 { _p
->onRefDim((yyval
), (yyvsp
[-1]), (yyvsp
[0]));}
12944 #line 12943 "hphp.5.tab.cpp" /* yacc.c:1651 */
12948 #line 3216 "hphp.y" /* yacc.c:1651 */
12949 { _p
->onRefDim((yyval
), (yyvsp
[-2]), (yyvsp
[0]));}
12950 #line 12949 "hphp.5.tab.cpp" /* yacc.c:1651 */
12954 #line 3222 "hphp.y" /* yacc.c:1651 */
12955 { _p
->onObjectProperty(
12959 ? HPHP::PropAccessType::Normal
12960 : HPHP::PropAccessType::NullSafe
,
12964 #line 12963 "hphp.5.tab.cpp" /* yacc.c:1651 */
12968 #line 3233 "hphp.y" /* yacc.c:1651 */
12969 { _p
->onObjectProperty(
12973 ? HPHP::PropAccessType::Normal
12974 : HPHP::PropAccessType::NullSafe
,
12978 #line 12977 "hphp.5.tab.cpp" /* yacc.c:1651 */
12982 #line 3248 "hphp.y" /* yacc.c:1651 */
12983 { _p
->onObjectProperty(
12987 ? HPHP::PropAccessType::Normal
12988 : HPHP::PropAccessType::NullSafe
,
12992 #line 12991 "hphp.5.tab.cpp" /* yacc.c:1651 */
12996 #line 3260 "hphp.y" /* yacc.c:1651 */
12997 { _p
->onObjectProperty(
13001 ? HPHP::PropAccessType::Normal
13002 : HPHP::PropAccessType::NullSafe
,
13006 #line 13005 "hphp.5.tab.cpp" /* yacc.c:1651 */
13010 #line 3272 "hphp.y" /* yacc.c:1651 */
13011 { (yyval
) = (yyvsp
[0]);}
13012 #line 13011 "hphp.5.tab.cpp" /* yacc.c:1651 */
13016 #line 3273 "hphp.y" /* yacc.c:1651 */
13017 { (yyval
) = (yyvsp
[0]);}
13018 #line 13017 "hphp.5.tab.cpp" /* yacc.c:1651 */
13022 #line 3274 "hphp.y" /* yacc.c:1651 */
13023 { (yyval
) = (yyvsp
[0]);}
13024 #line 13023 "hphp.5.tab.cpp" /* yacc.c:1651 */
13028 #line 3275 "hphp.y" /* yacc.c:1651 */
13029 { (yyval
) = (yyvsp
[0]);}
13030 #line 13029 "hphp.5.tab.cpp" /* yacc.c:1651 */
13034 #line 3276 "hphp.y" /* yacc.c:1651 */
13035 { (yyval
) = (yyvsp
[0]);}
13036 #line 13035 "hphp.5.tab.cpp" /* yacc.c:1651 */
13040 #line 3277 "hphp.y" /* yacc.c:1651 */
13041 { (yyval
) = (yyvsp
[0]);}
13042 #line 13041 "hphp.5.tab.cpp" /* yacc.c:1651 */
13046 #line 3279 "hphp.y" /* yacc.c:1651 */
13047 { _p
->onObjectProperty(
13051 ? HPHP::PropAccessType::Normal
13052 : HPHP::PropAccessType::NullSafe
,
13056 #line 13055 "hphp.5.tab.cpp" /* yacc.c:1651 */
13060 #line 3296 "hphp.y" /* yacc.c:1651 */
13061 { _p
->onStaticMember((yyval
),(yyvsp
[-2]),(yyvsp
[0]));}
13062 #line 13061 "hphp.5.tab.cpp" /* yacc.c:1651 */
13066 #line 3298 "hphp.y" /* yacc.c:1651 */
13067 { _p
->onCall((yyval
),1,(yyvsp
[-3]),(yyvsp
[-1]),NULL
);}
13068 #line 13067 "hphp.5.tab.cpp" /* yacc.c:1651 */
13072 #line 3300 "hphp.y" /* yacc.c:1651 */
13073 { _p
->onCall((yyval
),1,(yyvsp
[-3]),(yyvsp
[-1]),NULL
);}
13074 #line 13073 "hphp.5.tab.cpp" /* yacc.c:1651 */
13078 #line 3301 "hphp.y" /* yacc.c:1651 */
13079 { (yyval
) = (yyvsp
[-1]);}
13080 #line 13079 "hphp.5.tab.cpp" /* yacc.c:1651 */
13084 #line 3305 "hphp.y" /* yacc.c:1651 */
13085 { (yyval
) = (yyvsp
[-1]); }
13086 #line 13085 "hphp.5.tab.cpp" /* yacc.c:1651 */
13090 #line 3309 "hphp.y" /* yacc.c:1651 */
13091 { (yyval
) = (yyvsp
[0]);}
13092 #line 13091 "hphp.5.tab.cpp" /* yacc.c:1651 */
13096 #line 3310 "hphp.y" /* yacc.c:1651 */
13097 { (yyval
) = (yyvsp
[0]);}
13098 #line 13097 "hphp.5.tab.cpp" /* yacc.c:1651 */
13102 #line 3311 "hphp.y" /* yacc.c:1651 */
13103 { (yyval
) = (yyvsp
[0]);}
13104 #line 13103 "hphp.5.tab.cpp" /* yacc.c:1651 */
13108 #line 3312 "hphp.y" /* yacc.c:1651 */
13109 { (yyval
) = (yyvsp
[0]);}
13110 #line 13109 "hphp.5.tab.cpp" /* yacc.c:1651 */
13114 #line 3320 "hphp.y" /* yacc.c:1651 */
13115 { _p
->onObjectProperty(
13119 ? HPHP::PropAccessType::Normal
13120 : HPHP::PropAccessType::NullSafe
,
13124 #line 13123 "hphp.5.tab.cpp" /* yacc.c:1651 */
13128 #line 3329 "hphp.y" /* yacc.c:1651 */
13129 { (yyval
) = (yyvsp
[0]);}
13130 #line 13129 "hphp.5.tab.cpp" /* yacc.c:1651 */
13134 #line 3331 "hphp.y" /* yacc.c:1651 */
13135 { _p
->onCall((yyval
),1,(yyvsp
[-3]),(yyvsp
[-1]),NULL
);}
13136 #line 13135 "hphp.5.tab.cpp" /* yacc.c:1651 */
13140 #line 3340 "hphp.y" /* yacc.c:1651 */
13141 { (yyval
) = (yyvsp
[0]);}
13142 #line 13141 "hphp.5.tab.cpp" /* yacc.c:1651 */
13146 #line 3341 "hphp.y" /* yacc.c:1651 */
13147 { (yyval
) = (yyvsp
[0]);}
13148 #line 13147 "hphp.5.tab.cpp" /* yacc.c:1651 */
13152 #line 3342 "hphp.y" /* yacc.c:1651 */
13153 { (yyval
) = (yyvsp
[0]);}
13154 #line 13153 "hphp.5.tab.cpp" /* yacc.c:1651 */
13158 #line 3343 "hphp.y" /* yacc.c:1651 */
13159 { (yyval
) = (yyvsp
[0]);}
13160 #line 13159 "hphp.5.tab.cpp" /* yacc.c:1651 */
13164 #line 3344 "hphp.y" /* yacc.c:1651 */
13165 { (yyval
) = (yyvsp
[0]);}
13166 #line 13165 "hphp.5.tab.cpp" /* yacc.c:1651 */
13170 #line 3345 "hphp.y" /* yacc.c:1651 */
13171 { (yyval
) = (yyvsp
[-1]);}
13172 #line 13171 "hphp.5.tab.cpp" /* yacc.c:1651 */
13176 #line 3346 "hphp.y" /* yacc.c:1651 */
13177 { (yyval
) = (yyvsp
[-1]);}
13178 #line 13177 "hphp.5.tab.cpp" /* yacc.c:1651 */
13182 #line 3348 "hphp.y" /* yacc.c:1651 */
13183 { (yyval
) = (yyvsp
[0]);}
13184 #line 13183 "hphp.5.tab.cpp" /* yacc.c:1651 */
13188 #line 3349 "hphp.y" /* yacc.c:1651 */
13189 { (yyval
) = (yyvsp
[0]);}
13190 #line 13189 "hphp.5.tab.cpp" /* yacc.c:1651 */
13194 #line 3352 "hphp.y" /* yacc.c:1651 */
13195 { _p
->onCall((yyval
),1,(yyvsp
[-3]),(yyvsp
[-1]),NULL
);}
13196 #line 13195 "hphp.5.tab.cpp" /* yacc.c:1651 */
13200 #line 3354 "hphp.y" /* yacc.c:1651 */
13201 { _p
->onCall((yyval
),1,(yyvsp
[-3]),(yyvsp
[-1]),NULL
);}
13202 #line 13201 "hphp.5.tab.cpp" /* yacc.c:1651 */
13206 #line 3358 "hphp.y" /* yacc.c:1651 */
13207 { (yyval
) = (yyvsp
[-1]);}
13208 #line 13207 "hphp.5.tab.cpp" /* yacc.c:1651 */
13212 #line 3362 "hphp.y" /* yacc.c:1651 */
13213 { (yyval
) = (yyvsp
[0]);}
13214 #line 13213 "hphp.5.tab.cpp" /* yacc.c:1651 */
13218 #line 3363 "hphp.y" /* yacc.c:1651 */
13219 { (yyval
) = (yyvsp
[0]);}
13220 #line 13219 "hphp.5.tab.cpp" /* yacc.c:1651 */
13224 #line 3369 "hphp.y" /* yacc.c:1651 */
13225 { _p
->onObjectMethodCall((yyval
),(yyvsp
[-6]),(yyvsp
[-5]).num(),(yyvsp
[-4]),(yyvsp
[-1]));}
13226 #line 13225 "hphp.5.tab.cpp" /* yacc.c:1651 */
13230 #line 3373 "hphp.y" /* yacc.c:1651 */
13231 { _p
->onObjectMethodCall((yyval
),(yyvsp
[-7]),(yyvsp
[-5]).num(),(yyvsp
[-4]),(yyvsp
[-1]));}
13232 #line 13231 "hphp.5.tab.cpp" /* yacc.c:1651 */
13236 #line 3377 "hphp.y" /* yacc.c:1651 */
13237 { _p
->onObjectMethodCall((yyval
),(yyvsp
[-7]),(yyvsp
[-5]).num(),(yyvsp
[-4]),(yyvsp
[-1]));}
13238 #line 13237 "hphp.5.tab.cpp" /* yacc.c:1651 */
13242 #line 3384 "hphp.y" /* yacc.c:1651 */
13243 { _p
->onCall((yyval
),0,(yyvsp
[-4]),(yyvsp
[-1]),&(yyvsp
[-6]));}
13244 #line 13243 "hphp.5.tab.cpp" /* yacc.c:1651 */
13248 #line 3393 "hphp.y" /* yacc.c:1651 */
13249 { _p
->onCall((yyval
),1,(yyvsp
[-3]),(yyvsp
[-1]),&(yyvsp
[-5]));}
13250 #line 13249 "hphp.5.tab.cpp" /* yacc.c:1651 */
13254 #line 3397 "hphp.y" /* yacc.c:1651 */
13255 { _p
->onCall((yyval
),1,(yyvsp
[-4]),(yyvsp
[-1]),&(yyvsp
[-7]));}
13256 #line 13255 "hphp.5.tab.cpp" /* yacc.c:1651 */
13260 #line 3401 "hphp.y" /* yacc.c:1651 */
13261 { (yyval
) = (yyvsp
[0]);}
13262 #line 13261 "hphp.5.tab.cpp" /* yacc.c:1651 */
13266 #line 3404 "hphp.y" /* yacc.c:1651 */
13267 { _p
->onIndirectRef((yyval
),(yyvsp
[-1]),(yyvsp
[0]));}
13268 #line 13267 "hphp.5.tab.cpp" /* yacc.c:1651 */
13272 #line 3410 "hphp.y" /* yacc.c:1651 */
13273 { _p
->onRefDim((yyval
), (yyvsp
[-3]), (yyvsp
[-1]));}
13274 #line 13273 "hphp.5.tab.cpp" /* yacc.c:1651 */
13278 #line 3411 "hphp.y" /* yacc.c:1651 */
13279 { _p
->onRefDim((yyval
), (yyvsp
[-3]), (yyvsp
[-1]));}
13280 #line 13279 "hphp.5.tab.cpp" /* yacc.c:1651 */
13284 #line 3412 "hphp.y" /* yacc.c:1651 */
13285 { (yyval
) = (yyvsp
[0]);}
13286 #line 13285 "hphp.5.tab.cpp" /* yacc.c:1651 */
13290 #line 3416 "hphp.y" /* yacc.c:1651 */
13291 { _p
->onSimpleVariable((yyval
), (yyvsp
[0]));}
13292 #line 13291 "hphp.5.tab.cpp" /* yacc.c:1651 */
13296 #line 3417 "hphp.y" /* yacc.c:1651 */
13297 { _p
->onPipeVariable((yyval
));}
13298 #line 13297 "hphp.5.tab.cpp" /* yacc.c:1651 */
13302 #line 3418 "hphp.y" /* yacc.c:1651 */
13303 { _p
->onDynamicVariable((yyval
), (yyvsp
[-1]), 0);}
13304 #line 13303 "hphp.5.tab.cpp" /* yacc.c:1651 */
13308 #line 3425 "hphp.y" /* yacc.c:1651 */
13309 { (yyval
) = (yyvsp
[0]);}
13310 #line 13309 "hphp.5.tab.cpp" /* yacc.c:1651 */
13314 #line 3426 "hphp.y" /* yacc.c:1651 */
13315 { (yyval
).reset();}
13316 #line 13315 "hphp.5.tab.cpp" /* yacc.c:1651 */
13320 #line 3431 "hphp.y" /* yacc.c:1651 */
13322 #line 13321 "hphp.5.tab.cpp" /* yacc.c:1651 */
13326 #line 3432 "hphp.y" /* yacc.c:1651 */
13328 #line 13327 "hphp.5.tab.cpp" /* yacc.c:1651 */
13332 #line 3437 "hphp.y" /* yacc.c:1651 */
13333 { (yyval
) = (yyvsp
[0]);}
13334 #line 13333 "hphp.5.tab.cpp" /* yacc.c:1651 */
13338 #line 3438 "hphp.y" /* yacc.c:1651 */
13339 { (yyval
) = (yyvsp
[0]);}
13340 #line 13339 "hphp.5.tab.cpp" /* yacc.c:1651 */
13344 #line 3439 "hphp.y" /* yacc.c:1651 */
13345 { (yyval
) = (yyvsp
[0]);}
13346 #line 13345 "hphp.5.tab.cpp" /* yacc.c:1651 */
13350 #line 3442 "hphp.y" /* yacc.c:1651 */
13351 { _p
->onObjectProperty(
13355 ? HPHP::PropAccessType::Normal
13356 : HPHP::PropAccessType::NullSafe
,
13360 #line 13359 "hphp.5.tab.cpp" /* yacc.c:1651 */
13364 #line 3453 "hphp.y" /* yacc.c:1651 */
13365 { _p
->onStaticMember((yyval
),(yyvsp
[-2]),(yyvsp
[0]));}
13366 #line 13365 "hphp.5.tab.cpp" /* yacc.c:1651 */
13370 #line 3454 "hphp.y" /* yacc.c:1651 */
13371 { (yyval
) = (yyvsp
[-1]);}
13372 #line 13371 "hphp.5.tab.cpp" /* yacc.c:1651 */
13376 #line 3458 "hphp.y" /* yacc.c:1651 */
13377 { (yyval
) = (yyvsp
[0]);}
13378 #line 13377 "hphp.5.tab.cpp" /* yacc.c:1651 */
13382 #line 3459 "hphp.y" /* yacc.c:1651 */
13383 { (yyval
) = (yyvsp
[0]);}
13384 #line 13383 "hphp.5.tab.cpp" /* yacc.c:1651 */
13388 #line 3462 "hphp.y" /* yacc.c:1651 */
13389 { _p
->onObjectProperty(
13393 ? HPHP::PropAccessType::Normal
13394 : HPHP::PropAccessType::NullSafe
,
13398 #line 13397 "hphp.5.tab.cpp" /* yacc.c:1651 */
13402 #line 3471 "hphp.y" /* yacc.c:1651 */
13403 { (yyval
) = (yyvsp
[-1]);}
13404 #line 13403 "hphp.5.tab.cpp" /* yacc.c:1651 */
13408 #line 3476 "hphp.y" /* yacc.c:1651 */
13409 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[-3]),&(yyvsp
[0]),1);}
13410 #line 13409 "hphp.5.tab.cpp" /* yacc.c:1651 */
13414 #line 3477 "hphp.y" /* yacc.c:1651 */
13415 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[-2]),&(yyvsp
[0]),0);}
13416 #line 13415 "hphp.5.tab.cpp" /* yacc.c:1651 */
13420 #line 3478 "hphp.y" /* yacc.c:1651 */
13421 { _p
->onArrayPair((yyval
), 0, 0,&(yyvsp
[0]),1);}
13422 #line 13421 "hphp.5.tab.cpp" /* yacc.c:1651 */
13426 #line 3479 "hphp.y" /* yacc.c:1651 */
13427 { _p
->onArrayPair((yyval
), 0, 0,&(yyvsp
[0]),0);}
13428 #line 13427 "hphp.5.tab.cpp" /* yacc.c:1651 */
13432 #line 3482 "hphp.y" /* yacc.c:1651 */
13433 { _p
->onArrayPair((yyval
),&(yyvsp
[-4]),&(yyvsp
[-2]),&(yyvsp
[0]),0);}
13434 #line 13433 "hphp.5.tab.cpp" /* yacc.c:1651 */
13438 #line 3484 "hphp.y" /* yacc.c:1651 */
13439 { _p
->onArrayPair((yyval
),&(yyvsp
[-5]),&(yyvsp
[-3]),&(yyvsp
[0]),1);}
13440 #line 13439 "hphp.5.tab.cpp" /* yacc.c:1651 */
13444 #line 3485 "hphp.y" /* yacc.c:1651 */
13445 { _p
->onArrayPair((yyval
),&(yyvsp
[-3]), 0,&(yyvsp
[0]),1);}
13446 #line 13445 "hphp.5.tab.cpp" /* yacc.c:1651 */
13450 #line 3486 "hphp.y" /* yacc.c:1651 */
13451 { _p
->onArrayPair((yyval
),&(yyvsp
[-2]), 0,&(yyvsp
[0]),0);}
13452 #line 13451 "hphp.5.tab.cpp" /* yacc.c:1651 */
13456 #line 3490 "hphp.y" /* yacc.c:1651 */
13457 { _p
->onArrayPair((yyval
),&(yyvsp
[-1]), 0, 0,0);}
13458 #line 13457 "hphp.5.tab.cpp" /* yacc.c:1651 */
13462 #line 3492 "hphp.y" /* yacc.c:1651 */
13463 { _p
->onArrayPair((yyval
), 0, 0, 0,0);}
13464 #line 13463 "hphp.5.tab.cpp" /* yacc.c:1651 */
13468 #line 3497 "hphp.y" /* yacc.c:1651 */
13469 { (yyval
) = (yyvsp
[-1]);}
13470 #line 13469 "hphp.5.tab.cpp" /* yacc.c:1651 */
13474 #line 3498 "hphp.y" /* yacc.c:1651 */
13475 { _p
->onEmptyCollection((yyval
));}
13476 #line 13475 "hphp.5.tab.cpp" /* yacc.c:1651 */
13480 #line 3502 "hphp.y" /* yacc.c:1651 */
13481 { _p
->onArrayPair((yyval
),&(yyvsp
[-4]),&(yyvsp
[-2]),&(yyvsp
[0]),0);}
13482 #line 13481 "hphp.5.tab.cpp" /* yacc.c:1651 */
13486 #line 3503 "hphp.y" /* yacc.c:1651 */
13487 { _p
->onArrayPair((yyval
),&(yyvsp
[-2]), 0,&(yyvsp
[0]),0);}
13488 #line 13487 "hphp.5.tab.cpp" /* yacc.c:1651 */
13492 #line 3504 "hphp.y" /* yacc.c:1651 */
13493 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[-2]),&(yyvsp
[0]),0);}
13494 #line 13493 "hphp.5.tab.cpp" /* yacc.c:1651 */
13498 #line 3505 "hphp.y" /* yacc.c:1651 */
13499 { _p
->onArrayPair((yyval
), 0, 0,&(yyvsp
[0]),0);}
13500 #line 13499 "hphp.5.tab.cpp" /* yacc.c:1651 */
13504 #line 3510 "hphp.y" /* yacc.c:1651 */
13505 { (yyval
) = (yyvsp
[-1]);}
13506 #line 13505 "hphp.5.tab.cpp" /* yacc.c:1651 */
13510 #line 3511 "hphp.y" /* yacc.c:1651 */
13511 { _p
->onEmptyCollection((yyval
));}
13512 #line 13511 "hphp.5.tab.cpp" /* yacc.c:1651 */
13516 #line 3516 "hphp.y" /* yacc.c:1651 */
13517 { _p
->onArrayPair((yyval
),&(yyvsp
[-4]),&(yyvsp
[-2]),&(yyvsp
[0]),0);}
13518 #line 13517 "hphp.5.tab.cpp" /* yacc.c:1651 */
13522 #line 3518 "hphp.y" /* yacc.c:1651 */
13523 { _p
->onArrayPair((yyval
),&(yyvsp
[-2]), 0,&(yyvsp
[0]),0);}
13524 #line 13523 "hphp.5.tab.cpp" /* yacc.c:1651 */
13528 #line 3520 "hphp.y" /* yacc.c:1651 */
13529 { _p
->onArrayPair((yyval
), 0,&(yyvsp
[-2]),&(yyvsp
[0]),0);}
13530 #line 13529 "hphp.5.tab.cpp" /* yacc.c:1651 */
13534 #line 3521 "hphp.y" /* yacc.c:1651 */
13535 { _p
->onArrayPair((yyval
), 0, 0,&(yyvsp
[0]),0);}
13536 #line 13535 "hphp.5.tab.cpp" /* yacc.c:1651 */
13540 #line 3525 "hphp.y" /* yacc.c:1651 */
13541 { _p
->addEncap((yyval
), &(yyvsp
[-1]), (yyvsp
[0]), -1);}
13542 #line 13541 "hphp.5.tab.cpp" /* yacc.c:1651 */
13546 #line 3527 "hphp.y" /* yacc.c:1651 */
13547 { _p
->addEncap((yyval
), &(yyvsp
[-1]), (yyvsp
[0]), 0);}
13548 #line 13547 "hphp.5.tab.cpp" /* yacc.c:1651 */
13552 #line 3528 "hphp.y" /* yacc.c:1651 */
13553 { _p
->addEncap((yyval
), NULL
, (yyvsp
[0]), -1);}
13554 #line 13553 "hphp.5.tab.cpp" /* yacc.c:1651 */
13558 #line 3530 "hphp.y" /* yacc.c:1651 */
13559 { _p
->addEncap((yyval
), NULL
, (yyvsp
[-1]), 0);
13560 _p
->addEncap((yyval
), &(yyval
), (yyvsp
[0]), -1); }
13561 #line 13560 "hphp.5.tab.cpp" /* yacc.c:1651 */
13565 #line 3535 "hphp.y" /* yacc.c:1651 */
13566 { _p
->onSimpleVariable((yyval
), (yyvsp
[0]));}
13567 #line 13566 "hphp.5.tab.cpp" /* yacc.c:1651 */
13571 #line 3537 "hphp.y" /* yacc.c:1651 */
13572 { _p
->encapRefDim((yyval
), (yyvsp
[-3]), (yyvsp
[-1]));}
13573 #line 13572 "hphp.5.tab.cpp" /* yacc.c:1651 */
13577 #line 3539 "hphp.y" /* yacc.c:1651 */
13578 { _p
->encapObjProp(
13582 ? HPHP::PropAccessType::Normal
13583 : HPHP::PropAccessType::NullSafe
,
13587 #line 13586 "hphp.5.tab.cpp" /* yacc.c:1651 */
13591 #line 3549 "hphp.y" /* yacc.c:1651 */
13592 { _p
->onDynamicVariable((yyval
), (yyvsp
[-1]), 1);}
13593 #line 13592 "hphp.5.tab.cpp" /* yacc.c:1651 */
13597 #line 3551 "hphp.y" /* yacc.c:1651 */
13598 { _p
->encapArray((yyval
), (yyvsp
[-4]), (yyvsp
[-2]));}
13599 #line 13598 "hphp.5.tab.cpp" /* yacc.c:1651 */
13603 #line 3552 "hphp.y" /* yacc.c:1651 */
13604 { (yyval
) = (yyvsp
[-1]);}
13605 #line 13604 "hphp.5.tab.cpp" /* yacc.c:1651 */
13609 #line 3555 "hphp.y" /* yacc.c:1651 */
13610 { (yyval
) = (yyvsp
[0]); (yyval
) = T_STRING
;}
13611 #line 13610 "hphp.5.tab.cpp" /* yacc.c:1651 */
13615 #line 3556 "hphp.y" /* yacc.c:1651 */
13616 { (yyval
) = (yyvsp
[0]); (yyval
) = T_NUM_STRING
;}
13617 #line 13616 "hphp.5.tab.cpp" /* yacc.c:1651 */
13621 #line 3557 "hphp.y" /* yacc.c:1651 */
13622 { (yyval
) = (yyvsp
[0]); (yyval
) = T_VARIABLE
;}
13623 #line 13622 "hphp.5.tab.cpp" /* yacc.c:1651 */
13627 #line 3561 "hphp.y" /* yacc.c:1651 */
13628 { UEXP((yyval
),(yyvsp
[-1]),T_ISSET
,1);}
13629 #line 13628 "hphp.5.tab.cpp" /* yacc.c:1651 */
13633 #line 3562 "hphp.y" /* yacc.c:1651 */
13634 { UEXP((yyval
),(yyvsp
[-1]),T_EMPTY
,1);}
13635 #line 13634 "hphp.5.tab.cpp" /* yacc.c:1651 */
13639 #line 3563 "hphp.y" /* yacc.c:1651 */
13640 { UEXP((yyval
),(yyvsp
[-1]),'!',1);}
13641 #line 13640 "hphp.5.tab.cpp" /* yacc.c:1651 */
13645 #line 3564 "hphp.y" /* yacc.c:1651 */
13646 { UEXP((yyval
),(yyvsp
[-1]),'!',1);}
13647 #line 13646 "hphp.5.tab.cpp" /* yacc.c:1651 */
13651 #line 3565 "hphp.y" /* yacc.c:1651 */
13652 { UEXP((yyval
),(yyvsp
[-1]),'!',1);}
13653 #line 13652 "hphp.5.tab.cpp" /* yacc.c:1651 */
13657 #line 3566 "hphp.y" /* yacc.c:1651 */
13658 { UEXP((yyval
),(yyvsp
[-1]),'!',1);}
13659 #line 13658 "hphp.5.tab.cpp" /* yacc.c:1651 */
13663 #line 3567 "hphp.y" /* yacc.c:1651 */
13664 { UEXP((yyval
),(yyvsp
[0]),T_INCLUDE
,1);}
13665 #line 13664 "hphp.5.tab.cpp" /* yacc.c:1651 */
13669 #line 3568 "hphp.y" /* yacc.c:1651 */
13670 { UEXP((yyval
),(yyvsp
[0]),T_INCLUDE_ONCE
,1);}
13671 #line 13670 "hphp.5.tab.cpp" /* yacc.c:1651 */
13675 #line 3569 "hphp.y" /* yacc.c:1651 */
13676 { UEXP((yyval
),(yyvsp
[-1]),T_EVAL
,1);}
13677 #line 13676 "hphp.5.tab.cpp" /* yacc.c:1651 */
13681 #line 3570 "hphp.y" /* yacc.c:1651 */
13682 { UEXP((yyval
),(yyvsp
[0]),T_REQUIRE
,1);}
13683 #line 13682 "hphp.5.tab.cpp" /* yacc.c:1651 */
13687 #line 3571 "hphp.y" /* yacc.c:1651 */
13688 { UEXP((yyval
),(yyvsp
[0]),T_REQUIRE_ONCE
,1);}
13689 #line 13688 "hphp.5.tab.cpp" /* yacc.c:1651 */
13693 #line 3575 "hphp.y" /* yacc.c:1651 */
13694 { _p
->onExprListElem((yyval
), NULL
, (yyvsp
[0]));}
13695 #line 13694 "hphp.5.tab.cpp" /* yacc.c:1651 */
13699 #line 3576 "hphp.y" /* yacc.c:1651 */
13700 { _p
->onExprListElem((yyval
), &(yyvsp
[-2]), (yyvsp
[0]));}
13701 #line 13700 "hphp.5.tab.cpp" /* yacc.c:1651 */
13705 #line 3581 "hphp.y" /* yacc.c:1651 */
13706 { _p
->onClassConst((yyval
), (yyvsp
[-2]), (yyvsp
[0]), 0);}
13707 #line 13706 "hphp.5.tab.cpp" /* yacc.c:1651 */
13711 #line 3583 "hphp.y" /* yacc.c:1651 */
13712 { _p
->onClassClass((yyval
), (yyvsp
[-2]), (yyvsp
[0]), 0);}
13713 #line 13712 "hphp.5.tab.cpp" /* yacc.c:1651 */
13717 #line 3597 "hphp.y" /* yacc.c:1651 */
13718 { (yyvsp
[-3]).setText(_p
->nsClassDecl((yyvsp
[-3]).text()));
13719 _p
->onTypedef((yyval
), (yyvsp
[-3]), (yyvsp
[-1]));
13720 _p
->popTypeScope(); }
13721 #line 13720 "hphp.5.tab.cpp" /* yacc.c:1651 */
13725 #line 3602 "hphp.y" /* yacc.c:1651 */
13726 { (yyvsp
[-3]).setText(_p
->nsClassDecl((yyvsp
[-3]).text()));
13727 _p
->onTypedef((yyval
), (yyvsp
[-3]), (yyvsp
[-1]), &(yyvsp
[-5]));
13728 _p
->popTypeScope(); }
13729 #line 13728 "hphp.5.tab.cpp" /* yacc.c:1651 */
13733 #line 3606 "hphp.y" /* yacc.c:1651 */
13734 { (yyvsp
[-4]).setText(_p
->nsClassDecl((yyvsp
[-4]).text()));
13735 _p
->onTypedef((yyval
), (yyvsp
[-4]), (yyvsp
[-1]));
13736 _p
->popTypeScope(); }
13737 #line 13736 "hphp.5.tab.cpp" /* yacc.c:1651 */
13741 #line 3611 "hphp.y" /* yacc.c:1651 */
13742 { (yyvsp
[-4]).setText(_p
->nsClassDecl((yyvsp
[-4]).text()));
13743 _p
->onTypedef((yyval
), (yyvsp
[-4]), (yyvsp
[-1]), &(yyvsp
[-6]));
13744 _p
->popTypeScope(); }
13745 #line 13744 "hphp.5.tab.cpp" /* yacc.c:1651 */
13749 #line 3617 "hphp.y" /* yacc.c:1651 */
13750 { (yyval
) = (yyvsp
[0]); }
13751 #line 13750 "hphp.5.tab.cpp" /* yacc.c:1651 */
13755 #line 3618 "hphp.y" /* yacc.c:1651 */
13756 { only_in_hh_syntax(_p
); (yyval
) = (yyvsp
[0]); }
13757 #line 13756 "hphp.5.tab.cpp" /* yacc.c:1651 */
13761 #line 3622 "hphp.y" /* yacc.c:1651 */
13762 { (yyval
) = (yyvsp
[0]); }
13763 #line 13762 "hphp.5.tab.cpp" /* yacc.c:1651 */
13767 #line 3623 "hphp.y" /* yacc.c:1651 */
13768 { only_in_hh_syntax(_p
); (yyval
) = (yyvsp
[0]); }
13769 #line 13768 "hphp.5.tab.cpp" /* yacc.c:1651 */
13773 #line 3629 "hphp.y" /* yacc.c:1651 */
13774 { _p
->pushTypeScope(); (yyval
) = (yyvsp
[0]); }
13775 #line 13774 "hphp.5.tab.cpp" /* yacc.c:1651 */
13779 #line 3633 "hphp.y" /* yacc.c:1651 */
13780 { _p
->pushTypeScope(); (yyval
) = (yyvsp
[-3]); }
13781 #line 13780 "hphp.5.tab.cpp" /* yacc.c:1651 */
13785 #line 3639 "hphp.y" /* yacc.c:1651 */
13786 { _p
->pushTypeScope(); (yyval
) = (yyvsp
[0]); }
13787 #line 13786 "hphp.5.tab.cpp" /* yacc.c:1651 */
13791 #line 3643 "hphp.y" /* yacc.c:1651 */
13792 { Token t
; _p
->setTypeVars(t
, (yyvsp
[-3]));
13793 _p
->pushTypeScope(); (yyval
) = t
; }
13794 #line 13793 "hphp.5.tab.cpp" /* yacc.c:1651 */
13798 #line 3650 "hphp.y" /* yacc.c:1651 */
13799 { (yyval
) = (yyvsp
[-1]); }
13800 #line 13799 "hphp.5.tab.cpp" /* yacc.c:1651 */
13804 #line 3651 "hphp.y" /* yacc.c:1651 */
13805 { (yyval
).reset(); }
13806 #line 13805 "hphp.5.tab.cpp" /* yacc.c:1651 */
13810 #line 3655 "hphp.y" /* yacc.c:1651 */
13811 { Token t
; t
.reset();
13812 _p
->onTypeList((yyvsp
[0]), t
);
13813 (yyval
) = (yyvsp
[0]); }
13814 #line 13813 "hphp.5.tab.cpp" /* yacc.c:1651 */
13818 #line 3658 "hphp.y" /* yacc.c:1651 */
13819 { _p
->onTypeList((yyvsp
[-2]), (yyvsp
[0]));
13820 (yyval
) = (yyvsp
[-2]); }
13821 #line 13820 "hphp.5.tab.cpp" /* yacc.c:1651 */
13825 #line 3664 "hphp.y" /* yacc.c:1651 */
13826 { (yyval
) = (yyvsp
[-1]); }
13827 #line 13826 "hphp.5.tab.cpp" /* yacc.c:1651 */
13831 #line 3668 "hphp.y" /* yacc.c:1651 */
13832 { Token t
; t
.reset();
13833 _p
->onTypeList((yyvsp
[0]), t
);
13834 (yyval
) = (yyvsp
[0]); }
13835 #line 13834 "hphp.5.tab.cpp" /* yacc.c:1651 */
13839 #line 3671 "hphp.y" /* yacc.c:1651 */
13840 { Token t
; t
.reset();
13841 _p
->onTypeList((yyvsp
[0]), t
);
13842 (yyval
) = (yyvsp
[0]); }
13843 #line 13842 "hphp.5.tab.cpp" /* yacc.c:1651 */
13847 #line 3674 "hphp.y" /* yacc.c:1651 */
13848 { _p
->onTypeList((yyvsp
[-3]), (yyvsp
[0]));
13849 (yyval
) = (yyvsp
[-3]); }
13850 #line 13849 "hphp.5.tab.cpp" /* yacc.c:1651 */
13854 #line 3676 "hphp.y" /* yacc.c:1651 */
13855 { _p
->onTypeList((yyvsp
[-2]), (yyvsp
[0]));
13856 (yyval
) = (yyvsp
[-2]); }
13857 #line 13856 "hphp.5.tab.cpp" /* yacc.c:1651 */
13861 #line 3678 "hphp.y" /* yacc.c:1651 */
13862 { _p
->onTypeList((yyvsp
[-2]), (yyvsp
[0]));
13863 (yyval
) = (yyvsp
[-2]); }
13864 #line 13863 "hphp.5.tab.cpp" /* yacc.c:1651 */
13868 #line 3680 "hphp.y" /* yacc.c:1651 */
13869 { (yyval
).reset(); }
13870 #line 13869 "hphp.5.tab.cpp" /* yacc.c:1651 */
13874 #line 3685 "hphp.y" /* yacc.c:1651 */
13875 { (yyval
) = (yyvsp
[-3]); }
13876 #line 13875 "hphp.5.tab.cpp" /* yacc.c:1651 */
13880 #line 3686 "hphp.y" /* yacc.c:1651 */
13881 { (yyval
) = (yyvsp
[-1]); }
13882 #line 13881 "hphp.5.tab.cpp" /* yacc.c:1651 */
13886 #line 3687 "hphp.y" /* yacc.c:1651 */
13887 { (yyval
).reset(); }
13888 #line 13887 "hphp.5.tab.cpp" /* yacc.c:1651 */
13892 #line 3688 "hphp.y" /* yacc.c:1651 */
13893 { (yyval
).reset(); }
13894 #line 13893 "hphp.5.tab.cpp" /* yacc.c:1651 */
13898 #line 3709 "hphp.y" /* yacc.c:1651 */
13899 { (yyval
).reset(); }
13900 #line 13899 "hphp.5.tab.cpp" /* yacc.c:1651 */
13904 #line 3710 "hphp.y" /* yacc.c:1651 */
13905 { (yyval
) = (yyvsp
[0]); (yyval
) = 1; }
13906 #line 13905 "hphp.5.tab.cpp" /* yacc.c:1651 */
13910 #line 3719 "hphp.y" /* yacc.c:1651 */
13911 { (yyval
) = (yyvsp
[-1]); }
13912 #line 13911 "hphp.5.tab.cpp" /* yacc.c:1651 */
13916 #line 3730 "hphp.y" /* yacc.c:1651 */
13917 { _p
->addTypeVar((yyvsp
[0]).text()); }
13918 #line 13917 "hphp.5.tab.cpp" /* yacc.c:1651 */
13922 #line 3732 "hphp.y" /* yacc.c:1651 */
13923 { _p
->addTypeVar((yyvsp
[0]).text()); }
13924 #line 13923 "hphp.5.tab.cpp" /* yacc.c:1651 */
13928 #line 3736 "hphp.y" /* yacc.c:1651 */
13929 { _p
->addTypeVar((yyvsp
[-1]).text()); }
13930 #line 13929 "hphp.5.tab.cpp" /* yacc.c:1651 */
13934 #line 3739 "hphp.y" /* yacc.c:1651 */
13935 { _p
->addTypeVar((yyvsp
[-1]).text()); }
13936 #line 13935 "hphp.5.tab.cpp" /* yacc.c:1651 */
13940 #line 3743 "hphp.y" /* yacc.c:1651 */
13942 #line 13941 "hphp.5.tab.cpp" /* yacc.c:1651 */
13946 #line 3744 "hphp.y" /* yacc.c:1651 */
13948 #line 13947 "hphp.5.tab.cpp" /* yacc.c:1651 */
13952 #line 3745 "hphp.y" /* yacc.c:1651 */
13954 #line 13953 "hphp.5.tab.cpp" /* yacc.c:1651 */
13958 #line 3751 "hphp.y" /* yacc.c:1651 */
13959 { validate_shape_keyname((yyvsp
[-2]), _p
);
13960 _p
->onTypeAnnotation((yyval
), (yyvsp
[-2]), (yyvsp
[0])); }
13961 #line 13960 "hphp.5.tab.cpp" /* yacc.c:1651 */
13965 #line 3756 "hphp.y" /* yacc.c:1651 */
13967 validate_shape_keyname((yyvsp
[-2]), _p
);
13968 _p
->onTypeAnnotation((yyval
), (yyvsp
[-2]), (yyvsp
[0]));
13969 _p
->onShapeFieldSpecialization((yyval
), '?');
13971 #line 13970 "hphp.5.tab.cpp" /* yacc.c:1651 */
13975 #line 3765 "hphp.y" /* yacc.c:1651 */
13976 { _p
->onClsCnsShapeField((yyval
), (yyvsp
[-4]), (yyvsp
[-2]), (yyvsp
[0])); }
13977 #line 13976 "hphp.5.tab.cpp" /* yacc.c:1651 */
13981 #line 3771 "hphp.y" /* yacc.c:1651 */
13983 _p
->onClsCnsShapeField((yyval
), (yyvsp
[-4]), (yyvsp
[-2]), (yyvsp
[0]));
13984 _p
->onShapeFieldSpecialization((yyval
), '?');
13986 #line 13985 "hphp.5.tab.cpp" /* yacc.c:1651 */
13990 #line 3779 "hphp.y" /* yacc.c:1651 */
13991 { _p
->onTypeList((yyval
), (yyvsp
[0])); }
13992 #line 13991 "hphp.5.tab.cpp" /* yacc.c:1651 */
13996 #line 3780 "hphp.y" /* yacc.c:1651 */
13998 #line 13997 "hphp.5.tab.cpp" /* yacc.c:1651 */
14002 #line 3786 "hphp.y" /* yacc.c:1651 */
14003 { _p
->onShape((yyval
), (yyvsp
[-2]), true); }
14004 #line 14003 "hphp.5.tab.cpp" /* yacc.c:1651 */
14008 #line 3788 "hphp.y" /* yacc.c:1651 */
14009 { _p
->onShape((yyval
), (yyvsp
[-1]), false); }
14010 #line 14009 "hphp.5.tab.cpp" /* yacc.c:1651 */
14014 #line 3789 "hphp.y" /* yacc.c:1651 */
14018 _p
->onShape((yyval
), t
, true);
14020 #line 14019 "hphp.5.tab.cpp" /* yacc.c:1651 */
14024 #line 3794 "hphp.y" /* yacc.c:1651 */
14025 { Token t
; t
.reset();
14026 _p
->onShape((yyval
), t
, false); }
14027 #line 14026 "hphp.5.tab.cpp" /* yacc.c:1651 */
14031 #line 3800 "hphp.y" /* yacc.c:1651 */
14032 { (yyval
) = (yyvsp
[-1]);
14033 (yyval
).setText("HH\\darray"); }
14034 #line 14033 "hphp.5.tab.cpp" /* yacc.c:1651 */
14038 #line 3805 "hphp.y" /* yacc.c:1651 */
14039 { (yyval
) = (yyvsp
[0]); }
14040 #line 14039 "hphp.5.tab.cpp" /* yacc.c:1651 */
14044 #line 3810 "hphp.y" /* yacc.c:1651 */
14045 { Token t
; t
.reset();
14046 _p
->onTypeAnnotation((yyval
), (yyvsp
[-2]), t
);
14047 _p
->onTypeList((yyval
), (yyvsp
[0])); }
14048 #line 14047 "hphp.5.tab.cpp" /* yacc.c:1651 */
14052 #line 3814 "hphp.y" /* yacc.c:1651 */
14053 { _p
->onTypeAnnotation((yyval
), (yyvsp
[-1]), (yyvsp
[0])); }
14054 #line 14053 "hphp.5.tab.cpp" /* yacc.c:1651 */
14058 #line 3819 "hphp.y" /* yacc.c:1651 */
14059 { (yyval
) = (yyvsp
[-2]);}
14060 #line 14059 "hphp.5.tab.cpp" /* yacc.c:1651 */
14064 #line 3821 "hphp.y" /* yacc.c:1651 */
14065 { _p
->onTypeList((yyvsp
[-3]), (yyvsp
[-1])); (yyval
) = (yyvsp
[-3]);}
14066 #line 14065 "hphp.5.tab.cpp" /* yacc.c:1651 */
14070 #line 3827 "hphp.y" /* yacc.c:1651 */
14071 { _p
->onTypeSpecialization((yyvsp
[0]), '?');
14072 (yyval
) = (yyvsp
[0]); }
14073 #line 14072 "hphp.5.tab.cpp" /* yacc.c:1651 */
14077 #line 3829 "hphp.y" /* yacc.c:1651 */
14078 { only_in_hh_syntax(_p
);
14079 _p
->onTypeSpecialization((yyvsp
[0]), '@');
14080 (yyval
) = (yyvsp
[0]); }
14081 #line 14080 "hphp.5.tab.cpp" /* yacc.c:1651 */
14085 #line 3832 "hphp.y" /* yacc.c:1651 */
14086 { (yyval
) = (yyvsp
[0]); }
14087 #line 14086 "hphp.5.tab.cpp" /* yacc.c:1651 */
14091 #line 3833 "hphp.y" /* yacc.c:1651 */
14092 { Token t
; t
.reset();
14093 (yyvsp
[0]).setText("array");
14094 _p
->onTypeAnnotation((yyval
), (yyvsp
[0]), t
); }
14095 #line 14094 "hphp.5.tab.cpp" /* yacc.c:1651 */
14099 #line 3836 "hphp.y" /* yacc.c:1651 */
14100 { Token t
; t
.reset();
14101 (yyvsp
[0]).setText("callable");
14102 _p
->onTypeAnnotation((yyval
), (yyvsp
[0]), t
); }
14103 #line 14102 "hphp.5.tab.cpp" /* yacc.c:1651 */
14107 #line 3839 "hphp.y" /* yacc.c:1651 */
14108 { (yyval
) = (yyvsp
[0]); }
14109 #line 14108 "hphp.5.tab.cpp" /* yacc.c:1651 */
14113 #line 3842 "hphp.y" /* yacc.c:1651 */
14114 { only_in_hh_syntax(_p
);
14115 _p
->onTypeAnnotation((yyval
), (yyvsp
[-2]), (yyvsp
[0]));
14116 _p
->onTypeSpecialization((yyval
), 'a'); }
14117 #line 14116 "hphp.5.tab.cpp" /* yacc.c:1651 */
14121 #line 3845 "hphp.y" /* yacc.c:1651 */
14122 { (yyvsp
[-1]).setText("array");
14123 _p
->onTypeAnnotation((yyval
), (yyvsp
[-1]), (yyvsp
[0])); }
14124 #line 14123 "hphp.5.tab.cpp" /* yacc.c:1651 */
14128 #line 3847 "hphp.y" /* yacc.c:1651 */
14129 { (yyvsp
[0]).xhpLabel();
14130 Token t
; t
.reset();
14131 _p
->onTypeAnnotation((yyval
), (yyvsp
[0]), t
);
14132 _p
->onTypeSpecialization((yyval
), 'x'); }
14133 #line 14132 "hphp.5.tab.cpp" /* yacc.c:1651 */
14137 #line 3853 "hphp.y" /* yacc.c:1651 */
14138 { only_in_hh_syntax(_p
);
14139 _p
->onTypeList((yyvsp
[-1]), (yyvsp
[-4]));
14140 _p
->onTypeAnnotation((yyval
), (yyvsp
[-6]), (yyvsp
[-1]));
14141 _p
->onTypeSpecialization((yyval
), 'f'); }
14142 #line 14141 "hphp.5.tab.cpp" /* yacc.c:1651 */
14146 #line 3859 "hphp.y" /* yacc.c:1651 */
14147 { only_in_hh_syntax(_p
);
14148 _p
->onTypeList((yyvsp
[-4]), (yyvsp
[-2]));
14149 Token t
; t
.reset(); t
.setText("HH\\varray");
14150 _p
->onTypeAnnotation((yyval
), t
, (yyvsp
[-4]));
14151 _p
->onTypeSpecialization((yyval
), 't'); }
14152 #line 14151 "hphp.5.tab.cpp" /* yacc.c:1651 */
14156 #line 3867 "hphp.y" /* yacc.c:1651 */
14157 { (yyval
) = (yyvsp
[0]); }
14158 #line 14157 "hphp.5.tab.cpp" /* yacc.c:1651 */
14162 #line 3868 "hphp.y" /* yacc.c:1651 */
14163 { (yyval
).reset(); }
14164 #line 14163 "hphp.5.tab.cpp" /* yacc.c:1651 */
14168 #line 14167 "hphp.5.tab.cpp" /* yacc.c:1651 */
14171 /* User semantic actions sometimes alter yychar, and that requires
14172 that yytoken be updated with the new translation. We take the
14173 approach of translating immediately before every use of yytoken.
14174 One alternative is translating here after every semantic action,
14175 but that translation would be missed if the semantic action invokes
14176 YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
14177 if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an
14178 incorrect destructor might then be invoked immediately. In the
14179 case of YYERROR or YYBACKUP, subsequent parser actions might lead
14180 to an incorrect destructor call or verbose syntax error message
14181 before the lookahead is translated. */
14182 YY_SYMBOL_PRINT ("-> $$ =", yyr1
[yyn
], &yyval
, &yyloc
);
14184 YYPOPSTACK (yylen
);
14186 YY_STACK_PRINT (yyss
, yyssp
);
14191 /* Now 'shift' the result of the reduction. Determine what state
14192 that goes to, based on the state we popped back to and the rule
14193 number reduced by. */
14197 yystate
= yypgoto
[yyn
- YYNTOKENS
] + *yyssp
;
14198 if (0 <= yystate
&& yystate
<= YYLAST
&& yycheck
[yystate
] == *yyssp
)
14199 yystate
= yytable
[yystate
];
14201 yystate
= yydefgoto
[yyn
- YYNTOKENS
];
14206 /*--------------------------------------.
14207 | yyerrlab -- here on detecting error. |
14208 `--------------------------------------*/
14210 /* Make sure we have latest lookahead translation. See comments at
14211 user semantic actions for why this is necessary. */
14212 yytoken
= yychar
== YYEMPTY
? YYEMPTY
: YYTRANSLATE (yychar
);
14214 /* If not already recovering from an error, report this error. */
14218 #if ! YYERROR_VERBOSE
14219 yyerror (&yylloc
, _p
, YY_("syntax error"));
14221 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
14224 char const *yymsgp
= YY_("syntax error");
14225 int yysyntax_error_status
;
14226 yysyntax_error_status
= YYSYNTAX_ERROR
;
14227 if (yysyntax_error_status
== 0)
14229 else if (yysyntax_error_status
== 1)
14231 if (yymsg
!= yymsgbuf
)
14232 YYSTACK_FREE (yymsg
);
14233 yymsg
= (char *) YYSTACK_ALLOC (yymsg_alloc
);
14237 yymsg_alloc
= sizeof yymsgbuf
;
14238 yysyntax_error_status
= 2;
14242 yysyntax_error_status
= YYSYNTAX_ERROR
;
14246 yyerror (&yylloc
, _p
, yymsgp
);
14247 if (yysyntax_error_status
== 2)
14248 goto yyexhaustedlab
;
14250 # undef YYSYNTAX_ERROR
14254 yyerror_range
[1] = yylloc
;
14256 if (yyerrstatus
== 3)
14258 /* If just tried and failed to reuse lookahead token after an
14259 error, discard it. */
14261 if (yychar
<= YYEOF
)
14263 /* Return failure if at end of input. */
14264 if (yychar
== YYEOF
)
14269 yydestruct ("Error: discarding",
14270 yytoken
, &yylval
, &yylloc
, _p
);
14275 /* Else will try to reuse lookahead token after shifting the error
14280 /*---------------------------------------------------.
14281 | yyerrorlab -- error raised explicitly by YYERROR. |
14282 `---------------------------------------------------*/
14285 /* Pacify compilers like GCC when the user code never invokes
14286 YYERROR and the label yyerrorlab therefore never appears in user
14288 if (/*CONSTCOND*/ 0)
14291 /* Do not reclaim the symbols of the rule whose action triggered
14293 YYPOPSTACK (yylen
);
14295 YY_STACK_PRINT (yyss
, yyssp
);
14300 /*-------------------------------------------------------------.
14301 | yyerrlab1 -- common code for both syntax error and YYERROR. |
14302 `-------------------------------------------------------------*/
14304 yyerrstatus
= 3; /* Each real token shifted decrements this. */
14308 yyn
= yypact
[yystate
];
14309 if (!yypact_value_is_default (yyn
))
14312 if (0 <= yyn
&& yyn
<= YYLAST
&& yycheck
[yyn
] == YYTERROR
)
14314 yyn
= yytable
[yyn
];
14320 /* Pop the current state because it cannot handle the error token. */
14324 yyerror_range
[1] = *yylsp
;
14325 yydestruct ("Error: popping",
14326 yystos
[yystate
], yyvsp
, yylsp
, _p
);
14329 YY_STACK_PRINT (yyss
, yyssp
);
14332 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
14334 YY_IGNORE_MAYBE_UNINITIALIZED_END
14336 yyerror_range
[2] = yylloc
;
14337 /* Using YYLLOC is tempting, but would change the location of
14338 the lookahead. YYLOC is available though. */
14339 YYLLOC_DEFAULT (yyloc
, yyerror_range
, 2);
14342 /* Shift the error token. */
14343 YY_SYMBOL_PRINT ("Shifting", yystos
[yyn
], yyvsp
, yylsp
);
14349 /*-------------------------------------.
14350 | yyacceptlab -- YYACCEPT comes here. |
14351 `-------------------------------------*/
14356 /*-----------------------------------.
14357 | yyabortlab -- YYABORT comes here. |
14358 `-----------------------------------*/
14363 #if !defined yyoverflow || YYERROR_VERBOSE
14364 /*-------------------------------------------------.
14365 | yyexhaustedlab -- memory exhaustion comes here. |
14366 `-------------------------------------------------*/
14368 yyerror (&yylloc
, _p
, YY_("memory exhausted"));
14370 /* Fall through. */
14374 if (yychar
!= YYEMPTY
)
14376 /* Make sure we have latest lookahead translation. See comments at
14377 user semantic actions for why this is necessary. */
14378 yytoken
= YYTRANSLATE (yychar
);
14379 yydestruct ("Cleanup: discarding lookahead",
14380 yytoken
, &yylval
, &yylloc
, _p
);
14382 /* Do not reclaim the symbols of the rule whose action triggered
14383 this YYABORT or YYACCEPT. */
14384 YYPOPSTACK (yylen
);
14385 YY_STACK_PRINT (yyss
, yyssp
);
14386 while (yyssp
!= yyss
)
14388 yydestruct ("Cleanup: popping",
14389 yystos
[*yyssp
], yyvsp
, yylsp
, _p
);
14394 YYSTACK_FREE (yyss
);
14397 #if YYERROR_VERBOSE
14398 if (yymsg
!= yymsgbuf
)
14399 YYSTACK_FREE (yymsg
);
14403 #line 3871 "hphp.y" /* yacc.c:1910 */
14406 bool Parser::parseImpl5() {
14411 return yyparse(this) == 0;