Back out "do not JIT internal warmup requests"
[hiphop-php.git] / hphp / parser / hphp.5.tab.cpp
blob621c1a6a79cda329dabc80d0ddc0260cb0053158
1 // @generated
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. */
45 #define YYBISON 1
47 /* Bison version. */
48 #define YYBISON_VERSION "3.1"
50 /* Skeleton name. */
51 #define YYSKELETON_NAME "yacc.c"
53 /* Pure parsers. */
54 #define YYPURE 1
56 /* Push parsers. */
57 #define YYPUSH 0
59 /* Pull parsers. */
60 #define YYPULL 1
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
80 * HPHP_PARSER_NS.
83 // macros for bison
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
94 #else
95 #include "hphp/compiler/parser/parser.h"
96 #endif
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
108 #ifdef yyerror
109 #undef yyerror
110 #endif
111 #define yyerror(loc,p,msg) p->parseFatal(loc,msg)
113 #ifdef YYLLOC_DEFAULT
114 # undef YYLLOC_DEFAULT
115 #endif
116 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
117 #define YYLLOC_DEFAULT(Current, Rhs, N) \
118 do \
119 if (N) { \
120 (Current).first(YYRHSLOC (Rhs, 1)); \
121 (Current).last (YYRHSLOC (Rhs, N)); \
122 } else { \
123 (Current).line0 = (Current).line1 = YYRHSLOC (Rhs, 0).line1;\
124 (Current).char0 = (Current).char1 = YYRHSLOC (Rhs, 0).char1;\
126 while (0); \
127 _p->setRuleLocation(&Current);
129 #define YYCOPY(To, From, Count) \
130 do { \
131 YYSIZE_T yyi; \
132 for (yyi = 0; yyi < (Count); yyi++) { \
133 (To)[yyi] = (From)[yyi]; \
135 if (From != From ## a) { \
136 YYSTACK_FREE (From); \
139 while (0)
141 #define YYCOPY_RESET(To, From, Count) \
142 do \
144 YYSIZE_T yyi; \
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); \
153 while (0)
155 #define YYTOKEN_RESET(From, Count) \
156 do \
158 YYSIZE_T yyi; \
159 for (yyi = 0; yyi < (Count); yyi++) { \
160 (From)[yyi].reset(); \
162 if (From != From ## a) { \
163 YYSTACK_FREE (From); \
166 while (0)
168 # define YYSTACK_RELOCATE_RESET(Stack_alloc, Stack) \
169 do \
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); \
177 while (0)
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); \
189 // macros for rules
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 ///////////////////////////////////////////////////////////////////////////////
201 // helpers
203 static void scalar_num(Parser *_p, Token &out, const char *num) {
204 Token t;
205 t.setText(num);
206 _p->onScalar(out, T_LNUMBER, t);
209 static void scalar_num(Parser *_p, Token &out, int num) {
210 Token t;
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();
260 label.xhpLabel();
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()) {
278 case 6:
279 if (!strcasecmp(str, "HH\\int")) {
280 type.reset(); type.setNum(3);
282 break;
283 case 7:
284 if (!strcasecmp(str, "HH\\bool")) {
285 type.reset(); type.setNum(2);
287 break;
288 case 8:
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);
294 break;
295 case 9:
296 if (!strcasecmp(str, "HH\\string")) {
297 type.reset(); type.setNum(1);
299 break;
300 default:
301 break;
303 } else {
304 switch (type.text().size()) {
305 case 3:
306 if (!strcasecmp(str, "int")) {
307 type.reset(); type.setNum(3);
309 break;
310 case 4:
311 if (!strcasecmp(str, "bool")) {
312 type.reset(); type.setNum(2);
313 } else if (!strcasecmp(str, "real")) {
314 type.reset(); type.setNum(8);
316 break;
317 case 5:
318 if (!strcasecmp(str, "float")) {
319 type.reset(); type.setNum(8);
320 } else if (!strcasecmp(str, "mixed")) {
321 type.reset(); type.setNum(6);
323 break;
324 case 6:
325 if (!strcasecmp(str, "string")) {
326 type.reset(); type.setNum(1);
327 } else if (!strcasecmp(str, "double")) {
328 type.reset(); type.setNum(8);
330 break;
331 case 7:
332 if (!strcasecmp(str, "integer")) {
333 type.reset(); type.setNum(3);
334 } else if (!strcasecmp(str, "boolean")) {
335 type.reset(); type.setNum(2);
337 break;
338 default:
339 break;
344 Token num; scalar_num(_p, num, type.num());
345 Token arr1; _p->onExprListElem(arr1, nullptr, num);
347 Token arr2;
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);
352 break;
354 case 7: /* enum */ {
355 Token arr; _p->onVArray(arr, type);
356 _p->onExprListElem(arr2, &arr1, arr);
357 break;
359 default: {
360 Token tnull; scalar_null(_p, tnull);
361 _p->onExprListElem(arr2, &arr1, tnull);
362 break;
366 Token arr3; _p->onExprListElem(arr3, &arr2, def);
367 Token arr4; _p->onExprListElem(arr4, &arr3, req);
368 _p->onVArray(out, arr4);
369 out.setText(label);
372 static void xhp_attribute_list(Parser *_p, Token &out, Token *list,
373 Token &decl) {
374 if (decl.num() == 0) {
375 decl.xhpLabel();
376 if (list) {
377 out = *list;
378 out.setText(list->text() + ":" + decl.text()); // avoiding vector<string>
379 } else {
380 out.setText(decl);
382 } else {
383 Token name; _p->onScalar(name, T_CONSTANT_ENCAPSED_STRING, decl);
384 _p->onArrayPair(out, list, &name, &decl, 0);
385 if (list) {
386 out.setText(list->text());
387 } else {
388 out.setText("");
393 static void xhp_attribute_property_stmt(Parser *_p, Token &out) {
394 // private static darray $__xhpAttributeDeclarationCache = null;
395 Token modifiers;
397 Token m;
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) {
408 Token modifiers;
409 Token fname; fname.setText("__xhpAttributeDeclaration");
411 Token m;
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);
418 Token dummy;
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);
431 Token out;
432 _p->onStaticMember(out, cls, sv);
433 return out;
436 auto _r = [&]() {
437 // $r
438 Token r; r.set(T_VARIABLE, "r");
439 Token out; _p->onSimpleVariable(out, r);
440 return out;
443 auto _assign_stmt = [&](Token &dest, Token &src) {
444 // [dest] = [src];
445 Token assign; _p->onAssign(assign, dest, src, 0);
446 Token stmt; _p->onExpStatement(stmt, assign);
447 return stmt;
450 auto _start_statements = [&]() {
451 Token stmts;
452 _p->onStatementListStart(stmts);
453 return 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()
463 Token dummy;
464 Token name; name.set(T_STRING, clsName);
465 Token cls; _p->onName(cls, name, Parser::StringName);
466 Token fname; fname.setText("__xhpAttributeDeclaration");
467 Token out;
468 _p->onCall(out, 0, fname, dummy, &cls);
469 return out;
472 auto _add_call_param_first = [&](Token &newParam) {
473 Token out;
474 _p->onCallParam(out, NULL, newParam, ParamMode::In, false);
475 return out;
478 auto _add_call_param = [&](Token &params, Token &newParam) {
479 Token params_in = params;
480 _p->onCallParam(params, &params_in, newParam, ParamMode::In, false);
483 Token body = _start_statements();
485 // $r = self::$__xhpAttributeDeclarationCache;
486 Token src = _cache();
487 Token dest = _r();
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(),
498 // ...
499 // lastInheritedClass::__xhpAttributeDeclaration(),
500 // attributes
501 // );
502 // $r = self::$__xhpAttributeDeclarationCache;
503 // }
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);
522 Token dest = _r();
523 Token src = _cache();
524 Token stmt = _assign_stmt(dest, src);
525 _add_statement(blockbody, stmt);
527 Token block; _p->onBlock(block, blockbody);
530 Token r = _r();
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);
540 // return $r;
541 Token r = _r();
542 Token ret; _p->onReturn(ret, &r);
543 _add_statement(body, ret);
545 Token stmt;
547 _p->finishStatement(stmt, body);
548 stmt = 1;
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) {
557 Token stmts1;
559 Token stmt;
560 xhp_attribute_property_stmt(_p, stmt);
561 _p->onClassStatement(stmts1, stmts, stmt);
564 Token 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();
572 if (attr) {
573 xhp_attribute_stmts(_p, out, stmts, *attr);
574 } else {
575 out = stmts;
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);
586 Token stmts0;
588 _p->onStatementListStart(stmts0);
590 Token stmts1;
592 // return categories;
593 Token arr; _p->onDArray(arr, categories);
594 Token ret; _p->onReturn(ret, &arr);
595 _p->addStatement(stmts1, stmts0, ret);
597 Token stmt;
599 _p->finishStatement(stmt, stmts1);
600 stmt = 1;
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);
612 Token name;
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);
617 } else {
618 HPHP_PARSER_ERROR("XHP: unknown children declaration", _p);
620 Token arr2; _p->onExprListElem(arr2, &arr1, name);
621 arr = arr2;
624 static void xhp_children_decl(Parser *_p, Token &out, Token &op1, int op,
625 Token *op2) {
626 Token num; scalar_num(_p, num, op);
627 Token arr; _p->onExprListElem(arr, nullptr, num);
629 if (op2) {
630 Token arr1; _p->onExprListElem(arr1, &arr, op1);
631 Token arr2; _p->onExprListElem(arr2, &arr1, *op2);
632 _p->onVArray(out, arr2);
633 } else {
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);
657 Token stmts0;
659 _p->onStatementListStart(stmts0);
661 Token stmts1;
663 // return children;
664 Token arr;
665 if (children.num() == 2) {
666 arr = children;
667 } else if (children.num() >= 0) {
668 scalar_num(_p, arr, children.num());
669 } else {
670 HPHP_PARSER_ERROR("XHP: XHP unknown children declaration", _p);
672 Token ret; _p->onReturn(ret, &arr);
673 _p->addStatement(stmts1, stmts0, ret);
675 Token stmt;
677 _p->finishStatement(stmt, stmts1);
678 stmt = 1;
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()) {
688 HPHP_PARSER_ERROR(
689 "Syntax only allowed in Hack files (<?hh) or with -v "
690 "Eval.EnableHipHopSyntax=true",
691 _p);
695 static void validate_hh_variadic_variant(Parser* _p,
696 Token& userAttrs, Token& typehint,
697 Token* mod) {
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 */
725 # ifndef YY_NULLPTR
726 # if defined __cplusplus && 201103L <= __cplusplus
727 # define YY_NULLPTR nullptr
728 # else
729 # define YY_NULLPTR 0
730 # endif
731 # endif
733 /* Enabling verbose error messages. */
734 #ifdef YYERROR_VERBOSE
735 # undef YYERROR_VERBOSE
736 # define YYERROR_VERBOSE 1
737 #else
738 # define YYERROR_VERBOSE 0
739 #endif
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
745 /* Debug traces. */
746 #ifndef YYDEBUG
747 # define YYDEBUG 0
748 #endif
749 #if YYDEBUG
750 extern int Compiler5debug;
751 #endif
753 /* Token type. */
754 #ifndef YYTOKENTYPE
755 # define YYTOKENTYPE
756 enum yytokentype
758 T_INCLUDE = 258,
759 T_INCLUDE_ONCE = 259,
760 T_EVAL = 260,
761 T_REQUIRE = 261,
762 T_REQUIRE_ONCE = 262,
763 T_LAMBDA_ARROW = 263,
764 T_LOGICAL_OR = 264,
765 T_LOGICAL_XOR = 265,
766 T_LOGICAL_AND = 266,
767 T_PRINT = 267,
768 T_PLUS_EQUAL = 268,
769 T_MINUS_EQUAL = 269,
770 T_MUL_EQUAL = 270,
771 T_DIV_EQUAL = 271,
772 T_CONCAT_EQUAL = 272,
773 T_MOD_EQUAL = 273,
774 T_AND_EQUAL = 274,
775 T_OR_EQUAL = 275,
776 T_XOR_EQUAL = 276,
777 T_SL_EQUAL = 277,
778 T_SR_EQUAL = 278,
779 T_POW_EQUAL = 279,
780 T_AWAIT = 280,
781 T_YIELD = 281,
782 T_YIELD_FROM = 282,
783 T_PIPE = 283,
784 T_COALESCE = 284,
785 T_BOOLEAN_OR = 285,
786 T_BOOLEAN_AND = 286,
787 T_IS_EQUAL = 287,
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,
793 T_SPACESHIP = 293,
794 T_SL = 294,
795 T_SR = 295,
796 T_INSTANCEOF = 296,
797 T_INC = 297,
798 T_DEC = 298,
799 T_INT_CAST = 299,
800 T_DOUBLE_CAST = 300,
801 T_STRING_CAST = 301,
802 T_ARRAY_CAST = 302,
803 T_OBJECT_CAST = 303,
804 T_BOOL_CAST = 304,
805 T_UNSET_CAST = 305,
806 T_POW = 306,
807 T_NEW = 307,
808 T_CLONE = 308,
809 T_EXIT = 309,
810 T_IF = 310,
811 T_ELSEIF = 311,
812 T_ELSE = 312,
813 T_ENDIF = 313,
814 T_LNUMBER = 314,
815 T_DNUMBER = 315,
816 T_ONUMBER = 316,
817 T_STRING = 317,
818 T_STRING_VARNAME = 318,
819 T_VARIABLE = 319,
820 T_PIPE_VAR = 320,
821 T_NUM_STRING = 321,
822 T_INLINE_HTML = 322,
823 T_INOUT = 323,
824 T_HASHBANG = 324,
825 T_CHARACTER = 325,
826 T_BAD_CHARACTER = 326,
827 T_ENCAPSED_AND_WHITESPACE = 327,
828 T_CONSTANT_ENCAPSED_STRING = 328,
829 T_ECHO = 329,
830 T_DO = 330,
831 T_WHILE = 331,
832 T_ENDWHILE = 332,
833 T_FOR = 333,
834 T_ENDFOR = 334,
835 T_FOREACH = 335,
836 T_ENDFOREACH = 336,
837 T_DECLARE = 337,
838 T_ENDDECLARE = 338,
839 T_AS = 339,
840 T_SUPER = 340,
841 T_SWITCH = 341,
842 T_ENDSWITCH = 342,
843 T_CASE = 343,
844 T_DEFAULT = 344,
845 T_BREAK = 345,
846 T_GOTO = 346,
847 T_CONTINUE = 347,
848 T_FUNCTION = 348,
849 T_CONST = 349,
850 T_RETURN = 350,
851 T_TRY = 351,
852 T_CATCH = 352,
853 T_THROW = 353,
854 T_USING = 354,
855 T_USE = 355,
856 T_GLOBAL = 356,
857 T_STATIC = 357,
858 T_ABSTRACT = 358,
859 T_FINAL = 359,
860 T_PRIVATE = 360,
861 T_PROTECTED = 361,
862 T_PUBLIC = 362,
863 T_VAR = 363,
864 T_UNSET = 364,
865 T_ISSET = 365,
866 T_EMPTY = 366,
867 T_HALT_COMPILER = 367,
868 T_CLASS = 368,
869 T_INTERFACE = 369,
870 T_EXTENDS = 370,
871 T_IMPLEMENTS = 371,
872 T_OBJECT_OPERATOR = 372,
873 T_NULLSAFE_OBJECT_OPERATOR = 373,
874 T_DOUBLE_ARROW = 374,
875 T_LIST = 375,
876 T_ARRAY = 376,
877 T_DICT = 377,
878 T_VEC = 378,
879 T_VARRAY = 379,
880 T_DARRAY = 380,
881 T_KEYSET = 381,
882 T_CALLABLE = 382,
883 T_CLASS_C = 383,
884 T_METHOD_C = 384,
885 T_FUNC_C = 385,
886 T_LINE = 386,
887 T_FILE = 387,
888 T_COMMENT = 388,
889 T_DOC_COMMENT = 389,
890 T_OPEN_TAG = 390,
891 T_OPEN_TAG_WITH_ECHO = 391,
892 T_CLOSE_TAG = 392,
893 T_WHITESPACE = 393,
894 T_START_HEREDOC = 394,
895 T_END_HEREDOC = 395,
896 T_DOLLAR_OPEN_CURLY_BRACES = 396,
897 T_CURLY_OPEN = 397,
898 T_DOUBLE_COLON = 398,
899 T_NAMESPACE = 399,
900 T_NS_C = 400,
901 T_DIR = 401,
902 T_NS_SEPARATOR = 402,
903 T_XHP_LABEL = 403,
904 T_XHP_TEXT = 404,
905 T_XHP_ATTRIBUTE = 405,
906 T_XHP_CATEGORY = 406,
907 T_XHP_CATEGORY_LABEL = 407,
908 T_XHP_CHILDREN = 408,
909 T_ENUM = 409,
910 T_XHP_REQUIRED = 410,
911 T_TRAIT = 411,
912 T_ELLIPSIS = 412,
913 T_INSTEADOF = 413,
914 T_TRAIT_C = 414,
915 T_HH_ERROR = 415,
916 T_FINALLY = 416,
917 T_XHP_TAG_LT = 417,
918 T_XHP_TAG_GT = 418,
919 T_TYPELIST_LT = 419,
920 T_TYPELIST_GT = 420,
921 T_UNRESOLVED_LT = 421,
922 T_COLLECTION = 422,
923 T_SHAPE = 423,
924 T_TUPLE = 424,
925 T_TYPE = 425,
926 T_UNRESOLVED_TYPE = 426,
927 T_NEWTYPE = 427,
928 T_UNRESOLVED_NEWTYPE = 428,
929 T_COMPILER_HALT_OFFSET = 429,
930 T_ASYNC = 430,
931 T_LAMBDA_OP = 431,
932 T_LAMBDA_CP = 432,
933 T_UNRESOLVED_OP = 433,
934 T_WHERE = 434
936 #endif
938 /* Value type. */
939 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
940 typedef int YYSTYPE;
941 # define YYSTYPE_IS_TRIVIAL 1
942 # define YYSTYPE_IS_DECLARED 1
943 #endif
945 /* Location type. */
946 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
947 typedef struct YYLTYPE YYLTYPE;
948 struct YYLTYPE
950 int line0;
951 int char0;
952 int line1;
953 int char1;
955 # define YYLTYPE_IS_DECLARED 1
956 # define YYLTYPE_IS_TRIVIAL 1
957 #endif
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 */
969 #ifdef short
970 # undef short
971 #endif
973 #ifdef YYTYPE_UINT8
974 typedef YYTYPE_UINT8 yytype_uint8;
975 #else
976 typedef unsigned char yytype_uint8;
977 #endif
979 #ifdef YYTYPE_INT8
980 typedef YYTYPE_INT8 yytype_int8;
981 #else
982 typedef signed char yytype_int8;
983 #endif
985 #ifdef YYTYPE_UINT16
986 typedef YYTYPE_UINT16 yytype_uint16;
987 #else
988 typedef unsigned short yytype_uint16;
989 #endif
991 #ifdef YYTYPE_INT16
992 typedef YYTYPE_INT16 yytype_int16;
993 #else
994 typedef short yytype_int16;
995 #endif
997 #ifndef YYSIZE_T
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
1005 # else
1006 # define YYSIZE_T unsigned
1007 # endif
1008 #endif
1010 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
1012 #ifndef YY_
1013 # if defined YYENABLE_NLS && YYENABLE_NLS
1014 # if ENABLE_NLS
1015 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
1016 # define YY_(Msgid) dgettext ("bison-runtime", Msgid)
1017 # endif
1018 # endif
1019 # ifndef YY_
1020 # define YY_(Msgid) Msgid
1021 # endif
1022 #endif
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)
1029 # else
1030 # define YY_ATTRIBUTE(Spec) /* empty */
1031 # endif
1032 #endif
1034 #ifndef YY_ATTRIBUTE_PURE
1035 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__))
1036 #endif
1038 #ifndef YY_ATTRIBUTE_UNUSED
1039 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
1040 #endif
1042 #if !defined _Noreturn \
1043 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
1044 # if defined _MSC_VER && 1200 <= _MSC_VER
1045 # define _Noreturn __declspec (noreturn)
1046 # else
1047 # define _Noreturn YY_ATTRIBUTE ((__noreturn__))
1048 # endif
1049 #endif
1051 /* Suppress unused-variable warnings by "using" E. */
1052 #if ! defined lint || defined __GNUC__
1053 # define YYUSE(E) ((void) (E))
1054 #else
1055 # define YYUSE(E) /* empty */
1056 #endif
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")
1066 #else
1067 # define YY_INITIAL_VALUE(Value) Value
1068 #endif
1069 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1070 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1071 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
1072 #endif
1073 #ifndef YY_INITIAL_VALUE
1074 # define YY_INITIAL_VALUE(Value) /* Nothing. */
1075 #endif
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
1084 # ifdef __GNUC__
1085 # define YYSTACK_ALLOC __builtin_alloca
1086 # elif defined __BUILTIN_VA_ARG_INCR
1087 # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
1088 # elif defined _AIX
1089 # define YYSTACK_ALLOC __alloca
1090 # elif defined _MSC_VER
1091 # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
1092 # define alloca _alloca
1093 # else
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
1100 # endif
1101 # endif
1102 # endif
1103 # endif
1104 # endif
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 */
1115 # endif
1116 # else
1117 # define YYSTACK_ALLOC YYMALLOC
1118 # define YYSTACK_FREE YYFREE
1119 # ifndef YYSTACK_ALLOC_MAXIMUM
1120 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
1121 # endif
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
1128 # endif
1129 # endif
1130 # ifndef YYMALLOC
1131 # define YYMALLOC malloc
1132 # if ! defined malloc && ! defined EXIT_SUCCESS
1133 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
1134 # endif
1135 # endif
1136 # ifndef YYFREE
1137 # define YYFREE free
1138 # if ! defined free && ! defined EXIT_SUCCESS
1139 void free (void *); /* INFRINGES ON USER NAME SPACE */
1140 # endif
1141 # endif
1142 # endif
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. */
1152 struct yyalloc
1154 yytype_int16 yyss_alloc;
1155 YYSTYPE yyvs_alloc;
1156 YYLTYPE yyls_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
1163 N elements. */
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
1174 stack. */
1175 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
1176 do \
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); \
1184 while (0)
1186 #endif
1188 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
1189 /* Copy COUNT objects from SRC to DST. The source and destination do
1190 not overlap. */
1191 # ifndef YYCOPY
1192 # if defined __GNUC__ && 1 < __GNUC__
1193 # define YYCOPY(Dst, Src, Count) \
1194 __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
1195 # else
1196 # define YYCOPY(Dst, Src, Count) \
1197 do \
1199 YYSIZE_T yyi; \
1200 for (yyi = 0; yyi < (Count); yyi++) \
1201 (Dst)[yyi] = (Src)[yyi]; \
1203 while (0)
1204 # endif
1205 # endif
1206 #endif /* !YYCOPY_NEEDED */
1208 /* YYFINAL -- State number of the termination state. */
1209 #define YYFINAL 3
1210 /* YYLAST -- Last index in YYTABLE. */
1211 #define YYLAST 20144
1213 /* YYNTOKENS -- Number of terminals. */
1214 #define YYNTOKENS 209
1215 /* YYNNTS -- Number of nonterminals. */
1216 #define YYNNTS 314
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
1280 #if YYDEBUG
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,
1397 3867, 3868
1399 #endif
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
1557 #endif
1559 # ifdef YYPRINT
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
1586 # endif
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
1599 STATE-NUM. */
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,
4124 0, 0, 0, 0, 502
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,
6143 -1, -1, -1, -1, 69
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,
6478 522, 522
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,
6597 1, 0
6601 #define yyerrok (yyerrstatus = 0)
6602 #define yyclearin (yychar = YYEMPTY)
6603 #define YYEMPTY (-2)
6604 #define YYEOF 0
6606 #define YYACCEPT goto yyacceptlab
6607 #define YYABORT goto yyabortlab
6608 #define YYERROR goto yyerrorlab
6611 #define YYRECOVERING() (!!yyerrstatus)
6613 #define YYBACKUP(Token, Value) \
6614 do \
6615 if (yychar == YYEMPTY) \
6617 yychar = (Token); \
6618 yylval = (Value); \
6619 YYPOPSTACK (yylen); \
6620 yystate = *yyssp; \
6621 goto yybackup; \
6623 else \
6625 yyerror (&yylloc, _p, YY_("syntax error: cannot back up")); \
6626 YYERROR; \
6628 while (0)
6630 /* Error token number */
6631 #define YYTERROR 1
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) \
6641 do \
6642 if (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; \
6649 else \
6651 (Current).line0 = (Current).line1 = \
6652 YYRHSLOC (Rhs, 0).line1; \
6653 (Current).char0 = (Current).char1 = \
6654 YYRHSLOC (Rhs, 0).char1; \
6656 while (0)
6657 #endif
6659 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
6662 /* Enable debugging if requested. */
6663 #if YYDEBUG
6665 # ifndef YYFPRINTF
6666 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
6667 # define YYFPRINTF fprintf
6668 # endif
6670 # define YYDPRINTF(Args) \
6671 do { \
6672 if (yydebug) \
6673 YYFPRINTF Args; \
6674 } while (0)
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. */
6686 YY_ATTRIBUTE_UNUSED
6687 static unsigned
6688 yy_location_print_ (FILE *yyo, YYLTYPE const * const yylocp)
6690 unsigned res = 0;
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);
6703 if (0 <= end_col)
6704 res += YYFPRINTF (yyo, ".%d", end_col);
6706 else if (0 <= end_col && yylocp->char0 < end_col)
6707 res += YYFPRINTF (yyo, "-%d", end_col);
6709 return res;
6712 # define YY_LOCATION_PRINT(File, Loc) \
6713 yy_location_print_ (File, &(Loc))
6715 # else
6716 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
6717 # endif
6718 #endif
6721 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
6722 do { \
6723 if (yydebug) \
6725 YYFPRINTF (stderr, "%s ", Title); \
6726 yy_symbol_print (stderr, \
6727 Type, Value, Location, _p); \
6728 YYFPRINTF (stderr, "\n"); \
6730 } while (0)
6733 /*----------------------------------------.
6734 | Print this symbol's value on YYOUTPUT. |
6735 `----------------------------------------*/
6737 static void
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;
6741 YYUSE (yyo);
6742 YYUSE (yylocationp);
6743 YYUSE (_p);
6744 if (!yyvaluep)
6745 return;
6746 # ifdef YYPRINT
6747 if (yytype < YYNTOKENS)
6748 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
6749 # endif
6750 YYUSE (yytype);
6754 /*--------------------------------.
6755 | Print this symbol on YYOUTPUT. |
6756 `--------------------------------*/
6758 static void
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 |
6772 | TOP (included). |
6773 `------------------------------------------------------------------*/
6775 static void
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) \
6788 do { \
6789 if (yydebug) \
6790 yy_stack_print ((Bottom), (Top)); \
6791 } while (0)
6794 /*------------------------------------------------.
6795 | Report that the YYRULE is going to be reduced. |
6796 `------------------------------------------------*/
6798 static void
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];
6803 int yyi;
6804 YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
6805 yyrule - 1, yylno);
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) \
6819 do { \
6820 if (yydebug) \
6821 yy_reduce_print (yyssp, yyvsp, yylsp, Rule, _p); \
6822 } while (0)
6824 /* Nonzero means print parse trace. It is left uninitialized so that
6825 multiple parsers can coexist. */
6826 int yydebug;
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. */
6836 #ifndef YYINITDEPTH
6837 # define YYINITDEPTH 200
6838 #endif
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. */
6847 #ifndef YYMAXDEPTH
6848 # define YYMAXDEPTH 10000
6849 #endif
6852 #if YYERROR_VERBOSE
6854 # ifndef yystrlen
6855 # if defined __GLIBC__ && defined _STRING_H
6856 # define yystrlen strlen
6857 # else
6858 /* Return the length of YYSTR. */
6859 static YYSIZE_T
6860 yystrlen (const char *yystr)
6862 YYSIZE_T yylen;
6863 for (yylen = 0; yystr[yylen]; yylen++)
6864 continue;
6865 return yylen;
6867 # endif
6868 # endif
6870 # ifndef yystpcpy
6871 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
6872 # define yystpcpy stpcpy
6873 # else
6874 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
6875 YYDEST. */
6876 static char *
6877 yystpcpy (char *yydest, const char *yysrc)
6879 char *yyd = yydest;
6880 const char *yys = yysrc;
6882 while ((*yyd++ = *yys++) != '\0')
6883 continue;
6885 return yyd - 1;
6887 # endif
6888 # endif
6890 # ifndef yytnamerr
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
6897 would have been. */
6898 static YYSIZE_T
6899 yytnamerr (char *yyres, const char *yystr)
6901 if (*yystr == '"')
6903 YYSIZE_T yyn = 0;
6904 char const *yyp = yystr;
6906 for (;;)
6907 switch (*++yyp)
6909 case '\'':
6910 case ',':
6911 goto do_not_strip_quotes;
6913 case '\\':
6914 if (*++yyp != '\\')
6915 goto do_not_strip_quotes;
6916 /* Fall through. */
6917 default:
6918 if (yyres)
6919 yyres[yyn] = *yyp;
6920 yyn++;
6921 break;
6923 case '"':
6924 if (yyres)
6925 yyres[yyn] = '\0';
6926 return yyn;
6928 do_not_strip_quotes: ;
6931 if (! yyres)
6932 return yystrlen (yystr);
6934 return yystpcpy (yyres, yystr) - yyres;
6936 # endif
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
6940 YYSSP.
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. */
6946 static int
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
6958 "expected"). */
6959 int yycount = 0;
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;
6997 int yyx;
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)
7005 yycount = 1;
7006 yysize = yysize0;
7007 break;
7009 yyarg[yycount++] = yytname[yyx];
7011 YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
7012 if (! (yysize <= yysize1
7013 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
7014 return 2;
7015 yysize = yysize1;
7021 switch (yycount)
7023 # define YYCASE_(N, S) \
7024 case N: \
7025 yyformat = S; \
7026 break
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"));
7034 # undef YYCASE_
7038 YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
7039 if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
7040 return 2;
7041 yysize = yysize1;
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;
7050 return 1;
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. */
7057 char *yyp = *yymsg;
7058 int yyi = 0;
7059 while ((*yyp = *yyformat) != '\0')
7060 if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
7062 yyp += yytnamerr (yyp, yyarg[yyi++]);
7063 yyformat += 2;
7065 else
7067 yyp++;
7068 yyformat++;
7071 return 0;
7073 #endif /* YYERROR_VERBOSE */
7075 /*-----------------------------------------------.
7076 | Release the memory associated to this symbol. |
7077 `-----------------------------------------------*/
7079 static void
7080 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp, HPHP::HPHP_PARSER_NS::Parser *_p)
7082 YYUSE (yyvaluep);
7083 YYUSE (yylocationp);
7084 YYUSE (_p);
7085 if (!yymsg)
7086 yymsg = "Deleting";
7087 YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
7089 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
7090 YYUSE (yytype);
7091 YY_IGNORE_MAYBE_UNINITIALIZED_END
7097 /*----------.
7098 | yyparse. |
7099 `----------*/
7102 yyparse (HPHP::HPHP_PARSER_NS::Parser *_p)
7104 /* The lookahead symbol. */
7105 int yychar;
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
7117 = { 1, 1, 1, 1 }
7118 # endif
7120 YYLTYPE yylloc = yyloc_default;
7122 /* Number of syntax errors so far. */
7123 int yynerrs;
7125 int yystate;
7126 /* Number of tokens to shift before error messages enabled. */
7127 int yyerrstatus;
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];
7139 yytype_int16 *yyss;
7140 yytype_int16 *yyssp;
7142 /* The semantic value stack. */
7143 YYSTYPE yyvsa[YYINITDEPTH];
7144 YYSTYPE *yyvs;
7145 YYSTYPE *yyvsp;
7147 /* The location stack. */
7148 YYLTYPE yylsa[YYINITDEPTH];
7149 YYLTYPE *yyls;
7150 YYLTYPE *yylsp;
7152 /* The locations where the error started and ended. */
7153 YYLTYPE yyerror_range[3];
7155 YYSIZE_T yystacksize;
7157 int yyn;
7158 int yyresult;
7159 /* Lookahead token as an internal (translated) token number. */
7160 int yytoken = 0;
7161 /* The variables used to return semantic value and location from the
7162 action routines. */
7163 YYSTYPE yyval;
7164 YYLTYPE yyloc;
7166 #if YYERROR_VERBOSE
7167 /* Buffer for error messages, and its allocated size. */
7168 char yymsgbuf[128];
7169 char *yymsg = yymsgbuf;
7170 YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
7171 #endif
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. */
7177 int yylen = 0;
7179 yyssp = yyss = yyssa;
7180 yyvsp = yyvs = yyvsa;
7181 yylsp = yyls = yylsa;
7182 yystacksize = YYINITDEPTH;
7184 YYDPRINTF ((stderr, "Starting parse\n"));
7186 yystate = 0;
7187 yyerrstatus = 0;
7188 yynerrs = 0;
7189 yychar = YYEMPTY; /* Cause a token to be read. */
7190 yylsp[0] = yylloc;
7191 goto yysetstate;
7193 /*------------------------------------------------------------.
7194 | yynewstate -- Push a new state, which is found in yystate. |
7195 `------------------------------------------------------------*/
7196 yynewstate:
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. */
7199 yyssp++;
7201 yysetstate:
7202 *yyssp = yystate;
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;
7209 #ifdef yyoverflow
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
7213 memory. */
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),
7226 &yystacksize);
7228 yyls = yyls1;
7229 yyss = yyss1;
7230 yyvs = yyvs1;
7232 #else /* no yyoverflow */
7233 # ifndef YYSTACK_RELOCATE
7234 goto yyexhaustedlab;
7235 # else
7236 /* Extend the stack our own way. */
7237 if (YYMAXDEPTH <= yystacksize)
7238 goto yyexhaustedlab;
7239 yystacksize *= 2;
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));
7248 if (! yyptr)
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
7254 if (yyss1 != yyssa)
7255 YYSTACK_FREE (yyss1);
7257 # endif
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)
7268 YYABORT;
7271 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
7273 if (yystate == YYFINAL)
7274 YYACCEPT;
7276 goto yybackup;
7278 /*-----------.
7279 | yybackup. |
7280 `-----------*/
7281 yybackup:
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))
7289 goto yydefault;
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"));
7305 else
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. */
7313 yyn += yytoken;
7314 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
7315 goto yydefault;
7316 yyn = yytable[yyn];
7317 if (yyn <= 0)
7319 if (yytable_value_is_error (yyn))
7320 goto yyerrlab;
7321 yyn = -yyn;
7322 goto yyreduce;
7325 /* Count tokens shifted since error; after three, turn off error
7326 status. */
7327 if (yyerrstatus)
7328 yyerrstatus--;
7330 /* Shift the lookahead token. */
7331 YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
7333 /* Discard the shifted token. */
7334 yychar = YYEMPTY;
7336 yystate = yyn;
7337 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
7338 *++yyvsp = yylval;
7339 YY_IGNORE_MAYBE_UNINITIALIZED_END
7340 *++yylsp = yylloc;
7341 goto yynewstate;
7344 /*-----------------------------------------------------------.
7345 | yydefault -- do the default action for the current state. |
7346 `-----------------------------------------------------------*/
7347 yydefault:
7348 yyn = yydefact[yystate];
7349 if (yyn == 0)
7350 goto yyerrlab;
7351 goto yyreduce;
7354 /*-----------------------------.
7355 | yyreduce -- Do a reduction. |
7356 `-----------------------------*/
7357 yyreduce:
7358 /* yyn is the number of a rule to reduce with. */
7359 yylen = yyr2[yyn];
7361 /* If YYLEN is nonzero, implement the default value of the action:
7362 '$$ = $1'.
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);
7375 switch (yyn)
7377 case 2:
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 */
7382 break;
7384 case 3:
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 */
7390 break;
7392 case 4:
7393 #line 831 "hphp.y" /* yacc.c:1651 */
7394 { _p->addTopStatement((yyvsp[0]));}
7395 #line 7394 "hphp.5.tab.cpp" /* yacc.c:1651 */
7396 break;
7398 case 5:
7399 #line 832 "hphp.y" /* yacc.c:1651 */
7401 #line 7400 "hphp.5.tab.cpp" /* yacc.c:1651 */
7402 break;
7404 case 6:
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 */
7408 break;
7410 case 7:
7411 #line 836 "hphp.y" /* yacc.c:1651 */
7412 { _p->nns(); (yyval) = (yyvsp[0]);}
7413 #line 7412 "hphp.5.tab.cpp" /* yacc.c:1651 */
7414 break;
7416 case 8:
7417 #line 837 "hphp.y" /* yacc.c:1651 */
7418 { _p->nns(); (yyval) = (yyvsp[0]);}
7419 #line 7418 "hphp.5.tab.cpp" /* yacc.c:1651 */
7420 break;
7422 case 9:
7423 #line 838 "hphp.y" /* yacc.c:1651 */
7424 { _p->nns(); (yyval) = (yyvsp[0]);}
7425 #line 7424 "hphp.5.tab.cpp" /* yacc.c:1651 */
7426 break;
7428 case 10:
7429 #line 839 "hphp.y" /* yacc.c:1651 */
7430 { _p->nns(); (yyval) = (yyvsp[0]);}
7431 #line 7430 "hphp.5.tab.cpp" /* yacc.c:1651 */
7432 break;
7434 case 11:
7435 #line 840 "hphp.y" /* yacc.c:1651 */
7436 { (yyval) = (yyvsp[0]); }
7437 #line 7436 "hphp.5.tab.cpp" /* yacc.c:1651 */
7438 break;
7440 case 12:
7441 #line 841 "hphp.y" /* yacc.c:1651 */
7442 { _p->onHaltCompiler();
7443 _p->finiParseTree();
7444 YYACCEPT;}
7445 #line 7444 "hphp.5.tab.cpp" /* yacc.c:1651 */
7446 break;
7448 case 13:
7449 #line 844 "hphp.y" /* yacc.c:1651 */
7450 { _p->onNamespaceStart((yyvsp[-1]).text(), true);
7451 (yyval).reset();}
7452 #line 7451 "hphp.5.tab.cpp" /* yacc.c:1651 */
7453 break;
7455 case 14:
7456 #line 846 "hphp.y" /* yacc.c:1651 */
7457 { _p->onNamespaceStart((yyvsp[-1]).text());}
7458 #line 7457 "hphp.5.tab.cpp" /* yacc.c:1651 */
7459 break;
7461 case 15:
7462 #line 847 "hphp.y" /* yacc.c:1651 */
7463 { _p->onNamespaceEnd(); (yyval) = (yyvsp[-1]);}
7464 #line 7463 "hphp.5.tab.cpp" /* yacc.c:1651 */
7465 break;
7467 case 16:
7468 #line 848 "hphp.y" /* yacc.c:1651 */
7469 { _p->onNamespaceStart("");}
7470 #line 7469 "hphp.5.tab.cpp" /* yacc.c:1651 */
7471 break;
7473 case 17:
7474 #line 849 "hphp.y" /* yacc.c:1651 */
7475 { _p->onNamespaceEnd(); (yyval) = (yyvsp[-1]);}
7476 #line 7475 "hphp.5.tab.cpp" /* yacc.c:1651 */
7477 break;
7479 case 18:
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 */
7485 break;
7487 case 19:
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 */
7494 break;
7496 case 20:
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 */
7503 break;
7505 case 21:
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 */
7510 break;
7512 case 22:
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 */
7517 break;
7519 case 23:
7520 #line 870 "hphp.y" /* yacc.c:1651 */
7521 { _p->onGroupUse((yyvsp[-4]).text(), (yyvsp[-2]),
7522 nullptr);
7523 _p->nns(T_USE); (yyval).reset();}
7524 #line 7523 "hphp.5.tab.cpp" /* yacc.c:1651 */
7525 break;
7527 case 24:
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 */
7533 break;
7535 case 25:
7536 #line 878 "hphp.y" /* yacc.c:1651 */
7537 { _p->onGroupUse((yyvsp[-4]).text(), (yyvsp[-2]),
7538 &Parser::useConst);
7539 _p->nns(T_USE); (yyval).reset();}
7540 #line 7539 "hphp.5.tab.cpp" /* yacc.c:1651 */
7541 break;
7543 case 26:
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 */
7549 break;
7551 case 27:
7552 #line 886 "hphp.y" /* yacc.c:1651 */
7553 { _p->onGroupUse((yyvsp[-4]).text(), (yyvsp[-2]),
7554 &Parser::useClass);
7555 _p->nns(T_USE); (yyval).reset();}
7556 #line 7555 "hphp.5.tab.cpp" /* yacc.c:1651 */
7557 break;
7559 case 28:
7560 #line 889 "hphp.y" /* yacc.c:1651 */
7561 { _p->nns();
7562 _p->finishStatement((yyval), (yyvsp[-1])); (yyval) = 1;}
7563 #line 7562 "hphp.5.tab.cpp" /* yacc.c:1651 */
7564 break;
7566 case 29:
7567 #line 894 "hphp.y" /* yacc.c:1651 */
7568 { (yyval) = (yyvsp[0]);}
7569 #line 7568 "hphp.5.tab.cpp" /* yacc.c:1651 */
7570 break;
7572 case 30:
7573 #line 895 "hphp.y" /* yacc.c:1651 */
7574 { (yyval) = (yyvsp[0]);}
7575 #line 7574 "hphp.5.tab.cpp" /* yacc.c:1651 */
7576 break;
7578 case 31:
7579 #line 896 "hphp.y" /* yacc.c:1651 */
7580 { (yyval) = (yyvsp[0]);}
7581 #line 7580 "hphp.5.tab.cpp" /* yacc.c:1651 */
7582 break;
7584 case 32:
7585 #line 897 "hphp.y" /* yacc.c:1651 */
7586 { (yyval) = (yyvsp[0]);}
7587 #line 7586 "hphp.5.tab.cpp" /* yacc.c:1651 */
7588 break;
7590 case 33:
7591 #line 898 "hphp.y" /* yacc.c:1651 */
7592 { (yyval) = (yyvsp[0]);}
7593 #line 7592 "hphp.5.tab.cpp" /* yacc.c:1651 */
7594 break;
7596 case 34:
7597 #line 899 "hphp.y" /* yacc.c:1651 */
7598 { (yyval) = (yyvsp[0]);}
7599 #line 7598 "hphp.5.tab.cpp" /* yacc.c:1651 */
7600 break;
7602 case 35:
7603 #line 900 "hphp.y" /* yacc.c:1651 */
7604 { (yyval) = (yyvsp[0]);}
7605 #line 7604 "hphp.5.tab.cpp" /* yacc.c:1651 */
7606 break;
7608 case 36:
7609 #line 901 "hphp.y" /* yacc.c:1651 */
7610 { (yyval) = (yyvsp[0]);}
7611 #line 7610 "hphp.5.tab.cpp" /* yacc.c:1651 */
7612 break;
7614 case 37:
7615 #line 902 "hphp.y" /* yacc.c:1651 */
7616 { (yyval) = (yyvsp[0]);}
7617 #line 7616 "hphp.5.tab.cpp" /* yacc.c:1651 */
7618 break;
7620 case 38:
7621 #line 903 "hphp.y" /* yacc.c:1651 */
7622 { (yyval) = (yyvsp[0]);}
7623 #line 7622 "hphp.5.tab.cpp" /* yacc.c:1651 */
7624 break;
7626 case 39:
7627 #line 904 "hphp.y" /* yacc.c:1651 */
7628 { (yyval) = (yyvsp[0]);}
7629 #line 7628 "hphp.5.tab.cpp" /* yacc.c:1651 */
7630 break;
7632 case 40:
7633 #line 905 "hphp.y" /* yacc.c:1651 */
7634 { (yyval) = (yyvsp[0]);}
7635 #line 7634 "hphp.5.tab.cpp" /* yacc.c:1651 */
7636 break;
7638 case 41:
7639 #line 906 "hphp.y" /* yacc.c:1651 */
7640 { (yyval) = (yyvsp[0]);}
7641 #line 7640 "hphp.5.tab.cpp" /* yacc.c:1651 */
7642 break;
7644 case 111:
7645 #line 988 "hphp.y" /* yacc.c:1651 */
7646 { (yyval) = (yyvsp[-1]);}
7647 #line 7646 "hphp.5.tab.cpp" /* yacc.c:1651 */
7648 break;
7650 case 112:
7651 #line 990 "hphp.y" /* yacc.c:1651 */
7652 { (yyval) = (yyvsp[-1]);}
7653 #line 7652 "hphp.5.tab.cpp" /* yacc.c:1651 */
7654 break;
7656 case 113:
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 */
7660 break;
7662 case 114:
7663 #line 996 "hphp.y" /* yacc.c:1651 */
7664 { (yyval).reset();
7665 _p->addStatement((yyval),(yyval),(yyvsp[0]));}
7666 #line 7665 "hphp.5.tab.cpp" /* yacc.c:1651 */
7667 break;
7669 case 115:
7670 #line 1002 "hphp.y" /* yacc.c:1651 */
7671 { (yyval) = (yyvsp[-1]);}
7672 #line 7671 "hphp.5.tab.cpp" /* yacc.c:1651 */
7673 break;
7675 case 116:
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 */
7679 break;
7681 case 117:
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 */
7685 break;
7687 case 118:
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 */
7691 break;
7693 case 119:
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 */
7697 break;
7699 case 120:
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 */
7703 break;
7705 case 121:
7706 #line 1017 "hphp.y" /* yacc.c:1651 */
7707 { (yyval).reset();
7708 _p->addStatement((yyval),(yyval),(yyvsp[0]));}
7709 #line 7708 "hphp.5.tab.cpp" /* yacc.c:1651 */
7710 break;
7712 case 122:
7713 #line 1023 "hphp.y" /* yacc.c:1651 */
7714 { (yyval) = (yyvsp[-1]);}
7715 #line 7714 "hphp.5.tab.cpp" /* yacc.c:1651 */
7716 break;
7718 case 123:
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 */
7723 break;
7725 case 124:
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 */
7730 break;
7732 case 125:
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 */
7737 break;
7739 case 126:
7740 #line 1036 "hphp.y" /* yacc.c:1651 */
7741 { (yyval) = (yyvsp[0]);}
7742 #line 7741 "hphp.5.tab.cpp" /* yacc.c:1651 */
7743 break;
7745 case 127:
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 */
7749 break;
7751 case 128:
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 */
7755 break;
7757 case 129:
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 */
7761 break;
7763 case 130:
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 */
7767 break;
7769 case 131:
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 */
7776 break;
7778 case 132:
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 */
7785 break;
7787 case 133:
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 */
7792 break;
7794 case 134:
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 */
7799 break;
7801 case 135:
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 */
7805 break;
7807 case 136:
7808 #line 1074 "hphp.y" /* yacc.c:1651 */
7809 { _p->onStatementListStart((yyval)); }
7810 #line 7809 "hphp.5.tab.cpp" /* yacc.c:1651 */
7811 break;
7813 case 138:
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 */
7819 break;
7821 case 139:
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 */
7825 break;
7827 case 140:
7828 #line 1087 "hphp.y" /* yacc.c:1651 */
7829 { _p->onStatementListStart((yyval));}
7830 #line 7829 "hphp.5.tab.cpp" /* yacc.c:1651 */
7831 break;
7833 case 141:
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 */
7837 break;
7839 case 142:
7840 #line 1093 "hphp.y" /* yacc.c:1651 */
7841 { (yyval).reset();
7842 _p->addStatement((yyval), (yyval), (yyvsp[0])); }
7843 #line 7842 "hphp.5.tab.cpp" /* yacc.c:1651 */
7844 break;
7846 case 143:
7847 #line 1098 "hphp.y" /* yacc.c:1651 */
7848 { (yyval) = (yyvsp[0]);}
7849 #line 7848 "hphp.5.tab.cpp" /* yacc.c:1651 */
7850 break;
7852 case 144:
7853 #line 1099 "hphp.y" /* yacc.c:1651 */
7854 { (yyval) = (yyvsp[0]);}
7855 #line 7854 "hphp.5.tab.cpp" /* yacc.c:1651 */
7856 break;
7858 case 145:
7859 #line 1100 "hphp.y" /* yacc.c:1651 */
7860 { (yyval) = (yyvsp[0]);}
7861 #line 7860 "hphp.5.tab.cpp" /* yacc.c:1651 */
7862 break;
7864 case 146:
7865 #line 1101 "hphp.y" /* yacc.c:1651 */
7866 { (yyval) = (yyvsp[0]);}
7867 #line 7866 "hphp.5.tab.cpp" /* yacc.c:1651 */
7868 break;
7870 case 147:
7871 #line 1104 "hphp.y" /* yacc.c:1651 */
7872 { _p->onBlock((yyval), (yyvsp[-1]));}
7873 #line 7872 "hphp.5.tab.cpp" /* yacc.c:1651 */
7874 break;
7876 case 148:
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 */
7880 break;
7882 case 149:
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 */
7886 break;
7888 case 150:
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 */
7893 break;
7895 case 151:
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 */
7901 break;
7903 case 152:
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 */
7908 break;
7910 case 153:
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 */
7916 break;
7918 case 154:
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 */
7923 break;
7925 case 155:
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 */
7931 break;
7933 case 156:
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 */
7938 break;
7940 case 157:
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 */
7946 break;
7948 case 158:
7949 #line 1137 "hphp.y" /* yacc.c:1651 */
7950 { _p->onBreakContinue((yyval), true, NULL);}
7951 #line 7950 "hphp.5.tab.cpp" /* yacc.c:1651 */
7952 break;
7954 case 159:
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 */
7958 break;
7960 case 160:
7961 #line 1139 "hphp.y" /* yacc.c:1651 */
7962 { _p->onBreakContinue((yyval), false, NULL);}
7963 #line 7962 "hphp.5.tab.cpp" /* yacc.c:1651 */
7964 break;
7966 case 161:
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 */
7970 break;
7972 case 162:
7973 #line 1141 "hphp.y" /* yacc.c:1651 */
7974 { _p->onReturn((yyval), NULL);}
7975 #line 7974 "hphp.5.tab.cpp" /* yacc.c:1651 */
7976 break;
7978 case 163:
7979 #line 1142 "hphp.y" /* yacc.c:1651 */
7980 { _p->onReturn((yyval), &(yyvsp[-1]));}
7981 #line 7980 "hphp.5.tab.cpp" /* yacc.c:1651 */
7982 break;
7984 case 164:
7985 #line 1143 "hphp.y" /* yacc.c:1651 */
7986 { _p->onYieldBreak((yyval));}
7987 #line 7986 "hphp.5.tab.cpp" /* yacc.c:1651 */
7988 break;
7990 case 165:
7991 #line 1144 "hphp.y" /* yacc.c:1651 */
7992 { _p->onGlobal((yyval), (yyvsp[-1]));}
7993 #line 7992 "hphp.5.tab.cpp" /* yacc.c:1651 */
7994 break;
7996 case 166:
7997 #line 1145 "hphp.y" /* yacc.c:1651 */
7998 { _p->onStatic((yyval), (yyvsp[-1]));}
7999 #line 7998 "hphp.5.tab.cpp" /* yacc.c:1651 */
8000 break;
8002 case 167:
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 */
8006 break;
8008 case 168:
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 */
8012 break;
8014 case 169:
8015 #line 1148 "hphp.y" /* yacc.c:1651 */
8016 { _p->onUnset((yyval), (yyvsp[-2]));}
8017 #line 8016 "hphp.5.tab.cpp" /* yacc.c:1651 */
8018 break;
8020 case 170:
8021 #line 1149 "hphp.y" /* yacc.c:1651 */
8022 { (yyval).reset(); (yyval) = ';';}
8023 #line 8022 "hphp.5.tab.cpp" /* yacc.c:1651 */
8024 break;
8026 case 171:
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 */
8030 break;
8032 case 172:
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 */
8037 break;
8039 case 173:
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 */
8044 break;
8046 case 174:
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 */
8052 break;
8054 case 175:
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 */
8059 break;
8061 case 176:
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 */
8067 break;
8069 case 177:
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 */
8075 break;
8077 case 178:
8078 #line 1177 "hphp.y" /* yacc.c:1651 */
8079 { _p->onCompleteLabelScope(false);}
8080 #line 8079 "hphp.5.tab.cpp" /* yacc.c:1651 */
8081 break;
8083 case 179:
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 */
8087 break;
8089 case 180:
8090 #line 1181 "hphp.y" /* yacc.c:1651 */
8091 { _p->onCompleteLabelScope(false); }
8092 #line 8091 "hphp.5.tab.cpp" /* yacc.c:1651 */
8093 break;
8095 case 181:
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 */
8099 break;
8101 case 182:
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 */
8107 break;
8109 case 183:
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 */
8115 break;
8117 case 184:
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 */
8123 break;
8125 case 185:
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 */
8131 break;
8133 case 186:
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 */
8139 break;
8141 case 187:
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 */
8147 break;
8149 case 188:
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 */
8155 break;
8157 case 189:
8158 #line 1212 "hphp.y" /* yacc.c:1651 */
8159 { _p->onThrow((yyval), (yyvsp[-1]));}
8160 #line 8159 "hphp.5.tab.cpp" /* yacc.c:1651 */
8161 break;
8163 case 190:
8164 #line 1213 "hphp.y" /* yacc.c:1651 */
8165 { _p->onGoto((yyval), (yyvsp[-1]), true);
8166 _p->addGoto((yyvsp[-1]).text(),
8167 _p->getRange(),
8168 &(yyval));}
8169 #line 8168 "hphp.5.tab.cpp" /* yacc.c:1651 */
8170 break;
8172 case 191:
8173 #line 1217 "hphp.y" /* yacc.c:1651 */
8174 { _p->onExpStatement((yyval), (yyvsp[-1]));}
8175 #line 8174 "hphp.5.tab.cpp" /* yacc.c:1651 */
8176 break;
8178 case 192:
8179 #line 1218 "hphp.y" /* yacc.c:1651 */
8180 { _p->onExpStatement((yyval), (yyvsp[-1]));}
8181 #line 8180 "hphp.5.tab.cpp" /* yacc.c:1651 */
8182 break;
8184 case 193:
8185 #line 1219 "hphp.y" /* yacc.c:1651 */
8186 { _p->onExpStatement((yyval), (yyvsp[-1]));}
8187 #line 8186 "hphp.5.tab.cpp" /* yacc.c:1651 */
8188 break;
8190 case 194:
8191 #line 1220 "hphp.y" /* yacc.c:1651 */
8192 { _p->onExpStatement((yyval), (yyvsp[-1]));}
8193 #line 8192 "hphp.5.tab.cpp" /* yacc.c:1651 */
8194 break;
8196 case 195:
8197 #line 1221 "hphp.y" /* yacc.c:1651 */
8198 { _p->onExpStatement((yyval), (yyvsp[-1]));}
8199 #line 8198 "hphp.5.tab.cpp" /* yacc.c:1651 */
8200 break;
8202 case 196:
8203 #line 1222 "hphp.y" /* yacc.c:1651 */
8204 { _p->onExpStatement((yyval), (yyvsp[-1]));}
8205 #line 8204 "hphp.5.tab.cpp" /* yacc.c:1651 */
8206 break;
8208 case 197:
8209 #line 1223 "hphp.y" /* yacc.c:1651 */
8210 { _p->onReturn((yyval), &(yyvsp[-1]));}
8211 #line 8210 "hphp.5.tab.cpp" /* yacc.c:1651 */
8212 break;
8214 case 198:
8215 #line 1224 "hphp.y" /* yacc.c:1651 */
8216 { _p->onExpStatement((yyval), (yyvsp[-1]));}
8217 #line 8216 "hphp.5.tab.cpp" /* yacc.c:1651 */
8218 break;
8220 case 199:
8221 #line 1225 "hphp.y" /* yacc.c:1651 */
8222 { _p->onExpStatement((yyval), (yyvsp[-1]));}
8223 #line 8222 "hphp.5.tab.cpp" /* yacc.c:1651 */
8224 break;
8226 case 200:
8227 #line 1226 "hphp.y" /* yacc.c:1651 */
8228 { _p->onReturn((yyval), &(yyvsp[-1])); }
8229 #line 8228 "hphp.5.tab.cpp" /* yacc.c:1651 */
8230 break;
8232 case 201:
8233 #line 1227 "hphp.y" /* yacc.c:1651 */
8234 { _p->onExpStatement((yyval), (yyvsp[-1]));}
8235 #line 8234 "hphp.5.tab.cpp" /* yacc.c:1651 */
8236 break;
8238 case 202:
8239 #line 1228 "hphp.y" /* yacc.c:1651 */
8240 { _p->onLabel((yyval), (yyvsp[-1]));
8241 _p->addLabel((yyvsp[-1]).text(),
8242 _p->getRange(),
8243 &(yyval));
8244 _p->onScopeLabel((yyval), (yyvsp[-1]));}
8245 #line 8244 "hphp.5.tab.cpp" /* yacc.c:1651 */
8246 break;
8248 case 203:
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 */
8254 break;
8256 case 204:
8257 #line 1256 "hphp.y" /* yacc.c:1651 */
8258 { (yyval) = 1; }
8259 #line 8258 "hphp.5.tab.cpp" /* yacc.c:1651 */
8260 break;
8262 case 205:
8263 #line 1257 "hphp.y" /* yacc.c:1651 */
8264 { (yyval).reset(); }
8265 #line 8264 "hphp.5.tab.cpp" /* yacc.c:1651 */
8266 break;
8268 case 206:
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 */
8273 break;
8275 case 207:
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 */
8279 break;
8281 case 211:
8282 #line 1278 "hphp.y" /* yacc.c:1651 */
8283 { (yyval) = (yyvsp[-1]); }
8284 #line 8283 "hphp.5.tab.cpp" /* yacc.c:1651 */
8285 break;
8287 case 212:
8288 #line 1279 "hphp.y" /* yacc.c:1651 */
8289 { (yyval).reset(); }
8290 #line 8289 "hphp.5.tab.cpp" /* yacc.c:1651 */
8291 break;
8293 case 213:
8294 #line 1283 "hphp.y" /* yacc.c:1651 */
8295 { _p->onNewLabelScope(false); }
8296 #line 8295 "hphp.5.tab.cpp" /* yacc.c:1651 */
8297 break;
8299 case 214:
8300 #line 1284 "hphp.y" /* yacc.c:1651 */
8301 { (yyval) = (yyvsp[-1]); }
8302 #line 8301 "hphp.5.tab.cpp" /* yacc.c:1651 */
8303 break;
8305 case 215:
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 */
8309 break;
8311 case 216:
8312 #line 1294 "hphp.y" /* yacc.c:1651 */
8313 { (yyval).reset();}
8314 #line 8313 "hphp.5.tab.cpp" /* yacc.c:1651 */
8315 break;
8317 case 217:
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 */
8322 break;
8324 case 218:
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 */
8330 break;
8332 case 219:
8333 #line 1306 "hphp.y" /* yacc.c:1651 */
8334 { (yyval) = (yyvsp[0]);}
8335 #line 8334 "hphp.5.tab.cpp" /* yacc.c:1651 */
8336 break;
8338 case 220:
8339 #line 1307 "hphp.y" /* yacc.c:1651 */
8340 { (yyval).reset();}
8341 #line 8340 "hphp.5.tab.cpp" /* yacc.c:1651 */
8342 break;
8344 case 221:
8345 #line 1311 "hphp.y" /* yacc.c:1651 */
8346 { (yyval) = 1;}
8347 #line 8346 "hphp.5.tab.cpp" /* yacc.c:1651 */
8348 break;
8350 case 222:
8351 #line 1312 "hphp.y" /* yacc.c:1651 */
8352 { (yyval).reset();}
8353 #line 8352 "hphp.5.tab.cpp" /* yacc.c:1651 */
8354 break;
8356 case 223:
8357 #line 1316 "hphp.y" /* yacc.c:1651 */
8358 { _p->pushFuncLocation(); }
8359 #line 8358 "hphp.5.tab.cpp" /* yacc.c:1651 */
8360 break;
8362 case 224:
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 */
8369 break;
8371 case 225:
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();
8375 _p->popLabelInfo();
8376 _p->popTypeScope();
8377 _p->onCompleteLabelScope(true);}
8378 #line 8377 "hphp.5.tab.cpp" /* yacc.c:1651 */
8379 break;
8381 case 226:
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 */
8388 break;
8390 case 227:
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();
8394 _p->popLabelInfo();
8395 _p->popTypeScope();
8396 _p->onCompleteLabelScope(true);}
8397 #line 8396 "hphp.5.tab.cpp" /* yacc.c:1651 */
8398 break;
8400 case 228:
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 */
8407 break;
8409 case 229:
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();
8413 _p->popLabelInfo();
8414 _p->popTypeScope();
8415 _p->onCompleteLabelScope(true);}
8416 #line 8415 "hphp.5.tab.cpp" /* yacc.c:1651 */
8417 break;
8419 case 230:
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 */
8424 break;
8426 case 231:
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 */
8430 break;
8432 case 232:
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 */
8437 break;
8439 case 233:
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 */
8443 break;
8445 case 234:
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 */
8450 break;
8452 case 235:
8453 #line 1388 "hphp.y" /* yacc.c:1651 */
8454 { Token stmts;
8455 if (_p->peekClass()) {
8456 xhp_collect_attributes(_p,stmts,(yyvsp[-1]));
8457 } else {
8458 stmts = (yyvsp[-1]);
8460 _p->onClass((yyval),(yyvsp[-7]).num(),(yyvsp[-6]),(yyvsp[-4]),(yyvsp[-3]),
8461 stmts,0,nullptr);
8462 if (_p->peekClass()) {
8463 _p->xhpResetAttributes();
8465 _p->popClass();
8466 _p->popTypeScope();}
8467 #line 8466 "hphp.5.tab.cpp" /* yacc.c:1651 */
8468 break;
8470 case 236:
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 */
8475 break;
8477 case 237:
8478 #line 1406 "hphp.y" /* yacc.c:1651 */
8479 { Token stmts;
8480 if (_p->peekClass()) {
8481 xhp_collect_attributes(_p,stmts,(yyvsp[-1]));
8482 } else {
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();
8490 _p->popClass();
8491 _p->popTypeScope();}
8492 #line 8491 "hphp.5.tab.cpp" /* yacc.c:1651 */
8493 break;
8495 case 238:
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 */
8500 break;
8502 case 239:
8503 #line 1423 "hphp.y" /* yacc.c:1651 */
8504 { _p->onInterface((yyval),(yyvsp[-5]),(yyvsp[-3]),(yyvsp[-1]),0);
8505 _p->popClass();
8506 _p->popTypeScope();}
8507 #line 8506 "hphp.5.tab.cpp" /* yacc.c:1651 */
8508 break;
8510 case 240:
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 */
8515 break;
8517 case 241:
8518 #line 1431 "hphp.y" /* yacc.c:1651 */
8519 { _p->onInterface((yyval),(yyvsp[-5]),(yyvsp[-3]),(yyvsp[-1]),&(yyvsp[-7]));
8520 _p->popClass();
8521 _p->popTypeScope();}
8522 #line 8521 "hphp.5.tab.cpp" /* yacc.c:1651 */
8523 break;
8525 case 242:
8526 #line 1437 "hphp.y" /* yacc.c:1651 */
8527 { _p->onClassExpressionStart(); }
8528 #line 8527 "hphp.5.tab.cpp" /* yacc.c:1651 */
8529 break;
8531 case 243:
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 */
8535 break;
8537 case 244:
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 */
8542 break;
8544 case 245:
8545 #line 1447 "hphp.y" /* yacc.c:1651 */
8546 { Token t_ext;
8547 t_ext.reset();
8548 _p->onClass((yyval),T_TRAIT,(yyvsp[-5]),t_ext,(yyvsp[-3]),
8549 (yyvsp[-1]), 0, nullptr);
8550 _p->popClass();
8551 _p->popTypeScope();}
8552 #line 8551 "hphp.5.tab.cpp" /* yacc.c:1651 */
8553 break;
8555 case 246:
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 */
8560 break;
8562 case 247:
8563 #line 1458 "hphp.y" /* yacc.c:1651 */
8564 { Token t_ext;
8565 t_ext.reset();
8566 _p->onClass((yyval),T_TRAIT,(yyvsp[-5]),t_ext,(yyvsp[-3]),
8567 (yyvsp[-1]), &(yyvsp[-7]), nullptr);
8568 _p->popClass();
8569 _p->popTypeScope();}
8570 #line 8569 "hphp.5.tab.cpp" /* yacc.c:1651 */
8571 break;
8573 case 248:
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 */
8577 break;
8579 case 249:
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 */
8584 break;
8586 case 250:
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 */
8590 break;
8592 case 251:
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 */
8596 break;
8598 case 252:
8599 #line 1477 "hphp.y" /* yacc.c:1651 */
8600 { (yyval) = T_CLASS;}
8601 #line 8600 "hphp.5.tab.cpp" /* yacc.c:1651 */
8602 break;
8604 case 253:
8605 #line 1478 "hphp.y" /* yacc.c:1651 */
8606 { (yyval) = T_ABSTRACT; }
8607 #line 8606 "hphp.5.tab.cpp" /* yacc.c:1651 */
8608 break;
8610 case 254:
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 */
8616 break;
8618 case 255:
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 */
8622 break;
8624 case 256:
8625 #line 1483 "hphp.y" /* yacc.c:1651 */
8626 { (yyval) = T_FINAL;}
8627 #line 8626 "hphp.5.tab.cpp" /* yacc.c:1651 */
8628 break;
8630 case 257:
8631 #line 1487 "hphp.y" /* yacc.c:1651 */
8632 { (yyval) = (yyvsp[0]);}
8633 #line 8632 "hphp.5.tab.cpp" /* yacc.c:1651 */
8634 break;
8636 case 258:
8637 #line 1488 "hphp.y" /* yacc.c:1651 */
8638 { (yyval).reset();}
8639 #line 8638 "hphp.5.tab.cpp" /* yacc.c:1651 */
8640 break;
8642 case 259:
8643 #line 1491 "hphp.y" /* yacc.c:1651 */
8644 { (yyval) = (yyvsp[0]);}
8645 #line 8644 "hphp.5.tab.cpp" /* yacc.c:1651 */
8646 break;
8648 case 260:
8649 #line 1492 "hphp.y" /* yacc.c:1651 */
8650 { (yyval).reset();}
8651 #line 8650 "hphp.5.tab.cpp" /* yacc.c:1651 */
8652 break;
8654 case 261:
8655 #line 1495 "hphp.y" /* yacc.c:1651 */
8656 { (yyval) = (yyvsp[0]);}
8657 #line 8656 "hphp.5.tab.cpp" /* yacc.c:1651 */
8658 break;
8660 case 262:
8661 #line 1496 "hphp.y" /* yacc.c:1651 */
8662 { (yyval).reset();}
8663 #line 8662 "hphp.5.tab.cpp" /* yacc.c:1651 */
8664 break;
8666 case 263:
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 */
8670 break;
8672 case 264:
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 */
8676 break;
8678 case 265:
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 */
8682 break;
8684 case 266:
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 */
8688 break;
8690 case 267:
8691 #line 1510 "hphp.y" /* yacc.c:1651 */
8692 { (yyval) = (yyvsp[0]);}
8693 #line 8692 "hphp.5.tab.cpp" /* yacc.c:1651 */
8694 break;
8696 case 268:
8697 #line 1511 "hphp.y" /* yacc.c:1651 */
8698 { (yyval).reset();}
8699 #line 8698 "hphp.5.tab.cpp" /* yacc.c:1651 */
8700 break;
8702 case 269:
8703 #line 1514 "hphp.y" /* yacc.c:1651 */
8704 { (yyval) = (yyvsp[0]); (yyval) = 0;}
8705 #line 8704 "hphp.5.tab.cpp" /* yacc.c:1651 */
8706 break;
8708 case 270:
8709 #line 1515 "hphp.y" /* yacc.c:1651 */
8710 { (yyval) = (yyvsp[0]); (yyval) = 1;}
8711 #line 8710 "hphp.5.tab.cpp" /* yacc.c:1651 */
8712 break;
8714 case 271:
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 */
8718 break;
8720 case 272:
8721 #line 1520 "hphp.y" /* yacc.c:1651 */
8722 { (yyval) = (yyvsp[0]);}
8723 #line 8722 "hphp.5.tab.cpp" /* yacc.c:1651 */
8724 break;
8726 case 273:
8727 #line 1522 "hphp.y" /* yacc.c:1651 */
8728 { (yyval) = (yyvsp[-2]);}
8729 #line 8728 "hphp.5.tab.cpp" /* yacc.c:1651 */
8730 break;
8732 case 274:
8733 #line 1525 "hphp.y" /* yacc.c:1651 */
8734 { (yyval) = (yyvsp[0]);}
8735 #line 8734 "hphp.5.tab.cpp" /* yacc.c:1651 */
8736 break;
8738 case 275:
8739 #line 1527 "hphp.y" /* yacc.c:1651 */
8740 { (yyval) = (yyvsp[-2]);}
8741 #line 8740 "hphp.5.tab.cpp" /* yacc.c:1651 */
8742 break;
8744 case 276:
8745 #line 1530 "hphp.y" /* yacc.c:1651 */
8746 { (yyval) = (yyvsp[0]);}
8747 #line 8746 "hphp.5.tab.cpp" /* yacc.c:1651 */
8748 break;
8750 case 277:
8751 #line 1532 "hphp.y" /* yacc.c:1651 */
8752 { (yyval) = (yyvsp[-2]);}
8753 #line 8752 "hphp.5.tab.cpp" /* yacc.c:1651 */
8754 break;
8756 case 278:
8757 #line 1535 "hphp.y" /* yacc.c:1651 */
8758 { _p->onBlock((yyval), (yyvsp[0]));}
8759 #line 8758 "hphp.5.tab.cpp" /* yacc.c:1651 */
8760 break;
8762 case 279:
8763 #line 1537 "hphp.y" /* yacc.c:1651 */
8764 { _p->onBlock((yyval), (yyvsp[-2]));}
8765 #line 8764 "hphp.5.tab.cpp" /* yacc.c:1651 */
8766 break;
8768 case 280:
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 */
8772 break;
8774 case 281:
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 */
8779 break;
8781 case 282:
8782 #line 1548 "hphp.y" /* yacc.c:1651 */
8783 { (yyval) = (yyvsp[-1]);}
8784 #line 8783 "hphp.5.tab.cpp" /* yacc.c:1651 */
8785 break;
8787 case 283:
8788 #line 1549 "hphp.y" /* yacc.c:1651 */
8789 { (yyval) = (yyvsp[-1]);}
8790 #line 8789 "hphp.5.tab.cpp" /* yacc.c:1651 */
8791 break;
8793 case 284:
8794 #line 1550 "hphp.y" /* yacc.c:1651 */
8795 { (yyval) = (yyvsp[-2]);}
8796 #line 8795 "hphp.5.tab.cpp" /* yacc.c:1651 */
8797 break;
8799 case 285:
8800 #line 1551 "hphp.y" /* yacc.c:1651 */
8801 { (yyval) = (yyvsp[-2]);}
8802 #line 8801 "hphp.5.tab.cpp" /* yacc.c:1651 */
8803 break;
8805 case 286:
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 */
8809 break;
8811 case 287:
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 */
8815 break;
8817 case 288:
8818 #line 1559 "hphp.y" /* yacc.c:1651 */
8819 { (yyval).reset();}
8820 #line 8819 "hphp.5.tab.cpp" /* yacc.c:1651 */
8821 break;
8823 case 289:
8824 #line 1562 "hphp.y" /* yacc.c:1651 */
8825 { (yyval).reset();}
8826 #line 8825 "hphp.5.tab.cpp" /* yacc.c:1651 */
8827 break;
8829 case 290:
8830 #line 1563 "hphp.y" /* yacc.c:1651 */
8831 { (yyval).reset();}
8832 #line 8831 "hphp.5.tab.cpp" /* yacc.c:1651 */
8833 break;
8835 case 291:
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 */
8839 break;
8841 case 292:
8842 #line 1569 "hphp.y" /* yacc.c:1651 */
8843 { (yyval).reset();}
8844 #line 8843 "hphp.5.tab.cpp" /* yacc.c:1651 */
8845 break;
8847 case 293:
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 */
8851 break;
8853 case 294:
8854 #line 1575 "hphp.y" /* yacc.c:1651 */
8855 { (yyval).reset();}
8856 #line 8855 "hphp.5.tab.cpp" /* yacc.c:1651 */
8857 break;
8859 case 295:
8860 #line 1578 "hphp.y" /* yacc.c:1651 */
8861 { (yyval) = (yyvsp[0]);}
8862 #line 8861 "hphp.5.tab.cpp" /* yacc.c:1651 */
8863 break;
8865 case 296:
8866 #line 1579 "hphp.y" /* yacc.c:1651 */
8867 { (yyval).reset();}
8868 #line 8867 "hphp.5.tab.cpp" /* yacc.c:1651 */
8869 break;
8871 case 297:
8872 #line 1582 "hphp.y" /* yacc.c:1651 */
8873 { (yyval) = (yyvsp[0]);}
8874 #line 8873 "hphp.5.tab.cpp" /* yacc.c:1651 */
8875 break;
8877 case 298:
8878 #line 1583 "hphp.y" /* yacc.c:1651 */
8879 { (yyval).reset();}
8880 #line 8879 "hphp.5.tab.cpp" /* yacc.c:1651 */
8881 break;
8883 case 299:
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 */
8888 break;
8890 case 300:
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 */
8895 break;
8897 case 301:
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 */
8903 break;
8905 case 302:
8906 #line 1607 "hphp.y" /* yacc.c:1651 */
8907 { (yyval) = (yyvsp[-1]);}
8908 #line 8907 "hphp.5.tab.cpp" /* yacc.c:1651 */
8909 break;
8911 case 303:
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 */
8916 break;
8918 case 304:
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 */
8923 break;
8925 case 305:
8926 #line 1621 "hphp.y" /* yacc.c:1651 */
8927 { validate_hh_variadic_variant(
8928 _p, (yyvsp[-3]), (yyvsp[-1]), &(yyvsp[-2]));
8929 (yyval).reset(); }
8930 #line 8929 "hphp.5.tab.cpp" /* yacc.c:1651 */
8931 break;
8933 case 306:
8934 #line 1624 "hphp.y" /* yacc.c:1651 */
8935 { (yyval).reset(); }
8936 #line 8935 "hphp.5.tab.cpp" /* yacc.c:1651 */
8937 break;
8939 case 307:
8940 #line 1630 "hphp.y" /* yacc.c:1651 */
8941 { _p->onParam((yyval),NULL,(yyvsp[-1]),(yyvsp[0]),
8942 ParamMode::In,
8943 NULL,&(yyvsp[-3]),&(yyvsp[-2]));}
8944 #line 8943 "hphp.5.tab.cpp" /* yacc.c:1651 */
8945 break;
8947 case 308:
8948 #line 1635 "hphp.y" /* yacc.c:1651 */
8949 { _p->onParam((yyval),NULL,(yyvsp[-1]),(yyvsp[0]),
8950 ParamMode::InOut,
8951 NULL,&(yyvsp[-3]),NULL);}
8952 #line 8951 "hphp.5.tab.cpp" /* yacc.c:1651 */
8953 break;
8955 case 309:
8956 #line 1640 "hphp.y" /* yacc.c:1651 */
8957 { _p->onParam((yyval),NULL,(yyvsp[-2]),(yyvsp[0]),
8958 ParamMode::Ref,
8959 NULL,&(yyvsp[-4]),&(yyvsp[-3]));}
8960 #line 8959 "hphp.5.tab.cpp" /* yacc.c:1651 */
8961 break;
8963 case 310:
8964 #line 1646 "hphp.y" /* yacc.c:1651 */
8965 { _p->onParam((yyval),NULL,(yyvsp[-4]),(yyvsp[-2]),
8966 ParamMode::Ref,
8967 &(yyvsp[0]),&(yyvsp[-6]),&(yyvsp[-5]));}
8968 #line 8967 "hphp.5.tab.cpp" /* yacc.c:1651 */
8969 break;
8971 case 311:
8972 #line 1652 "hphp.y" /* yacc.c:1651 */
8973 { _p->onParam((yyval),NULL,(yyvsp[-3]),(yyvsp[-2]),
8974 ParamMode::In,
8975 &(yyvsp[0]),&(yyvsp[-5]),&(yyvsp[-4]));}
8976 #line 8975 "hphp.5.tab.cpp" /* yacc.c:1651 */
8977 break;
8979 case 312:
8980 #line 1658 "hphp.y" /* yacc.c:1651 */
8981 { _p->onParam((yyval),&(yyvsp[-5]),(yyvsp[-1]),(yyvsp[0]),
8982 ParamMode::In,
8983 NULL,&(yyvsp[-3]),&(yyvsp[-2]));}
8984 #line 8983 "hphp.5.tab.cpp" /* yacc.c:1651 */
8985 break;
8987 case 313:
8988 #line 1664 "hphp.y" /* yacc.c:1651 */
8989 { _p->onParam((yyval),&(yyvsp[-5]),(yyvsp[-1]),(yyvsp[0]),
8990 ParamMode::InOut,
8991 NULL,&(yyvsp[-3]),NULL);}
8992 #line 8991 "hphp.5.tab.cpp" /* yacc.c:1651 */
8993 break;
8995 case 314:
8996 #line 1670 "hphp.y" /* yacc.c:1651 */
8997 { _p->onParam((yyval),&(yyvsp[-6]),(yyvsp[-2]),(yyvsp[0]),
8998 ParamMode::Ref,
8999 NULL,&(yyvsp[-4]),&(yyvsp[-3]));}
9000 #line 8999 "hphp.5.tab.cpp" /* yacc.c:1651 */
9001 break;
9003 case 315:
9004 #line 1677 "hphp.y" /* yacc.c:1651 */
9005 { _p->onParam((yyval),&(yyvsp[-8]),(yyvsp[-4]),(yyvsp[-2]),
9006 ParamMode::Ref,
9007 &(yyvsp[0]),&(yyvsp[-6]),&(yyvsp[-5]));}
9008 #line 9007 "hphp.5.tab.cpp" /* yacc.c:1651 */
9009 break;
9011 case 316:
9012 #line 1684 "hphp.y" /* yacc.c:1651 */
9013 { _p->onParam((yyval),&(yyvsp[-7]),(yyvsp[-3]),(yyvsp[-2]),
9014 ParamMode::In,
9015 &(yyvsp[0]),&(yyvsp[-5]),&(yyvsp[-4]));}
9016 #line 9015 "hphp.5.tab.cpp" /* yacc.c:1651 */
9017 break;
9019 case 317:
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 */
9024 break;
9026 case 318:
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 */
9031 break;
9033 case 319:
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 */
9039 break;
9041 case 320:
9042 #line 1707 "hphp.y" /* yacc.c:1651 */
9043 { (yyval) = (yyvsp[-1]);}
9044 #line 9043 "hphp.5.tab.cpp" /* yacc.c:1651 */
9045 break;
9047 case 321:
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 */
9052 break;
9054 case 322:
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 */
9059 break;
9061 case 323:
9062 #line 1718 "hphp.y" /* yacc.c:1651 */
9063 { validate_hh_variadic_variant(
9064 _p, (yyvsp[-2]), (yyvsp[-1]), NULL);
9065 (yyval).reset(); }
9066 #line 9065 "hphp.5.tab.cpp" /* yacc.c:1651 */
9067 break;
9069 case 324:
9070 #line 1721 "hphp.y" /* yacc.c:1651 */
9071 { (yyval).reset();}
9072 #line 9071 "hphp.5.tab.cpp" /* yacc.c:1651 */
9073 break;
9075 case 325:
9076 #line 1726 "hphp.y" /* yacc.c:1651 */
9077 { _p->onParam((yyval),NULL,(yyvsp[-1]),(yyvsp[0]),
9078 ParamMode::In,
9079 NULL,&(yyvsp[-2]),NULL); }
9080 #line 9079 "hphp.5.tab.cpp" /* yacc.c:1651 */
9081 break;
9083 case 326:
9084 #line 1730 "hphp.y" /* yacc.c:1651 */
9085 { _p->onParam((yyval),NULL,(yyvsp[-1]),(yyvsp[0]),
9086 ParamMode::InOut,
9087 NULL,&(yyvsp[-3]),NULL); }
9088 #line 9087 "hphp.5.tab.cpp" /* yacc.c:1651 */
9089 break;
9091 case 327:
9092 #line 1734 "hphp.y" /* yacc.c:1651 */
9093 { _p->onParam((yyval),NULL,(yyvsp[-2]),(yyvsp[0]),
9094 ParamMode::Ref,
9095 NULL,&(yyvsp[-3]),NULL); }
9096 #line 9095 "hphp.5.tab.cpp" /* yacc.c:1651 */
9097 break;
9099 case 328:
9100 #line 1739 "hphp.y" /* yacc.c:1651 */
9101 { _p->onParam((yyval),NULL,(yyvsp[-4]),(yyvsp[-2]),
9102 ParamMode::Ref,
9103 &(yyvsp[0]),&(yyvsp[-5]),NULL); }
9104 #line 9103 "hphp.5.tab.cpp" /* yacc.c:1651 */
9105 break;
9107 case 329:
9108 #line 1744 "hphp.y" /* yacc.c:1651 */
9109 { _p->onParam((yyval),NULL,(yyvsp[-3]),(yyvsp[-2]),
9110 ParamMode::In,
9111 &(yyvsp[0]),&(yyvsp[-4]),NULL); }
9112 #line 9111 "hphp.5.tab.cpp" /* yacc.c:1651 */
9113 break;
9115 case 330:
9116 #line 1749 "hphp.y" /* yacc.c:1651 */
9117 { _p->onParam((yyval),&(yyvsp[-4]),(yyvsp[-1]),(yyvsp[0]),
9118 ParamMode::In,
9119 NULL,&(yyvsp[-2]),NULL); }
9120 #line 9119 "hphp.5.tab.cpp" /* yacc.c:1651 */
9121 break;
9123 case 331:
9124 #line 1754 "hphp.y" /* yacc.c:1651 */
9125 { _p->onParam((yyval),&(yyvsp[-5]),(yyvsp[-1]),(yyvsp[0]),
9126 ParamMode::InOut,
9127 NULL,&(yyvsp[-3]),NULL); }
9128 #line 9127 "hphp.5.tab.cpp" /* yacc.c:1651 */
9129 break;
9131 case 332:
9132 #line 1759 "hphp.y" /* yacc.c:1651 */
9133 { _p->onParam((yyval),&(yyvsp[-5]),(yyvsp[-2]),(yyvsp[0]),
9134 ParamMode::Ref,
9135 NULL,&(yyvsp[-3]),NULL); }
9136 #line 9135 "hphp.5.tab.cpp" /* yacc.c:1651 */
9137 break;
9139 case 333:
9140 #line 1765 "hphp.y" /* yacc.c:1651 */
9141 { _p->onParam((yyval),&(yyvsp[-7]),(yyvsp[-4]),(yyvsp[-2]),
9142 ParamMode::Ref,
9143 &(yyvsp[0]),&(yyvsp[-5]),NULL); }
9144 #line 9143 "hphp.5.tab.cpp" /* yacc.c:1651 */
9145 break;
9147 case 334:
9148 #line 1771 "hphp.y" /* yacc.c:1651 */
9149 { _p->onParam((yyval),&(yyvsp[-6]),(yyvsp[-3]),(yyvsp[-2]),
9150 ParamMode::In,
9151 &(yyvsp[0]),&(yyvsp[-4]),NULL); }
9152 #line 9151 "hphp.5.tab.cpp" /* yacc.c:1651 */
9153 break;
9155 case 335:
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 */
9159 break;
9161 case 336:
9162 #line 1778 "hphp.y" /* yacc.c:1651 */
9163 { _p->onSimpleVariable((yyval), (yyvsp[0]));}
9164 #line 9163 "hphp.5.tab.cpp" /* yacc.c:1651 */
9165 break;
9167 case 337:
9168 #line 1779 "hphp.y" /* yacc.c:1651 */
9169 { _p->onPipeVariable((yyval));}
9170 #line 9169 "hphp.5.tab.cpp" /* yacc.c:1651 */
9171 break;
9173 case 338:
9174 #line 1784 "hphp.y" /* yacc.c:1651 */
9175 { (yyval) = (yyvsp[-1]);}
9176 #line 9175 "hphp.5.tab.cpp" /* yacc.c:1651 */
9177 break;
9179 case 339:
9180 #line 1785 "hphp.y" /* yacc.c:1651 */
9181 { (yyval).reset();}
9182 #line 9181 "hphp.5.tab.cpp" /* yacc.c:1651 */
9183 break;
9185 case 340:
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 */
9190 break;
9192 case 341:
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 */
9197 break;
9199 case 342:
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 */
9204 break;
9206 case 343:
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 */
9211 break;
9213 case 344:
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 */
9218 break;
9220 case 345:
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 */
9225 break;
9227 case 346:
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 */
9232 break;
9234 case 347:
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 */
9239 break;
9241 case 348:
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 */
9245 break;
9247 case 349:
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 */
9251 break;
9253 case 350:
9254 #line 1815 "hphp.y" /* yacc.c:1651 */
9255 { (yyval) = (yyvsp[0]);}
9256 #line 9255 "hphp.5.tab.cpp" /* yacc.c:1651 */
9257 break;
9259 case 351:
9260 #line 1816 "hphp.y" /* yacc.c:1651 */
9261 { (yyval) = (yyvsp[0]); (yyval) = 1;}
9262 #line 9261 "hphp.5.tab.cpp" /* yacc.c:1651 */
9263 break;
9265 case 352:
9266 #line 1817 "hphp.y" /* yacc.c:1651 */
9267 { (yyval) = (yyvsp[-1]); (yyval) = 1;}
9268 #line 9267 "hphp.5.tab.cpp" /* yacc.c:1651 */
9269 break;
9271 case 353:
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 */
9275 break;
9277 case 354:
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 */
9281 break;
9283 case 355:
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 */
9287 break;
9289 case 356:
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 */
9293 break;
9295 case 357:
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 */
9299 break;
9301 case 358:
9302 #line 1831 "hphp.y" /* yacc.c:1651 */
9303 { (yyval).reset();}
9304 #line 9303 "hphp.5.tab.cpp" /* yacc.c:1651 */
9305 break;
9307 case 359:
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 */
9312 break;
9314 case 360:
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 */
9318 break;
9320 case 361:
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 */
9324 break;
9326 case 362:
9327 #line 1846 "hphp.y" /* yacc.c:1651 */
9328 { (yyval).reset();}
9329 #line 9328 "hphp.5.tab.cpp" /* yacc.c:1651 */
9330 break;
9332 case 363:
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 */
9337 break;
9339 case 364:
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 */
9344 break;
9346 case 365:
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 */
9351 break;
9353 case 366:
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 */
9358 break;
9360 case 367:
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 */
9365 break;
9367 case 368:
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 */
9372 break;
9374 case 369:
9375 #line 1870 "hphp.y" /* yacc.c:1651 */
9376 { (yyval) = (yyvsp[-1]); }
9377 #line 9376 "hphp.5.tab.cpp" /* yacc.c:1651 */
9378 break;
9380 case 370:
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 */
9386 break;
9388 case 371:
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();
9392 _p->popLabelInfo();
9393 _p->popTypeScope();
9394 _p->onCompleteLabelScope(true);}
9395 #line 9394 "hphp.5.tab.cpp" /* yacc.c:1651 */
9396 break;
9398 case 372:
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 */
9404 break;
9406 case 373:
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();
9410 _p->popLabelInfo();
9411 _p->popTypeScope();
9412 _p->onCompleteLabelScope(true);}
9413 #line 9412 "hphp.5.tab.cpp" /* yacc.c:1651 */
9414 break;
9416 case 374:
9417 #line 1901 "hphp.y" /* yacc.c:1651 */
9418 { _p->xhpSetAttributes((yyvsp[-1]));}
9419 #line 9418 "hphp.5.tab.cpp" /* yacc.c:1651 */
9420 break;
9422 case 375:
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 */
9426 break;
9428 case 376:
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 */
9432 break;
9434 case 377:
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 */
9438 break;
9440 case 378:
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 */
9444 break;
9446 case 379:
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 */
9451 break;
9453 case 380:
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 */
9457 break;
9459 case 381:
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 */
9463 break;
9465 case 382:
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 */
9469 break;
9471 case 383:
9472 #line 1918 "hphp.y" /* yacc.c:1651 */
9473 { (yyval).reset(); }
9474 #line 9473 "hphp.5.tab.cpp" /* yacc.c:1651 */
9475 break;
9477 case 384:
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 */
9481 break;
9483 case 385:
9484 #line 1929 "hphp.y" /* yacc.c:1651 */
9485 { _p->onTraitAliasRuleModify((yyval),(yyvsp[-4]),(yyvsp[-2]),
9486 (yyvsp[-1]));}
9487 #line 9486 "hphp.5.tab.cpp" /* yacc.c:1651 */
9488 break;
9490 case 386:
9491 #line 1932 "hphp.y" /* yacc.c:1651 */
9492 { Token t; t.reset();
9493 _p->onTraitAliasRuleModify((yyval),(yyvsp[-3]),(yyvsp[-1]),
9494 t);}
9495 #line 9494 "hphp.5.tab.cpp" /* yacc.c:1651 */
9496 break;
9498 case 387:
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 */
9502 break;
9504 case 388:
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 */
9509 break;
9511 case 389:
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 */
9516 break;
9518 case 390:
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 */
9522 break;
9524 case 391:
9525 #line 1955 "hphp.y" /* yacc.c:1651 */
9526 { xhp_attribute(_p,(yyval),(yyvsp[-3]),(yyvsp[-2]),(yyvsp[-1]),(yyvsp[0]));
9527 (yyval) = 1;}
9528 #line 9527 "hphp.5.tab.cpp" /* yacc.c:1651 */
9529 break;
9531 case 392:
9532 #line 1957 "hphp.y" /* yacc.c:1651 */
9533 { (yyval) = (yyvsp[0]); (yyval) = 0;}
9534 #line 9533 "hphp.5.tab.cpp" /* yacc.c:1651 */
9535 break;
9537 case 393:
9538 #line 1961 "hphp.y" /* yacc.c:1651 */
9539 { (yyval) = (yyvsp[0]);}
9540 #line 9539 "hphp.5.tab.cpp" /* yacc.c:1651 */
9541 break;
9543 case 395:
9544 #line 1966 "hphp.y" /* yacc.c:1651 */
9545 { (yyval) = 4;}
9546 #line 9545 "hphp.5.tab.cpp" /* yacc.c:1651 */
9547 break;
9549 case 396:
9550 #line 1968 "hphp.y" /* yacc.c:1651 */
9551 { (yyval) = 4;}
9552 #line 9551 "hphp.5.tab.cpp" /* yacc.c:1651 */
9553 break;
9555 case 397:
9556 #line 1970 "hphp.y" /* yacc.c:1651 */
9557 { (yyval) = 4;}
9558 #line 9557 "hphp.5.tab.cpp" /* yacc.c:1651 */
9559 break;
9561 case 398:
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 */
9570 break;
9572 case 399:
9573 #line 1977 "hphp.y" /* yacc.c:1651 */
9574 { (yyval) = 6;}
9575 #line 9574 "hphp.5.tab.cpp" /* yacc.c:1651 */
9576 break;
9578 case 400:
9579 #line 1979 "hphp.y" /* yacc.c:1651 */
9580 { (yyval) = (yyvsp[-1]); (yyval) = 7;}
9581 #line 9580 "hphp.5.tab.cpp" /* yacc.c:1651 */
9582 break;
9584 case 401:
9585 #line 1980 "hphp.y" /* yacc.c:1651 */
9586 { (yyval) = 9; }
9587 #line 9586 "hphp.5.tab.cpp" /* yacc.c:1651 */
9588 break;
9590 case 402:
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 */
9594 break;
9596 case 403:
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 */
9600 break;
9602 case 404:
9603 #line 1991 "hphp.y" /* yacc.c:1651 */
9604 { (yyval) = (yyvsp[-1]);}
9605 #line 9604 "hphp.5.tab.cpp" /* yacc.c:1651 */
9606 break;
9608 case 405:
9609 #line 1994 "hphp.y" /* yacc.c:1651 */
9610 { (yyval) = (yyvsp[0]);}
9611 #line 9610 "hphp.5.tab.cpp" /* yacc.c:1651 */
9612 break;
9614 case 406:
9615 #line 1995 "hphp.y" /* yacc.c:1651 */
9616 { scalar_null(_p, (yyval));}
9617 #line 9616 "hphp.5.tab.cpp" /* yacc.c:1651 */
9618 break;
9620 case 407:
9621 #line 1999 "hphp.y" /* yacc.c:1651 */
9622 { scalar_num(_p, (yyval), "1");}
9623 #line 9622 "hphp.5.tab.cpp" /* yacc.c:1651 */
9624 break;
9626 case 408:
9627 #line 2000 "hphp.y" /* yacc.c:1651 */
9628 { scalar_num(_p, (yyval), "0");}
9629 #line 9628 "hphp.5.tab.cpp" /* yacc.c:1651 */
9630 break;
9632 case 409:
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 */
9637 break;
9639 case 410:
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 */
9644 break;
9646 case 411:
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 */
9651 break;
9653 case 412:
9654 #line 2017 "hphp.y" /* yacc.c:1651 */
9655 { (yyval) = (yyvsp[0]); (yyval) = 2;}
9656 #line 9655 "hphp.5.tab.cpp" /* yacc.c:1651 */
9657 break;
9659 case 413:
9660 #line 2018 "hphp.y" /* yacc.c:1651 */
9661 { (yyval) = -1;
9662 if ((yyvsp[0]).same("any")) (yyval) = 1;}
9663 #line 9662 "hphp.5.tab.cpp" /* yacc.c:1651 */
9664 break;
9666 case 414:
9667 #line 2020 "hphp.y" /* yacc.c:1651 */
9668 { (yyval) = 0;}
9669 #line 9668 "hphp.5.tab.cpp" /* yacc.c:1651 */
9670 break;
9672 case 415:
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 */
9676 break;
9678 case 416:
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 */
9682 break;
9684 case 417:
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 */
9688 break;
9690 case 418:
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 */
9694 break;
9696 case 419:
9697 #line 2031 "hphp.y" /* yacc.c:1651 */
9698 { (yyval) = (yyvsp[0]);}
9699 #line 9698 "hphp.5.tab.cpp" /* yacc.c:1651 */
9700 break;
9702 case 420:
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 */
9706 break;
9708 case 421:
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 */
9712 break;
9714 case 422:
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 */
9718 break;
9720 case 423:
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 */
9724 break;
9726 case 424:
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 */
9730 break;
9732 case 425:
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 */
9736 break;
9738 case 426:
9739 #line 2043 "hphp.y" /* yacc.c:1651 */
9740 { (yyval) = -1;
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 */
9744 break;
9746 case 427:
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 */
9750 break;
9752 case 428:
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 */
9756 break;
9758 case 429:
9759 #line 2051 "hphp.y" /* yacc.c:1651 */
9760 { (yyval).reset();}
9761 #line 9760 "hphp.5.tab.cpp" /* yacc.c:1651 */
9762 break;
9764 case 430:
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 */
9768 break;
9770 case 431:
9771 #line 2056 "hphp.y" /* yacc.c:1651 */
9772 { (yyval).reset();}
9773 #line 9772 "hphp.5.tab.cpp" /* yacc.c:1651 */
9774 break;
9776 case 432:
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 */
9780 break;
9782 case 433:
9783 #line 2060 "hphp.y" /* yacc.c:1651 */
9784 { (yyval) = (yyvsp[0]);}
9785 #line 9784 "hphp.5.tab.cpp" /* yacc.c:1651 */
9786 break;
9788 case 434:
9789 #line 2061 "hphp.y" /* yacc.c:1651 */
9790 { (yyval).reset();}
9791 #line 9790 "hphp.5.tab.cpp" /* yacc.c:1651 */
9792 break;
9794 case 435:
9795 #line 2064 "hphp.y" /* yacc.c:1651 */
9796 { (yyval) = (yyvsp[0]);}
9797 #line 9796 "hphp.5.tab.cpp" /* yacc.c:1651 */
9798 break;
9800 case 436:
9801 #line 2065 "hphp.y" /* yacc.c:1651 */
9802 { (yyval).reset();}
9803 #line 9802 "hphp.5.tab.cpp" /* yacc.c:1651 */
9804 break;
9806 case 437:
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 */
9810 break;
9812 case 438:
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 */
9816 break;
9818 case 439:
9819 #line 2073 "hphp.y" /* yacc.c:1651 */
9820 { (yyval) = T_PUBLIC;}
9821 #line 9820 "hphp.5.tab.cpp" /* yacc.c:1651 */
9822 break;
9824 case 440:
9825 #line 2074 "hphp.y" /* yacc.c:1651 */
9826 { (yyval) = T_PROTECTED;}
9827 #line 9826 "hphp.5.tab.cpp" /* yacc.c:1651 */
9828 break;
9830 case 441:
9831 #line 2075 "hphp.y" /* yacc.c:1651 */
9832 { (yyval) = T_PRIVATE;}
9833 #line 9832 "hphp.5.tab.cpp" /* yacc.c:1651 */
9834 break;
9836 case 442:
9837 #line 2076 "hphp.y" /* yacc.c:1651 */
9838 { (yyval) = T_STATIC;}
9839 #line 9838 "hphp.5.tab.cpp" /* yacc.c:1651 */
9840 break;
9842 case 443:
9843 #line 2077 "hphp.y" /* yacc.c:1651 */
9844 { (yyval) = T_ABSTRACT;}
9845 #line 9844 "hphp.5.tab.cpp" /* yacc.c:1651 */
9846 break;
9848 case 444:
9849 #line 2078 "hphp.y" /* yacc.c:1651 */
9850 { (yyval) = T_FINAL;}
9851 #line 9850 "hphp.5.tab.cpp" /* yacc.c:1651 */
9852 break;
9854 case 445:
9855 #line 2079 "hphp.y" /* yacc.c:1651 */
9856 { (yyval) = T_ASYNC;}
9857 #line 9856 "hphp.5.tab.cpp" /* yacc.c:1651 */
9858 break;
9860 case 446:
9861 #line 2083 "hphp.y" /* yacc.c:1651 */
9862 { (yyval) = (yyvsp[0]);}
9863 #line 9862 "hphp.5.tab.cpp" /* yacc.c:1651 */
9864 break;
9866 case 447:
9867 #line 2084 "hphp.y" /* yacc.c:1651 */
9868 { (yyval).reset();}
9869 #line 9868 "hphp.5.tab.cpp" /* yacc.c:1651 */
9870 break;
9872 case 448:
9873 #line 2087 "hphp.y" /* yacc.c:1651 */
9874 { (yyval) = T_PUBLIC;}
9875 #line 9874 "hphp.5.tab.cpp" /* yacc.c:1651 */
9876 break;
9878 case 449:
9879 #line 2088 "hphp.y" /* yacc.c:1651 */
9880 { (yyval) = T_PROTECTED;}
9881 #line 9880 "hphp.5.tab.cpp" /* yacc.c:1651 */
9882 break;
9884 case 450:
9885 #line 2089 "hphp.y" /* yacc.c:1651 */
9886 { (yyval) = T_PRIVATE;}
9887 #line 9886 "hphp.5.tab.cpp" /* yacc.c:1651 */
9888 break;
9890 case 451:
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 */
9894 break;
9896 case 452:
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 */
9900 break;
9902 case 453:
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 */
9906 break;
9908 case 454:
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 */
9912 break;
9914 case 455:
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 */
9918 break;
9920 case 456:
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 */
9924 break;
9926 case 457:
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 */
9930 break;
9932 case 458:
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 */
9936 break;
9938 case 459:
9939 #line 2118 "hphp.y" /* yacc.c:1651 */
9940 { Token t;
9941 _p->onClassTypeConstant((yyval), (yyvsp[-1]), t);
9942 _p->popTypeScope(); }
9943 #line 9942 "hphp.5.tab.cpp" /* yacc.c:1651 */
9944 break;
9946 case 460:
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 */
9951 break;
9953 case 461:
9954 #line 2126 "hphp.y" /* yacc.c:1651 */
9955 { (yyval) = (yyvsp[0]); }
9956 #line 9955 "hphp.5.tab.cpp" /* yacc.c:1651 */
9957 break;
9959 case 462:
9960 #line 2130 "hphp.y" /* yacc.c:1651 */
9961 { (yyval) = (yyvsp[-1]); }
9962 #line 9961 "hphp.5.tab.cpp" /* yacc.c:1651 */
9963 break;
9965 case 463:
9966 #line 2134 "hphp.y" /* yacc.c:1651 */
9967 { (yyval) = (yyvsp[-1]);}
9968 #line 9967 "hphp.5.tab.cpp" /* yacc.c:1651 */
9969 break;
9971 case 464:
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 */
9975 break;
9977 case 465:
9978 #line 2137 "hphp.y" /* yacc.c:1651 */
9979 { (yyval) = (yyvsp[0]);}
9980 #line 9979 "hphp.5.tab.cpp" /* yacc.c:1651 */
9981 break;
9983 case 466:
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 */
9987 break;
9989 case 467:
9990 #line 2139 "hphp.y" /* yacc.c:1651 */
9991 { (yyval) = (yyvsp[0]);}
9992 #line 9991 "hphp.5.tab.cpp" /* yacc.c:1651 */
9993 break;
9995 case 468:
9996 #line 2140 "hphp.y" /* yacc.c:1651 */
9997 { (yyval) = (yyvsp[0]);}
9998 #line 9997 "hphp.5.tab.cpp" /* yacc.c:1651 */
9999 break;
10001 case 469:
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 */
10005 break;
10007 case 470:
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 */
10011 break;
10013 case 471:
10014 #line 2148 "hphp.y" /* yacc.c:1651 */
10015 { (yyval) = (yyvsp[0]);}
10016 #line 10015 "hphp.5.tab.cpp" /* yacc.c:1651 */
10017 break;
10019 case 472:
10020 #line 2149 "hphp.y" /* yacc.c:1651 */
10021 { (yyval).reset();}
10022 #line 10021 "hphp.5.tab.cpp" /* yacc.c:1651 */
10023 break;
10025 case 473:
10026 #line 2153 "hphp.y" /* yacc.c:1651 */
10027 { _p->onYield((yyval), NULL);}
10028 #line 10027 "hphp.5.tab.cpp" /* yacc.c:1651 */
10029 break;
10031 case 474:
10032 #line 2154 "hphp.y" /* yacc.c:1651 */
10033 { _p->onYield((yyval), &(yyvsp[0]));}
10034 #line 10033 "hphp.5.tab.cpp" /* yacc.c:1651 */
10035 break;
10037 case 475:
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 */
10041 break;
10043 case 476:
10044 #line 2156 "hphp.y" /* yacc.c:1651 */
10045 { (yyval) = (yyvsp[-1]); }
10046 #line 10045 "hphp.5.tab.cpp" /* yacc.c:1651 */
10047 break;
10049 case 477:
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 */
10053 break;
10055 case 478:
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 */
10059 break;
10061 case 479:
10062 #line 2169 "hphp.y" /* yacc.c:1651 */
10063 { _p->onYieldFrom((yyval),&(yyvsp[0]));}
10064 #line 10063 "hphp.5.tab.cpp" /* yacc.c:1651 */
10065 break;
10067 case 480:
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 */
10071 break;
10073 case 481:
10074 #line 2177 "hphp.y" /* yacc.c:1651 */
10075 { _p->onAwait((yyval), (yyvsp[0])); }
10076 #line 10075 "hphp.5.tab.cpp" /* yacc.c:1651 */
10077 break;
10079 case 482:
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 */
10083 break;
10085 case 483:
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 */
10089 break;
10091 case 484:
10092 #line 2190 "hphp.y" /* yacc.c:1651 */
10093 { (yyval) = (yyvsp[-1]);}
10094 #line 10093 "hphp.5.tab.cpp" /* yacc.c:1651 */
10095 break;
10097 case 485:
10098 #line 2194 "hphp.y" /* yacc.c:1651 */
10099 { (yyval) = (yyvsp[0]);}
10100 #line 10099 "hphp.5.tab.cpp" /* yacc.c:1651 */
10101 break;
10103 case 486:
10104 #line 2195 "hphp.y" /* yacc.c:1651 */
10105 { (yyval) = (yyvsp[0]);}
10106 #line 10105 "hphp.5.tab.cpp" /* yacc.c:1651 */
10107 break;
10109 case 487:
10110 #line 2196 "hphp.y" /* yacc.c:1651 */
10111 { (yyval) = (yyvsp[0]);}
10112 #line 10111 "hphp.5.tab.cpp" /* yacc.c:1651 */
10113 break;
10115 case 488:
10116 #line 2197 "hphp.y" /* yacc.c:1651 */
10117 { (yyval) = (yyvsp[0]);}
10118 #line 10117 "hphp.5.tab.cpp" /* yacc.c:1651 */
10119 break;
10121 case 489:
10122 #line 2198 "hphp.y" /* yacc.c:1651 */
10123 { (yyval) = (yyvsp[0]);}
10124 #line 10123 "hphp.5.tab.cpp" /* yacc.c:1651 */
10125 break;
10127 case 490:
10128 #line 2202 "hphp.y" /* yacc.c:1651 */
10129 { (yyval) = (yyvsp[-1]); }
10130 #line 10129 "hphp.5.tab.cpp" /* yacc.c:1651 */
10131 break;
10133 case 491:
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 */
10137 break;
10139 case 492:
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 */
10143 break;
10145 case 493:
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 */
10149 break;
10151 case 494:
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 */
10155 break;
10157 case 495:
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 */
10161 break;
10163 case 496:
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 */
10167 break;
10169 case 497:
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 */
10173 break;
10175 case 498:
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 */
10179 break;
10181 case 499:
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 */
10185 break;
10187 case 500:
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 */
10191 break;
10193 case 501:
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 */
10197 break;
10199 case 502:
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 */
10203 break;
10205 case 503:
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 */
10209 break;
10211 case 504:
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 */
10215 break;
10217 case 505:
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 */
10221 break;
10223 case 506:
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 */
10227 break;
10229 case 507:
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 */
10233 break;
10235 case 508:
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 */
10239 break;
10241 case 509:
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 */
10245 break;
10247 case 510:
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 */
10251 break;
10253 case 511:
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 */
10257 break;
10259 case 512:
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 */
10263 break;
10265 case 513:
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 */
10269 break;
10271 case 514:
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 */
10275 break;
10277 case 515:
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 */
10281 break;
10283 case 516:
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 */
10287 break;
10289 case 517:
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 */
10293 break;
10295 case 518:
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 */
10299 break;
10301 case 519:
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 */
10305 break;
10307 case 520:
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 */
10311 break;
10313 case 521:
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 */
10317 break;
10319 case 522:
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 */
10323 break;
10325 case 523:
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 */
10329 break;
10331 case 524:
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 */
10335 break;
10337 case 525:
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 */
10341 break;
10343 case 526:
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 */
10347 break;
10349 case 527:
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 */
10353 break;
10355 case 528:
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 */
10359 break;
10361 case 529:
10362 #line 2247 "hphp.y" /* yacc.c:1651 */
10363 { UEXP((yyval),(yyvsp[0]),'+',1);}
10364 #line 10363 "hphp.5.tab.cpp" /* yacc.c:1651 */
10365 break;
10367 case 530:
10368 #line 2248 "hphp.y" /* yacc.c:1651 */
10369 { UEXP((yyval),(yyvsp[0]),'-',1);}
10370 #line 10369 "hphp.5.tab.cpp" /* yacc.c:1651 */
10371 break;
10373 case 531:
10374 #line 2249 "hphp.y" /* yacc.c:1651 */
10375 { UEXP((yyval),(yyvsp[0]),'!',1);}
10376 #line 10375 "hphp.5.tab.cpp" /* yacc.c:1651 */
10377 break;
10379 case 532:
10380 #line 2250 "hphp.y" /* yacc.c:1651 */
10381 { UEXP((yyval),(yyvsp[0]),'~',1);}
10382 #line 10381 "hphp.5.tab.cpp" /* yacc.c:1651 */
10383 break;
10385 case 533:
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 */
10389 break;
10391 case 534:
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 */
10395 break;
10397 case 535:
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 */
10401 break;
10403 case 536:
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 */
10407 break;
10409 case 537:
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 */
10413 break;
10415 case 538:
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 */
10420 break;
10422 case 539:
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 */
10426 break;
10428 case 540:
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 */
10433 break;
10435 case 541:
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 */
10439 break;
10441 case 542:
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 */
10445 break;
10447 case 543:
10448 #line 2264 "hphp.y" /* yacc.c:1651 */
10449 { (yyval) = (yyvsp[0]);}
10450 #line 10449 "hphp.5.tab.cpp" /* yacc.c:1651 */
10451 break;
10453 case 544:
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 */
10457 break;
10459 case 545:
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 */
10463 break;
10465 case 546:
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 */
10469 break;
10471 case 547:
10472 #line 2268 "hphp.y" /* yacc.c:1651 */
10473 { (yyval) = (yyvsp[0]);}
10474 #line 10473 "hphp.5.tab.cpp" /* yacc.c:1651 */
10475 break;
10477 case 548:
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 */
10481 break;
10483 case 549:
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 */
10487 break;
10489 case 550:
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 */
10493 break;
10495 case 551:
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 */
10499 break;
10501 case 552:
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 */
10505 break;
10507 case 553:
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 */
10511 break;
10513 case 554:
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 */
10517 break;
10519 case 555:
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 */
10523 break;
10525 case 556:
10526 #line 2277 "hphp.y" /* yacc.c:1651 */
10527 { UEXP((yyval),(yyvsp[0]),'@',1);}
10528 #line 10527 "hphp.5.tab.cpp" /* yacc.c:1651 */
10529 break;
10531 case 557:
10532 #line 2278 "hphp.y" /* yacc.c:1651 */
10533 { (yyval) = (yyvsp[0]); }
10534 #line 10533 "hphp.5.tab.cpp" /* yacc.c:1651 */
10535 break;
10537 case 558:
10538 #line 2279 "hphp.y" /* yacc.c:1651 */
10539 { (yyval) = (yyvsp[0]); }
10540 #line 10539 "hphp.5.tab.cpp" /* yacc.c:1651 */
10541 break;
10543 case 559:
10544 #line 2280 "hphp.y" /* yacc.c:1651 */
10545 { (yyval) = (yyvsp[0]); }
10546 #line 10545 "hphp.5.tab.cpp" /* yacc.c:1651 */
10547 break;
10549 case 560:
10550 #line 2281 "hphp.y" /* yacc.c:1651 */
10551 { (yyval) = (yyvsp[0]); }
10552 #line 10551 "hphp.5.tab.cpp" /* yacc.c:1651 */
10553 break;
10555 case 561:
10556 #line 2282 "hphp.y" /* yacc.c:1651 */
10557 { (yyval) = (yyvsp[0]); }
10558 #line 10557 "hphp.5.tab.cpp" /* yacc.c:1651 */
10559 break;
10561 case 562:
10562 #line 2283 "hphp.y" /* yacc.c:1651 */
10563 { (yyval) = (yyvsp[0]); }
10564 #line 10563 "hphp.5.tab.cpp" /* yacc.c:1651 */
10565 break;
10567 case 563:
10568 #line 2284 "hphp.y" /* yacc.c:1651 */
10569 { (yyval) = (yyvsp[0]); }
10570 #line 10569 "hphp.5.tab.cpp" /* yacc.c:1651 */
10571 break;
10573 case 564:
10574 #line 2285 "hphp.y" /* yacc.c:1651 */
10575 { (yyval) = (yyvsp[0]); }
10576 #line 10575 "hphp.5.tab.cpp" /* yacc.c:1651 */
10577 break;
10579 case 565:
10580 #line 2286 "hphp.y" /* yacc.c:1651 */
10581 { (yyval) = (yyvsp[0]); }
10582 #line 10581 "hphp.5.tab.cpp" /* yacc.c:1651 */
10583 break;
10585 case 566:
10586 #line 2287 "hphp.y" /* yacc.c:1651 */
10587 { _p->onEncapsList((yyval),'`',(yyvsp[-1]));}
10588 #line 10587 "hphp.5.tab.cpp" /* yacc.c:1651 */
10589 break;
10591 case 567:
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 */
10595 break;
10597 case 568:
10598 #line 2289 "hphp.y" /* yacc.c:1651 */
10599 { (yyval) = (yyvsp[0]);}
10600 #line 10599 "hphp.5.tab.cpp" /* yacc.c:1651 */
10601 break;
10603 case 569:
10604 #line 2296 "hphp.y" /* yacc.c:1651 */
10605 { (yyval) = (yyvsp[-2]);}
10606 #line 10605 "hphp.5.tab.cpp" /* yacc.c:1651 */
10607 break;
10609 case 570:
10610 #line 2297 "hphp.y" /* yacc.c:1651 */
10611 { (yyval).reset();}
10612 #line 10611 "hphp.5.tab.cpp" /* yacc.c:1651 */
10613 break;
10615 case 571:
10616 #line 2302 "hphp.y" /* yacc.c:1651 */
10617 { Token t;
10618 _p->onNewLabelScope(true);
10619 _p->onClosureStart(t);
10620 _p->pushLabelInfo(); }
10621 #line 10620 "hphp.5.tab.cpp" /* yacc.c:1651 */
10622 break;
10624 case 572:
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 */
10634 break;
10636 case 573:
10637 #line 2317 "hphp.y" /* yacc.c:1651 */
10638 { Token t;
10639 _p->onNewLabelScope(true);
10640 _p->onClosureStart(t);
10641 _p->pushLabelInfo(); }
10642 #line 10641 "hphp.5.tab.cpp" /* yacc.c:1651 */
10643 break;
10645 case 574:
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 */
10655 break;
10657 case 575:
10658 #line 2334 "hphp.y" /* yacc.c:1651 */
10659 { _p->pushFuncLocation();
10660 Token t;
10661 _p->onNewLabelScope(true);
10662 _p->onClosureStart(t);
10663 _p->pushLabelInfo();
10664 Token u;
10665 _p->onParam((yyvsp[0]),NULL,u,(yyvsp[0]),
10666 ParamMode::In,
10667 NULL,NULL,NULL);}
10668 #line 10667 "hphp.5.tab.cpp" /* yacc.c:1651 */
10669 break;
10671 case 576:
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,
10678 &(yyvsp[-3]),
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 */
10684 break;
10686 case 577:
10687 #line 2354 "hphp.y" /* yacc.c:1651 */
10688 { _p->pushFuncLocation();
10689 Token t;
10690 _p->onNewLabelScope(true);
10691 _p->onClosureStart(t);
10692 _p->pushLabelInfo();}
10693 #line 10692 "hphp.5.tab.cpp" /* yacc.c:1651 */
10694 break;
10696 case 578:
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,
10703 &(yyvsp[-6]),
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 */
10709 break;
10711 case 579:
10712 #line 2373 "hphp.y" /* yacc.c:1651 */
10713 { _p->pushFuncLocation();
10714 Token t;
10715 _p->onNewLabelScope(true);
10716 _p->onClosureStart(t);
10717 _p->pushLabelInfo();}
10718 #line 10717 "hphp.5.tab.cpp" /* yacc.c:1651 */
10719 break;
10721 case 580:
10722 #line 2379 "hphp.y" /* yacc.c:1651 */
10723 { Token u; Token v; Token w; Token x;
10724 Token y;
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,
10729 &(yyvsp[-4]),
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 */
10736 break;
10738 case 581:
10739 #line 2391 "hphp.y" /* yacc.c:1651 */
10740 { _p->pushFuncLocation();
10741 Token t;
10742 _p->onNewLabelScope(true);
10743 _p->onClosureStart(t);
10744 _p->pushLabelInfo();
10745 Token u;
10746 _p->onParam((yyvsp[0]),NULL,u,(yyvsp[0]),
10747 ParamMode::In,
10748 NULL,NULL,NULL);}
10749 #line 10748 "hphp.5.tab.cpp" /* yacc.c:1651 */
10750 break;
10752 case 582:
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,
10757 nullptr,
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 */
10763 break;
10765 case 583:
10766 #line 2408 "hphp.y" /* yacc.c:1651 */
10767 { _p->pushFuncLocation();
10768 Token t;
10769 _p->onNewLabelScope(true);
10770 _p->onClosureStart(t);
10771 _p->pushLabelInfo();}
10772 #line 10771 "hphp.5.tab.cpp" /* yacc.c:1651 */
10773 break;
10775 case 584:
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,
10780 nullptr,
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 */
10786 break;
10788 case 585:
10789 #line 2427 "hphp.y" /* yacc.c:1651 */
10790 { (yyval) = _p->onExprForLambda((yyvsp[0]));}
10791 #line 10790 "hphp.5.tab.cpp" /* yacc.c:1651 */
10792 break;
10794 case 586:
10795 #line 2428 "hphp.y" /* yacc.c:1651 */
10796 { (yyval) = _p->onExprForLambda((yyvsp[0]));}
10797 #line 10796 "hphp.5.tab.cpp" /* yacc.c:1651 */
10798 break;
10800 case 587:
10801 #line 2430 "hphp.y" /* yacc.c:1651 */
10802 { (yyval) = (yyvsp[-1]); }
10803 #line 10802 "hphp.5.tab.cpp" /* yacc.c:1651 */
10804 break;
10806 case 588:
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 */
10811 break;
10813 case 589:
10814 #line 2436 "hphp.y" /* yacc.c:1651 */
10815 { (yyval) = (yyvsp[0]); }
10816 #line 10815 "hphp.5.tab.cpp" /* yacc.c:1651 */
10817 break;
10819 case 590:
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 */
10823 break;
10825 case 591:
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 */
10829 break;
10831 case 592:
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 */
10835 break;
10837 case 593:
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 */
10841 break;
10843 case 594:
10844 #line 2461 "hphp.y" /* yacc.c:1651 */
10845 { (yyval) = (yyvsp[-1]); }
10846 #line 10845 "hphp.5.tab.cpp" /* yacc.c:1651 */
10847 break;
10849 case 595:
10850 #line 2462 "hphp.y" /* yacc.c:1651 */
10851 { (yyval).reset(); }
10852 #line 10851 "hphp.5.tab.cpp" /* yacc.c:1651 */
10853 break;
10855 case 596:
10856 #line 2467 "hphp.y" /* yacc.c:1651 */
10857 { (yyval) = (yyvsp[-1]); }
10858 #line 10857 "hphp.5.tab.cpp" /* yacc.c:1651 */
10859 break;
10861 case 597:
10862 #line 2468 "hphp.y" /* yacc.c:1651 */
10863 { (yyval).reset(); }
10864 #line 10863 "hphp.5.tab.cpp" /* yacc.c:1651 */
10865 break;
10867 case 598:
10868 #line 2472 "hphp.y" /* yacc.c:1651 */
10869 { _p->onDArray((yyval), (yyvsp[-1]));}
10870 #line 10869 "hphp.5.tab.cpp" /* yacc.c:1651 */
10871 break;
10873 case 599:
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 */
10877 break;
10879 case 600:
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 */
10883 break;
10885 case 601:
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 */
10889 break;
10891 case 602:
10892 #line 2483 "hphp.y" /* yacc.c:1651 */
10893 { (yyval) = (yyvsp[-1]);}
10894 #line 10893 "hphp.5.tab.cpp" /* yacc.c:1651 */
10895 break;
10897 case 603:
10898 #line 2484 "hphp.y" /* yacc.c:1651 */
10899 { (yyval).reset();}
10900 #line 10899 "hphp.5.tab.cpp" /* yacc.c:1651 */
10901 break;
10903 case 604:
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 */
10907 break;
10909 case 605:
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 */
10913 break;
10915 case 606:
10916 #line 2495 "hphp.y" /* yacc.c:1651 */
10917 { (yyval) = (yyvsp[-1]);}
10918 #line 10917 "hphp.5.tab.cpp" /* yacc.c:1651 */
10919 break;
10921 case 607:
10922 #line 2496 "hphp.y" /* yacc.c:1651 */
10923 { (yyval).reset();}
10924 #line 10923 "hphp.5.tab.cpp" /* yacc.c:1651 */
10925 break;
10927 case 608:
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 */
10931 break;
10933 case 609:
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 */
10937 break;
10939 case 610:
10940 #line 2509 "hphp.y" /* yacc.c:1651 */
10941 { (yyval) = (yyvsp[-1]);}
10942 #line 10941 "hphp.5.tab.cpp" /* yacc.c:1651 */
10943 break;
10945 case 611:
10946 #line 2510 "hphp.y" /* yacc.c:1651 */
10947 { (yyval).reset();}
10948 #line 10947 "hphp.5.tab.cpp" /* yacc.c:1651 */
10949 break;
10951 case 612:
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 */
10955 break;
10957 case 613:
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 */
10961 break;
10963 case 614:
10964 #line 2522 "hphp.y" /* yacc.c:1651 */
10965 { _p->onDict((yyval), (yyvsp[-1])); }
10966 #line 10965 "hphp.5.tab.cpp" /* yacc.c:1651 */
10967 break;
10969 case 615:
10970 #line 2526 "hphp.y" /* yacc.c:1651 */
10971 { _p->onDict((yyval), (yyvsp[-1])); }
10972 #line 10971 "hphp.5.tab.cpp" /* yacc.c:1651 */
10973 break;
10975 case 616:
10976 #line 2530 "hphp.y" /* yacc.c:1651 */
10977 { _p->onDict((yyval), (yyvsp[-1])); }
10978 #line 10977 "hphp.5.tab.cpp" /* yacc.c:1651 */
10979 break;
10981 case 617:
10982 #line 2534 "hphp.y" /* yacc.c:1651 */
10983 { _p->onVec((yyval), (yyvsp[-1])); }
10984 #line 10983 "hphp.5.tab.cpp" /* yacc.c:1651 */
10985 break;
10987 case 618:
10988 #line 2538 "hphp.y" /* yacc.c:1651 */
10989 { _p->onVec((yyval), (yyvsp[-1])); }
10990 #line 10989 "hphp.5.tab.cpp" /* yacc.c:1651 */
10991 break;
10993 case 619:
10994 #line 2542 "hphp.y" /* yacc.c:1651 */
10995 { _p->onVec((yyval), (yyvsp[-1])); }
10996 #line 10995 "hphp.5.tab.cpp" /* yacc.c:1651 */
10997 break;
10999 case 620:
11000 #line 2546 "hphp.y" /* yacc.c:1651 */
11001 { _p->onKeyset((yyval), (yyvsp[-1])); }
11002 #line 11001 "hphp.5.tab.cpp" /* yacc.c:1651 */
11003 break;
11005 case 621:
11006 #line 2550 "hphp.y" /* yacc.c:1651 */
11007 { _p->onKeyset((yyval), (yyvsp[-1])); }
11008 #line 11007 "hphp.5.tab.cpp" /* yacc.c:1651 */
11009 break;
11011 case 622:
11012 #line 2554 "hphp.y" /* yacc.c:1651 */
11013 { _p->onKeyset((yyval), (yyvsp[-1])); }
11014 #line 11013 "hphp.5.tab.cpp" /* yacc.c:1651 */
11015 break;
11017 case 623:
11018 #line 2558 "hphp.y" /* yacc.c:1651 */
11019 { _p->onVArray((yyval),(yyvsp[-1])); }
11020 #line 11019 "hphp.5.tab.cpp" /* yacc.c:1651 */
11021 break;
11023 case 624:
11024 #line 2562 "hphp.y" /* yacc.c:1651 */
11025 { _p->onVArray((yyval),(yyvsp[-1])); }
11026 #line 11025 "hphp.5.tab.cpp" /* yacc.c:1651 */
11027 break;
11029 case 625:
11030 #line 2566 "hphp.y" /* yacc.c:1651 */
11031 { _p->onVArray((yyval),(yyvsp[-1])); }
11032 #line 11031 "hphp.5.tab.cpp" /* yacc.c:1651 */
11033 break;
11035 case 626:
11036 #line 2570 "hphp.y" /* yacc.c:1651 */
11037 { _p->onVArray((yyval),(yyvsp[-1])); }
11038 #line 11037 "hphp.5.tab.cpp" /* yacc.c:1651 */
11039 break;
11041 case 627:
11042 #line 2574 "hphp.y" /* yacc.c:1651 */
11043 { _p->onVArray((yyval),(yyvsp[-1])); }
11044 #line 11043 "hphp.5.tab.cpp" /* yacc.c:1651 */
11045 break;
11047 case 628:
11048 #line 2578 "hphp.y" /* yacc.c:1651 */
11049 { _p->onVArray((yyval),(yyvsp[-1])); }
11050 #line 11049 "hphp.5.tab.cpp" /* yacc.c:1651 */
11051 break;
11053 case 629:
11054 #line 2582 "hphp.y" /* yacc.c:1651 */
11055 { _p->onDArray((yyval),(yyvsp[-1])); }
11056 #line 11055 "hphp.5.tab.cpp" /* yacc.c:1651 */
11057 break;
11059 case 630:
11060 #line 2586 "hphp.y" /* yacc.c:1651 */
11061 { _p->onDArray((yyval),(yyvsp[-1])); }
11062 #line 11061 "hphp.5.tab.cpp" /* yacc.c:1651 */
11063 break;
11065 case 631:
11066 #line 2590 "hphp.y" /* yacc.c:1651 */
11067 { _p->onDArray((yyval),(yyvsp[-1])); }
11068 #line 11067 "hphp.5.tab.cpp" /* yacc.c:1651 */
11069 break;
11071 case 632:
11072 #line 2595 "hphp.y" /* yacc.c:1651 */
11073 { (yyval) = (yyvsp[-1]);}
11074 #line 11073 "hphp.5.tab.cpp" /* yacc.c:1651 */
11075 break;
11077 case 633:
11078 #line 2596 "hphp.y" /* yacc.c:1651 */
11079 { (yyval).reset();}
11080 #line 11079 "hphp.5.tab.cpp" /* yacc.c:1651 */
11081 break;
11083 case 634:
11084 #line 2601 "hphp.y" /* yacc.c:1651 */
11085 { (yyval) = (yyvsp[-1]);}
11086 #line 11085 "hphp.5.tab.cpp" /* yacc.c:1651 */
11087 break;
11089 case 635:
11090 #line 2602 "hphp.y" /* yacc.c:1651 */
11091 { (yyval).reset();}
11092 #line 11091 "hphp.5.tab.cpp" /* yacc.c:1651 */
11093 break;
11095 case 636:
11096 #line 2607 "hphp.y" /* yacc.c:1651 */
11097 { (yyval) = (yyvsp[-1]);}
11098 #line 11097 "hphp.5.tab.cpp" /* yacc.c:1651 */
11099 break;
11101 case 637:
11102 #line 2608 "hphp.y" /* yacc.c:1651 */
11103 { (yyval).reset();}
11104 #line 11103 "hphp.5.tab.cpp" /* yacc.c:1651 */
11105 break;
11107 case 638:
11108 #line 2613 "hphp.y" /* yacc.c:1651 */
11109 { Token t;
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 */
11113 break;
11115 case 639:
11116 #line 2620 "hphp.y" /* yacc.c:1651 */
11117 { Token t;
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 */
11121 break;
11123 case 640:
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 */
11127 break;
11129 case 641:
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 */
11133 break;
11135 case 642:
11136 #line 2633 "hphp.y" /* yacc.c:1651 */
11137 { (yyval) = (yyvsp[0]);}
11138 #line 11137 "hphp.5.tab.cpp" /* yacc.c:1651 */
11139 break;
11141 case 643:
11142 #line 2634 "hphp.y" /* yacc.c:1651 */
11143 { (yyval) = (yyvsp[0]);}
11144 #line 11143 "hphp.5.tab.cpp" /* yacc.c:1651 */
11145 break;
11147 case 644:
11148 #line 2635 "hphp.y" /* yacc.c:1651 */
11149 { (yyval) = (yyvsp[0]);}
11150 #line 11149 "hphp.5.tab.cpp" /* yacc.c:1651 */
11151 break;
11153 case 645:
11154 #line 2636 "hphp.y" /* yacc.c:1651 */
11155 { (yyval) = (yyvsp[0]);}
11156 #line 11155 "hphp.5.tab.cpp" /* yacc.c:1651 */
11157 break;
11159 case 646:
11160 #line 2637 "hphp.y" /* yacc.c:1651 */
11161 { (yyval) = (yyvsp[0]);}
11162 #line 11161 "hphp.5.tab.cpp" /* yacc.c:1651 */
11163 break;
11165 case 647:
11166 #line 2638 "hphp.y" /* yacc.c:1651 */
11167 { (yyval) = (yyvsp[0]);}
11168 #line 11167 "hphp.5.tab.cpp" /* yacc.c:1651 */
11169 break;
11171 case 648:
11172 #line 2639 "hphp.y" /* yacc.c:1651 */
11173 { (yyval) = (yyvsp[0]);}
11174 #line 11173 "hphp.5.tab.cpp" /* yacc.c:1651 */
11175 break;
11177 case 649:
11178 #line 2640 "hphp.y" /* yacc.c:1651 */
11179 { (yyval) = (yyvsp[0]);}
11180 #line 11179 "hphp.5.tab.cpp" /* yacc.c:1651 */
11181 break;
11183 case 650:
11184 #line 2641 "hphp.y" /* yacc.c:1651 */
11185 { (yyval) = (yyvsp[0]);}
11186 #line 11185 "hphp.5.tab.cpp" /* yacc.c:1651 */
11187 break;
11189 case 651:
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 */
11194 break;
11196 case 652:
11197 #line 2644 "hphp.y" /* yacc.c:1651 */
11198 { (yyval) = (yyvsp[-1]);}
11199 #line 11198 "hphp.5.tab.cpp" /* yacc.c:1651 */
11200 break;
11202 case 653:
11203 #line 2645 "hphp.y" /* yacc.c:1651 */
11204 { (yyval) = (yyvsp[0]);}
11205 #line 11204 "hphp.5.tab.cpp" /* yacc.c:1651 */
11206 break;
11208 case 654:
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 */
11212 break;
11214 case 655:
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 */
11218 break;
11220 case 656:
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 */
11224 break;
11226 case 657:
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 */
11230 break;
11232 case 658:
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 */
11236 break;
11238 case 659:
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,
11245 ParamMode::In,0);
11246 _p->onCallParam((yyval), &(yyvsp[-1]),t2,
11247 ParamMode::In,0);
11248 _p->onCallParam((yyvsp[-1]), &(yyvsp[-1]),file,
11249 ParamMode::In,0);
11250 _p->onCallParam((yyvsp[-1]), &(yyvsp[-1]),line,
11251 ParamMode::In,0);
11252 (yyval).setText("");}
11253 #line 11252 "hphp.5.tab.cpp" /* yacc.c:1651 */
11254 break;
11256 case 660:
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]),
11263 ParamMode::In,0);
11264 _p->onCallParam((yyval), &(yyvsp[-4]),(yyvsp[-1]),
11265 ParamMode::In,0);
11266 _p->onCallParam((yyvsp[-4]), &(yyvsp[-4]),file,
11267 ParamMode::In,0);
11268 _p->onCallParam((yyvsp[-4]), &(yyvsp[-4]),line,
11269 ParamMode::In,0);
11270 (yyval).setText((yyvsp[0]).text());}
11271 #line 11270 "hphp.5.tab.cpp" /* yacc.c:1651 */
11272 break;
11274 case 661:
11275 #line 2692 "hphp.y" /* yacc.c:1651 */
11276 { (yyval).reset(); (yyval).setText("");}
11277 #line 11276 "hphp.5.tab.cpp" /* yacc.c:1651 */
11278 break;
11280 case 662:
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 */
11284 break;
11286 case 663:
11287 #line 2696 "hphp.y" /* yacc.c:1651 */
11288 { _p->onXhpAttributesStart(); (yyval).reset();}
11289 #line 11288 "hphp.5.tab.cpp" /* yacc.c:1651 */
11290 break;
11292 case 664:
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 */
11296 break;
11298 case 665:
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 */
11302 break;
11304 case 666:
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 */
11308 break;
11310 case 667:
11311 #line 2705 "hphp.y" /* yacc.c:1651 */
11312 { (yyval).reset();}
11313 #line 11312 "hphp.5.tab.cpp" /* yacc.c:1651 */
11314 break;
11316 case 668:
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 */
11321 break;
11323 case 669:
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 */
11329 break;
11331 case 670:
11332 #line 2715 "hphp.y" /* yacc.c:1651 */
11333 { (yyval) = (yyvsp[-1]);}
11334 #line 11333 "hphp.5.tab.cpp" /* yacc.c:1651 */
11335 break;
11337 case 671:
11338 #line 2718 "hphp.y" /* yacc.c:1651 */
11339 { (yyval).reset();
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 */
11347 break;
11349 case 672:
11350 #line 2725 "hphp.y" /* yacc.c:1651 */
11351 { (yyval) = (yyvsp[-1]); }
11352 #line 11351 "hphp.5.tab.cpp" /* yacc.c:1651 */
11353 break;
11355 case 673:
11356 #line 2726 "hphp.y" /* yacc.c:1651 */
11357 { (yyval) = (yyvsp[0]); }
11358 #line 11357 "hphp.5.tab.cpp" /* yacc.c:1651 */
11359 break;
11361 case 674:
11362 #line 2730 "hphp.y" /* yacc.c:1651 */
11363 { (yyval) = (yyvsp[0]);}
11364 #line 11363 "hphp.5.tab.cpp" /* yacc.c:1651 */
11365 break;
11367 case 675:
11368 #line 2732 "hphp.y" /* yacc.c:1651 */
11369 { (yyval) = (yyvsp[-2]) + ":" + (yyvsp[0]);}
11370 #line 11369 "hphp.5.tab.cpp" /* yacc.c:1651 */
11371 break;
11373 case 676:
11374 #line 2734 "hphp.y" /* yacc.c:1651 */
11375 { (yyval) = (yyvsp[-2]) + "-" + (yyvsp[0]);}
11376 #line 11375 "hphp.5.tab.cpp" /* yacc.c:1651 */
11377 break;
11379 case 677:
11380 #line 2738 "hphp.y" /* yacc.c:1651 */
11381 { (yyval) = (yyvsp[0]);}
11382 #line 11381 "hphp.5.tab.cpp" /* yacc.c:1651 */
11383 break;
11385 case 678:
11386 #line 2739 "hphp.y" /* yacc.c:1651 */
11387 { (yyval) = (yyvsp[0]);}
11388 #line 11387 "hphp.5.tab.cpp" /* yacc.c:1651 */
11389 break;
11391 case 679:
11392 #line 2740 "hphp.y" /* yacc.c:1651 */
11393 { (yyval) = (yyvsp[0]);}
11394 #line 11393 "hphp.5.tab.cpp" /* yacc.c:1651 */
11395 break;
11397 case 680:
11398 #line 2741 "hphp.y" /* yacc.c:1651 */
11399 { (yyval) = (yyvsp[0]);}
11400 #line 11399 "hphp.5.tab.cpp" /* yacc.c:1651 */
11401 break;
11403 case 681:
11404 #line 2742 "hphp.y" /* yacc.c:1651 */
11405 { (yyval) = (yyvsp[0]);}
11406 #line 11405 "hphp.5.tab.cpp" /* yacc.c:1651 */
11407 break;
11409 case 682:
11410 #line 2743 "hphp.y" /* yacc.c:1651 */
11411 { (yyval) = (yyvsp[0]);}
11412 #line 11411 "hphp.5.tab.cpp" /* yacc.c:1651 */
11413 break;
11415 case 683:
11416 #line 2744 "hphp.y" /* yacc.c:1651 */
11417 { (yyval) = (yyvsp[0]);}
11418 #line 11417 "hphp.5.tab.cpp" /* yacc.c:1651 */
11419 break;
11421 case 684:
11422 #line 2745 "hphp.y" /* yacc.c:1651 */
11423 { (yyval) = (yyvsp[0]);}
11424 #line 11423 "hphp.5.tab.cpp" /* yacc.c:1651 */
11425 break;
11427 case 685:
11428 #line 2746 "hphp.y" /* yacc.c:1651 */
11429 { (yyval) = (yyvsp[0]);}
11430 #line 11429 "hphp.5.tab.cpp" /* yacc.c:1651 */
11431 break;
11433 case 686:
11434 #line 2747 "hphp.y" /* yacc.c:1651 */
11435 { (yyval) = (yyvsp[0]);}
11436 #line 11435 "hphp.5.tab.cpp" /* yacc.c:1651 */
11437 break;
11439 case 687:
11440 #line 2748 "hphp.y" /* yacc.c:1651 */
11441 { (yyval) = (yyvsp[0]);}
11442 #line 11441 "hphp.5.tab.cpp" /* yacc.c:1651 */
11443 break;
11445 case 688:
11446 #line 2749 "hphp.y" /* yacc.c:1651 */
11447 { (yyval) = (yyvsp[0]);}
11448 #line 11447 "hphp.5.tab.cpp" /* yacc.c:1651 */
11449 break;
11451 case 689:
11452 #line 2750 "hphp.y" /* yacc.c:1651 */
11453 { (yyval) = (yyvsp[0]);}
11454 #line 11453 "hphp.5.tab.cpp" /* yacc.c:1651 */
11455 break;
11457 case 690:
11458 #line 2751 "hphp.y" /* yacc.c:1651 */
11459 { (yyval) = (yyvsp[0]);}
11460 #line 11459 "hphp.5.tab.cpp" /* yacc.c:1651 */
11461 break;
11463 case 691:
11464 #line 2752 "hphp.y" /* yacc.c:1651 */
11465 { (yyval) = (yyvsp[0]);}
11466 #line 11465 "hphp.5.tab.cpp" /* yacc.c:1651 */
11467 break;
11469 case 692:
11470 #line 2753 "hphp.y" /* yacc.c:1651 */
11471 { (yyval) = (yyvsp[0]);}
11472 #line 11471 "hphp.5.tab.cpp" /* yacc.c:1651 */
11473 break;
11475 case 693:
11476 #line 2754 "hphp.y" /* yacc.c:1651 */
11477 { (yyval) = (yyvsp[0]);}
11478 #line 11477 "hphp.5.tab.cpp" /* yacc.c:1651 */
11479 break;
11481 case 694:
11482 #line 2755 "hphp.y" /* yacc.c:1651 */
11483 { (yyval) = (yyvsp[0]);}
11484 #line 11483 "hphp.5.tab.cpp" /* yacc.c:1651 */
11485 break;
11487 case 695:
11488 #line 2756 "hphp.y" /* yacc.c:1651 */
11489 { (yyval) = (yyvsp[0]);}
11490 #line 11489 "hphp.5.tab.cpp" /* yacc.c:1651 */
11491 break;
11493 case 696:
11494 #line 2757 "hphp.y" /* yacc.c:1651 */
11495 { (yyval) = (yyvsp[0]);}
11496 #line 11495 "hphp.5.tab.cpp" /* yacc.c:1651 */
11497 break;
11499 case 697:
11500 #line 2758 "hphp.y" /* yacc.c:1651 */
11501 { (yyval) = (yyvsp[0]);}
11502 #line 11501 "hphp.5.tab.cpp" /* yacc.c:1651 */
11503 break;
11505 case 698:
11506 #line 2759 "hphp.y" /* yacc.c:1651 */
11507 { (yyval) = (yyvsp[0]);}
11508 #line 11507 "hphp.5.tab.cpp" /* yacc.c:1651 */
11509 break;
11511 case 699:
11512 #line 2760 "hphp.y" /* yacc.c:1651 */
11513 { (yyval) = (yyvsp[0]);}
11514 #line 11513 "hphp.5.tab.cpp" /* yacc.c:1651 */
11515 break;
11517 case 700:
11518 #line 2761 "hphp.y" /* yacc.c:1651 */
11519 { (yyval) = (yyvsp[0]);}
11520 #line 11519 "hphp.5.tab.cpp" /* yacc.c:1651 */
11521 break;
11523 case 701:
11524 #line 2762 "hphp.y" /* yacc.c:1651 */
11525 { (yyval) = (yyvsp[0]);}
11526 #line 11525 "hphp.5.tab.cpp" /* yacc.c:1651 */
11527 break;
11529 case 702:
11530 #line 2763 "hphp.y" /* yacc.c:1651 */
11531 { (yyval) = (yyvsp[0]);}
11532 #line 11531 "hphp.5.tab.cpp" /* yacc.c:1651 */
11533 break;
11535 case 703:
11536 #line 2764 "hphp.y" /* yacc.c:1651 */
11537 { (yyval) = (yyvsp[0]);}
11538 #line 11537 "hphp.5.tab.cpp" /* yacc.c:1651 */
11539 break;
11541 case 704:
11542 #line 2765 "hphp.y" /* yacc.c:1651 */
11543 { (yyval) = (yyvsp[0]);}
11544 #line 11543 "hphp.5.tab.cpp" /* yacc.c:1651 */
11545 break;
11547 case 705:
11548 #line 2766 "hphp.y" /* yacc.c:1651 */
11549 { (yyval) = (yyvsp[0]);}
11550 #line 11549 "hphp.5.tab.cpp" /* yacc.c:1651 */
11551 break;
11553 case 706:
11554 #line 2767 "hphp.y" /* yacc.c:1651 */
11555 { (yyval) = (yyvsp[0]);}
11556 #line 11555 "hphp.5.tab.cpp" /* yacc.c:1651 */
11557 break;
11559 case 707:
11560 #line 2768 "hphp.y" /* yacc.c:1651 */
11561 { (yyval) = (yyvsp[0]);}
11562 #line 11561 "hphp.5.tab.cpp" /* yacc.c:1651 */
11563 break;
11565 case 708:
11566 #line 2769 "hphp.y" /* yacc.c:1651 */
11567 { (yyval) = (yyvsp[0]);}
11568 #line 11567 "hphp.5.tab.cpp" /* yacc.c:1651 */
11569 break;
11571 case 709:
11572 #line 2770 "hphp.y" /* yacc.c:1651 */
11573 { (yyval) = (yyvsp[0]);}
11574 #line 11573 "hphp.5.tab.cpp" /* yacc.c:1651 */
11575 break;
11577 case 710:
11578 #line 2771 "hphp.y" /* yacc.c:1651 */
11579 { (yyval) = (yyvsp[0]);}
11580 #line 11579 "hphp.5.tab.cpp" /* yacc.c:1651 */
11581 break;
11583 case 711:
11584 #line 2772 "hphp.y" /* yacc.c:1651 */
11585 { (yyval) = (yyvsp[0]);}
11586 #line 11585 "hphp.5.tab.cpp" /* yacc.c:1651 */
11587 break;
11589 case 712:
11590 #line 2773 "hphp.y" /* yacc.c:1651 */
11591 { (yyval) = (yyvsp[0]);}
11592 #line 11591 "hphp.5.tab.cpp" /* yacc.c:1651 */
11593 break;
11595 case 713:
11596 #line 2774 "hphp.y" /* yacc.c:1651 */
11597 { (yyval) = (yyvsp[0]);}
11598 #line 11597 "hphp.5.tab.cpp" /* yacc.c:1651 */
11599 break;
11601 case 714:
11602 #line 2775 "hphp.y" /* yacc.c:1651 */
11603 { (yyval) = (yyvsp[0]);}
11604 #line 11603 "hphp.5.tab.cpp" /* yacc.c:1651 */
11605 break;
11607 case 715:
11608 #line 2776 "hphp.y" /* yacc.c:1651 */
11609 { (yyval) = (yyvsp[0]);}
11610 #line 11609 "hphp.5.tab.cpp" /* yacc.c:1651 */
11611 break;
11613 case 716:
11614 #line 2777 "hphp.y" /* yacc.c:1651 */
11615 { (yyval) = (yyvsp[0]);}
11616 #line 11615 "hphp.5.tab.cpp" /* yacc.c:1651 */
11617 break;
11619 case 717:
11620 #line 2778 "hphp.y" /* yacc.c:1651 */
11621 { (yyval) = (yyvsp[0]);}
11622 #line 11621 "hphp.5.tab.cpp" /* yacc.c:1651 */
11623 break;
11625 case 718:
11626 #line 2779 "hphp.y" /* yacc.c:1651 */
11627 { (yyval) = (yyvsp[0]);}
11628 #line 11627 "hphp.5.tab.cpp" /* yacc.c:1651 */
11629 break;
11631 case 719:
11632 #line 2780 "hphp.y" /* yacc.c:1651 */
11633 { (yyval) = (yyvsp[0]);}
11634 #line 11633 "hphp.5.tab.cpp" /* yacc.c:1651 */
11635 break;
11637 case 720:
11638 #line 2781 "hphp.y" /* yacc.c:1651 */
11639 { (yyval) = (yyvsp[0]);}
11640 #line 11639 "hphp.5.tab.cpp" /* yacc.c:1651 */
11641 break;
11643 case 721:
11644 #line 2782 "hphp.y" /* yacc.c:1651 */
11645 { (yyval) = (yyvsp[0]);}
11646 #line 11645 "hphp.5.tab.cpp" /* yacc.c:1651 */
11647 break;
11649 case 722:
11650 #line 2783 "hphp.y" /* yacc.c:1651 */
11651 { (yyval) = (yyvsp[0]);}
11652 #line 11651 "hphp.5.tab.cpp" /* yacc.c:1651 */
11653 break;
11655 case 723:
11656 #line 2784 "hphp.y" /* yacc.c:1651 */
11657 { (yyval) = (yyvsp[0]);}
11658 #line 11657 "hphp.5.tab.cpp" /* yacc.c:1651 */
11659 break;
11661 case 724:
11662 #line 2785 "hphp.y" /* yacc.c:1651 */
11663 { (yyval) = (yyvsp[0]);}
11664 #line 11663 "hphp.5.tab.cpp" /* yacc.c:1651 */
11665 break;
11667 case 725:
11668 #line 2786 "hphp.y" /* yacc.c:1651 */
11669 { (yyval) = (yyvsp[0]);}
11670 #line 11669 "hphp.5.tab.cpp" /* yacc.c:1651 */
11671 break;
11673 case 726:
11674 #line 2787 "hphp.y" /* yacc.c:1651 */
11675 { (yyval) = (yyvsp[0]);}
11676 #line 11675 "hphp.5.tab.cpp" /* yacc.c:1651 */
11677 break;
11679 case 727:
11680 #line 2788 "hphp.y" /* yacc.c:1651 */
11681 { (yyval) = (yyvsp[0]);}
11682 #line 11681 "hphp.5.tab.cpp" /* yacc.c:1651 */
11683 break;
11685 case 728:
11686 #line 2789 "hphp.y" /* yacc.c:1651 */
11687 { (yyval) = (yyvsp[0]);}
11688 #line 11687 "hphp.5.tab.cpp" /* yacc.c:1651 */
11689 break;
11691 case 729:
11692 #line 2790 "hphp.y" /* yacc.c:1651 */
11693 { (yyval) = (yyvsp[0]);}
11694 #line 11693 "hphp.5.tab.cpp" /* yacc.c:1651 */
11695 break;
11697 case 730:
11698 #line 2791 "hphp.y" /* yacc.c:1651 */
11699 { (yyval) = (yyvsp[0]);}
11700 #line 11699 "hphp.5.tab.cpp" /* yacc.c:1651 */
11701 break;
11703 case 731:
11704 #line 2792 "hphp.y" /* yacc.c:1651 */
11705 { (yyval) = (yyvsp[0]);}
11706 #line 11705 "hphp.5.tab.cpp" /* yacc.c:1651 */
11707 break;
11709 case 732:
11710 #line 2793 "hphp.y" /* yacc.c:1651 */
11711 { (yyval) = (yyvsp[0]);}
11712 #line 11711 "hphp.5.tab.cpp" /* yacc.c:1651 */
11713 break;
11715 case 733:
11716 #line 2794 "hphp.y" /* yacc.c:1651 */
11717 { (yyval) = (yyvsp[0]);}
11718 #line 11717 "hphp.5.tab.cpp" /* yacc.c:1651 */
11719 break;
11721 case 734:
11722 #line 2795 "hphp.y" /* yacc.c:1651 */
11723 { (yyval) = (yyvsp[0]);}
11724 #line 11723 "hphp.5.tab.cpp" /* yacc.c:1651 */
11725 break;
11727 case 735:
11728 #line 2796 "hphp.y" /* yacc.c:1651 */
11729 { (yyval) = (yyvsp[0]);}
11730 #line 11729 "hphp.5.tab.cpp" /* yacc.c:1651 */
11731 break;
11733 case 736:
11734 #line 2797 "hphp.y" /* yacc.c:1651 */
11735 { (yyval) = (yyvsp[0]);}
11736 #line 11735 "hphp.5.tab.cpp" /* yacc.c:1651 */
11737 break;
11739 case 737:
11740 #line 2798 "hphp.y" /* yacc.c:1651 */
11741 { (yyval) = (yyvsp[0]);}
11742 #line 11741 "hphp.5.tab.cpp" /* yacc.c:1651 */
11743 break;
11745 case 738:
11746 #line 2799 "hphp.y" /* yacc.c:1651 */
11747 { (yyval) = (yyvsp[0]);}
11748 #line 11747 "hphp.5.tab.cpp" /* yacc.c:1651 */
11749 break;
11751 case 739:
11752 #line 2800 "hphp.y" /* yacc.c:1651 */
11753 { (yyval) = (yyvsp[0]);}
11754 #line 11753 "hphp.5.tab.cpp" /* yacc.c:1651 */
11755 break;
11757 case 740:
11758 #line 2801 "hphp.y" /* yacc.c:1651 */
11759 { (yyval) = (yyvsp[0]);}
11760 #line 11759 "hphp.5.tab.cpp" /* yacc.c:1651 */
11761 break;
11763 case 741:
11764 #line 2802 "hphp.y" /* yacc.c:1651 */
11765 { (yyval) = (yyvsp[0]);}
11766 #line 11765 "hphp.5.tab.cpp" /* yacc.c:1651 */
11767 break;
11769 case 742:
11770 #line 2803 "hphp.y" /* yacc.c:1651 */
11771 { (yyval) = (yyvsp[0]);}
11772 #line 11771 "hphp.5.tab.cpp" /* yacc.c:1651 */
11773 break;
11775 case 743:
11776 #line 2804 "hphp.y" /* yacc.c:1651 */
11777 { (yyval) = (yyvsp[0]);}
11778 #line 11777 "hphp.5.tab.cpp" /* yacc.c:1651 */
11779 break;
11781 case 744:
11782 #line 2805 "hphp.y" /* yacc.c:1651 */
11783 { (yyval) = (yyvsp[0]);}
11784 #line 11783 "hphp.5.tab.cpp" /* yacc.c:1651 */
11785 break;
11787 case 745:
11788 #line 2806 "hphp.y" /* yacc.c:1651 */
11789 { (yyval) = (yyvsp[0]);}
11790 #line 11789 "hphp.5.tab.cpp" /* yacc.c:1651 */
11791 break;
11793 case 746:
11794 #line 2807 "hphp.y" /* yacc.c:1651 */
11795 { (yyval) = (yyvsp[0]);}
11796 #line 11795 "hphp.5.tab.cpp" /* yacc.c:1651 */
11797 break;
11799 case 747:
11800 #line 2808 "hphp.y" /* yacc.c:1651 */
11801 { (yyval) = (yyvsp[0]);}
11802 #line 11801 "hphp.5.tab.cpp" /* yacc.c:1651 */
11803 break;
11805 case 748:
11806 #line 2809 "hphp.y" /* yacc.c:1651 */
11807 { (yyval) = (yyvsp[0]);}
11808 #line 11807 "hphp.5.tab.cpp" /* yacc.c:1651 */
11809 break;
11811 case 749:
11812 #line 2810 "hphp.y" /* yacc.c:1651 */
11813 { (yyval) = (yyvsp[0]);}
11814 #line 11813 "hphp.5.tab.cpp" /* yacc.c:1651 */
11815 break;
11817 case 750:
11818 #line 2811 "hphp.y" /* yacc.c:1651 */
11819 { (yyval) = (yyvsp[0]);}
11820 #line 11819 "hphp.5.tab.cpp" /* yacc.c:1651 */
11821 break;
11823 case 751:
11824 #line 2812 "hphp.y" /* yacc.c:1651 */
11825 { (yyval) = (yyvsp[0]);}
11826 #line 11825 "hphp.5.tab.cpp" /* yacc.c:1651 */
11827 break;
11829 case 752:
11830 #line 2813 "hphp.y" /* yacc.c:1651 */
11831 { (yyval) = (yyvsp[0]);}
11832 #line 11831 "hphp.5.tab.cpp" /* yacc.c:1651 */
11833 break;
11835 case 753:
11836 #line 2814 "hphp.y" /* yacc.c:1651 */
11837 { (yyval) = (yyvsp[0]);}
11838 #line 11837 "hphp.5.tab.cpp" /* yacc.c:1651 */
11839 break;
11841 case 754:
11842 #line 2815 "hphp.y" /* yacc.c:1651 */
11843 { (yyval) = (yyvsp[0]);}
11844 #line 11843 "hphp.5.tab.cpp" /* yacc.c:1651 */
11845 break;
11847 case 755:
11848 #line 2816 "hphp.y" /* yacc.c:1651 */
11849 { (yyval) = (yyvsp[0]);}
11850 #line 11849 "hphp.5.tab.cpp" /* yacc.c:1651 */
11851 break;
11853 case 756:
11854 #line 2817 "hphp.y" /* yacc.c:1651 */
11855 { (yyval) = (yyvsp[0]);}
11856 #line 11855 "hphp.5.tab.cpp" /* yacc.c:1651 */
11857 break;
11859 case 757:
11860 #line 2818 "hphp.y" /* yacc.c:1651 */
11861 { (yyval) = (yyvsp[0]);}
11862 #line 11861 "hphp.5.tab.cpp" /* yacc.c:1651 */
11863 break;
11865 case 758:
11866 #line 2819 "hphp.y" /* yacc.c:1651 */
11867 { (yyval) = (yyvsp[0]);}
11868 #line 11867 "hphp.5.tab.cpp" /* yacc.c:1651 */
11869 break;
11871 case 759:
11872 #line 2820 "hphp.y" /* yacc.c:1651 */
11873 { (yyval) = (yyvsp[0]);}
11874 #line 11873 "hphp.5.tab.cpp" /* yacc.c:1651 */
11875 break;
11877 case 760:
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 */
11881 break;
11883 case 761:
11884 #line 2829 "hphp.y" /* yacc.c:1651 */
11885 { (yyval) = (yyvsp[0]);}
11886 #line 11885 "hphp.5.tab.cpp" /* yacc.c:1651 */
11887 break;
11889 case 762:
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 */
11893 break;
11895 case 763:
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 */
11899 break;
11901 case 764:
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 */
11905 break;
11907 case 765:
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 */
11911 break;
11913 case 766:
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 */
11918 break;
11920 case 767:
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 */
11925 break;
11927 case 768:
11928 #line 2843 "hphp.y" /* yacc.c:1651 */
11929 { (yyval) = (yyvsp[0]); }
11930 #line 11929 "hphp.5.tab.cpp" /* yacc.c:1651 */
11931 break;
11933 case 769:
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 */
11937 break;
11939 case 770:
11940 #line 2855 "hphp.y" /* yacc.c:1651 */
11941 { (yyval) = (yyvsp[0]); }
11942 #line 11941 "hphp.5.tab.cpp" /* yacc.c:1651 */
11943 break;
11945 case 771:
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 */
11950 break;
11952 case 772:
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 */
11957 break;
11959 case 773:
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 */
11963 break;
11965 case 774:
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 */
11969 break;
11971 case 775:
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 */
11975 break;
11977 case 776:
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 */
11981 break;
11983 case 777:
11984 #line 2878 "hphp.y" /* yacc.c:1651 */
11985 { (yyval).reset();}
11986 #line 11985 "hphp.5.tab.cpp" /* yacc.c:1651 */
11987 break;
11989 case 778:
11990 #line 2879 "hphp.y" /* yacc.c:1651 */
11991 { (yyval) = (yyvsp[0]);}
11992 #line 11991 "hphp.5.tab.cpp" /* yacc.c:1651 */
11993 break;
11995 case 779:
11996 #line 2880 "hphp.y" /* yacc.c:1651 */
11997 { (yyval).reset();}
11998 #line 11997 "hphp.5.tab.cpp" /* yacc.c:1651 */
11999 break;
12001 case 780:
12002 #line 2884 "hphp.y" /* yacc.c:1651 */
12003 { (yyval).reset();}
12004 #line 12003 "hphp.5.tab.cpp" /* yacc.c:1651 */
12005 break;
12007 case 781:
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 */
12011 break;
12013 case 782:
12014 #line 2886 "hphp.y" /* yacc.c:1651 */
12015 { (yyval) = (yyvsp[0]);}
12016 #line 12015 "hphp.5.tab.cpp" /* yacc.c:1651 */
12017 break;
12019 case 783:
12020 #line 2890 "hphp.y" /* yacc.c:1651 */
12021 { (yyval) = (yyvsp[-1]);}
12022 #line 12021 "hphp.5.tab.cpp" /* yacc.c:1651 */
12023 break;
12025 case 784:
12026 #line 2891 "hphp.y" /* yacc.c:1651 */
12027 { (yyval).reset();}
12028 #line 12027 "hphp.5.tab.cpp" /* yacc.c:1651 */
12029 break;
12031 case 785:
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 */
12035 break;
12037 case 786:
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 */
12041 break;
12043 case 787:
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 */
12047 break;
12049 case 788:
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 */
12054 break;
12056 case 789:
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 */
12060 break;
12062 case 790:
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 */
12066 break;
12068 case 791:
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 */
12072 break;
12074 case 792:
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 */
12078 break;
12080 case 793:
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 */
12084 break;
12086 case 794:
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 */
12090 break;
12092 case 795:
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 */
12096 break;
12098 case 796:
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 */
12102 break;
12104 case 797:
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 */
12108 break;
12110 case 798:
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 */
12114 break;
12116 case 799:
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 */
12120 break;
12122 case 800:
12123 #line 2917 "hphp.y" /* yacc.c:1651 */
12124 { (yyval) = (yyvsp[0]);}
12125 #line 12124 "hphp.5.tab.cpp" /* yacc.c:1651 */
12126 break;
12128 case 801:
12129 #line 2918 "hphp.y" /* yacc.c:1651 */
12130 { _p->onConstantValue((yyval), (yyvsp[0]));}
12131 #line 12130 "hphp.5.tab.cpp" /* yacc.c:1651 */
12132 break;
12134 case 802:
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 */
12138 break;
12140 case 803:
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 */
12144 break;
12146 case 804:
12147 #line 2923 "hphp.y" /* yacc.c:1651 */
12148 { _p->onDArray((yyval),(yyvsp[-1]));}
12149 #line 12148 "hphp.5.tab.cpp" /* yacc.c:1651 */
12150 break;
12152 case 805:
12153 #line 2924 "hphp.y" /* yacc.c:1651 */
12154 { (yyval) = (yyvsp[0]);}
12155 #line 12154 "hphp.5.tab.cpp" /* yacc.c:1651 */
12156 break;
12158 case 806:
12159 #line 2925 "hphp.y" /* yacc.c:1651 */
12160 { (yyval) = (yyvsp[0]);}
12161 #line 12160 "hphp.5.tab.cpp" /* yacc.c:1651 */
12162 break;
12164 case 807:
12165 #line 2926 "hphp.y" /* yacc.c:1651 */
12166 { (yyval) = (yyvsp[0]);}
12167 #line 12166 "hphp.5.tab.cpp" /* yacc.c:1651 */
12168 break;
12170 case 808:
12171 #line 2927 "hphp.y" /* yacc.c:1651 */
12172 { (yyval) = (yyvsp[0]);}
12173 #line 12172 "hphp.5.tab.cpp" /* yacc.c:1651 */
12174 break;
12176 case 809:
12177 #line 2928 "hphp.y" /* yacc.c:1651 */
12178 { (yyval) = (yyvsp[0]);}
12179 #line 12178 "hphp.5.tab.cpp" /* yacc.c:1651 */
12180 break;
12182 case 810:
12183 #line 2929 "hphp.y" /* yacc.c:1651 */
12184 { (yyval) = (yyvsp[0]);}
12185 #line 12184 "hphp.5.tab.cpp" /* yacc.c:1651 */
12186 break;
12188 case 811:
12189 #line 2930 "hphp.y" /* yacc.c:1651 */
12190 { (yyval) = (yyvsp[0]);}
12191 #line 12190 "hphp.5.tab.cpp" /* yacc.c:1651 */
12192 break;
12194 case 812:
12195 #line 2931 "hphp.y" /* yacc.c:1651 */
12196 { (yyval) = (yyvsp[0]);}
12197 #line 12196 "hphp.5.tab.cpp" /* yacc.c:1651 */
12198 break;
12200 case 813:
12201 #line 2932 "hphp.y" /* yacc.c:1651 */
12202 { (yyval) = (yyvsp[-1]);}
12203 #line 12202 "hphp.5.tab.cpp" /* yacc.c:1651 */
12204 break;
12206 case 814:
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 */
12210 break;
12212 case 815:
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 */
12216 break;
12218 case 816:
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 */
12222 break;
12224 case 817:
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 */
12228 break;
12230 case 818:
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 */
12234 break;
12236 case 819:
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 */
12240 break;
12242 case 820:
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 */
12246 break;
12248 case 821:
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 */
12252 break;
12254 case 822:
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 */
12258 break;
12260 case 823:
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 */
12264 break;
12266 case 824:
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 */
12270 break;
12272 case 825:
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 */
12276 break;
12278 case 826:
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 */
12282 break;
12284 case 827:
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 */
12288 break;
12290 case 828:
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 */
12294 break;
12296 case 829:
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 */
12300 break;
12302 case 830:
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 */
12306 break;
12308 case 831:
12309 #line 2955 "hphp.y" /* yacc.c:1651 */
12310 { UEXP((yyval),(yyvsp[0]),'!',1);}
12311 #line 12310 "hphp.5.tab.cpp" /* yacc.c:1651 */
12312 break;
12314 case 832:
12315 #line 2956 "hphp.y" /* yacc.c:1651 */
12316 { UEXP((yyval),(yyvsp[0]),'~',1);}
12317 #line 12316 "hphp.5.tab.cpp" /* yacc.c:1651 */
12318 break;
12320 case 833:
12321 #line 2957 "hphp.y" /* yacc.c:1651 */
12322 { UEXP((yyval),(yyvsp[0]),'+',1);}
12323 #line 12322 "hphp.5.tab.cpp" /* yacc.c:1651 */
12324 break;
12326 case 834:
12327 #line 2958 "hphp.y" /* yacc.c:1651 */
12328 { UEXP((yyval),(yyvsp[0]),'-',1);}
12329 #line 12328 "hphp.5.tab.cpp" /* yacc.c:1651 */
12330 break;
12332 case 835:
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 */
12336 break;
12338 case 836:
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 */
12342 break;
12344 case 837:
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 */
12348 break;
12350 case 838:
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 */
12354 break;
12356 case 839:
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 */
12360 break;
12362 case 840:
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 */
12367 break;
12369 case 841:
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 */
12373 break;
12375 case 842:
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 */
12380 break;
12382 case 843:
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 */
12386 break;
12388 case 844:
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 */
12392 break;
12394 case 845:
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 */
12398 break;
12400 case 846:
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 */
12404 break;
12406 case 847:
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 */
12410 break;
12412 case 848:
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 */
12416 break;
12418 case 849:
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 */
12422 break;
12424 case 850:
12425 #line 3000 "hphp.y" /* yacc.c:1651 */
12426 { (yyval) = (yyvsp[0]);}
12427 #line 12426 "hphp.5.tab.cpp" /* yacc.c:1651 */
12428 break;
12430 case 851:
12431 #line 3004 "hphp.y" /* yacc.c:1651 */
12432 { _p->onConstantValue((yyval), (yyvsp[0]));}
12433 #line 12432 "hphp.5.tab.cpp" /* yacc.c:1651 */
12434 break;
12436 case 852:
12437 #line 3005 "hphp.y" /* yacc.c:1651 */
12438 { _p->onConstantValue((yyval), (yyvsp[0]));}
12439 #line 12438 "hphp.5.tab.cpp" /* yacc.c:1651 */
12440 break;
12442 case 853:
12443 #line 3006 "hphp.y" /* yacc.c:1651 */
12444 { (yyval) = (yyvsp[0]);}
12445 #line 12444 "hphp.5.tab.cpp" /* yacc.c:1651 */
12446 break;
12448 case 854:
12449 #line 3007 "hphp.y" /* yacc.c:1651 */
12450 { (yyval) = (yyvsp[0]);}
12451 #line 12450 "hphp.5.tab.cpp" /* yacc.c:1651 */
12452 break;
12454 case 855:
12455 #line 3008 "hphp.y" /* yacc.c:1651 */
12456 { _p->onEncapsList((yyval),'"',(yyvsp[-1]));}
12457 #line 12456 "hphp.5.tab.cpp" /* yacc.c:1651 */
12458 break;
12460 case 856:
12461 #line 3009 "hphp.y" /* yacc.c:1651 */
12462 { _p->onEncapsList((yyval),'\'',(yyvsp[-1]));}
12463 #line 12462 "hphp.5.tab.cpp" /* yacc.c:1651 */
12464 break;
12466 case 857:
12467 #line 3011 "hphp.y" /* yacc.c:1651 */
12468 { _p->onEncapsList((yyval),T_START_HEREDOC,
12469 (yyvsp[-1]));}
12470 #line 12469 "hphp.5.tab.cpp" /* yacc.c:1651 */
12471 break;
12473 case 858:
12474 #line 3016 "hphp.y" /* yacc.c:1651 */
12475 { (yyval) = (yyvsp[-1]);}
12476 #line 12475 "hphp.5.tab.cpp" /* yacc.c:1651 */
12477 break;
12479 case 859:
12480 #line 3017 "hphp.y" /* yacc.c:1651 */
12481 { (yyval).reset();}
12482 #line 12481 "hphp.5.tab.cpp" /* yacc.c:1651 */
12483 break;
12485 case 860:
12486 #line 3021 "hphp.y" /* yacc.c:1651 */
12487 { (yyval).reset();}
12488 #line 12487 "hphp.5.tab.cpp" /* yacc.c:1651 */
12489 break;
12491 case 861:
12492 #line 3022 "hphp.y" /* yacc.c:1651 */
12493 { (yyval).reset();}
12494 #line 12493 "hphp.5.tab.cpp" /* yacc.c:1651 */
12495 break;
12497 case 862:
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 */
12501 break;
12503 case 863:
12504 #line 3026 "hphp.y" /* yacc.c:1651 */
12505 { (yyval).reset();}
12506 #line 12505 "hphp.5.tab.cpp" /* yacc.c:1651 */
12507 break;
12509 case 864:
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 */
12513 break;
12515 case 865:
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 */
12519 break;
12521 case 866:
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 */
12525 break;
12527 case 867:
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 */
12531 break;
12533 case 868:
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 */
12537 break;
12539 case 869:
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 */
12543 break;
12545 case 870:
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 */
12549 break;
12551 case 871:
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 */
12555 break;
12557 case 872:
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 */
12561 break;
12563 case 873:
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 */
12567 break;
12569 case 874:
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 */
12573 break;
12575 case 875:
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 */
12579 break;
12581 case 876:
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 */
12585 break;
12587 case 877:
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 */
12592 break;
12594 case 878:
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 */
12600 break;
12602 case 880:
12603 #line 3068 "hphp.y" /* yacc.c:1651 */
12604 { (yyval) = (yyvsp[0]);}
12605 #line 12604 "hphp.5.tab.cpp" /* yacc.c:1651 */
12606 break;
12608 case 881:
12609 #line 3069 "hphp.y" /* yacc.c:1651 */
12610 { (yyval) = (yyvsp[0]);}
12611 #line 12610 "hphp.5.tab.cpp" /* yacc.c:1651 */
12612 break;
12614 case 882:
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 */
12620 break;
12622 case 883:
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 */
12626 break;
12628 case 884:
12629 #line 3076 "hphp.y" /* yacc.c:1651 */
12630 { UEXP((yyval),(yyvsp[0]),'+',1);}
12631 #line 12630 "hphp.5.tab.cpp" /* yacc.c:1651 */
12632 break;
12634 case 885:
12635 #line 3077 "hphp.y" /* yacc.c:1651 */
12636 { UEXP((yyval),(yyvsp[0]),'-',1);}
12637 #line 12636 "hphp.5.tab.cpp" /* yacc.c:1651 */
12638 break;
12640 case 886:
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 */
12644 break;
12646 case 887:
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 */
12650 break;
12652 case 888:
12653 #line 3082 "hphp.y" /* yacc.c:1651 */
12654 { _p->onDArray((yyval),(yyvsp[-1]));}
12655 #line 12654 "hphp.5.tab.cpp" /* yacc.c:1651 */
12656 break;
12658 case 889:
12659 #line 3083 "hphp.y" /* yacc.c:1651 */
12660 { (yyval) = (yyvsp[0]);}
12661 #line 12660 "hphp.5.tab.cpp" /* yacc.c:1651 */
12662 break;
12664 case 890:
12665 #line 3084 "hphp.y" /* yacc.c:1651 */
12666 { (yyval) = (yyvsp[0]);}
12667 #line 12666 "hphp.5.tab.cpp" /* yacc.c:1651 */
12668 break;
12670 case 891:
12671 #line 3085 "hphp.y" /* yacc.c:1651 */
12672 { (yyval) = (yyvsp[0]);}
12673 #line 12672 "hphp.5.tab.cpp" /* yacc.c:1651 */
12674 break;
12676 case 892:
12677 #line 3086 "hphp.y" /* yacc.c:1651 */
12678 { (yyval) = (yyvsp[0]);}
12679 #line 12678 "hphp.5.tab.cpp" /* yacc.c:1651 */
12680 break;
12682 case 893:
12683 #line 3087 "hphp.y" /* yacc.c:1651 */
12684 { (yyval) = (yyvsp[0]);}
12685 #line 12684 "hphp.5.tab.cpp" /* yacc.c:1651 */
12686 break;
12688 case 894:
12689 #line 3088 "hphp.y" /* yacc.c:1651 */
12690 { (yyval) = (yyvsp[0]);}
12691 #line 12690 "hphp.5.tab.cpp" /* yacc.c:1651 */
12692 break;
12694 case 895:
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 */
12698 break;
12700 case 896:
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 */
12704 break;
12706 case 897:
12707 #line 3099 "hphp.y" /* yacc.c:1651 */
12708 { (yyval) = (yyvsp[-1]);}
12709 #line 12708 "hphp.5.tab.cpp" /* yacc.c:1651 */
12710 break;
12712 case 898:
12713 #line 3100 "hphp.y" /* yacc.c:1651 */
12714 { (yyval).reset();}
12715 #line 12714 "hphp.5.tab.cpp" /* yacc.c:1651 */
12716 break;
12718 case 899:
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 */
12722 break;
12724 case 900:
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 */
12728 break;
12730 case 901:
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 */
12734 break;
12736 case 902:
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 */
12740 break;
12742 case 903:
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 */
12746 break;
12748 case 904:
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 */
12752 break;
12754 case 905:
12755 #line 3120 "hphp.y" /* yacc.c:1651 */
12756 { (yyval) = (yyvsp[-1]); }
12757 #line 12756 "hphp.5.tab.cpp" /* yacc.c:1651 */
12758 break;
12760 case 906:
12761 #line 3121 "hphp.y" /* yacc.c:1651 */
12762 { (yyval).reset(); }
12763 #line 12762 "hphp.5.tab.cpp" /* yacc.c:1651 */
12764 break;
12766 case 907:
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 */
12770 break;
12772 case 908:
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 */
12776 break;
12778 case 909:
12779 #line 3134 "hphp.y" /* yacc.c:1651 */
12780 { (yyval) = (yyvsp[-1]);}
12781 #line 12780 "hphp.5.tab.cpp" /* yacc.c:1651 */
12782 break;
12784 case 910:
12785 #line 3135 "hphp.y" /* yacc.c:1651 */
12786 { (yyval).reset();}
12787 #line 12786 "hphp.5.tab.cpp" /* yacc.c:1651 */
12788 break;
12790 case 911:
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 */
12794 break;
12796 case 912:
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 */
12801 break;
12803 case 913:
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 */
12807 break;
12809 case 914:
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 */
12813 break;
12815 case 915:
12816 #line 3151 "hphp.y" /* yacc.c:1651 */
12817 { only_in_hh_syntax(_p);}
12818 #line 12817 "hphp.5.tab.cpp" /* yacc.c:1651 */
12819 break;
12821 case 916:
12822 #line 3153 "hphp.y" /* yacc.c:1651 */
12823 { (yyval) = (yyvsp[-1]);}
12824 #line 12823 "hphp.5.tab.cpp" /* yacc.c:1651 */
12825 break;
12827 case 917:
12828 #line 3156 "hphp.y" /* yacc.c:1651 */
12829 { (yyval) = (yyvsp[-1]);}
12830 #line 12829 "hphp.5.tab.cpp" /* yacc.c:1651 */
12831 break;
12833 case 918:
12834 #line 3159 "hphp.y" /* yacc.c:1651 */
12835 { (yyval) = (yyvsp[0]);}
12836 #line 12835 "hphp.5.tab.cpp" /* yacc.c:1651 */
12837 break;
12839 case 919:
12840 #line 3160 "hphp.y" /* yacc.c:1651 */
12841 { (yyval).reset();}
12842 #line 12841 "hphp.5.tab.cpp" /* yacc.c:1651 */
12843 break;
12845 case 920:
12846 #line 3164 "hphp.y" /* yacc.c:1651 */
12847 { (yyval) = (yyvsp[0]); (yyval) = 0;}
12848 #line 12847 "hphp.5.tab.cpp" /* yacc.c:1651 */
12849 break;
12851 case 921:
12852 #line 3165 "hphp.y" /* yacc.c:1651 */
12853 { (yyval) = (yyvsp[0]); (yyval) = 1;}
12854 #line 12853 "hphp.5.tab.cpp" /* yacc.c:1651 */
12855 break;
12857 case 922:
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 */
12861 break;
12863 case 923:
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 */
12867 break;
12869 case 924:
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 */
12873 break;
12875 case 925:
12876 #line 3175 "hphp.y" /* yacc.c:1651 */
12877 { (yyval) = (yyvsp[0]);}
12878 #line 12877 "hphp.5.tab.cpp" /* yacc.c:1651 */
12879 break;
12881 case 926:
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 */
12885 break;
12887 case 927:
12888 #line 3185 "hphp.y" /* yacc.c:1651 */
12889 { (yyval) = (yyvsp[0]);}
12890 #line 12889 "hphp.5.tab.cpp" /* yacc.c:1651 */
12891 break;
12893 case 928:
12894 #line 3186 "hphp.y" /* yacc.c:1651 */
12895 { (yyval) = (yyvsp[-1]);}
12896 #line 12895 "hphp.5.tab.cpp" /* yacc.c:1651 */
12897 break;
12899 case 929:
12900 #line 3190 "hphp.y" /* yacc.c:1651 */
12901 { (yyval) = (yyvsp[0]);}
12902 #line 12901 "hphp.5.tab.cpp" /* yacc.c:1651 */
12903 break;
12905 case 930:
12906 #line 3192 "hphp.y" /* yacc.c:1651 */
12907 { (yyval) = (yyvsp[0]);}
12908 #line 12907 "hphp.5.tab.cpp" /* yacc.c:1651 */
12909 break;
12911 case 931:
12912 #line 3200 "hphp.y" /* yacc.c:1651 */
12913 { (yyval) = (yyvsp[-1]);}
12914 #line 12913 "hphp.5.tab.cpp" /* yacc.c:1651 */
12915 break;
12917 case 932:
12918 #line 3201 "hphp.y" /* yacc.c:1651 */
12919 { (yyval) = (yyvsp[-1]);}
12920 #line 12919 "hphp.5.tab.cpp" /* yacc.c:1651 */
12921 break;
12923 case 933:
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 */
12927 break;
12929 case 934:
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 */
12933 break;
12935 case 935:
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 */
12939 break;
12941 case 936:
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 */
12945 break;
12947 case 937:
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 */
12951 break;
12953 case 938:
12954 #line 3222 "hphp.y" /* yacc.c:1651 */
12955 { _p->onObjectProperty(
12956 (yyval),
12957 (yyvsp[-3]),
12958 !(yyvsp[-1]).num()
12959 ? HPHP::PropAccessType::Normal
12960 : HPHP::PropAccessType::NullSafe,
12961 (yyvsp[0])
12964 #line 12963 "hphp.5.tab.cpp" /* yacc.c:1651 */
12965 break;
12967 case 939:
12968 #line 3233 "hphp.y" /* yacc.c:1651 */
12969 { _p->onObjectProperty(
12970 (yyval),
12971 (yyvsp[-3]),
12972 !(yyvsp[-1]).num()
12973 ? HPHP::PropAccessType::Normal
12974 : HPHP::PropAccessType::NullSafe,
12975 (yyvsp[0])
12978 #line 12977 "hphp.5.tab.cpp" /* yacc.c:1651 */
12979 break;
12981 case 940:
12982 #line 3248 "hphp.y" /* yacc.c:1651 */
12983 { _p->onObjectProperty(
12984 (yyval),
12985 (yyvsp[-3]),
12986 !(yyvsp[-1]).num()
12987 ? HPHP::PropAccessType::Normal
12988 : HPHP::PropAccessType::NullSafe,
12989 (yyvsp[0])
12992 #line 12991 "hphp.5.tab.cpp" /* yacc.c:1651 */
12993 break;
12995 case 941:
12996 #line 3260 "hphp.y" /* yacc.c:1651 */
12997 { _p->onObjectProperty(
12998 (yyval),
12999 (yyvsp[-3]),
13000 !(yyvsp[-1]).num()
13001 ? HPHP::PropAccessType::Normal
13002 : HPHP::PropAccessType::NullSafe,
13003 (yyvsp[0])
13006 #line 13005 "hphp.5.tab.cpp" /* yacc.c:1651 */
13007 break;
13009 case 942:
13010 #line 3272 "hphp.y" /* yacc.c:1651 */
13011 { (yyval) = (yyvsp[0]);}
13012 #line 13011 "hphp.5.tab.cpp" /* yacc.c:1651 */
13013 break;
13015 case 943:
13016 #line 3273 "hphp.y" /* yacc.c:1651 */
13017 { (yyval) = (yyvsp[0]);}
13018 #line 13017 "hphp.5.tab.cpp" /* yacc.c:1651 */
13019 break;
13021 case 944:
13022 #line 3274 "hphp.y" /* yacc.c:1651 */
13023 { (yyval) = (yyvsp[0]);}
13024 #line 13023 "hphp.5.tab.cpp" /* yacc.c:1651 */
13025 break;
13027 case 945:
13028 #line 3275 "hphp.y" /* yacc.c:1651 */
13029 { (yyval) = (yyvsp[0]);}
13030 #line 13029 "hphp.5.tab.cpp" /* yacc.c:1651 */
13031 break;
13033 case 946:
13034 #line 3276 "hphp.y" /* yacc.c:1651 */
13035 { (yyval) = (yyvsp[0]);}
13036 #line 13035 "hphp.5.tab.cpp" /* yacc.c:1651 */
13037 break;
13039 case 947:
13040 #line 3277 "hphp.y" /* yacc.c:1651 */
13041 { (yyval) = (yyvsp[0]);}
13042 #line 13041 "hphp.5.tab.cpp" /* yacc.c:1651 */
13043 break;
13045 case 948:
13046 #line 3279 "hphp.y" /* yacc.c:1651 */
13047 { _p->onObjectProperty(
13048 (yyval),
13049 (yyvsp[-2]),
13050 !(yyvsp[-1]).num()
13051 ? HPHP::PropAccessType::Normal
13052 : HPHP::PropAccessType::NullSafe,
13053 (yyvsp[0])
13056 #line 13055 "hphp.5.tab.cpp" /* yacc.c:1651 */
13057 break;
13059 case 949:
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 */
13063 break;
13065 case 950:
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 */
13069 break;
13071 case 951:
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 */
13075 break;
13077 case 952:
13078 #line 3301 "hphp.y" /* yacc.c:1651 */
13079 { (yyval) = (yyvsp[-1]);}
13080 #line 13079 "hphp.5.tab.cpp" /* yacc.c:1651 */
13081 break;
13083 case 953:
13084 #line 3305 "hphp.y" /* yacc.c:1651 */
13085 { (yyval) = (yyvsp[-1]); }
13086 #line 13085 "hphp.5.tab.cpp" /* yacc.c:1651 */
13087 break;
13089 case 954:
13090 #line 3309 "hphp.y" /* yacc.c:1651 */
13091 { (yyval) = (yyvsp[0]);}
13092 #line 13091 "hphp.5.tab.cpp" /* yacc.c:1651 */
13093 break;
13095 case 955:
13096 #line 3310 "hphp.y" /* yacc.c:1651 */
13097 { (yyval) = (yyvsp[0]);}
13098 #line 13097 "hphp.5.tab.cpp" /* yacc.c:1651 */
13099 break;
13101 case 956:
13102 #line 3311 "hphp.y" /* yacc.c:1651 */
13103 { (yyval) = (yyvsp[0]);}
13104 #line 13103 "hphp.5.tab.cpp" /* yacc.c:1651 */
13105 break;
13107 case 957:
13108 #line 3312 "hphp.y" /* yacc.c:1651 */
13109 { (yyval) = (yyvsp[0]);}
13110 #line 13109 "hphp.5.tab.cpp" /* yacc.c:1651 */
13111 break;
13113 case 958:
13114 #line 3320 "hphp.y" /* yacc.c:1651 */
13115 { _p->onObjectProperty(
13116 (yyval),
13117 (yyvsp[-2]),
13118 !(yyvsp[-1]).num()
13119 ? HPHP::PropAccessType::Normal
13120 : HPHP::PropAccessType::NullSafe,
13121 (yyvsp[0])
13124 #line 13123 "hphp.5.tab.cpp" /* yacc.c:1651 */
13125 break;
13127 case 959:
13128 #line 3329 "hphp.y" /* yacc.c:1651 */
13129 { (yyval) = (yyvsp[0]);}
13130 #line 13129 "hphp.5.tab.cpp" /* yacc.c:1651 */
13131 break;
13133 case 960:
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 */
13137 break;
13139 case 961:
13140 #line 3340 "hphp.y" /* yacc.c:1651 */
13141 { (yyval) = (yyvsp[0]);}
13142 #line 13141 "hphp.5.tab.cpp" /* yacc.c:1651 */
13143 break;
13145 case 962:
13146 #line 3341 "hphp.y" /* yacc.c:1651 */
13147 { (yyval) = (yyvsp[0]);}
13148 #line 13147 "hphp.5.tab.cpp" /* yacc.c:1651 */
13149 break;
13151 case 963:
13152 #line 3342 "hphp.y" /* yacc.c:1651 */
13153 { (yyval) = (yyvsp[0]);}
13154 #line 13153 "hphp.5.tab.cpp" /* yacc.c:1651 */
13155 break;
13157 case 964:
13158 #line 3343 "hphp.y" /* yacc.c:1651 */
13159 { (yyval) = (yyvsp[0]);}
13160 #line 13159 "hphp.5.tab.cpp" /* yacc.c:1651 */
13161 break;
13163 case 965:
13164 #line 3344 "hphp.y" /* yacc.c:1651 */
13165 { (yyval) = (yyvsp[0]);}
13166 #line 13165 "hphp.5.tab.cpp" /* yacc.c:1651 */
13167 break;
13169 case 966:
13170 #line 3345 "hphp.y" /* yacc.c:1651 */
13171 { (yyval) = (yyvsp[-1]);}
13172 #line 13171 "hphp.5.tab.cpp" /* yacc.c:1651 */
13173 break;
13175 case 967:
13176 #line 3346 "hphp.y" /* yacc.c:1651 */
13177 { (yyval) = (yyvsp[-1]);}
13178 #line 13177 "hphp.5.tab.cpp" /* yacc.c:1651 */
13179 break;
13181 case 968:
13182 #line 3348 "hphp.y" /* yacc.c:1651 */
13183 { (yyval) = (yyvsp[0]);}
13184 #line 13183 "hphp.5.tab.cpp" /* yacc.c:1651 */
13185 break;
13187 case 969:
13188 #line 3349 "hphp.y" /* yacc.c:1651 */
13189 { (yyval) = (yyvsp[0]);}
13190 #line 13189 "hphp.5.tab.cpp" /* yacc.c:1651 */
13191 break;
13193 case 970:
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 */
13197 break;
13199 case 971:
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 */
13203 break;
13205 case 972:
13206 #line 3358 "hphp.y" /* yacc.c:1651 */
13207 { (yyval) = (yyvsp[-1]);}
13208 #line 13207 "hphp.5.tab.cpp" /* yacc.c:1651 */
13209 break;
13211 case 973:
13212 #line 3362 "hphp.y" /* yacc.c:1651 */
13213 { (yyval) = (yyvsp[0]);}
13214 #line 13213 "hphp.5.tab.cpp" /* yacc.c:1651 */
13215 break;
13217 case 974:
13218 #line 3363 "hphp.y" /* yacc.c:1651 */
13219 { (yyval) = (yyvsp[0]);}
13220 #line 13219 "hphp.5.tab.cpp" /* yacc.c:1651 */
13221 break;
13223 case 975:
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 */
13227 break;
13229 case 976:
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 */
13233 break;
13235 case 977:
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 */
13239 break;
13241 case 978:
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 */
13245 break;
13247 case 979:
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 */
13251 break;
13253 case 980:
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 */
13257 break;
13259 case 981:
13260 #line 3401 "hphp.y" /* yacc.c:1651 */
13261 { (yyval) = (yyvsp[0]);}
13262 #line 13261 "hphp.5.tab.cpp" /* yacc.c:1651 */
13263 break;
13265 case 982:
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 */
13269 break;
13271 case 983:
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 */
13275 break;
13277 case 984:
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 */
13281 break;
13283 case 985:
13284 #line 3412 "hphp.y" /* yacc.c:1651 */
13285 { (yyval) = (yyvsp[0]);}
13286 #line 13285 "hphp.5.tab.cpp" /* yacc.c:1651 */
13287 break;
13289 case 986:
13290 #line 3416 "hphp.y" /* yacc.c:1651 */
13291 { _p->onSimpleVariable((yyval), (yyvsp[0]));}
13292 #line 13291 "hphp.5.tab.cpp" /* yacc.c:1651 */
13293 break;
13295 case 987:
13296 #line 3417 "hphp.y" /* yacc.c:1651 */
13297 { _p->onPipeVariable((yyval));}
13298 #line 13297 "hphp.5.tab.cpp" /* yacc.c:1651 */
13299 break;
13301 case 988:
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 */
13305 break;
13307 case 989:
13308 #line 3425 "hphp.y" /* yacc.c:1651 */
13309 { (yyval) = (yyvsp[0]);}
13310 #line 13309 "hphp.5.tab.cpp" /* yacc.c:1651 */
13311 break;
13313 case 990:
13314 #line 3426 "hphp.y" /* yacc.c:1651 */
13315 { (yyval).reset();}
13316 #line 13315 "hphp.5.tab.cpp" /* yacc.c:1651 */
13317 break;
13319 case 991:
13320 #line 3431 "hphp.y" /* yacc.c:1651 */
13321 { (yyval) = 1;}
13322 #line 13321 "hphp.5.tab.cpp" /* yacc.c:1651 */
13323 break;
13325 case 992:
13326 #line 3432 "hphp.y" /* yacc.c:1651 */
13327 { (yyval)++;}
13328 #line 13327 "hphp.5.tab.cpp" /* yacc.c:1651 */
13329 break;
13331 case 993:
13332 #line 3437 "hphp.y" /* yacc.c:1651 */
13333 { (yyval) = (yyvsp[0]);}
13334 #line 13333 "hphp.5.tab.cpp" /* yacc.c:1651 */
13335 break;
13337 case 994:
13338 #line 3438 "hphp.y" /* yacc.c:1651 */
13339 { (yyval) = (yyvsp[0]);}
13340 #line 13339 "hphp.5.tab.cpp" /* yacc.c:1651 */
13341 break;
13343 case 995:
13344 #line 3439 "hphp.y" /* yacc.c:1651 */
13345 { (yyval) = (yyvsp[0]);}
13346 #line 13345 "hphp.5.tab.cpp" /* yacc.c:1651 */
13347 break;
13349 case 996:
13350 #line 3442 "hphp.y" /* yacc.c:1651 */
13351 { _p->onObjectProperty(
13352 (yyval),
13353 (yyvsp[-2]),
13354 !(yyvsp[-1]).num()
13355 ? HPHP::PropAccessType::Normal
13356 : HPHP::PropAccessType::NullSafe,
13357 (yyvsp[0])
13360 #line 13359 "hphp.5.tab.cpp" /* yacc.c:1651 */
13361 break;
13363 case 997:
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 */
13367 break;
13369 case 998:
13370 #line 3454 "hphp.y" /* yacc.c:1651 */
13371 { (yyval) = (yyvsp[-1]);}
13372 #line 13371 "hphp.5.tab.cpp" /* yacc.c:1651 */
13373 break;
13375 case 1000:
13376 #line 3458 "hphp.y" /* yacc.c:1651 */
13377 { (yyval) = (yyvsp[0]);}
13378 #line 13377 "hphp.5.tab.cpp" /* yacc.c:1651 */
13379 break;
13381 case 1001:
13382 #line 3459 "hphp.y" /* yacc.c:1651 */
13383 { (yyval) = (yyvsp[0]);}
13384 #line 13383 "hphp.5.tab.cpp" /* yacc.c:1651 */
13385 break;
13387 case 1002:
13388 #line 3462 "hphp.y" /* yacc.c:1651 */
13389 { _p->onObjectProperty(
13390 (yyval),
13391 (yyvsp[-2]),
13392 !(yyvsp[-1]).num()
13393 ? HPHP::PropAccessType::Normal
13394 : HPHP::PropAccessType::NullSafe,
13395 (yyvsp[0])
13398 #line 13397 "hphp.5.tab.cpp" /* yacc.c:1651 */
13399 break;
13401 case 1003:
13402 #line 3471 "hphp.y" /* yacc.c:1651 */
13403 { (yyval) = (yyvsp[-1]);}
13404 #line 13403 "hphp.5.tab.cpp" /* yacc.c:1651 */
13405 break;
13407 case 1004:
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 */
13411 break;
13413 case 1005:
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 */
13417 break;
13419 case 1006:
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 */
13423 break;
13425 case 1007:
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 */
13429 break;
13431 case 1008:
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 */
13435 break;
13437 case 1009:
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 */
13441 break;
13443 case 1010:
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 */
13447 break;
13449 case 1011:
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 */
13453 break;
13455 case 1012:
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 */
13459 break;
13461 case 1013:
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 */
13465 break;
13467 case 1014:
13468 #line 3497 "hphp.y" /* yacc.c:1651 */
13469 { (yyval) = (yyvsp[-1]);}
13470 #line 13469 "hphp.5.tab.cpp" /* yacc.c:1651 */
13471 break;
13473 case 1015:
13474 #line 3498 "hphp.y" /* yacc.c:1651 */
13475 { _p->onEmptyCollection((yyval));}
13476 #line 13475 "hphp.5.tab.cpp" /* yacc.c:1651 */
13477 break;
13479 case 1016:
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 */
13483 break;
13485 case 1017:
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 */
13489 break;
13491 case 1018:
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 */
13495 break;
13497 case 1019:
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 */
13501 break;
13503 case 1020:
13504 #line 3510 "hphp.y" /* yacc.c:1651 */
13505 { (yyval) = (yyvsp[-1]);}
13506 #line 13505 "hphp.5.tab.cpp" /* yacc.c:1651 */
13507 break;
13509 case 1021:
13510 #line 3511 "hphp.y" /* yacc.c:1651 */
13511 { _p->onEmptyCollection((yyval));}
13512 #line 13511 "hphp.5.tab.cpp" /* yacc.c:1651 */
13513 break;
13515 case 1022:
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 */
13519 break;
13521 case 1023:
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 */
13525 break;
13527 case 1024:
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 */
13531 break;
13533 case 1025:
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 */
13537 break;
13539 case 1026:
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 */
13543 break;
13545 case 1027:
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 */
13549 break;
13551 case 1028:
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 */
13555 break;
13557 case 1029:
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 */
13562 break;
13564 case 1030:
13565 #line 3535 "hphp.y" /* yacc.c:1651 */
13566 { _p->onSimpleVariable((yyval), (yyvsp[0]));}
13567 #line 13566 "hphp.5.tab.cpp" /* yacc.c:1651 */
13568 break;
13570 case 1031:
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 */
13574 break;
13576 case 1032:
13577 #line 3539 "hphp.y" /* yacc.c:1651 */
13578 { _p->encapObjProp(
13579 (yyval),
13580 (yyvsp[-2]),
13581 !(yyvsp[-1]).num()
13582 ? HPHP::PropAccessType::Normal
13583 : HPHP::PropAccessType::NullSafe,
13584 (yyvsp[0])
13587 #line 13586 "hphp.5.tab.cpp" /* yacc.c:1651 */
13588 break;
13590 case 1033:
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 */
13594 break;
13596 case 1034:
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 */
13600 break;
13602 case 1035:
13603 #line 3552 "hphp.y" /* yacc.c:1651 */
13604 { (yyval) = (yyvsp[-1]);}
13605 #line 13604 "hphp.5.tab.cpp" /* yacc.c:1651 */
13606 break;
13608 case 1036:
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 */
13612 break;
13614 case 1037:
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 */
13618 break;
13620 case 1038:
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 */
13624 break;
13626 case 1039:
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 */
13630 break;
13632 case 1040:
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 */
13636 break;
13638 case 1041:
13639 #line 3563 "hphp.y" /* yacc.c:1651 */
13640 { UEXP((yyval),(yyvsp[-1]),'!',1);}
13641 #line 13640 "hphp.5.tab.cpp" /* yacc.c:1651 */
13642 break;
13644 case 1042:
13645 #line 3564 "hphp.y" /* yacc.c:1651 */
13646 { UEXP((yyval),(yyvsp[-1]),'!',1);}
13647 #line 13646 "hphp.5.tab.cpp" /* yacc.c:1651 */
13648 break;
13650 case 1043:
13651 #line 3565 "hphp.y" /* yacc.c:1651 */
13652 { UEXP((yyval),(yyvsp[-1]),'!',1);}
13653 #line 13652 "hphp.5.tab.cpp" /* yacc.c:1651 */
13654 break;
13656 case 1044:
13657 #line 3566 "hphp.y" /* yacc.c:1651 */
13658 { UEXP((yyval),(yyvsp[-1]),'!',1);}
13659 #line 13658 "hphp.5.tab.cpp" /* yacc.c:1651 */
13660 break;
13662 case 1045:
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 */
13666 break;
13668 case 1046:
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 */
13672 break;
13674 case 1047:
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 */
13678 break;
13680 case 1048:
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 */
13684 break;
13686 case 1049:
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 */
13690 break;
13692 case 1050:
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 */
13696 break;
13698 case 1051:
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 */
13702 break;
13704 case 1052:
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 */
13708 break;
13710 case 1053:
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 */
13714 break;
13716 case 1056:
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 */
13722 break;
13724 case 1057:
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 */
13730 break;
13732 case 1058:
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 */
13738 break;
13740 case 1059:
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 */
13746 break;
13748 case 1060:
13749 #line 3617 "hphp.y" /* yacc.c:1651 */
13750 { (yyval) = (yyvsp[0]); }
13751 #line 13750 "hphp.5.tab.cpp" /* yacc.c:1651 */
13752 break;
13754 case 1061:
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 */
13758 break;
13760 case 1062:
13761 #line 3622 "hphp.y" /* yacc.c:1651 */
13762 { (yyval) = (yyvsp[0]); }
13763 #line 13762 "hphp.5.tab.cpp" /* yacc.c:1651 */
13764 break;
13766 case 1063:
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 */
13770 break;
13772 case 1064:
13773 #line 3629 "hphp.y" /* yacc.c:1651 */
13774 { _p->pushTypeScope(); (yyval) = (yyvsp[0]); }
13775 #line 13774 "hphp.5.tab.cpp" /* yacc.c:1651 */
13776 break;
13778 case 1065:
13779 #line 3633 "hphp.y" /* yacc.c:1651 */
13780 { _p->pushTypeScope(); (yyval) = (yyvsp[-3]); }
13781 #line 13780 "hphp.5.tab.cpp" /* yacc.c:1651 */
13782 break;
13784 case 1066:
13785 #line 3639 "hphp.y" /* yacc.c:1651 */
13786 { _p->pushTypeScope(); (yyval) = (yyvsp[0]); }
13787 #line 13786 "hphp.5.tab.cpp" /* yacc.c:1651 */
13788 break;
13790 case 1067:
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 */
13795 break;
13797 case 1068:
13798 #line 3650 "hphp.y" /* yacc.c:1651 */
13799 { (yyval) = (yyvsp[-1]); }
13800 #line 13799 "hphp.5.tab.cpp" /* yacc.c:1651 */
13801 break;
13803 case 1069:
13804 #line 3651 "hphp.y" /* yacc.c:1651 */
13805 { (yyval).reset(); }
13806 #line 13805 "hphp.5.tab.cpp" /* yacc.c:1651 */
13807 break;
13809 case 1070:
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 */
13815 break;
13817 case 1071:
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 */
13822 break;
13824 case 1072:
13825 #line 3664 "hphp.y" /* yacc.c:1651 */
13826 { (yyval) = (yyvsp[-1]); }
13827 #line 13826 "hphp.5.tab.cpp" /* yacc.c:1651 */
13828 break;
13830 case 1073:
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 */
13836 break;
13838 case 1074:
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 */
13844 break;
13846 case 1075:
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 */
13851 break;
13853 case 1076:
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 */
13858 break;
13860 case 1077:
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 */
13865 break;
13867 case 1078:
13868 #line 3680 "hphp.y" /* yacc.c:1651 */
13869 { (yyval).reset(); }
13870 #line 13869 "hphp.5.tab.cpp" /* yacc.c:1651 */
13871 break;
13873 case 1079:
13874 #line 3685 "hphp.y" /* yacc.c:1651 */
13875 { (yyval) = (yyvsp[-3]); }
13876 #line 13875 "hphp.5.tab.cpp" /* yacc.c:1651 */
13877 break;
13879 case 1080:
13880 #line 3686 "hphp.y" /* yacc.c:1651 */
13881 { (yyval) = (yyvsp[-1]); }
13882 #line 13881 "hphp.5.tab.cpp" /* yacc.c:1651 */
13883 break;
13885 case 1081:
13886 #line 3687 "hphp.y" /* yacc.c:1651 */
13887 { (yyval).reset(); }
13888 #line 13887 "hphp.5.tab.cpp" /* yacc.c:1651 */
13889 break;
13891 case 1082:
13892 #line 3688 "hphp.y" /* yacc.c:1651 */
13893 { (yyval).reset(); }
13894 #line 13893 "hphp.5.tab.cpp" /* yacc.c:1651 */
13895 break;
13897 case 1089:
13898 #line 3709 "hphp.y" /* yacc.c:1651 */
13899 { (yyval).reset(); }
13900 #line 13899 "hphp.5.tab.cpp" /* yacc.c:1651 */
13901 break;
13903 case 1090:
13904 #line 3710 "hphp.y" /* yacc.c:1651 */
13905 { (yyval) = (yyvsp[0]); (yyval) = 1; }
13906 #line 13905 "hphp.5.tab.cpp" /* yacc.c:1651 */
13907 break;
13909 case 1093:
13910 #line 3719 "hphp.y" /* yacc.c:1651 */
13911 { (yyval) = (yyvsp[-1]); }
13912 #line 13911 "hphp.5.tab.cpp" /* yacc.c:1651 */
13913 break;
13915 case 1096:
13916 #line 3730 "hphp.y" /* yacc.c:1651 */
13917 { _p->addTypeVar((yyvsp[0]).text()); }
13918 #line 13917 "hphp.5.tab.cpp" /* yacc.c:1651 */
13919 break;
13921 case 1097:
13922 #line 3732 "hphp.y" /* yacc.c:1651 */
13923 { _p->addTypeVar((yyvsp[0]).text()); }
13924 #line 13923 "hphp.5.tab.cpp" /* yacc.c:1651 */
13925 break;
13927 case 1098:
13928 #line 3736 "hphp.y" /* yacc.c:1651 */
13929 { _p->addTypeVar((yyvsp[-1]).text()); }
13930 #line 13929 "hphp.5.tab.cpp" /* yacc.c:1651 */
13931 break;
13933 case 1099:
13934 #line 3739 "hphp.y" /* yacc.c:1651 */
13935 { _p->addTypeVar((yyvsp[-1]).text()); }
13936 #line 13935 "hphp.5.tab.cpp" /* yacc.c:1651 */
13937 break;
13939 case 1100:
13940 #line 3743 "hphp.y" /* yacc.c:1651 */
13942 #line 13941 "hphp.5.tab.cpp" /* yacc.c:1651 */
13943 break;
13945 case 1101:
13946 #line 3744 "hphp.y" /* yacc.c:1651 */
13948 #line 13947 "hphp.5.tab.cpp" /* yacc.c:1651 */
13949 break;
13951 case 1102:
13952 #line 3745 "hphp.y" /* yacc.c:1651 */
13954 #line 13953 "hphp.5.tab.cpp" /* yacc.c:1651 */
13955 break;
13957 case 1103:
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 */
13962 break;
13964 case 1104:
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 */
13972 break;
13974 case 1105:
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 */
13978 break;
13980 case 1106:
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 */
13987 break;
13989 case 1107:
13990 #line 3779 "hphp.y" /* yacc.c:1651 */
13991 { _p->onTypeList((yyval), (yyvsp[0])); }
13992 #line 13991 "hphp.5.tab.cpp" /* yacc.c:1651 */
13993 break;
13995 case 1108:
13996 #line 3780 "hphp.y" /* yacc.c:1651 */
13998 #line 13997 "hphp.5.tab.cpp" /* yacc.c:1651 */
13999 break;
14001 case 1109:
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 */
14005 break;
14007 case 1110:
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 */
14011 break;
14013 case 1111:
14014 #line 3789 "hphp.y" /* yacc.c:1651 */
14016 Token t;
14017 t.reset();
14018 _p->onShape((yyval), t, true);
14020 #line 14019 "hphp.5.tab.cpp" /* yacc.c:1651 */
14021 break;
14023 case 1112:
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 */
14028 break;
14030 case 1113:
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 */
14035 break;
14037 case 1114:
14038 #line 3805 "hphp.y" /* yacc.c:1651 */
14039 { (yyval) = (yyvsp[0]); }
14040 #line 14039 "hphp.5.tab.cpp" /* yacc.c:1651 */
14041 break;
14043 case 1115:
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 */
14049 break;
14051 case 1116:
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 */
14055 break;
14057 case 1117:
14058 #line 3819 "hphp.y" /* yacc.c:1651 */
14059 { (yyval) = (yyvsp[-2]);}
14060 #line 14059 "hphp.5.tab.cpp" /* yacc.c:1651 */
14061 break;
14063 case 1118:
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 */
14067 break;
14069 case 1119:
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 */
14074 break;
14076 case 1120:
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 */
14082 break;
14084 case 1121:
14085 #line 3832 "hphp.y" /* yacc.c:1651 */
14086 { (yyval) = (yyvsp[0]); }
14087 #line 14086 "hphp.5.tab.cpp" /* yacc.c:1651 */
14088 break;
14090 case 1122:
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 */
14096 break;
14098 case 1123:
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 */
14104 break;
14106 case 1124:
14107 #line 3839 "hphp.y" /* yacc.c:1651 */
14108 { (yyval) = (yyvsp[0]); }
14109 #line 14108 "hphp.5.tab.cpp" /* yacc.c:1651 */
14110 break;
14112 case 1125:
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 */
14118 break;
14120 case 1126:
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 */
14125 break;
14127 case 1127:
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 */
14134 break;
14136 case 1128:
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 */
14143 break;
14145 case 1129:
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 */
14153 break;
14155 case 1130:
14156 #line 3867 "hphp.y" /* yacc.c:1651 */
14157 { (yyval) = (yyvsp[0]); }
14158 #line 14157 "hphp.5.tab.cpp" /* yacc.c:1651 */
14159 break;
14161 case 1131:
14162 #line 3868 "hphp.y" /* yacc.c:1651 */
14163 { (yyval).reset(); }
14164 #line 14163 "hphp.5.tab.cpp" /* yacc.c:1651 */
14165 break;
14168 #line 14167 "hphp.5.tab.cpp" /* yacc.c:1651 */
14169 default: break;
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);
14185 yylen = 0;
14186 YY_STACK_PRINT (yyss, yyssp);
14188 *++yyvsp = yyval;
14189 *++yylsp = yyloc;
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. */
14195 yyn = yyr1[yyn];
14197 yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
14198 if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
14199 yystate = yytable[yystate];
14200 else
14201 yystate = yydefgoto[yyn - YYNTOKENS];
14203 goto yynewstate;
14206 /*--------------------------------------.
14207 | yyerrlab -- here on detecting error. |
14208 `--------------------------------------*/
14209 yyerrlab:
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. */
14215 if (!yyerrstatus)
14217 ++yynerrs;
14218 #if ! YYERROR_VERBOSE
14219 yyerror (&yylloc, _p, YY_("syntax error"));
14220 #else
14221 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
14222 yyssp, yytoken)
14224 char const *yymsgp = YY_("syntax error");
14225 int yysyntax_error_status;
14226 yysyntax_error_status = YYSYNTAX_ERROR;
14227 if (yysyntax_error_status == 0)
14228 yymsgp = yymsg;
14229 else if (yysyntax_error_status == 1)
14231 if (yymsg != yymsgbuf)
14232 YYSTACK_FREE (yymsg);
14233 yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
14234 if (!yymsg)
14236 yymsg = yymsgbuf;
14237 yymsg_alloc = sizeof yymsgbuf;
14238 yysyntax_error_status = 2;
14240 else
14242 yysyntax_error_status = YYSYNTAX_ERROR;
14243 yymsgp = yymsg;
14246 yyerror (&yylloc, _p, yymsgp);
14247 if (yysyntax_error_status == 2)
14248 goto yyexhaustedlab;
14250 # undef YYSYNTAX_ERROR
14251 #endif
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)
14265 YYABORT;
14267 else
14269 yydestruct ("Error: discarding",
14270 yytoken, &yylval, &yylloc, _p);
14271 yychar = YYEMPTY;
14275 /* Else will try to reuse lookahead token after shifting the error
14276 token. */
14277 goto yyerrlab1;
14280 /*---------------------------------------------------.
14281 | yyerrorlab -- error raised explicitly by YYERROR. |
14282 `---------------------------------------------------*/
14283 yyerrorlab:
14285 /* Pacify compilers like GCC when the user code never invokes
14286 YYERROR and the label yyerrorlab therefore never appears in user
14287 code. */
14288 if (/*CONSTCOND*/ 0)
14289 goto yyerrorlab;
14291 /* Do not reclaim the symbols of the rule whose action triggered
14292 this YYERROR. */
14293 YYPOPSTACK (yylen);
14294 yylen = 0;
14295 YY_STACK_PRINT (yyss, yyssp);
14296 yystate = *yyssp;
14297 goto yyerrlab1;
14300 /*-------------------------------------------------------------.
14301 | yyerrlab1 -- common code for both syntax error and YYERROR. |
14302 `-------------------------------------------------------------*/
14303 yyerrlab1:
14304 yyerrstatus = 3; /* Each real token shifted decrements this. */
14306 for (;;)
14308 yyn = yypact[yystate];
14309 if (!yypact_value_is_default (yyn))
14311 yyn += YYTERROR;
14312 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
14314 yyn = yytable[yyn];
14315 if (0 < yyn)
14316 break;
14320 /* Pop the current state because it cannot handle the error token. */
14321 if (yyssp == yyss)
14322 YYABORT;
14324 yyerror_range[1] = *yylsp;
14325 yydestruct ("Error: popping",
14326 yystos[yystate], yyvsp, yylsp, _p);
14327 YYPOPSTACK (1);
14328 yystate = *yyssp;
14329 YY_STACK_PRINT (yyss, yyssp);
14332 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
14333 *++yyvsp = yylval;
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);
14340 *++yylsp = yyloc;
14342 /* Shift the error token. */
14343 YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
14345 yystate = yyn;
14346 goto yynewstate;
14349 /*-------------------------------------.
14350 | yyacceptlab -- YYACCEPT comes here. |
14351 `-------------------------------------*/
14352 yyacceptlab:
14353 yyresult = 0;
14354 goto yyreturn;
14356 /*-----------------------------------.
14357 | yyabortlab -- YYABORT comes here. |
14358 `-----------------------------------*/
14359 yyabortlab:
14360 yyresult = 1;
14361 goto yyreturn;
14363 #if !defined yyoverflow || YYERROR_VERBOSE
14364 /*-------------------------------------------------.
14365 | yyexhaustedlab -- memory exhaustion comes here. |
14366 `-------------------------------------------------*/
14367 yyexhaustedlab:
14368 yyerror (&yylloc, _p, YY_("memory exhausted"));
14369 yyresult = 2;
14370 /* Fall through. */
14371 #endif
14373 yyreturn:
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);
14390 YYPOPSTACK (1);
14392 #ifndef yyoverflow
14393 if (yyss != yyssa)
14394 YYSTACK_FREE (yyss);
14395 YYSTACK_CLEANUP;
14396 #endif
14397 #if YYERROR_VERBOSE
14398 if (yymsg != yymsgbuf)
14399 YYSTACK_FREE (yymsg);
14400 #endif
14401 return yyresult;
14403 #line 3871 "hphp.y" /* yacc.c:1910 */
14405 /* !PHP5_ONLY*/
14406 bool Parser::parseImpl5() {
14407 /* !END */
14408 /* !PHP7_ONLY*/
14409 /* REMOVED */
14410 /* !END */
14411 return yyparse(this) == 0;