zend_language_parser.output   [plain text]


Terminals unused in grammar

   "comment (T_COMMENT)"
   "doc comment (T_DOC_COMMENT)"
   "open tag (T_OPEN_TAG)"
   "open tag with echo (T_OPEN_TAG_WITH_ECHO)"
   "close tag (T_CLOSE_TAG)"
   "whitespace (T_WHITESPACE)"
   T_ERROR


Grammar

    0 $accept: start "end of file"

    1 start: top_statement_list

    2 reserved_non_modifiers: "include (T_INCLUDE)"
    3                       | "include_once (T_INCLUDE_ONCE)"
    4                       | "eval (T_EVAL)"
    5                       | "require (T_REQUIRE)"
    6                       | "require_once (T_REQUIRE_ONCE)"
    7                       | "or (T_LOGICAL_OR)"
    8                       | "xor (T_LOGICAL_XOR)"
    9                       | "and (T_LOGICAL_AND)"
   10                       | "instanceof (T_INSTANCEOF)"
   11                       | "new (T_NEW)"
   12                       | "clone (T_CLONE)"
   13                       | "exit (T_EXIT)"
   14                       | "if (T_IF)"
   15                       | "elseif (T_ELSEIF)"
   16                       | "else (T_ELSE)"
   17                       | "endif (T_ENDIF)"
   18                       | "echo (T_ECHO)"
   19                       | "do (T_DO)"
   20                       | "while (T_WHILE)"
   21                       | "endwhile (T_ENDWHILE)"
   22                       | "for (T_FOR)"
   23                       | "endfor (T_ENDFOR)"
   24                       | "foreach (T_FOREACH)"
   25                       | "endforeach (T_ENDFOREACH)"
   26                       | "declare (T_DECLARE)"
   27                       | "enddeclare (T_ENDDECLARE)"
   28                       | "as (T_AS)"
   29                       | "try (T_TRY)"
   30                       | "catch (T_CATCH)"
   31                       | "finally (T_FINALLY)"
   32                       | "throw (T_THROW)"
   33                       | "use (T_USE)"
   34                       | "insteadof (T_INSTEADOF)"
   35                       | "global (T_GLOBAL)"
   36                       | "var (T_VAR)"
   37                       | "unset (T_UNSET)"
   38                       | "isset (T_ISSET)"
   39                       | "empty (T_EMPTY)"
   40                       | "continue (T_CONTINUE)"
   41                       | "goto (T_GOTO)"
   42                       | "function (T_FUNCTION)"
   43                       | "const (T_CONST)"
   44                       | "return (T_RETURN)"
   45                       | "print (T_PRINT)"
   46                       | "yield (T_YIELD)"
   47                       | "list (T_LIST)"
   48                       | "switch (T_SWITCH)"
   49                       | "endswitch (T_ENDSWITCH)"
   50                       | "case (T_CASE)"
   51                       | "default (T_DEFAULT)"
   52                       | "break (T_BREAK)"
   53                       | "array (T_ARRAY)"
   54                       | "callable (T_CALLABLE)"
   55                       | "extends (T_EXTENDS)"
   56                       | "implements (T_IMPLEMENTS)"
   57                       | "namespace (T_NAMESPACE)"
   58                       | "trait (T_TRAIT)"
   59                       | "interface (T_INTERFACE)"
   60                       | "class (T_CLASS)"
   61                       | "__CLASS__ (T_CLASS_C)"
   62                       | "__TRAIT__ (T_TRAIT_C)"
   63                       | "__FUNCTION__ (T_FUNC_C)"
   64                       | "__METHOD__ (T_METHOD_C)"
   65                       | "__LINE__ (T_LINE)"
   66                       | "__FILE__ (T_FILE)"
   67                       | "__DIR__ (T_DIR)"
   68                       | "__NAMESPACE__ (T_NS_C)"

   69 semi_reserved: reserved_non_modifiers
   70              | "static (T_STATIC)"
   71              | "abstract (T_ABSTRACT)"
   72              | "final (T_FINAL)"
   73              | "private (T_PRIVATE)"
   74              | "protected (T_PROTECTED)"
   75              | "public (T_PUBLIC)"

   76 identifier: "identifier (T_STRING)"
   77           | semi_reserved

   78 top_statement_list: top_statement_list top_statement
   79                   | %empty

   80 namespace_name: "identifier (T_STRING)"
   81               | namespace_name "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"

   82 name: namespace_name
   83     | "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name
   84     | "\\ (T_NS_SEPARATOR)" namespace_name

   85 top_statement: statement
   86              | function_declaration_statement
   87              | class_declaration_statement
   88              | trait_declaration_statement
   89              | interface_declaration_statement
   90              | "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';'
   91              | "namespace (T_NAMESPACE)" namespace_name ';'

   92 $@1: %empty

   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 '{' top_statement_list '}'

   94 $@2: %empty

   95 top_statement: "namespace (T_NAMESPACE)" $@2 '{' top_statement_list '}'
   96              | "use (T_USE)" mixed_group_use_declaration ';'
   97              | "use (T_USE)" use_type group_use_declaration ';'
   98              | "use (T_USE)" use_declarations ';'
   99              | "use (T_USE)" use_type use_declarations ';'
  100              | "const (T_CONST)" const_list ';'

  101 use_type: "function (T_FUNCTION)"
  102         | "const (T_CONST)"

  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
  104                      | "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'

  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
  106                            | "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'

  107 possible_comma: %empty
  108               | ','

  109 inline_use_declarations: inline_use_declarations ',' inline_use_declaration
  110                        | inline_use_declaration

  111 unprefixed_use_declarations: unprefixed_use_declarations ',' unprefixed_use_declaration
  112                            | unprefixed_use_declaration

  113 use_declarations: use_declarations ',' use_declaration
  114                 | use_declaration

  115 inline_use_declaration: unprefixed_use_declaration
  116                       | use_type unprefixed_use_declaration

  117 unprefixed_use_declaration: namespace_name
  118                           | namespace_name "as (T_AS)" "identifier (T_STRING)"

  119 use_declaration: unprefixed_use_declaration
  120                | "\\ (T_NS_SEPARATOR)" unprefixed_use_declaration

  121 const_list: const_list ',' const_decl
  122           | const_decl

  123 inner_statement_list: inner_statement_list inner_statement
  124                     | %empty

  125 inner_statement: statement
  126                | function_declaration_statement
  127                | class_declaration_statement
  128                | trait_declaration_statement
  129                | interface_declaration_statement
  130                | "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';'

  131 statement: '{' inner_statement_list '}'
  132          | if_stmt
  133          | alt_if_stmt
  134          | "while (T_WHILE)" '(' expr ')' while_statement
  135          | "do (T_DO)" statement "while (T_WHILE)" '(' expr ')' ';'
  136          | "for (T_FOR)" '(' for_exprs ';' for_exprs ';' for_exprs ')' for_statement
  137          | "switch (T_SWITCH)" '(' expr ')' switch_case_list
  138          | "break (T_BREAK)" optional_expr ';'
  139          | "continue (T_CONTINUE)" optional_expr ';'
  140          | "return (T_RETURN)" optional_expr ';'
  141          | "global (T_GLOBAL)" global_var_list ';'
  142          | "static (T_STATIC)" static_var_list ';'
  143          | "echo (T_ECHO)" echo_expr_list ';'
  144          | T_INLINE_HTML
  145          | expr ';'
  146          | "unset (T_UNSET)" '(' unset_variables possible_comma ')' ';'
  147          | "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable ')' foreach_statement
  148          | "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement

  149 $@3: %empty

  150 statement: "declare (T_DECLARE)" '(' const_list ')' $@3 declare_statement
  151          | ';'
  152          | "try (T_TRY)" '{' inner_statement_list '}' catch_list finally_statement
  153          | "throw (T_THROW)" expr ';'
  154          | "goto (T_GOTO)" "identifier (T_STRING)" ';'
  155          | "identifier (T_STRING)" ':'

  156 catch_list: %empty
  157           | catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'

  158 catch_name_list: name
  159                | catch_name_list '|' name

  160 finally_statement: %empty
  161                  | "finally (T_FINALLY)" '{' inner_statement_list '}'

  162 unset_variables: unset_variable
  163                | unset_variables ',' unset_variable

  164 unset_variable: variable

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

  166 is_reference: %empty
  167             | '&'

  168 is_variadic: %empty
  169            | "... (T_ELLIPSIS)"

  170 @4: %empty

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'

  172 @5: %empty

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'

  174 class_modifiers: class_modifier
  175                | class_modifiers class_modifier

  176 class_modifier: "abstract (T_ABSTRACT)"
  177               | "final (T_FINAL)"

  178 @6: %empty

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment '{' class_statement_list '}'

  180 @7: %empty

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list '}'

  182 extends_from: %empty
  183             | "extends (T_EXTENDS)" name

  184 interface_extends_list: %empty
  185                       | "extends (T_EXTENDS)" name_list

  186 implements_list: %empty
  187                | "implements (T_IMPLEMENTS)" name_list

  188 foreach_variable: variable
  189                 | '&' variable
  190                 | "list (T_LIST)" '(' array_pair_list ')'
  191                 | '[' array_pair_list ']'

  192 for_statement: statement
  193              | ':' inner_statement_list "endfor (T_ENDFOR)" ';'

  194 foreach_statement: statement
  195                  | ':' inner_statement_list "endforeach (T_ENDFOREACH)" ';'

  196 declare_statement: statement
  197                  | ':' inner_statement_list "enddeclare (T_ENDDECLARE)" ';'

  198 switch_case_list: '{' case_list '}'
  199                 | '{' ';' case_list '}'
  200                 | ':' case_list "endswitch (T_ENDSWITCH)" ';'
  201                 | ':' ';' case_list "endswitch (T_ENDSWITCH)" ';'

  202 case_list: %empty
  203          | case_list "case (T_CASE)" expr case_separator inner_statement_list
  204          | case_list "default (T_DEFAULT)" case_separator inner_statement_list

  205 case_separator: ':'
  206               | ';'

  207 while_statement: statement
  208                | ':' inner_statement_list "endwhile (T_ENDWHILE)" ';'

  209 if_stmt_without_else: "if (T_IF)" '(' expr ')' statement
  210                     | if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' statement

  211 if_stmt: if_stmt_without_else
  212        | if_stmt_without_else "else (T_ELSE)" statement

  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' ':' inner_statement_list
  214                         | alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' ':' inner_statement_list

  215 alt_if_stmt: alt_if_stmt_without_else "endif (T_ENDIF)" ';'
  216            | alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" ';'

  217 parameter_list: non_empty_parameter_list
  218               | %empty

  219 non_empty_parameter_list: parameter
  220                         | non_empty_parameter_list ',' parameter

  221 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)"
  222          | optional_type is_reference is_variadic "variable (T_VARIABLE)" '=' expr

  223 optional_type: %empty
  224              | type_expr

  225 type_expr: type
  226          | '?' type

  227 type: "array (T_ARRAY)"
  228     | "callable (T_CALLABLE)"
  229     | name

  230 return_type: %empty
  231            | ':' type_expr

  232 argument_list: '(' ')'
  233              | '(' non_empty_argument_list possible_comma ')'

  234 non_empty_argument_list: argument
  235                        | non_empty_argument_list ',' argument

  236 argument: expr
  237         | "... (T_ELLIPSIS)" expr

  238 global_var_list: global_var_list ',' global_var
  239                | global_var

  240 global_var: simple_variable

  241 static_var_list: static_var_list ',' static_var
  242                | static_var

  243 static_var: "variable (T_VARIABLE)"
  244           | "variable (T_VARIABLE)" '=' expr

  245 class_statement_list: class_statement_list class_statement
  246                     | %empty

  247 class_statement: variable_modifiers property_list ';'
  248                | method_modifiers "const (T_CONST)" class_const_list ';'
  249                | "use (T_USE)" name_list trait_adaptations
  250                | method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

  251 name_list: name
  252          | name_list ',' name

  253 trait_adaptations: ';'
  254                  | '{' '}'
  255                  | '{' trait_adaptation_list '}'

  256 trait_adaptation_list: trait_adaptation
  257                      | trait_adaptation_list trait_adaptation

  258 trait_adaptation: trait_precedence ';'
  259                 | trait_alias ';'

  260 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" name_list

  261 trait_alias: trait_method_reference "as (T_AS)" "identifier (T_STRING)"
  262            | trait_method_reference "as (T_AS)" reserved_non_modifiers
  263            | trait_method_reference "as (T_AS)" member_modifier identifier
  264            | trait_method_reference "as (T_AS)" member_modifier

  265 trait_method_reference: identifier
  266                       | absolute_trait_method_reference

  267 absolute_trait_method_reference: name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier

  268 method_body: ';'
  269            | '{' inner_statement_list '}'

  270 variable_modifiers: non_empty_member_modifiers
  271                   | "var (T_VAR)"

  272 method_modifiers: %empty
  273                 | non_empty_member_modifiers

  274 non_empty_member_modifiers: member_modifier
  275                           | non_empty_member_modifiers member_modifier

  276 member_modifier: "public (T_PUBLIC)"
  277                | "protected (T_PROTECTED)"
  278                | "private (T_PRIVATE)"
  279                | "static (T_STATIC)"
  280                | "abstract (T_ABSTRACT)"
  281                | "final (T_FINAL)"

  282 property_list: property_list ',' property
  283              | property

  284 property: "variable (T_VARIABLE)" backup_doc_comment
  285         | "variable (T_VARIABLE)" '=' expr backup_doc_comment

  286 class_const_list: class_const_list ',' class_const_decl
  287                 | class_const_decl

  288 class_const_decl: identifier '=' expr backup_doc_comment

  289 const_decl: "identifier (T_STRING)" '=' expr backup_doc_comment

  290 echo_expr_list: echo_expr_list ',' echo_expr
  291               | echo_expr

  292 echo_expr: expr

  293 for_exprs: %empty
  294          | non_empty_for_exprs

  295 non_empty_for_exprs: non_empty_for_exprs ',' expr
  296                    | expr

  297 @8: %empty

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list '}'

  299 new_expr: "new (T_NEW)" class_name_reference ctor_arguments
  300         | "new (T_NEW)" anonymous_class

  301 expr: variable
  302     | "list (T_LIST)" '(' array_pair_list ')' '=' expr
  303     | '[' array_pair_list ']' '=' expr
  304     | variable '=' expr
  305     | variable '=' '&' variable
  306     | "clone (T_CLONE)" expr
  307     | variable "+= (T_PLUS_EQUAL)" expr
  308     | variable "-= (T_MINUS_EQUAL)" expr
  309     | variable "*= (T_MUL_EQUAL)" expr
  310     | variable "**= (T_POW_EQUAL)" expr
  311     | variable "/= (T_DIV_EQUAL)" expr
  312     | variable ".= (T_CONCAT_EQUAL)" expr
  313     | variable "%= (T_MOD_EQUAL)" expr
  314     | variable "&= (T_AND_EQUAL)" expr
  315     | variable "|= (T_OR_EQUAL)" expr
  316     | variable "^= (T_XOR_EQUAL)" expr
  317     | variable "<<= (T_SL_EQUAL)" expr
  318     | variable ">>= (T_SR_EQUAL)" expr
  319     | variable "++ (T_INC)"
  320     | "++ (T_INC)" variable
  321     | variable "-- (T_DEC)"
  322     | "-- (T_DEC)" variable
  323     | expr "|| (T_BOOLEAN_OR)" expr
  324     | expr "&& (T_BOOLEAN_AND)" expr
  325     | expr "or (T_LOGICAL_OR)" expr
  326     | expr "and (T_LOGICAL_AND)" expr
  327     | expr "xor (T_LOGICAL_XOR)" expr
  328     | expr '|' expr
  329     | expr '&' expr
  330     | expr '^' expr
  331     | expr '.' expr
  332     | expr '+' expr
  333     | expr '-' expr
  334     | expr '*' expr
  335     | expr "** (T_POW)" expr
  336     | expr '/' expr
  337     | expr '%' expr
  338     | expr "<< (T_SL)" expr
  339     | expr ">> (T_SR)" expr
  340     | '+' expr
  341     | '-' expr
  342     | '!' expr
  343     | '~' expr
  344     | expr "=== (T_IS_IDENTICAL)" expr
  345     | expr "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr "== (T_IS_EQUAL)" expr
  347     | expr "!= (T_IS_NOT_EQUAL)" expr
  348     | expr '<' expr
  349     | expr "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr '>' expr
  351     | expr ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr "<=> (T_SPACESHIP)" expr
  353     | expr "instanceof (T_INSTANCEOF)" class_name_reference
  354     | '(' expr ')'
  355     | new_expr
  356     | expr '?' expr ':' expr
  357     | expr '?' ':' expr
  358     | expr "?? (T_COALESCE)" expr
  359     | internal_functions_in_yacc
  360     | "(int) (T_INT_CAST)" expr
  361     | "(double) (T_DOUBLE_CAST)" expr
  362     | "(string) (T_STRING_CAST)" expr
  363     | "(array) (T_ARRAY_CAST)" expr
  364     | "(object) (T_OBJECT_CAST)" expr
  365     | "(bool) (T_BOOL_CAST)" expr
  366     | "(unset) (T_UNSET_CAST)" expr
  367     | "exit (T_EXIT)" exit_expr
  368     | '@' expr
  369     | scalar
  370     | '`' backticks_expr '`'
  371     | "print (T_PRINT)" expr
  372     | "yield (T_YIELD)"
  373     | "yield (T_YIELD)" expr
  374     | "yield (T_YIELD)" expr "=> (T_DOUBLE_ARROW)" expr
  375     | "yield from (T_YIELD_FROM)" expr
  376     | function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
  377     | "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

  378 function: "function (T_FUNCTION)"

  379 backup_doc_comment: %empty

  380 backup_fn_flags: %empty

  381 returns_ref: %empty
  382            | '&'

  383 lexical_vars: %empty
  384             | "use (T_USE)" '(' lexical_var_list ')'

  385 lexical_var_list: lexical_var_list ',' lexical_var
  386                 | lexical_var

  387 lexical_var: "variable (T_VARIABLE)"
  388            | '&' "variable (T_VARIABLE)"

  389 function_call: name argument_list
  390              | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  391              | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  392              | callable_expr argument_list

  393 class_name: "static (T_STATIC)"
  394           | name

  395 class_name_reference: class_name
  396                     | new_variable

  397 exit_expr: %empty
  398          | '(' optional_expr ')'

  399 backticks_expr: %empty
  400               | "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"
  401               | encaps_list

  402 ctor_arguments: %empty
  403               | argument_list

  404 dereferencable_scalar: "array (T_ARRAY)" '(' array_pair_list ')'
  405                      | '[' array_pair_list ']'
  406                      | "quoted-string (T_CONSTANT_ENCAPSED_STRING)"

  407 scalar: "integer number (T_LNUMBER)"
  408       | "floating-point number (T_DNUMBER)"
  409       | "__LINE__ (T_LINE)"
  410       | "__FILE__ (T_FILE)"
  411       | "__DIR__ (T_DIR)"
  412       | "__TRAIT__ (T_TRAIT_C)"
  413       | "__METHOD__ (T_METHOD_C)"
  414       | "__FUNCTION__ (T_FUNC_C)"
  415       | "__NAMESPACE__ (T_NS_C)"
  416       | "__CLASS__ (T_CLASS_C)"
  417       | "heredoc start (T_START_HEREDOC)" "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "heredoc end (T_END_HEREDOC)"
  418       | "heredoc start (T_START_HEREDOC)" "heredoc end (T_END_HEREDOC)"
  419       | '"' encaps_list '"'
  420       | "heredoc start (T_START_HEREDOC)" encaps_list "heredoc end (T_END_HEREDOC)"
  421       | dereferencable_scalar
  422       | constant

  423 constant: name
  424         | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
  425         | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier

  426 optional_expr: %empty
  427              | expr

  428 variable_class_name: dereferencable

  429 dereferencable: variable
  430               | '(' expr ')'
  431               | dereferencable_scalar

  432 callable_expr: callable_variable
  433              | '(' expr ')'
  434              | dereferencable_scalar

  435 callable_variable: simple_variable
  436                  | dereferencable '[' optional_expr ']'
  437                  | constant '[' optional_expr ']'
  438                  | dereferencable '{' expr '}'
  439                  | dereferencable "-> (T_OBJECT_OPERATOR)" property_name argument_list
  440                  | function_call

  441 variable: callable_variable
  442         | static_member
  443         | dereferencable "-> (T_OBJECT_OPERATOR)" property_name

  444 simple_variable: "variable (T_VARIABLE)"
  445                | '$' '{' expr '}'
  446                | '$' simple_variable

  447 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
  448              | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

  449 new_variable: simple_variable
  450             | new_variable '[' optional_expr ']'
  451             | new_variable '{' expr '}'
  452             | new_variable "-> (T_OBJECT_OPERATOR)" property_name
  453             | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
  454             | new_variable ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

  455 member_name: identifier
  456            | '{' expr '}'
  457            | simple_variable

  458 property_name: "identifier (T_STRING)"
  459              | '{' expr '}'
  460              | simple_variable

  461 array_pair_list: non_empty_array_pair_list

  462 possible_array_pair: %empty
  463                    | array_pair

  464 non_empty_array_pair_list: non_empty_array_pair_list ',' possible_array_pair
  465                          | possible_array_pair

  466 array_pair: expr "=> (T_DOUBLE_ARROW)" expr
  467           | expr
  468           | expr "=> (T_DOUBLE_ARROW)" '&' variable
  469           | '&' variable
  470           | expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')'
  471           | "list (T_LIST)" '(' array_pair_list ')'

  472 encaps_list: encaps_list encaps_var
  473            | encaps_list "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"
  474            | encaps_var
  475            | "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" encaps_var

  476 encaps_var: "variable (T_VARIABLE)"
  477           | "variable (T_VARIABLE)" '[' encaps_var_offset ']'
  478           | "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)"
  479           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}'
  480           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '}'
  481           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' '}'
  482           | "{$ (T_CURLY_OPEN)" variable '}'

  483 encaps_var_offset: "identifier (T_STRING)"
  484                  | "number (T_NUM_STRING)"
  485                  | '-' "number (T_NUM_STRING)"
  486                  | "variable (T_VARIABLE)"

  487 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables possible_comma ')'
  488                           | "empty (T_EMPTY)" '(' expr ')'
  489                           | "include (T_INCLUDE)" expr
  490                           | "include_once (T_INCLUDE_ONCE)" expr
  491                           | "eval (T_EVAL)" '(' expr ')'
  492                           | "require (T_REQUIRE)" expr
  493                           | "require_once (T_REQUIRE_ONCE)" expr

  494 isset_variables: isset_variable
  495                | isset_variables ',' isset_variable

  496 isset_variable: expr


Terminals, with rules where they appear

"end of file" (0) 0
'!' (33) 342
'"' (34) 419
'$' (36) 445 446
'%' (37) 337
'&' (38) 167 189 305 329 382 388 468 469
'(' (40) 90 130 134 135 136 137 146 147 148 150 157 165 190 209 210
    213 214 232 233 250 302 354 376 377 384 398 404 430 433 470 471
    487 488 491
')' (41) 90 130 134 135 136 137 146 147 148 150 157 165 190 209 210
    213 214 232 233 250 302 354 376 377 384 398 404 430 433 470 471
    487 488 491
'*' (42) 334
'+' (43) 332 340
',' (44) 108 109 111 113 121 163 220 235 238 241 252 282 286 290 295
    385 464 495
'-' (45) 333 341 485
'.' (46) 331
'/' (47) 336
':' (58) 155 193 195 197 200 201 205 208 213 214 216 231 356 357
';' (59) 90 91 96 97 98 99 100 130 135 136 138 139 140 141 142 143
    145 146 151 153 154 193 195 197 199 200 201 206 208 215 216 247
    248 253 258 259 268
'<' (60) 348
'=' (61) 222 244 285 288 289 302 303 304 305
'>' (62) 350
'?' (63) 226 356 357
'@' (64) 368
'[' (91) 191 303 405 436 437 450 477 481
']' (93) 191 303 405 436 437 450 477 481
'^' (94) 330
'`' (96) 370
'{' (123) 93 95 103 104 105 106 131 152 157 161 165 171 173 179 181
    198 199 254 255 269 298 376 377 438 445 451 456 459
'|' (124) 159 328
'}' (125) 93 95 103 104 105 106 131 152 157 161 165 171 173 179 181
    198 199 254 255 269 298 376 377 438 445 451 456 459 479 480 481
    482
'~' (126) 343
error (256)
"include (T_INCLUDE)" (258) 2 489
"include_once (T_INCLUDE_ONCE)" (259) 3 490
"eval (T_EVAL)" (260) 4 491
"require (T_REQUIRE)" (261) 5 492
"require_once (T_REQUIRE_ONCE)" (262) 6 493
"or (T_LOGICAL_OR)" (263) 7 325
"xor (T_LOGICAL_XOR)" (264) 8 327
"and (T_LOGICAL_AND)" (265) 9 326
"print (T_PRINT)" (266) 45 371
"yield (T_YIELD)" (267) 46 372 373 374
"=> (T_DOUBLE_ARROW)" (268) 148 374 466 468 470
"yield from (T_YIELD_FROM)" (269) 375
"+= (T_PLUS_EQUAL)" (270) 307
"-= (T_MINUS_EQUAL)" (271) 308
"*= (T_MUL_EQUAL)" (272) 309
"/= (T_DIV_EQUAL)" (273) 311
".= (T_CONCAT_EQUAL)" (274) 312
"%= (T_MOD_EQUAL)" (275) 313
"&= (T_AND_EQUAL)" (276) 314
"|= (T_OR_EQUAL)" (277) 315
"^= (T_XOR_EQUAL)" (278) 316
"<<= (T_SL_EQUAL)" (279) 317
">>= (T_SR_EQUAL)" (280) 318
"**= (T_POW_EQUAL)" (281) 310
"?? (T_COALESCE)" (282) 358
"|| (T_BOOLEAN_OR)" (283) 323
"&& (T_BOOLEAN_AND)" (284) 324
"== (T_IS_EQUAL)" (285) 346
"!= (T_IS_NOT_EQUAL)" (286) 347
"=== (T_IS_IDENTICAL)" (287) 344
"!== (T_IS_NOT_IDENTICAL)" (288) 345
"<=> (T_SPACESHIP)" (289) 352
"<= (T_IS_SMALLER_OR_EQUAL)" (290) 349
">= (T_IS_GREATER_OR_EQUAL)" (291) 351
"<< (T_SL)" (292) 338
">> (T_SR)" (293) 339
"instanceof (T_INSTANCEOF)" (294) 10 353
"++ (T_INC)" (295) 319 320
"-- (T_DEC)" (296) 321 322
"(int) (T_INT_CAST)" (297) 360
"(double) (T_DOUBLE_CAST)" (298) 361
"(string) (T_STRING_CAST)" (299) 362
"(array) (T_ARRAY_CAST)" (300) 363
"(object) (T_OBJECT_CAST)" (301) 364
"(bool) (T_BOOL_CAST)" (302) 365
"(unset) (T_UNSET_CAST)" (303) 366
"** (T_POW)" (304) 335
"new (T_NEW)" (305) 11 299 300
"clone (T_CLONE)" (306) 12 306
T_NOELSE (307)
"elseif (T_ELSEIF)" (308) 15 210 214
"else (T_ELSE)" (309) 16 212 216
"endif (T_ENDIF)" (310) 17 215 216
"static (T_STATIC)" (311) 70 142 279 377 393
"abstract (T_ABSTRACT)" (312) 71 176 280
"final (T_FINAL)" (313) 72 177 281
"private (T_PRIVATE)" (314) 73 278
"protected (T_PROTECTED)" (315) 74 277
"public (T_PUBLIC)" (316) 75 276
"integer number (T_LNUMBER)" (317) 407
"floating-point number (T_DNUMBER)" (318) 408
"identifier (T_STRING)" (319) 76 80 81 118 154 155 165 171 173 179
    181 261 289 458 478 483
"variable (T_VARIABLE)" (320) 157 221 222 243 244 284 285 387 388 444
    476 477 478 486
T_INLINE_HTML (321) 144
"quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" (322) 400
    417 473 475
"quoted-string (T_CONSTANT_ENCAPSED_STRING)" (323) 406
"variable name (T_STRING_VARNAME)" (324) 480 481
"number (T_NUM_STRING)" (325) 484 485
"exit (T_EXIT)" (326) 13 367
"if (T_IF)" (327) 14 209 213
"echo (T_ECHO)" (328) 18 143
"do (T_DO)" (329) 19 135
"while (T_WHILE)" (330) 20 134 135
"endwhile (T_ENDWHILE)" (331) 21 208
"for (T_FOR)" (332) 22 136
"endfor (T_ENDFOR)" (333) 23 193
"foreach (T_FOREACH)" (334) 24 147 148
"endforeach (T_ENDFOREACH)" (335) 25 195
"declare (T_DECLARE)" (336) 26 150
"enddeclare (T_ENDDECLARE)" (337) 27 197
"as (T_AS)" (338) 28 118 147 148 261 262 263 264
"switch (T_SWITCH)" (339) 48 137
"endswitch (T_ENDSWITCH)" (340) 49 200 201
"case (T_CASE)" (341) 50 203
"default (T_DEFAULT)" (342) 51 204
"break (T_BREAK)" (343) 52 138
"continue (T_CONTINUE)" (344) 40 139
"goto (T_GOTO)" (345) 41 154
"function (T_FUNCTION)" (346) 42 101 378
"const (T_CONST)" (347) 43 100 102 248
"return (T_RETURN)" (348) 44 140
"try (T_TRY)" (349) 29 152
"catch (T_CATCH)" (350) 30 157
"finally (T_FINALLY)" (351) 31 161
"throw (T_THROW)" (352) 32 153
"use (T_USE)" (353) 33 96 97 98 99 249 384
"insteadof (T_INSTEADOF)" (354) 34 260
"global (T_GLOBAL)" (355) 35 141
"var (T_VAR)" (356) 36 271
"unset (T_UNSET)" (357) 37 146
"isset (T_ISSET)" (358) 38 487
"empty (T_EMPTY)" (359) 39 488
"__halt_compiler (T_HALT_COMPILER)" (360) 90 130
"class (T_CLASS)" (361) 60 171 173 298
"trait (T_TRAIT)" (362) 58 179
"interface (T_INTERFACE)" (363) 59 181
"extends (T_EXTENDS)" (364) 55 183 185
"implements (T_IMPLEMENTS)" (365) 56 187
"-> (T_OBJECT_OPERATOR)" (366) 439 443 452 478
"list (T_LIST)" (367) 47 190 302 470 471
"array (T_ARRAY)" (368) 53 227 404
"callable (T_CALLABLE)" (369) 54 228
"__LINE__ (T_LINE)" (370) 65 409
"__FILE__ (T_FILE)" (371) 66 410
"__DIR__ (T_DIR)" (372) 67 411
"__CLASS__ (T_CLASS_C)" (373) 61 416
"__TRAIT__ (T_TRAIT_C)" (374) 62 412
"__METHOD__ (T_METHOD_C)" (375) 64 413
"__FUNCTION__ (T_FUNC_C)" (376) 63 414
"comment (T_COMMENT)" (377)
"doc comment (T_DOC_COMMENT)" (378)
"open tag (T_OPEN_TAG)" (379)
"open tag with echo (T_OPEN_TAG_WITH_ECHO)" (380)
"close tag (T_CLOSE_TAG)" (381)
"whitespace (T_WHITESPACE)" (382)
"heredoc start (T_START_HEREDOC)" (383) 417 418 420
"heredoc end (T_END_HEREDOC)" (384) 417 418 420
"${ (T_DOLLAR_OPEN_CURLY_BRACES)" (385) 479 480 481
"{$ (T_CURLY_OPEN)" (386) 482
":: (T_PAAMAYIM_NEKUDOTAYIM)" (387) 267 390 391 424 425 447 448 453
    454
"namespace (T_NAMESPACE)" (388) 57 83 91 93 95
"__NAMESPACE__ (T_NS_C)" (389) 68 415
"\\ (T_NS_SEPARATOR)" (390) 81 83 84 103 104 105 106 120
"... (T_ELLIPSIS)" (391) 169 237
T_ERROR (392)


Nonterminals, with rules where they appear

$accept (166)
    on left: 0
start (167)
    on left: 1, on right: 0
reserved_non_modifiers (168)
    on left: 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
    23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
    44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
    65 66 67 68, on right: 69 262
semi_reserved (169)
    on left: 69 70 71 72 73 74 75, on right: 77
identifier (170)
    on left: 76 77, on right: 250 263 265 267 288 424 425 455
top_statement_list (171)
    on left: 78 79, on right: 1 78 93 95
namespace_name (172)
    on left: 80 81, on right: 81 82 83 84 91 93 103 104 105 106 117
    118
name (173)
    on left: 82 83 84, on right: 158 159 183 229 251 252 267 389 394
    423
top_statement (174)
    on left: 85 86 87 88 89 90 91 93 95 96 97 98 99 100, on right:
    78
$@1 (175)
    on left: 92, on right: 93
$@2 (176)
    on left: 94, on right: 95
use_type (177)
    on left: 101 102, on right: 97 99 116
group_use_declaration (178)
    on left: 103 104, on right: 97
mixed_group_use_declaration (179)
    on left: 105 106, on right: 96
possible_comma (180)
    on left: 107 108, on right: 103 104 105 106 146 233 487
inline_use_declarations (181)
    on left: 109 110, on right: 105 106 109
unprefixed_use_declarations (182)
    on left: 111 112, on right: 103 104 111
use_declarations (183)
    on left: 113 114, on right: 98 99 113
inline_use_declaration (184)
    on left: 115 116, on right: 109 110
unprefixed_use_declaration (185)
    on left: 117 118, on right: 111 112 115 116 119 120
use_declaration (186)
    on left: 119 120, on right: 113 114
const_list (187)
    on left: 121 122, on right: 100 121 150
inner_statement_list (188)
    on left: 123 124, on right: 123 131 152 157 161 165 193 195 197
    203 204 208 213 214 216 269 376 377
inner_statement (189)
    on left: 125 126 127 128 129 130, on right: 123
statement (190)
    on left: 131 132 133 134 135 136 137 138 139 140 141 142 143 144
    145 146 147 148 150 151 152 153 154 155, on right: 85 125 135 192
    194 196 207 209 210 212
$@3 (191)
    on left: 149, on right: 150
catch_list (192)
    on left: 156 157, on right: 152 157
catch_name_list (193)
    on left: 158 159, on right: 157 159
finally_statement (194)
    on left: 160 161, on right: 152
unset_variables (195)
    on left: 162 163, on right: 146 163
unset_variable (196)
    on left: 164, on right: 162 163
function_declaration_statement (197)
    on left: 165, on right: 86 126
is_reference (198)
    on left: 166 167, on right: 221 222
is_variadic (199)
    on left: 168 169, on right: 221 222
class_declaration_statement (200)
    on left: 171 173, on right: 87 127
@4 (201)
    on left: 170, on right: 171
@5 (202)
    on left: 172, on right: 173
class_modifiers (203)
    on left: 174 175, on right: 171 175
class_modifier (204)
    on left: 176 177, on right: 174 175
trait_declaration_statement (205)
    on left: 179, on right: 88 128
@6 (206)
    on left: 178, on right: 179
interface_declaration_statement (207)
    on left: 181, on right: 89 129
@7 (208)
    on left: 180, on right: 181
extends_from (209)
    on left: 182 183, on right: 171 173 298
interface_extends_list (210)
    on left: 184 185, on right: 181
implements_list (211)
    on left: 186 187, on right: 171 173 298
foreach_variable (212)
    on left: 188 189 190 191, on right: 147 148
for_statement (213)
    on left: 192 193, on right: 136
foreach_statement (214)
    on left: 194 195, on right: 147 148
declare_statement (215)
    on left: 196 197, on right: 150
switch_case_list (216)
    on left: 198 199 200 201, on right: 137
case_list (217)
    on left: 202 203 204, on right: 198 199 200 201 203 204
case_separator (218)
    on left: 205 206, on right: 203 204
while_statement (219)
    on left: 207 208, on right: 134
if_stmt_without_else (220)
    on left: 209 210, on right: 210 211 212
if_stmt (221)
    on left: 211 212, on right: 132
alt_if_stmt_without_else (222)
    on left: 213 214, on right: 214 215 216
alt_if_stmt (223)
    on left: 215 216, on right: 133
parameter_list (224)
    on left: 217 218, on right: 165 250 376 377
non_empty_parameter_list (225)
    on left: 219 220, on right: 217 220
parameter (226)
    on left: 221 222, on right: 219 220
optional_type (227)
    on left: 223 224, on right: 221 222
type_expr (228)
    on left: 225 226, on right: 224 231
type (229)
    on left: 227 228 229, on right: 225 226
return_type (230)
    on left: 230 231, on right: 165 250 376 377
argument_list (231)
    on left: 232 233, on right: 389 390 391 392 403 439
non_empty_argument_list (232)
    on left: 234 235, on right: 233 235
argument (233)
    on left: 236 237, on right: 234 235
global_var_list (234)
    on left: 238 239, on right: 141 238
global_var (235)
    on left: 240, on right: 238 239
static_var_list (236)
    on left: 241 242, on right: 142 241
static_var (237)
    on left: 243 244, on right: 241 242
class_statement_list (238)
    on left: 245 246, on right: 171 173 179 181 245 298
class_statement (239)
    on left: 247 248 249 250, on right: 245
name_list (240)
    on left: 251 252, on right: 185 187 249 252 260
trait_adaptations (241)
    on left: 253 254 255, on right: 249
trait_adaptation_list (242)
    on left: 256 257, on right: 255 257
trait_adaptation (243)
    on left: 258 259, on right: 256 257
trait_precedence (244)
    on left: 260, on right: 258
trait_alias (245)
    on left: 261 262 263 264, on right: 259
trait_method_reference (246)
    on left: 265 266, on right: 261 262 263 264
absolute_trait_method_reference (247)
    on left: 267, on right: 260 266
method_body (248)
    on left: 268 269, on right: 250
variable_modifiers (249)
    on left: 270 271, on right: 247
method_modifiers (250)
    on left: 272 273, on right: 248 250
non_empty_member_modifiers (251)
    on left: 274 275, on right: 270 273 275
member_modifier (252)
    on left: 276 277 278 279 280 281, on right: 263 264 274 275
property_list (253)
    on left: 282 283, on right: 247 282
property (254)
    on left: 284 285, on right: 282 283
class_const_list (255)
    on left: 286 287, on right: 248 286
class_const_decl (256)
    on left: 288, on right: 286 287
const_decl (257)
    on left: 289, on right: 121 122
echo_expr_list (258)
    on left: 290 291, on right: 143 290
echo_expr (259)
    on left: 292, on right: 290 291
for_exprs (260)
    on left: 293 294, on right: 136
non_empty_for_exprs (261)
    on left: 295 296, on right: 294 295
anonymous_class (262)
    on left: 298, on right: 300
@8 (263)
    on left: 297, on right: 298
new_expr (264)
    on left: 299 300, on right: 355
expr (265)
    on left: 301 302 303 304 305 306 307 308 309 310 311 312 313 314
    315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330
    331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346
    347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362
    363 364 365 366 367 368 369 370 371 372 373 374 375 376 377, on right:
    134 135 137 145 147 148 153 203 209 210 213 214 222 236 237 244
    285 288 289 292 295 296 302 303 304 306 307 308 309 310 311 312
    313 314 315 316 317 318 323 324 325 326 327 328 329 330 331 332
    333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348
    349 350 351 352 353 354 356 357 358 360 361 362 363 364 365 366
    368 371 373 374 375 427 430 433 438 445 451 456 459 466 467 468
    470 479 481 488 489 490 491 492 493 496
function (266)
    on left: 378, on right: 165 250 376 377
backup_doc_comment (267)
    on left: 379, on right: 165 171 173 179 181 250 284 285 288 289
    298 376 377
backup_fn_flags (268)
    on left: 380, on right: 165 250 376 377
returns_ref (269)
    on left: 381 382, on right: 165 250 376 377
lexical_vars (270)
    on left: 383 384, on right: 376 377
lexical_var_list (271)
    on left: 385 386, on right: 384 385
lexical_var (272)
    on left: 387 388, on right: 385 386
function_call (273)
    on left: 389 390 391 392, on right: 440
class_name (274)
    on left: 393 394, on right: 390 395 424 447 453
class_name_reference (275)
    on left: 395 396, on right: 299 353
exit_expr (276)
    on left: 397 398, on right: 367
backticks_expr (277)
    on left: 399 400 401, on right: 370
ctor_arguments (278)
    on left: 402 403, on right: 298 299
dereferencable_scalar (279)
    on left: 404 405 406, on right: 421 431 434
scalar (280)
    on left: 407 408 409 410 411 412 413 414 415 416 417 418 419 420
    421 422, on right: 369
constant (281)
    on left: 423 424 425, on right: 422 437
optional_expr (282)
    on left: 426 427, on right: 138 139 140 398 436 437 450
variable_class_name (283)
    on left: 428, on right: 391 425 448
dereferencable (284)
    on left: 429 430 431, on right: 428 436 438 439 443
callable_expr (285)
    on left: 432 433 434, on right: 392
callable_variable (286)
    on left: 435 436 437 438 439 440, on right: 432 441
variable (287)
    on left: 441 442 443, on right: 164 188 189 301 304 305 307 308
    309 310 311 312 313 314 315 316 317 318 319 320 321 322 429 468
    469 482
simple_variable (288)
    on left: 444 445 446, on right: 240 435 446 447 448 449 453 454
    457 460
static_member (289)
    on left: 447 448, on right: 442
new_variable (290)
    on left: 449 450 451 452 453 454, on right: 396 450 451 452 454
member_name (291)
    on left: 455 456 457, on right: 390 391
property_name (292)
    on left: 458 459 460, on right: 439 443 452
array_pair_list (293)
    on left: 461, on right: 190 191 302 303 404 405 470 471
possible_array_pair (294)
    on left: 462 463, on right: 464 465
non_empty_array_pair_list (295)
    on left: 464 465, on right: 461 464
array_pair (296)
    on left: 466 467 468 469 470 471, on right: 463
encaps_list (297)
    on left: 472 473 474 475, on right: 401 419 420 472 473
encaps_var (298)
    on left: 476 477 478 479 480 481 482, on right: 472 474 475
encaps_var_offset (299)
    on left: 483 484 485 486, on right: 477
internal_functions_in_yacc (300)
    on left: 487 488 489 490 491 492 493, on right: 359
isset_variables (301)
    on left: 494 495, on right: 487 495
isset_variable (302)
    on left: 496, on right: 494 495


State 0

    0 $accept: . start "end of file"

    $default  reduce using rule 79 (top_statement_list)

    start               go to state 1
    top_statement_list  go to state 2


State 1

    0 $accept: start . "end of file"

    "end of file"  shift, and go to state 3


State 2

    1 start: top_statement_list .
   78 top_statement_list: top_statement_list . top_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "const (T_CONST)"                             shift, and go to state 51
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "use (T_USE)"                                 shift, and go to state 55
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 60
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 74
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 1 (start)

    namespace_name                   go to state 83
    name                             go to state 84
    top_statement                    go to state 85
    statement                        go to state 86
    function_declaration_statement   go to state 87
    class_declaration_statement      go to state 88
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 91
    interface_declaration_statement  go to state 92
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 3

    0 $accept: start "end of file" .

    $default  accept


State 4

  489 internal_functions_in_yacc: "include (T_INCLUDE)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 116
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 5

  490 internal_functions_in_yacc: "include_once (T_INCLUDE_ONCE)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 118
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 6

  491 internal_functions_in_yacc: "eval (T_EVAL)" . '(' expr ')'

    '('  shift, and go to state 119


State 7

  492 internal_functions_in_yacc: "require (T_REQUIRE)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 120
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 8

  493 internal_functions_in_yacc: "require_once (T_REQUIRE_ONCE)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 121
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 9

  371 expr: "print (T_PRINT)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 122
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 10

  372 expr: "yield (T_YIELD)" .
  373     | "yield (T_YIELD)" . expr
  374     | "yield (T_YIELD)" . expr "=> (T_DOUBLE_ARROW)" expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 372 (expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 123
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 11

  375 expr: "yield from (T_YIELD_FROM)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 124
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 12

  340 expr: '+' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 125
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 13

  341 expr: '-' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 126
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 14

  342 expr: '!' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 127
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 15

  343 expr: '~' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 128
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 16

  320 expr: "++ (T_INC)" . variable

    '['                                           shift, and go to state 129
    "static (T_STATIC)"                           shift, and go to state 130
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 131
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 132
    constant               go to state 133
    variable_class_name    go to state 105
    dereferencable         go to state 106
    callable_expr          go to state 107
    callable_variable      go to state 108
    variable               go to state 134
    simple_variable        go to state 110
    static_member          go to state 111


State 17

  322 expr: "-- (T_DEC)" . variable

    '['                                           shift, and go to state 129
    "static (T_STATIC)"                           shift, and go to state 130
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 131
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 132
    constant               go to state 133
    variable_class_name    go to state 105
    dereferencable         go to state 106
    callable_expr          go to state 107
    callable_variable      go to state 108
    variable               go to state 135
    simple_variable        go to state 110
    static_member          go to state 111


State 18

  360 expr: "(int) (T_INT_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 136
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 19

  361 expr: "(double) (T_DOUBLE_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 137
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 20

  362 expr: "(string) (T_STRING_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 138
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 21

  363 expr: "(array) (T_ARRAY_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 139
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 22

  364 expr: "(object) (T_OBJECT_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 140
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 23

  365 expr: "(bool) (T_BOOL_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 141
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 24

  366 expr: "(unset) (T_UNSET_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 142
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 25

  368 expr: '@' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 143
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 26

  303 expr: '[' . array_pair_list ']' '=' expr
  405 dereferencable_scalar: '[' . array_pair_list ']'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 144
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 145
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 462 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 146
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    array_pair_list             go to state 147
    possible_array_pair         go to state 148
    non_empty_array_pair_list   go to state 149
    array_pair                  go to state 150
    internal_functions_in_yacc  go to state 112


State 27

  299 new_expr: "new (T_NEW)" . class_name_reference ctor_arguments
  300         | "new (T_NEW)" . anonymous_class

    "static (T_STATIC)"        shift, and go to state 130
    "identifier (T_STRING)"    shift, and go to state 114
    "variable (T_VARIABLE)"    shift, and go to state 35
    "class (T_CLASS)"          shift, and go to state 151
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
    '$'                        shift, and go to state 82

    namespace_name        go to state 83
    name                  go to state 152
    anonymous_class       go to state 153
    class_name            go to state 154
    class_name_reference  go to state 155
    simple_variable       go to state 156
    new_variable          go to state 157


State 28

  306 expr: "clone (T_CLONE)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 158
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 29

  142 statement: "static (T_STATIC)" . static_var_list ';'
  377 expr: "static (T_STATIC)" . function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
  393 class_name: "static (T_STATIC)" .

    "variable (T_VARIABLE)"  shift, and go to state 159
    "function (T_FUNCTION)"  shift, and go to state 50

    $default  reduce using rule 393 (class_name)

    static_var_list  go to state 160
    static_var       go to state 161
    function         go to state 162


State 30

  176 class_modifier: "abstract (T_ABSTRACT)" .

    $default  reduce using rule 176 (class_modifier)


State 31

  177 class_modifier: "final (T_FINAL)" .

    $default  reduce using rule 177 (class_modifier)


State 32

  407 scalar: "integer number (T_LNUMBER)" .

    $default  reduce using rule 407 (scalar)


State 33

  408 scalar: "floating-point number (T_DNUMBER)" .

    $default  reduce using rule 408 (scalar)


State 34

   80 namespace_name: "identifier (T_STRING)" .
  155 statement: "identifier (T_STRING)" . ':'

    ':'  shift, and go to state 163

    $default  reduce using rule 80 (namespace_name)


State 35

  444 simple_variable: "variable (T_VARIABLE)" .

    $default  reduce using rule 444 (simple_variable)


State 36

  144 statement: T_INLINE_HTML .

    $default  reduce using rule 144 (statement)


State 37

  406 dereferencable_scalar: "quoted-string (T_CONSTANT_ENCAPSED_STRING)" .

    $default  reduce using rule 406 (dereferencable_scalar)


State 38

  367 expr: "exit (T_EXIT)" . exit_expr

    '('  shift, and go to state 164

    $default  reduce using rule 397 (exit_expr)

    exit_expr  go to state 165


State 39

  209 if_stmt_without_else: "if (T_IF)" . '(' expr ')' statement
  213 alt_if_stmt_without_else: "if (T_IF)" . '(' expr ')' ':' inner_statement_list

    '('  shift, and go to state 166


State 40

  143 statement: "echo (T_ECHO)" . echo_expr_list ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    echo_expr_list              go to state 167
    echo_expr                   go to state 168
    new_expr                    go to state 97
    expr                        go to state 169
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 41

  135 statement: "do (T_DO)" . statement "while (T_WHILE)" '(' expr ')' ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 170
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr                        go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 42

  134 statement: "while (T_WHILE)" . '(' expr ')' while_statement

    '('  shift, and go to state 171


State 43

  136 statement: "for (T_FOR)" . '(' for_exprs ';' for_exprs ';' for_exprs ')' for_statement

    '('  shift, and go to state 172


State 44

  147 statement: "foreach (T_FOREACH)" . '(' expr "as (T_AS)" foreach_variable ')' foreach_statement
  148          | "foreach (T_FOREACH)" . '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement

    '('  shift, and go to state 173


State 45

  150 statement: "declare (T_DECLARE)" . '(' const_list ')' $@3 declare_statement

    '('  shift, and go to state 174


State 46

  137 statement: "switch (T_SWITCH)" . '(' expr ')' switch_case_list

    '('  shift, and go to state 175


State 47

  138 statement: "break (T_BREAK)" . optional_expr ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 426 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 176
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    optional_expr               go to state 177
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 48

  139 statement: "continue (T_CONTINUE)" . optional_expr ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 426 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 176
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    optional_expr               go to state 178
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 49

  154 statement: "goto (T_GOTO)" . "identifier (T_STRING)" ';'

    "identifier (T_STRING)"  shift, and go to state 179


State 50

  378 function: "function (T_FUNCTION)" .

    $default  reduce using rule 378 (function)


State 51

  100 top_statement: "const (T_CONST)" . const_list ';'

    "identifier (T_STRING)"  shift, and go to state 180

    const_list  go to state 181
    const_decl  go to state 182


State 52

  140 statement: "return (T_RETURN)" . optional_expr ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 426 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 176
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    optional_expr               go to state 183
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 53

  152 statement: "try (T_TRY)" . '{' inner_statement_list '}' catch_list finally_statement

    '{'  shift, and go to state 184


State 54

  153 statement: "throw (T_THROW)" . expr ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 185
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 55

   96 top_statement: "use (T_USE)" . mixed_group_use_declaration ';'
   97              | "use (T_USE)" . use_type group_use_declaration ';'
   98              | "use (T_USE)" . use_declarations ';'
   99              | "use (T_USE)" . use_type use_declarations ';'

    "identifier (T_STRING)"  shift, and go to state 114
    "function (T_FUNCTION)"  shift, and go to state 186
    "const (T_CONST)"        shift, and go to state 187
    "\\ (T_NS_SEPARATOR)"    shift, and go to state 188

    namespace_name               go to state 189
    use_type                     go to state 190
    mixed_group_use_declaration  go to state 191
    use_declarations             go to state 192
    unprefixed_use_declaration   go to state 193
    use_declaration              go to state 194


State 56

  141 statement: "global (T_GLOBAL)" . global_var_list ';'

    "variable (T_VARIABLE)"  shift, and go to state 35
    '$'                      shift, and go to state 82

    global_var_list  go to state 195
    global_var       go to state 196
    simple_variable  go to state 197


State 57

  146 statement: "unset (T_UNSET)" . '(' unset_variables possible_comma ')' ';'

    '('  shift, and go to state 198


State 58

  487 internal_functions_in_yacc: "isset (T_ISSET)" . '(' isset_variables possible_comma ')'

    '('  shift, and go to state 199


State 59

  488 internal_functions_in_yacc: "empty (T_EMPTY)" . '(' expr ')'

    '('  shift, and go to state 200


State 60

   90 top_statement: "__halt_compiler (T_HALT_COMPILER)" . '(' ')' ';'

    '('  shift, and go to state 201


State 61

  173 class_declaration_statement: "class (T_CLASS)" . @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 172 (@5)

    @5  go to state 202


State 62

  179 trait_declaration_statement: "trait (T_TRAIT)" . @6 "identifier (T_STRING)" backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 178 (@6)

    @6  go to state 203


State 63

  181 interface_declaration_statement: "interface (T_INTERFACE)" . @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 180 (@7)

    @7  go to state 204


State 64

  302 expr: "list (T_LIST)" . '(' array_pair_list ')' '=' expr

    '('  shift, and go to state 205


State 65

  404 dereferencable_scalar: "array (T_ARRAY)" . '(' array_pair_list ')'

    '('  shift, and go to state 206


State 66

  409 scalar: "__LINE__ (T_LINE)" .

    $default  reduce using rule 409 (scalar)


State 67

  410 scalar: "__FILE__ (T_FILE)" .

    $default  reduce using rule 410 (scalar)


State 68

  411 scalar: "__DIR__ (T_DIR)" .

    $default  reduce using rule 411 (scalar)


State 69

  416 scalar: "__CLASS__ (T_CLASS_C)" .

    $default  reduce using rule 416 (scalar)


State 70

  412 scalar: "__TRAIT__ (T_TRAIT_C)" .

    $default  reduce using rule 412 (scalar)


State 71

  413 scalar: "__METHOD__ (T_METHOD_C)" .

    $default  reduce using rule 413 (scalar)


State 72

  414 scalar: "__FUNCTION__ (T_FUNC_C)" .

    $default  reduce using rule 414 (scalar)


State 73

  417 scalar: "heredoc start (T_START_HEREDOC)" . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "heredoc end (T_END_HEREDOC)"
  418       | "heredoc start (T_START_HEREDOC)" . "heredoc end (T_END_HEREDOC)"
  420       | "heredoc start (T_START_HEREDOC)" . encaps_list "heredoc end (T_END_HEREDOC)"

    "variable (T_VARIABLE)"                                     shift, and go to state 207
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 208
    "heredoc end (T_END_HEREDOC)"                               shift, and go to state 209
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 210
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 211

    encaps_list  go to state 212
    encaps_var   go to state 213


State 74

   83 name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name
   91 top_statement: "namespace (T_NAMESPACE)" . namespace_name ';'
   93              | "namespace (T_NAMESPACE)" . namespace_name $@1 '{' top_statement_list '}'
   95              | "namespace (T_NAMESPACE)" . $@2 '{' top_statement_list '}'

    "identifier (T_STRING)"  shift, and go to state 114
    "\\ (T_NS_SEPARATOR)"    shift, and go to state 214

    $default  reduce using rule 94 ($@2)

    namespace_name  go to state 215
    $@2             go to state 216


State 75

  415 scalar: "__NAMESPACE__ (T_NS_C)" .

    $default  reduce using rule 415 (scalar)


State 76

   84 name: "\\ (T_NS_SEPARATOR)" . namespace_name

    "identifier (T_STRING)"  shift, and go to state 114

    namespace_name  go to state 217


State 77

  354 expr: '(' . expr ')'
  430 dereferencable: '(' . expr ')'
  433 callable_expr: '(' . expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 218
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 78

  151 statement: ';' .

    $default  reduce using rule 151 (statement)


State 79

  131 statement: '{' . inner_statement_list '}'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 219


State 80

  370 expr: '`' . backticks_expr '`'

    "variable (T_VARIABLE)"                                     shift, and go to state 207
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 220
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 210
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 211

    $default  reduce using rule 399 (backticks_expr)

    backticks_expr  go to state 221
    encaps_list     go to state 222
    encaps_var      go to state 213


State 81

  419 scalar: '"' . encaps_list '"'

    "variable (T_VARIABLE)"                                     shift, and go to state 207
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 223
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 210
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 211

    encaps_list  go to state 224
    encaps_var   go to state 213


State 82

  445 simple_variable: '$' . '{' expr '}'
  446                | '$' . simple_variable

    "variable (T_VARIABLE)"  shift, and go to state 35
    '{'                      shift, and go to state 225
    '$'                      shift, and go to state 82

    simple_variable  go to state 226


State 83

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
   82 name: namespace_name .

    "\\ (T_NS_SEPARATOR)"  shift, and go to state 227

    $default  reduce using rule 82 (name)


State 84

  389 function_call: name . argument_list
  394 class_name: name .
  423 constant: name .

    '('  shift, and go to state 228

    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 394 (class_name)
    $default                       reduce using rule 423 (constant)

    argument_list  go to state 229


State 85

   78 top_statement_list: top_statement_list top_statement .

    $default  reduce using rule 78 (top_statement_list)


State 86

   85 top_statement: statement .

    $default  reduce using rule 85 (top_statement)


State 87

   86 top_statement: function_declaration_statement .

    $default  reduce using rule 86 (top_statement)


State 88

   87 top_statement: class_declaration_statement .

    $default  reduce using rule 87 (top_statement)


State 89

  171 class_declaration_statement: class_modifiers . "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'
  175 class_modifiers: class_modifiers . class_modifier

    "abstract (T_ABSTRACT)"  shift, and go to state 30
    "final (T_FINAL)"        shift, and go to state 31
    "class (T_CLASS)"        shift, and go to state 230

    class_modifier  go to state 231


State 90

  174 class_modifiers: class_modifier .

    $default  reduce using rule 174 (class_modifiers)


State 91

   88 top_statement: trait_declaration_statement .

    $default  reduce using rule 88 (top_statement)


State 92

   89 top_statement: interface_declaration_statement .

    $default  reduce using rule 89 (top_statement)


State 93

  210 if_stmt_without_else: if_stmt_without_else . "elseif (T_ELSEIF)" '(' expr ')' statement
  211 if_stmt: if_stmt_without_else .
  212        | if_stmt_without_else . "else (T_ELSE)" statement

    "elseif (T_ELSEIF)"  shift, and go to state 232
    "else (T_ELSE)"      shift, and go to state 233

    $default  reduce using rule 211 (if_stmt)


State 94

  132 statement: if_stmt .

    $default  reduce using rule 132 (statement)


State 95

  214 alt_if_stmt_without_else: alt_if_stmt_without_else . "elseif (T_ELSEIF)" '(' expr ')' ':' inner_statement_list
  215 alt_if_stmt: alt_if_stmt_without_else . "endif (T_ENDIF)" ';'
  216            | alt_if_stmt_without_else . "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" ';'

    "elseif (T_ELSEIF)"  shift, and go to state 234
    "else (T_ELSE)"      shift, and go to state 235
    "endif (T_ENDIF)"    shift, and go to state 236


State 96

  133 statement: alt_if_stmt .

    $default  reduce using rule 133 (statement)


State 97

  355 expr: new_expr .

    $default  reduce using rule 355 (expr)


State 98

  145 statement: expr . ';'
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ';'                           shift, and go to state 266


State 99

  165 function_declaration_statement: function . returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
  376 expr: function . returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '&'  shift, and go to state 267

    $default  reduce using rule 381 (returns_ref)

    returns_ref  go to state 268


State 100

  440 callable_variable: function_call .

    $default  reduce using rule 440 (callable_variable)


State 101

  390 function_call: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  424 constant: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
  447 static_member: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 269


State 102

  421 scalar: dereferencable_scalar .
  431 dereferencable: dereferencable_scalar .
  434 callable_expr: dereferencable_scalar .

    '['                            reduce using rule 431 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 431 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 431 (dereferencable)
    '('                            reduce using rule 434 (callable_expr)
    '{'                            reduce using rule 431 (dereferencable)
    $default                       reduce using rule 421 (scalar)


State 103

  369 expr: scalar .

    $default  reduce using rule 369 (expr)


State 104

  422 scalar: constant .
  437 callable_variable: constant . '[' optional_expr ']'

    '['  shift, and go to state 270

    $default  reduce using rule 422 (scalar)


State 105

  391 function_call: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  425 constant: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
  448 static_member: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 271


State 106

  428 variable_class_name: dereferencable .
  436 callable_variable: dereferencable . '[' optional_expr ']'
  438                  | dereferencable . '{' expr '}'
  439                  | dereferencable . "-> (T_OBJECT_OPERATOR)" property_name argument_list
  443 variable: dereferencable . "-> (T_OBJECT_OPERATOR)" property_name

    '['                       shift, and go to state 272
    "-> (T_OBJECT_OPERATOR)"  shift, and go to state 273
    '{'                       shift, and go to state 274

    $default  reduce using rule 428 (variable_class_name)


State 107

  392 function_call: callable_expr . argument_list

    '('  shift, and go to state 228

    argument_list  go to state 275


State 108

  432 callable_expr: callable_variable .
  441 variable: callable_variable .

    '('       reduce using rule 432 (callable_expr)
    $default  reduce using rule 441 (variable)


State 109

  301 expr: variable .
  304     | variable . '=' expr
  305     | variable . '=' '&' variable
  307     | variable . "+= (T_PLUS_EQUAL)" expr
  308     | variable . "-= (T_MINUS_EQUAL)" expr
  309     | variable . "*= (T_MUL_EQUAL)" expr
  310     | variable . "**= (T_POW_EQUAL)" expr
  311     | variable . "/= (T_DIV_EQUAL)" expr
  312     | variable . ".= (T_CONCAT_EQUAL)" expr
  313     | variable . "%= (T_MOD_EQUAL)" expr
  314     | variable . "&= (T_AND_EQUAL)" expr
  315     | variable . "|= (T_OR_EQUAL)" expr
  316     | variable . "^= (T_XOR_EQUAL)" expr
  317     | variable . "<<= (T_SL_EQUAL)" expr
  318     | variable . ">>= (T_SR_EQUAL)" expr
  319     | variable . "++ (T_INC)"
  321     | variable . "-- (T_DEC)"
  429 dereferencable: variable .

    '='                    shift, and go to state 276
    "+= (T_PLUS_EQUAL)"    shift, and go to state 277
    "-= (T_MINUS_EQUAL)"   shift, and go to state 278
    "*= (T_MUL_EQUAL)"     shift, and go to state 279
    "/= (T_DIV_EQUAL)"     shift, and go to state 280
    ".= (T_CONCAT_EQUAL)"  shift, and go to state 281
    "%= (T_MOD_EQUAL)"     shift, and go to state 282
    "&= (T_AND_EQUAL)"     shift, and go to state 283
    "|= (T_OR_EQUAL)"      shift, and go to state 284
    "^= (T_XOR_EQUAL)"     shift, and go to state 285
    "<<= (T_SL_EQUAL)"     shift, and go to state 286
    ">>= (T_SR_EQUAL)"     shift, and go to state 287
    "**= (T_POW_EQUAL)"    shift, and go to state 288
    "++ (T_INC)"           shift, and go to state 289
    "-- (T_DEC)"           shift, and go to state 290

    '['                            reduce using rule 429 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 429 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 429 (dereferencable)
    '{'                            reduce using rule 429 (dereferencable)
    $default                       reduce using rule 301 (expr)


State 110

  435 callable_variable: simple_variable .

    $default  reduce using rule 435 (callable_variable)


State 111

  442 variable: static_member .

    $default  reduce using rule 442 (variable)


State 112

  359 expr: internal_functions_in_yacc .

    $default  reduce using rule 359 (expr)


State 113

  377 expr: "static (T_STATIC)" . function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
  393 class_name: "static (T_STATIC)" .

    "function (T_FUNCTION)"  shift, and go to state 50

    $default  reduce using rule 393 (class_name)

    function  go to state 162


State 114

   80 namespace_name: "identifier (T_STRING)" .

    $default  reduce using rule 80 (namespace_name)


State 115

   83 name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name

    "\\ (T_NS_SEPARATOR)"  shift, and go to state 214


State 116

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  489 internal_functions_in_yacc: "include (T_INCLUDE)" expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 489 (internal_functions_in_yacc)


State 117

  376 expr: function . returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '&'  shift, and go to state 267

    $default  reduce using rule 381 (returns_ref)

    returns_ref  go to state 291


State 118

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  490 internal_functions_in_yacc: "include_once (T_INCLUDE_ONCE)" expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 490 (internal_functions_in_yacc)


State 119

  491 internal_functions_in_yacc: "eval (T_EVAL)" '(' . expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 292
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 120

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  492 internal_functions_in_yacc: "require (T_REQUIRE)" expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 492 (internal_functions_in_yacc)


State 121

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  493 internal_functions_in_yacc: "require_once (T_REQUIRE_ONCE)" expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 493 (internal_functions_in_yacc)


State 122

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  371     | "print (T_PRINT)" expr .

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 371 (expr)


State 123

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  373     | "yield (T_YIELD)" expr .
  374     | "yield (T_YIELD)" expr . "=> (T_DOUBLE_ARROW)" expr

    "=> (T_DOUBLE_ARROW)"         shift, and go to state 293
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 373 (expr)


State 124

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  375     | "yield from (T_YIELD_FROM)" expr .

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 375 (expr)


State 125

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  340     | '+' expr .
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "** (T_POW)"  shift, and go to state 265

    $default  reduce using rule 340 (expr)


State 126

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  341     | '-' expr .
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "** (T_POW)"  shift, and go to state 265

    $default  reduce using rule 341 (expr)


State 127

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  342     | '!' expr .
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    $default  reduce using rule 342 (expr)


State 128

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  343     | '~' expr .
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "** (T_POW)"  shift, and go to state 265

    $default  reduce using rule 343 (expr)


State 129

  405 dereferencable_scalar: '[' . array_pair_list ']'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 144
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 145
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 462 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 146
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    array_pair_list             go to state 294
    possible_array_pair         go to state 148
    non_empty_array_pair_list   go to state 149
    array_pair                  go to state 150
    internal_functions_in_yacc  go to state 112


State 130

  393 class_name: "static (T_STATIC)" .

    $default  reduce using rule 393 (class_name)


State 131

  430 dereferencable: '(' . expr ')'
  433 callable_expr: '(' . expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 295
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 132

  431 dereferencable: dereferencable_scalar .
  434 callable_expr: dereferencable_scalar .

    '('       reduce using rule 434 (callable_expr)
    $default  reduce using rule 431 (dereferencable)


State 133

  437 callable_variable: constant . '[' optional_expr ']'

    '['  shift, and go to state 270


State 134

  320 expr: "++ (T_INC)" variable .
  429 dereferencable: variable .

    '['                            reduce using rule 429 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 429 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 429 (dereferencable)
    '{'                            reduce using rule 429 (dereferencable)
    $default                       reduce using rule 320 (expr)


State 135

  322 expr: "-- (T_DEC)" variable .
  429 dereferencable: variable .

    '['                            reduce using rule 429 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 429 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 429 (dereferencable)
    '{'                            reduce using rule 429 (dereferencable)
    $default                       reduce using rule 322 (expr)


State 136

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  360     | "(int) (T_INT_CAST)" expr .

    "** (T_POW)"  shift, and go to state 265

    $default  reduce using rule 360 (expr)


State 137

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  361     | "(double) (T_DOUBLE_CAST)" expr .

    "** (T_POW)"  shift, and go to state 265

    $default  reduce using rule 361 (expr)


State 138

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  362     | "(string) (T_STRING_CAST)" expr .

    "** (T_POW)"  shift, and go to state 265

    $default  reduce using rule 362 (expr)


State 139

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  363     | "(array) (T_ARRAY_CAST)" expr .

    "** (T_POW)"  shift, and go to state 265

    $default  reduce using rule 363 (expr)


State 140

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  364     | "(object) (T_OBJECT_CAST)" expr .

    "** (T_POW)"  shift, and go to state 265

    $default  reduce using rule 364 (expr)


State 141

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  365     | "(bool) (T_BOOL_CAST)" expr .

    "** (T_POW)"  shift, and go to state 265

    $default  reduce using rule 365 (expr)


State 142

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  366     | "(unset) (T_UNSET_CAST)" expr .

    "** (T_POW)"  shift, and go to state 265

    $default  reduce using rule 366 (expr)


State 143

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  368     | '@' expr .

    "** (T_POW)"  shift, and go to state 265

    $default  reduce using rule 368 (expr)


State 144

  469 array_pair: '&' . variable

    '['                                           shift, and go to state 129
    "static (T_STATIC)"                           shift, and go to state 130
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 131
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 132
    constant               go to state 133
    variable_class_name    go to state 105
    dereferencable         go to state 106
    callable_expr          go to state 107
    callable_variable      go to state 108
    variable               go to state 296
    simple_variable        go to state 110
    static_member          go to state 111


State 145

  302 expr: "list (T_LIST)" . '(' array_pair_list ')' '=' expr
  471 array_pair: "list (T_LIST)" . '(' array_pair_list ')'

    '('  shift, and go to state 297


State 146

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  466 array_pair: expr . "=> (T_DOUBLE_ARROW)" expr
  467           | expr .
  468           | expr . "=> (T_DOUBLE_ARROW)" '&' variable
  470           | expr . "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')'

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    "=> (T_DOUBLE_ARROW)"         shift, and go to state 298
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 467 (array_pair)


State 147

  303 expr: '[' array_pair_list . ']' '=' expr
  405 dereferencable_scalar: '[' array_pair_list . ']'

    ']'  shift, and go to state 299


State 148

  465 non_empty_array_pair_list: possible_array_pair .

    $default  reduce using rule 465 (non_empty_array_pair_list)


State 149

  461 array_pair_list: non_empty_array_pair_list .
  464 non_empty_array_pair_list: non_empty_array_pair_list . ',' possible_array_pair

    ','  shift, and go to state 300

    $default  reduce using rule 461 (array_pair_list)


State 150

  463 possible_array_pair: array_pair .

    $default  reduce using rule 463 (possible_array_pair)


State 151

  298 anonymous_class: "class (T_CLASS)" . @8 ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 297 (@8)

    @8  go to state 301


State 152

  394 class_name: name .

    $default  reduce using rule 394 (class_name)


State 153

  300 new_expr: "new (T_NEW)" anonymous_class .

    $default  reduce using rule 300 (new_expr)


State 154

  395 class_name_reference: class_name .
  453 new_variable: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 302

    $default  reduce using rule 395 (class_name_reference)


State 155

  299 new_expr: "new (T_NEW)" class_name_reference . ctor_arguments

    '('  shift, and go to state 228

    $default  reduce using rule 402 (ctor_arguments)

    argument_list   go to state 303
    ctor_arguments  go to state 304


State 156

  449 new_variable: simple_variable .

    $default  reduce using rule 449 (new_variable)


State 157

  396 class_name_reference: new_variable .
  450 new_variable: new_variable . '[' optional_expr ']'
  451             | new_variable . '{' expr '}'
  452             | new_variable . "-> (T_OBJECT_OPERATOR)" property_name
  454             | new_variable . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

    '['                            shift, and go to state 305
    "-> (T_OBJECT_OPERATOR)"       shift, and go to state 306
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 307
    '{'                            shift, and go to state 308

    $default  reduce using rule 396 (class_name_reference)


State 158

  306 expr: "clone (T_CLONE)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    $default  reduce using rule 306 (expr)


State 159

  243 static_var: "variable (T_VARIABLE)" .
  244           | "variable (T_VARIABLE)" . '=' expr

    '='  shift, and go to state 309

    $default  reduce using rule 243 (static_var)


State 160

  142 statement: "static (T_STATIC)" static_var_list . ';'
  241 static_var_list: static_var_list . ',' static_var

    ','  shift, and go to state 310
    ';'  shift, and go to state 311


State 161

  242 static_var_list: static_var .

    $default  reduce using rule 242 (static_var_list)


State 162

  377 expr: "static (T_STATIC)" function . returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '&'  shift, and go to state 267

    $default  reduce using rule 381 (returns_ref)

    returns_ref  go to state 312


State 163

  155 statement: "identifier (T_STRING)" ':' .

    $default  reduce using rule 155 (statement)


State 164

  398 exit_expr: '(' . optional_expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 426 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 176
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    optional_expr               go to state 313
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 165

  367 expr: "exit (T_EXIT)" exit_expr .

    $default  reduce using rule 367 (expr)


State 166

  209 if_stmt_without_else: "if (T_IF)" '(' . expr ')' statement
  213 alt_if_stmt_without_else: "if (T_IF)" '(' . expr ')' ':' inner_statement_list

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 314
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 167

  143 statement: "echo (T_ECHO)" echo_expr_list . ';'
  290 echo_expr_list: echo_expr_list . ',' echo_expr

    ','  shift, and go to state 315
    ';'  shift, and go to state 316


State 168

  291 echo_expr_list: echo_expr .

    $default  reduce using rule 291 (echo_expr_list)


State 169

  292 echo_expr: expr .
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 292 (echo_expr)


State 170

  135 statement: "do (T_DO)" statement . "while (T_WHILE)" '(' expr ')' ';'

    "while (T_WHILE)"  shift, and go to state 317


State 171

  134 statement: "while (T_WHILE)" '(' . expr ')' while_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 318
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 172

  136 statement: "for (T_FOR)" '(' . for_exprs ';' for_exprs ';' for_exprs ')' for_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 293 (for_exprs)

    namespace_name              go to state 83
    name                        go to state 84
    for_exprs                   go to state 319
    non_empty_for_exprs         go to state 320
    new_expr                    go to state 97
    expr                        go to state 321
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 173

  147 statement: "foreach (T_FOREACH)" '(' . expr "as (T_AS)" foreach_variable ')' foreach_statement
  148          | "foreach (T_FOREACH)" '(' . expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 322
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 174

  150 statement: "declare (T_DECLARE)" '(' . const_list ')' $@3 declare_statement

    "identifier (T_STRING)"  shift, and go to state 180

    const_list  go to state 323
    const_decl  go to state 182


State 175

  137 statement: "switch (T_SWITCH)" '(' . expr ')' switch_case_list

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 324
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 176

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  427 optional_expr: expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 427 (optional_expr)


State 177

  138 statement: "break (T_BREAK)" optional_expr . ';'

    ';'  shift, and go to state 325


State 178

  139 statement: "continue (T_CONTINUE)" optional_expr . ';'

    ';'  shift, and go to state 326


State 179

  154 statement: "goto (T_GOTO)" "identifier (T_STRING)" . ';'

    ';'  shift, and go to state 327


State 180

  289 const_decl: "identifier (T_STRING)" . '=' expr backup_doc_comment

    '='  shift, and go to state 328


State 181

  100 top_statement: "const (T_CONST)" const_list . ';'
  121 const_list: const_list . ',' const_decl

    ','  shift, and go to state 329
    ';'  shift, and go to state 330


State 182

  122 const_list: const_decl .

    $default  reduce using rule 122 (const_list)


State 183

  140 statement: "return (T_RETURN)" optional_expr . ';'

    ';'  shift, and go to state 331


State 184

  152 statement: "try (T_TRY)" '{' . inner_statement_list '}' catch_list finally_statement

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 332


State 185

  153 statement: "throw (T_THROW)" expr . ';'
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ';'                           shift, and go to state 333


State 186

  101 use_type: "function (T_FUNCTION)" .

    $default  reduce using rule 101 (use_type)


State 187

  102 use_type: "const (T_CONST)" .

    $default  reduce using rule 102 (use_type)


State 188

  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" . namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
  120 use_declaration: "\\ (T_NS_SEPARATOR)" . unprefixed_use_declaration

    "identifier (T_STRING)"  shift, and go to state 114

    namespace_name              go to state 334
    unprefixed_use_declaration  go to state 335


State 189

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  105 mixed_group_use_declaration: namespace_name . "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
  117 unprefixed_use_declaration: namespace_name .
  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

    "as (T_AS)"            shift, and go to state 336
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 337

    $default  reduce using rule 117 (unprefixed_use_declaration)


State 190

   97 top_statement: "use (T_USE)" use_type . group_use_declaration ';'
   99              | "use (T_USE)" use_type . use_declarations ';'

    "identifier (T_STRING)"  shift, and go to state 114
    "\\ (T_NS_SEPARATOR)"    shift, and go to state 338

    namespace_name              go to state 339
    group_use_declaration       go to state 340
    use_declarations            go to state 341
    unprefixed_use_declaration  go to state 193
    use_declaration             go to state 194


State 191

   96 top_statement: "use (T_USE)" mixed_group_use_declaration . ';'

    ';'  shift, and go to state 342


State 192

   98 top_statement: "use (T_USE)" use_declarations . ';'
  113 use_declarations: use_declarations . ',' use_declaration

    ','  shift, and go to state 343
    ';'  shift, and go to state 344


State 193

  119 use_declaration: unprefixed_use_declaration .

    $default  reduce using rule 119 (use_declaration)


State 194

  114 use_declarations: use_declaration .

    $default  reduce using rule 114 (use_declarations)


State 195

  141 statement: "global (T_GLOBAL)" global_var_list . ';'
  238 global_var_list: global_var_list . ',' global_var

    ','  shift, and go to state 345
    ';'  shift, and go to state 346


State 196

  239 global_var_list: global_var .

    $default  reduce using rule 239 (global_var_list)


State 197

  240 global_var: simple_variable .

    $default  reduce using rule 240 (global_var)


State 198

  146 statement: "unset (T_UNSET)" '(' . unset_variables possible_comma ')' ';'

    '['                                           shift, and go to state 129
    "static (T_STATIC)"                           shift, and go to state 130
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 131
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    unset_variables        go to state 347
    unset_variable         go to state 348
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 132
    constant               go to state 133
    variable_class_name    go to state 105
    dereferencable         go to state 106
    callable_expr          go to state 107
    callable_variable      go to state 108
    variable               go to state 349
    simple_variable        go to state 110
    static_member          go to state 111


State 199

  487 internal_functions_in_yacc: "isset (T_ISSET)" '(' . isset_variables possible_comma ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 350
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112
    isset_variables             go to state 351
    isset_variable              go to state 352


State 200

  488 internal_functions_in_yacc: "empty (T_EMPTY)" '(' . expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 353
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 201

   90 top_statement: "__halt_compiler (T_HALT_COMPILER)" '(' . ')' ';'

    ')'  shift, and go to state 354


State 202

  173 class_declaration_statement: "class (T_CLASS)" @5 . "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    "identifier (T_STRING)"  shift, and go to state 355


State 203

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 . "identifier (T_STRING)" backup_doc_comment '{' class_statement_list '}'

    "identifier (T_STRING)"  shift, and go to state 356


State 204

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 . "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list '}'

    "identifier (T_STRING)"  shift, and go to state 357


State 205

  302 expr: "list (T_LIST)" '(' . array_pair_list ')' '=' expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 144
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 145
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 462 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 146
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    array_pair_list             go to state 358
    possible_array_pair         go to state 148
    non_empty_array_pair_list   go to state 149
    array_pair                  go to state 150
    internal_functions_in_yacc  go to state 112


State 206

  404 dereferencable_scalar: "array (T_ARRAY)" '(' . array_pair_list ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 144
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 145
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 462 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 146
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    array_pair_list             go to state 359
    possible_array_pair         go to state 148
    non_empty_array_pair_list   go to state 149
    array_pair                  go to state 150
    internal_functions_in_yacc  go to state 112


State 207

  476 encaps_var: "variable (T_VARIABLE)" .
  477           | "variable (T_VARIABLE)" . '[' encaps_var_offset ']'
  478           | "variable (T_VARIABLE)" . "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)"

    '['                       shift, and go to state 360
    "-> (T_OBJECT_OPERATOR)"  shift, and go to state 361

    $default  reduce using rule 476 (encaps_var)


State 208

  417 scalar: "heredoc start (T_START_HEREDOC)" "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . "heredoc end (T_END_HEREDOC)"
  475 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var

    "variable (T_VARIABLE)"            shift, and go to state 207
    "heredoc end (T_END_HEREDOC)"      shift, and go to state 362
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"  shift, and go to state 210
    "{$ (T_CURLY_OPEN)"                shift, and go to state 211

    encaps_var  go to state 363


State 209

  418 scalar: "heredoc start (T_START_HEREDOC)" "heredoc end (T_END_HEREDOC)" .

    $default  reduce using rule 418 (scalar)


State 210

  479 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . expr '}'
  480           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . "variable name (T_STRING_VARNAME)" '}'
  481           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . "variable name (T_STRING_VARNAME)" '[' expr ']' '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "variable name (T_STRING_VARNAME)"            shift, and go to state 364
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 365
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 211

  482 encaps_var: "{$ (T_CURLY_OPEN)" . variable '}'

    '['                                           shift, and go to state 129
    "static (T_STATIC)"                           shift, and go to state 130
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 131
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 132
    constant               go to state 133
    variable_class_name    go to state 105
    dereferencable         go to state 106
    callable_expr          go to state 107
    callable_variable      go to state 108
    variable               go to state 366
    simple_variable        go to state 110
    static_member          go to state 111


State 212

  420 scalar: "heredoc start (T_START_HEREDOC)" encaps_list . "heredoc end (T_END_HEREDOC)"
  472 encaps_list: encaps_list . encaps_var
  473            | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"

    "variable (T_VARIABLE)"                                     shift, and go to state 207
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 367
    "heredoc end (T_END_HEREDOC)"                               shift, and go to state 368
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 210
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 211

    encaps_var  go to state 369


State 213

  474 encaps_list: encaps_var .

    $default  reduce using rule 474 (encaps_list)


State 214

   83 name: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" . namespace_name

    "identifier (T_STRING)"  shift, and go to state 114

    namespace_name  go to state 370


State 215

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
   91 top_statement: "namespace (T_NAMESPACE)" namespace_name . ';'
   93              | "namespace (T_NAMESPACE)" namespace_name . $@1 '{' top_statement_list '}'

    "\\ (T_NS_SEPARATOR)"  shift, and go to state 227
    ';'                    shift, and go to state 371

    $default  reduce using rule 92 ($@1)

    $@1  go to state 372


State 216

   95 top_statement: "namespace (T_NAMESPACE)" $@2 . '{' top_statement_list '}'

    '{'  shift, and go to state 373


State 217

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
   84 name: "\\ (T_NS_SEPARATOR)" namespace_name .

    "\\ (T_NS_SEPARATOR)"  shift, and go to state 227

    $default  reduce using rule 84 (name)


State 218

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  354     | '(' expr . ')'
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  430 dereferencable: '(' expr . ')'
  433 callable_expr: '(' expr . ')'

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ')'                           shift, and go to state 374


State 219

  123 inner_statement_list: inner_statement_list . inner_statement
  131 statement: '{' inner_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 376
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 220

  400 backticks_expr: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" .
  475 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var

    "variable (T_VARIABLE)"            shift, and go to state 207
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"  shift, and go to state 210
    "{$ (T_CURLY_OPEN)"                shift, and go to state 211

    $default  reduce using rule 400 (backticks_expr)

    encaps_var  go to state 363


State 221

  370 expr: '`' backticks_expr . '`'

    '`'  shift, and go to state 383


State 222

  401 backticks_expr: encaps_list .
  472 encaps_list: encaps_list . encaps_var
  473            | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"

    "variable (T_VARIABLE)"                                     shift, and go to state 207
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 367
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 210
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 211

    $default  reduce using rule 401 (backticks_expr)

    encaps_var  go to state 369


State 223

  475 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var

    "variable (T_VARIABLE)"            shift, and go to state 207
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"  shift, and go to state 210
    "{$ (T_CURLY_OPEN)"                shift, and go to state 211

    encaps_var  go to state 363


State 224

  419 scalar: '"' encaps_list . '"'
  472 encaps_list: encaps_list . encaps_var
  473            | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"

    "variable (T_VARIABLE)"                                     shift, and go to state 207
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 367
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 210
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 211
    '"'                                                         shift, and go to state 384

    encaps_var  go to state 369


State 225

  445 simple_variable: '$' '{' . expr '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 385
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 226

  446 simple_variable: '$' simple_variable .

    $default  reduce using rule 446 (simple_variable)


State 227

   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"

    "identifier (T_STRING)"  shift, and go to state 386


State 228

  232 argument_list: '(' . ')'
  233              | '(' . non_empty_argument_list possible_comma ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    "... (T_ELLIPSIS)"                            shift, and go to state 387
    '('                                           shift, and go to state 77
    ')'                                           shift, and go to state 388
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    non_empty_argument_list     go to state 389
    argument                    go to state 390
    new_expr                    go to state 97
    expr                        go to state 391
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 229

  389 function_call: name argument_list .

    $default  reduce using rule 389 (function_call)


State 230

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" . @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 170 (@4)

    @4  go to state 392


State 231

  175 class_modifiers: class_modifiers class_modifier .

    $default  reduce using rule 175 (class_modifiers)


State 232

  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" . '(' expr ')' statement

    '('  shift, and go to state 393


State 233

  212 if_stmt: if_stmt_without_else "else (T_ELSE)" . statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 394
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr                        go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 234

  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" . '(' expr ')' ':' inner_statement_list

    '('  shift, and go to state 395


State 235

  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" . ':' inner_statement_list "endif (T_ENDIF)" ';'

    ':'  shift, and go to state 396


State 236

  215 alt_if_stmt: alt_if_stmt_without_else "endif (T_ENDIF)" . ';'

    ';'  shift, and go to state 397


State 237

  325 expr: expr "or (T_LOGICAL_OR)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 398
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 238

  327 expr: expr "xor (T_LOGICAL_XOR)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 399
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 239

  326 expr: expr "and (T_LOGICAL_AND)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 400
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 240

  356 expr: expr '?' . expr ':' expr
  357     | expr '?' . ':' expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 401
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 402
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 241

  358 expr: expr "?? (T_COALESCE)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 403
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 242

  323 expr: expr "|| (T_BOOLEAN_OR)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 404
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 243

  324 expr: expr "&& (T_BOOLEAN_AND)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 405
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 244

  328 expr: expr '|' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 406
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 245

  330 expr: expr '^' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 407
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 246

  329 expr: expr '&' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 408
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 247

  346 expr: expr "== (T_IS_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 409
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 248

  347 expr: expr "!= (T_IS_NOT_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 410
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 249

  344 expr: expr "=== (T_IS_IDENTICAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 411
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 250

  345 expr: expr "!== (T_IS_NOT_IDENTICAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 412
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 251

  352 expr: expr "<=> (T_SPACESHIP)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 413
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 252

  348 expr: expr '<' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 414
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 253

  349 expr: expr "<= (T_IS_SMALLER_OR_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 415
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 254

  350 expr: expr '>' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 416
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 255

  351 expr: expr ">= (T_IS_GREATER_OR_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 417
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 256

  338 expr: expr "<< (T_SL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 418
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 257

  339 expr: expr ">> (T_SR)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 419
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 258

  332 expr: expr '+' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 420
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 259

  333 expr: expr '-' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 421
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 260

  331 expr: expr '.' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 422
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 261

  334 expr: expr '*' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 423
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 262

  336 expr: expr '/' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 424
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 263

  337 expr: expr '%' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 425
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 264

  353 expr: expr "instanceof (T_INSTANCEOF)" . class_name_reference

    "static (T_STATIC)"        shift, and go to state 130
    "identifier (T_STRING)"    shift, and go to state 114
    "variable (T_VARIABLE)"    shift, and go to state 35
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
    '$'                        shift, and go to state 82

    namespace_name        go to state 83
    name                  go to state 152
    class_name            go to state 154
    class_name_reference  go to state 426
    simple_variable       go to state 156
    new_variable          go to state 157


State 265

  335 expr: expr "** (T_POW)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 427
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 266

  145 statement: expr ';' .

    $default  reduce using rule 145 (statement)


State 267

  382 returns_ref: '&' .

    $default  reduce using rule 382 (returns_ref)


State 268

  165 function_declaration_statement: function returns_ref . "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
  376 expr: function returns_ref . backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    "identifier (T_STRING)"  shift, and go to state 428

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 429


State 269

  390 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . member_name argument_list
  424 constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier
  447 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable

    "include (T_INCLUDE)"            shift, and go to state 430
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
    "eval (T_EVAL)"                  shift, and go to state 432
    "require (T_REQUIRE)"            shift, and go to state 433
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
    "or (T_LOGICAL_OR)"              shift, and go to state 435
    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
    "and (T_LOGICAL_AND)"            shift, and go to state 437
    "print (T_PRINT)"                shift, and go to state 438
    "yield (T_YIELD)"                shift, and go to state 439
    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
    "new (T_NEW)"                    shift, and go to state 441
    "clone (T_CLONE)"                shift, and go to state 442
    "elseif (T_ELSEIF)"              shift, and go to state 443
    "else (T_ELSE)"                  shift, and go to state 444
    "endif (T_ENDIF)"                shift, and go to state 445
    "static (T_STATIC)"              shift, and go to state 446
    "abstract (T_ABSTRACT)"          shift, and go to state 447
    "final (T_FINAL)"                shift, and go to state 448
    "private (T_PRIVATE)"            shift, and go to state 449
    "protected (T_PROTECTED)"        shift, and go to state 450
    "public (T_PUBLIC)"              shift, and go to state 451
    "identifier (T_STRING)"          shift, and go to state 452
    "variable (T_VARIABLE)"          shift, and go to state 35
    "exit (T_EXIT)"                  shift, and go to state 453
    "if (T_IF)"                      shift, and go to state 454
    "echo (T_ECHO)"                  shift, and go to state 455
    "do (T_DO)"                      shift, and go to state 456
    "while (T_WHILE)"                shift, and go to state 457
    "endwhile (T_ENDWHILE)"          shift, and go to state 458
    "for (T_FOR)"                    shift, and go to state 459
    "endfor (T_ENDFOR)"              shift, and go to state 460
    "foreach (T_FOREACH)"            shift, and go to state 461
    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
    "declare (T_DECLARE)"            shift, and go to state 463
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
    "as (T_AS)"                      shift, and go to state 465
    "switch (T_SWITCH)"              shift, and go to state 466
    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
    "case (T_CASE)"                  shift, and go to state 468
    "default (T_DEFAULT)"            shift, and go to state 469
    "break (T_BREAK)"                shift, and go to state 470
    "continue (T_CONTINUE)"          shift, and go to state 471
    "goto (T_GOTO)"                  shift, and go to state 472
    "function (T_FUNCTION)"          shift, and go to state 473
    "const (T_CONST)"                shift, and go to state 474
    "return (T_RETURN)"              shift, and go to state 475
    "try (T_TRY)"                    shift, and go to state 476
    "catch (T_CATCH)"                shift, and go to state 477
    "finally (T_FINALLY)"            shift, and go to state 478
    "throw (T_THROW)"                shift, and go to state 479
    "use (T_USE)"                    shift, and go to state 480
    "insteadof (T_INSTEADOF)"        shift, and go to state 481
    "global (T_GLOBAL)"              shift, and go to state 482
    "var (T_VAR)"                    shift, and go to state 483
    "unset (T_UNSET)"                shift, and go to state 484
    "isset (T_ISSET)"                shift, and go to state 485
    "empty (T_EMPTY)"                shift, and go to state 486
    "class (T_CLASS)"                shift, and go to state 487
    "trait (T_TRAIT)"                shift, and go to state 488
    "interface (T_INTERFACE)"        shift, and go to state 489
    "extends (T_EXTENDS)"            shift, and go to state 490
    "implements (T_IMPLEMENTS)"      shift, and go to state 491
    "list (T_LIST)"                  shift, and go to state 492
    "array (T_ARRAY)"                shift, and go to state 493
    "callable (T_CALLABLE)"          shift, and go to state 494
    "__LINE__ (T_LINE)"              shift, and go to state 495
    "__FILE__ (T_FILE)"              shift, and go to state 496
    "__DIR__ (T_DIR)"                shift, and go to state 497
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
    "namespace (T_NAMESPACE)"        shift, and go to state 502
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
    '{'                              shift, and go to state 504
    '$'                              shift, and go to state 82

    reserved_non_modifiers  go to state 505
    semi_reserved           go to state 506
    identifier              go to state 507
    simple_variable         go to state 508
    member_name             go to state 509


State 270

  437 callable_variable: constant '[' . optional_expr ']'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 426 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 176
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    optional_expr               go to state 510
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 271

  391 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . member_name argument_list
  425 constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier
  448 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable

    "include (T_INCLUDE)"            shift, and go to state 430
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
    "eval (T_EVAL)"                  shift, and go to state 432
    "require (T_REQUIRE)"            shift, and go to state 433
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
    "or (T_LOGICAL_OR)"              shift, and go to state 435
    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
    "and (T_LOGICAL_AND)"            shift, and go to state 437
    "print (T_PRINT)"                shift, and go to state 438
    "yield (T_YIELD)"                shift, and go to state 439
    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
    "new (T_NEW)"                    shift, and go to state 441
    "clone (T_CLONE)"                shift, and go to state 442
    "elseif (T_ELSEIF)"              shift, and go to state 443
    "else (T_ELSE)"                  shift, and go to state 444
    "endif (T_ENDIF)"                shift, and go to state 445
    "static (T_STATIC)"              shift, and go to state 446
    "abstract (T_ABSTRACT)"          shift, and go to state 447
    "final (T_FINAL)"                shift, and go to state 448
    "private (T_PRIVATE)"            shift, and go to state 449
    "protected (T_PROTECTED)"        shift, and go to state 450
    "public (T_PUBLIC)"              shift, and go to state 451
    "identifier (T_STRING)"          shift, and go to state 452
    "variable (T_VARIABLE)"          shift, and go to state 35
    "exit (T_EXIT)"                  shift, and go to state 453
    "if (T_IF)"                      shift, and go to state 454
    "echo (T_ECHO)"                  shift, and go to state 455
    "do (T_DO)"                      shift, and go to state 456
    "while (T_WHILE)"                shift, and go to state 457
    "endwhile (T_ENDWHILE)"          shift, and go to state 458
    "for (T_FOR)"                    shift, and go to state 459
    "endfor (T_ENDFOR)"              shift, and go to state 460
    "foreach (T_FOREACH)"            shift, and go to state 461
    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
    "declare (T_DECLARE)"            shift, and go to state 463
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
    "as (T_AS)"                      shift, and go to state 465
    "switch (T_SWITCH)"              shift, and go to state 466
    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
    "case (T_CASE)"                  shift, and go to state 468
    "default (T_DEFAULT)"            shift, and go to state 469
    "break (T_BREAK)"                shift, and go to state 470
    "continue (T_CONTINUE)"          shift, and go to state 471
    "goto (T_GOTO)"                  shift, and go to state 472
    "function (T_FUNCTION)"          shift, and go to state 473
    "const (T_CONST)"                shift, and go to state 474
    "return (T_RETURN)"              shift, and go to state 475
    "try (T_TRY)"                    shift, and go to state 476
    "catch (T_CATCH)"                shift, and go to state 477
    "finally (T_FINALLY)"            shift, and go to state 478
    "throw (T_THROW)"                shift, and go to state 479
    "use (T_USE)"                    shift, and go to state 480
    "insteadof (T_INSTEADOF)"        shift, and go to state 481
    "global (T_GLOBAL)"              shift, and go to state 482
    "var (T_VAR)"                    shift, and go to state 483
    "unset (T_UNSET)"                shift, and go to state 484
    "isset (T_ISSET)"                shift, and go to state 485
    "empty (T_EMPTY)"                shift, and go to state 486
    "class (T_CLASS)"                shift, and go to state 487
    "trait (T_TRAIT)"                shift, and go to state 488
    "interface (T_INTERFACE)"        shift, and go to state 489
    "extends (T_EXTENDS)"            shift, and go to state 490
    "implements (T_IMPLEMENTS)"      shift, and go to state 491
    "list (T_LIST)"                  shift, and go to state 492
    "array (T_ARRAY)"                shift, and go to state 493
    "callable (T_CALLABLE)"          shift, and go to state 494
    "__LINE__ (T_LINE)"              shift, and go to state 495
    "__FILE__ (T_FILE)"              shift, and go to state 496
    "__DIR__ (T_DIR)"                shift, and go to state 497
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
    "namespace (T_NAMESPACE)"        shift, and go to state 502
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
    '{'                              shift, and go to state 504
    '$'                              shift, and go to state 82

    reserved_non_modifiers  go to state 505
    semi_reserved           go to state 506
    identifier              go to state 511
    simple_variable         go to state 512
    member_name             go to state 513


State 272

  436 callable_variable: dereferencable '[' . optional_expr ']'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 426 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 176
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    optional_expr               go to state 514
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 273

  439 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" . property_name argument_list
  443 variable: dereferencable "-> (T_OBJECT_OPERATOR)" . property_name

    "identifier (T_STRING)"  shift, and go to state 515
    "variable (T_VARIABLE)"  shift, and go to state 35
    '{'                      shift, and go to state 516
    '$'                      shift, and go to state 82

    simple_variable  go to state 517
    property_name    go to state 518


State 274

  438 callable_variable: dereferencable '{' . expr '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 519
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 275

  392 function_call: callable_expr argument_list .

    $default  reduce using rule 392 (function_call)


State 276

  304 expr: variable '=' . expr
  305     | variable '=' . '&' variable

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 520
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 521
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 277

  307 expr: variable "+= (T_PLUS_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 522
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 278

  308 expr: variable "-= (T_MINUS_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 523
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 279

  309 expr: variable "*= (T_MUL_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 524
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 280

  311 expr: variable "/= (T_DIV_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 525
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 281

  312 expr: variable ".= (T_CONCAT_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 526
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 282

  313 expr: variable "%= (T_MOD_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 527
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 283

  314 expr: variable "&= (T_AND_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 528
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 284

  315 expr: variable "|= (T_OR_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 529
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 285

  316 expr: variable "^= (T_XOR_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 530
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 286

  317 expr: variable "<<= (T_SL_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 531
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 287

  318 expr: variable ">>= (T_SR_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 532
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 288

  310 expr: variable "**= (T_POW_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 533
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 289

  319 expr: variable "++ (T_INC)" .

    $default  reduce using rule 319 (expr)


State 290

  321 expr: variable "-- (T_DEC)" .

    $default  reduce using rule 321 (expr)


State 291

  376 expr: function returns_ref . backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 429


State 292

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  491 internal_functions_in_yacc: "eval (T_EVAL)" '(' expr . ')'

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ')'                           shift, and go to state 534


State 293

  374 expr: "yield (T_YIELD)" expr "=> (T_DOUBLE_ARROW)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 535
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 294

  405 dereferencable_scalar: '[' array_pair_list . ']'

    ']'  shift, and go to state 536


State 295

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  430 dereferencable: '(' expr . ')'
  433 callable_expr: '(' expr . ')'

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ')'                           shift, and go to state 537


State 296

  429 dereferencable: variable .
  469 array_pair: '&' variable .

    ','       reduce using rule 469 (array_pair)
    ')'       reduce using rule 469 (array_pair)
    ']'       reduce using rule 469 (array_pair)
    $default  reduce using rule 429 (dereferencable)


State 297

  302 expr: "list (T_LIST)" '(' . array_pair_list ')' '=' expr
  471 array_pair: "list (T_LIST)" '(' . array_pair_list ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 144
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 145
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 462 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 146
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    array_pair_list             go to state 538
    possible_array_pair         go to state 148
    non_empty_array_pair_list   go to state 149
    array_pair                  go to state 150
    internal_functions_in_yacc  go to state 112


State 298

  466 array_pair: expr "=> (T_DOUBLE_ARROW)" . expr
  468           | expr "=> (T_DOUBLE_ARROW)" . '&' variable
  470           | expr "=> (T_DOUBLE_ARROW)" . "list (T_LIST)" '(' array_pair_list ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 539
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 540
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 541
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 299

  303 expr: '[' array_pair_list ']' . '=' expr
  405 dereferencable_scalar: '[' array_pair_list ']' .

    '='  shift, and go to state 542

    $default  reduce using rule 405 (dereferencable_scalar)


State 300

  464 non_empty_array_pair_list: non_empty_array_pair_list ',' . possible_array_pair

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 144
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 145
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 462 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 146
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    possible_array_pair         go to state 543
    array_pair                  go to state 150
    internal_functions_in_yacc  go to state 112


State 301

  298 anonymous_class: "class (T_CLASS)" @8 . ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    '('  shift, and go to state 228

    $default  reduce using rule 402 (ctor_arguments)

    argument_list   go to state 303
    ctor_arguments  go to state 544


State 302

  453 new_variable: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable

    "variable (T_VARIABLE)"  shift, and go to state 35
    '$'                      shift, and go to state 82

    simple_variable  go to state 545


State 303

  403 ctor_arguments: argument_list .

    $default  reduce using rule 403 (ctor_arguments)


State 304

  299 new_expr: "new (T_NEW)" class_name_reference ctor_arguments .

    $default  reduce using rule 299 (new_expr)


State 305

  450 new_variable: new_variable '[' . optional_expr ']'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 426 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 176
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    optional_expr               go to state 546
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 306

  452 new_variable: new_variable "-> (T_OBJECT_OPERATOR)" . property_name

    "identifier (T_STRING)"  shift, and go to state 515
    "variable (T_VARIABLE)"  shift, and go to state 35
    '{'                      shift, and go to state 516
    '$'                      shift, and go to state 82

    simple_variable  go to state 517
    property_name    go to state 547


State 307

  454 new_variable: new_variable ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable

    "variable (T_VARIABLE)"  shift, and go to state 35
    '$'                      shift, and go to state 82

    simple_variable  go to state 548


State 308

  451 new_variable: new_variable '{' . expr '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 549
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 309

  244 static_var: "variable (T_VARIABLE)" '=' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 550
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 310

  241 static_var_list: static_var_list ',' . static_var

    "variable (T_VARIABLE)"  shift, and go to state 159

    static_var  go to state 551


State 311

  142 statement: "static (T_STATIC)" static_var_list ';' .

    $default  reduce using rule 142 (statement)


State 312

  377 expr: "static (T_STATIC)" function returns_ref . backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 552


State 313

  398 exit_expr: '(' optional_expr . ')'

    ')'  shift, and go to state 553


State 314

  209 if_stmt_without_else: "if (T_IF)" '(' expr . ')' statement
  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr . ')' ':' inner_statement_list
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ')'                           shift, and go to state 554


State 315

  290 echo_expr_list: echo_expr_list ',' . echo_expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    echo_expr                   go to state 555
    new_expr                    go to state 97
    expr                        go to state 169
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 316

  143 statement: "echo (T_ECHO)" echo_expr_list ';' .

    $default  reduce using rule 143 (statement)


State 317

  135 statement: "do (T_DO)" statement "while (T_WHILE)" . '(' expr ')' ';'

    '('  shift, and go to state 556


State 318

  134 statement: "while (T_WHILE)" '(' expr . ')' while_statement
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ')'                           shift, and go to state 557


State 319

  136 statement: "for (T_FOR)" '(' for_exprs . ';' for_exprs ';' for_exprs ')' for_statement

    ';'  shift, and go to state 558


State 320

  294 for_exprs: non_empty_for_exprs .
  295 non_empty_for_exprs: non_empty_for_exprs . ',' expr

    ','  shift, and go to state 559

    $default  reduce using rule 294 (for_exprs)


State 321

  296 non_empty_for_exprs: expr .
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 296 (non_empty_for_exprs)


State 322

  147 statement: "foreach (T_FOREACH)" '(' expr . "as (T_AS)" foreach_variable ')' foreach_statement
  148          | "foreach (T_FOREACH)" '(' expr . "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    "as (T_AS)"                   shift, and go to state 560


State 323

  121 const_list: const_list . ',' const_decl
  150 statement: "declare (T_DECLARE)" '(' const_list . ')' $@3 declare_statement

    ','  shift, and go to state 329
    ')'  shift, and go to state 561


State 324

  137 statement: "switch (T_SWITCH)" '(' expr . ')' switch_case_list
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ')'                           shift, and go to state 562


State 325

  138 statement: "break (T_BREAK)" optional_expr ';' .

    $default  reduce using rule 138 (statement)


State 326

  139 statement: "continue (T_CONTINUE)" optional_expr ';' .

    $default  reduce using rule 139 (statement)


State 327

  154 statement: "goto (T_GOTO)" "identifier (T_STRING)" ';' .

    $default  reduce using rule 154 (statement)


State 328

  289 const_decl: "identifier (T_STRING)" '=' . expr backup_doc_comment

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 563
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 329

  121 const_list: const_list ',' . const_decl

    "identifier (T_STRING)"  shift, and go to state 180

    const_decl  go to state 564


State 330

  100 top_statement: "const (T_CONST)" const_list ';' .

    $default  reduce using rule 100 (top_statement)


State 331

  140 statement: "return (T_RETURN)" optional_expr ';' .

    $default  reduce using rule 140 (statement)


State 332

  123 inner_statement_list: inner_statement_list . inner_statement
  152 statement: "try (T_TRY)" '{' inner_statement_list . '}' catch_list finally_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 565
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 333

  153 statement: "throw (T_THROW)" expr ';' .

    $default  reduce using rule 153 (statement)


State 334

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name . "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
  117 unprefixed_use_declaration: namespace_name .
  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

    "as (T_AS)"            shift, and go to state 336
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 566

    $default  reduce using rule 117 (unprefixed_use_declaration)


State 335

  120 use_declaration: "\\ (T_NS_SEPARATOR)" unprefixed_use_declaration .

    $default  reduce using rule 120 (use_declaration)


State 336

  118 unprefixed_use_declaration: namespace_name "as (T_AS)" . "identifier (T_STRING)"

    "identifier (T_STRING)"  shift, and go to state 567


State 337

   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" . '{' inline_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 386
    '{'                      shift, and go to state 568


State 338

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" . namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
  120 use_declaration: "\\ (T_NS_SEPARATOR)" . unprefixed_use_declaration

    "identifier (T_STRING)"  shift, and go to state 114

    namespace_name              go to state 569
    unprefixed_use_declaration  go to state 335


State 339

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  103 group_use_declaration: namespace_name . "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
  117 unprefixed_use_declaration: namespace_name .
  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

    "as (T_AS)"            shift, and go to state 336
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 570

    $default  reduce using rule 117 (unprefixed_use_declaration)


State 340

   97 top_statement: "use (T_USE)" use_type group_use_declaration . ';'

    ';'  shift, and go to state 571


State 341

   99 top_statement: "use (T_USE)" use_type use_declarations . ';'
  113 use_declarations: use_declarations . ',' use_declaration

    ','  shift, and go to state 343
    ';'  shift, and go to state 572


State 342

   96 top_statement: "use (T_USE)" mixed_group_use_declaration ';' .

    $default  reduce using rule 96 (top_statement)


State 343

  113 use_declarations: use_declarations ',' . use_declaration

    "identifier (T_STRING)"  shift, and go to state 114
    "\\ (T_NS_SEPARATOR)"    shift, and go to state 573

    namespace_name              go to state 574
    unprefixed_use_declaration  go to state 193
    use_declaration             go to state 575


State 344

   98 top_statement: "use (T_USE)" use_declarations ';' .

    $default  reduce using rule 98 (top_statement)


State 345

  238 global_var_list: global_var_list ',' . global_var

    "variable (T_VARIABLE)"  shift, and go to state 35
    '$'                      shift, and go to state 82

    global_var       go to state 576
    simple_variable  go to state 197


State 346

  141 statement: "global (T_GLOBAL)" global_var_list ';' .

    $default  reduce using rule 141 (statement)


State 347

  146 statement: "unset (T_UNSET)" '(' unset_variables . possible_comma ')' ';'
  163 unset_variables: unset_variables . ',' unset_variable

    ','  shift, and go to state 577

    $default  reduce using rule 107 (possible_comma)

    possible_comma  go to state 578


State 348

  162 unset_variables: unset_variable .

    $default  reduce using rule 162 (unset_variables)


State 349

  164 unset_variable: variable .
  429 dereferencable: variable .

    ','       reduce using rule 164 (unset_variable)
    ')'       reduce using rule 164 (unset_variable)
    $default  reduce using rule 429 (dereferencable)


State 350

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  496 isset_variable: expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 496 (isset_variable)


State 351

  487 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables . possible_comma ')'
  495 isset_variables: isset_variables . ',' isset_variable

    ','  shift, and go to state 579

    $default  reduce using rule 107 (possible_comma)

    possible_comma  go to state 580


State 352

  494 isset_variables: isset_variable .

    $default  reduce using rule 494 (isset_variables)


State 353

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  488 internal_functions_in_yacc: "empty (T_EMPTY)" '(' expr . ')'

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ')'                           shift, and go to state 581


State 354

   90 top_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' . ';'

    ';'  shift, and go to state 582


State 355

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" . extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    "extends (T_EXTENDS)"  shift, and go to state 583

    $default  reduce using rule 182 (extends_from)

    extends_from  go to state 584


State 356

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" . backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 585


State 357

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" . interface_extends_list backup_doc_comment '{' class_statement_list '}'

    "extends (T_EXTENDS)"  shift, and go to state 586

    $default  reduce using rule 184 (interface_extends_list)

    interface_extends_list  go to state 587


State 358

  302 expr: "list (T_LIST)" '(' array_pair_list . ')' '=' expr

    ')'  shift, and go to state 588


State 359

  404 dereferencable_scalar: "array (T_ARRAY)" '(' array_pair_list . ')'

    ')'  shift, and go to state 589


State 360

  477 encaps_var: "variable (T_VARIABLE)" '[' . encaps_var_offset ']'

    '-'                      shift, and go to state 590
    "identifier (T_STRING)"  shift, and go to state 591
    "variable (T_VARIABLE)"  shift, and go to state 592
    "number (T_NUM_STRING)"  shift, and go to state 593

    encaps_var_offset  go to state 594


State 361

  478 encaps_var: "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" . "identifier (T_STRING)"

    "identifier (T_STRING)"  shift, and go to state 595


State 362

  417 scalar: "heredoc start (T_START_HEREDOC)" "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "heredoc end (T_END_HEREDOC)" .

    $default  reduce using rule 417 (scalar)


State 363

  475 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" encaps_var .

    $default  reduce using rule 475 (encaps_list)


State 364

  480 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" . '}'
  481           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" . '[' expr ']' '}'

    '['  shift, and go to state 596
    '}'  shift, and go to state 597


State 365

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  479 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr . '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    '}'                           shift, and go to state 598


State 366

  429 dereferencable: variable .
  482 encaps_var: "{$ (T_CURLY_OPEN)" variable . '}'

    '}'  shift, and go to state 599

    $default  reduce using rule 429 (dereferencable)


State 367

  473 encaps_list: encaps_list "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" .

    $default  reduce using rule 473 (encaps_list)


State 368

  420 scalar: "heredoc start (T_START_HEREDOC)" encaps_list "heredoc end (T_END_HEREDOC)" .

    $default  reduce using rule 420 (scalar)


State 369

  472 encaps_list: encaps_list encaps_var .

    $default  reduce using rule 472 (encaps_list)


State 370

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
   83 name: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name .

    "\\ (T_NS_SEPARATOR)"  shift, and go to state 227

    $default  reduce using rule 83 (name)


State 371

   91 top_statement: "namespace (T_NAMESPACE)" namespace_name ';' .

    $default  reduce using rule 91 (top_statement)


State 372

   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 . '{' top_statement_list '}'

    '{'  shift, and go to state 600


State 373

   95 top_statement: "namespace (T_NAMESPACE)" $@2 '{' . top_statement_list '}'

    $default  reduce using rule 79 (top_statement_list)

    top_statement_list  go to state 601


State 374

  354 expr: '(' expr ')' .
  430 dereferencable: '(' expr ')' .
  433 callable_expr: '(' expr ')' .

    '['                            reduce using rule 430 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 430 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 430 (dereferencable)
    '('                            reduce using rule 433 (callable_expr)
    '{'                            reduce using rule 430 (dereferencable)
    $default                       reduce using rule 354 (expr)


State 375

  130 inner_statement: "__halt_compiler (T_HALT_COMPILER)" . '(' ')' ';'

    '('  shift, and go to state 602


State 376

  131 statement: '{' inner_statement_list '}' .

    $default  reduce using rule 131 (statement)


State 377

  123 inner_statement_list: inner_statement_list inner_statement .

    $default  reduce using rule 123 (inner_statement_list)


State 378

  125 inner_statement: statement .

    $default  reduce using rule 125 (inner_statement)


State 379

  126 inner_statement: function_declaration_statement .

    $default  reduce using rule 126 (inner_statement)


State 380

  127 inner_statement: class_declaration_statement .

    $default  reduce using rule 127 (inner_statement)


State 381

  128 inner_statement: trait_declaration_statement .

    $default  reduce using rule 128 (inner_statement)


State 382

  129 inner_statement: interface_declaration_statement .

    $default  reduce using rule 129 (inner_statement)


State 383

  370 expr: '`' backticks_expr '`' .

    $default  reduce using rule 370 (expr)


State 384

  419 scalar: '"' encaps_list '"' .

    $default  reduce using rule 419 (scalar)


State 385

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  445 simple_variable: '$' '{' expr . '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    '}'                           shift, and go to state 603


State 386

   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)" .

    $default  reduce using rule 81 (namespace_name)


State 387

  237 argument: "... (T_ELLIPSIS)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 604
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 388

  232 argument_list: '(' ')' .

    $default  reduce using rule 232 (argument_list)


State 389

  233 argument_list: '(' non_empty_argument_list . possible_comma ')'
  235 non_empty_argument_list: non_empty_argument_list . ',' argument

    ','  shift, and go to state 605

    $default  reduce using rule 107 (possible_comma)

    possible_comma  go to state 606


State 390

  234 non_empty_argument_list: argument .

    $default  reduce using rule 234 (non_empty_argument_list)


State 391

  236 argument: expr .
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 236 (argument)


State 392

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 . "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    "identifier (T_STRING)"  shift, and go to state 607


State 393

  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' . expr ')' statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 608
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 394

  212 if_stmt: if_stmt_without_else "else (T_ELSE)" statement .

    $default  reduce using rule 212 (if_stmt)


State 395

  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' . expr ')' ':' inner_statement_list

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 609
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 396

  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" ':' . inner_statement_list "endif (T_ENDIF)" ';'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 610


State 397

  215 alt_if_stmt: alt_if_stmt_without_else "endif (T_ENDIF)" ';' .

    $default  reduce using rule 215 (alt_if_stmt)


State 398

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  325     | expr "or (T_LOGICAL_OR)" expr .
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 325 (expr)


State 399

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  327     | expr "xor (T_LOGICAL_XOR)" expr .
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 327 (expr)


State 400

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  326     | expr "and (T_LOGICAL_AND)" expr .
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 326 (expr)


State 401

  357 expr: expr '?' ':' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 611
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 402

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  356     | expr '?' expr . ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    ':'                           shift, and go to state 612
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265


State 403

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  358     | expr "?? (T_COALESCE)" expr .

    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 358 (expr)


State 404

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  323     | expr "|| (T_BOOLEAN_OR)" expr .
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 323 (expr)


State 405

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  324     | expr "&& (T_BOOLEAN_AND)" expr .
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 324 (expr)


State 406

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  328     | expr '|' expr .
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 328 (expr)


State 407

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  330     | expr '^' expr .
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 330 (expr)


State 408

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  329     | expr '&' expr .
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 329 (expr)


State 409

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  346     | expr "== (T_IS_EQUAL)" expr .
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    "== (T_IS_EQUAL)"           error (nonassociative)
    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
    "=== (T_IS_IDENTICAL)"      error (nonassociative)
    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
    "<=> (T_SPACESHIP)"         error (nonassociative)

    $default  reduce using rule 346 (expr)


State 410

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  347     | expr "!= (T_IS_NOT_EQUAL)" expr .
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    "== (T_IS_EQUAL)"           error (nonassociative)
    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
    "=== (T_IS_IDENTICAL)"      error (nonassociative)
    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
    "<=> (T_SPACESHIP)"         error (nonassociative)

    $default  reduce using rule 347 (expr)


State 411

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  344     | expr "=== (T_IS_IDENTICAL)" expr .
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    "== (T_IS_EQUAL)"           error (nonassociative)
    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
    "=== (T_IS_IDENTICAL)"      error (nonassociative)
    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
    "<=> (T_SPACESHIP)"         error (nonassociative)

    $default  reduce using rule 344 (expr)


State 412

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345     | expr "!== (T_IS_NOT_IDENTICAL)" expr .
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    "== (T_IS_EQUAL)"           error (nonassociative)
    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
    "=== (T_IS_IDENTICAL)"      error (nonassociative)
    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
    "<=> (T_SPACESHIP)"         error (nonassociative)

    $default  reduce using rule 345 (expr)


State 413

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  352     | expr "<=> (T_SPACESHIP)" expr .
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    "== (T_IS_EQUAL)"           error (nonassociative)
    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
    "=== (T_IS_IDENTICAL)"      error (nonassociative)
    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
    "<=> (T_SPACESHIP)"         error (nonassociative)

    $default  reduce using rule 352 (expr)


State 414

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  348     | expr '<' expr .
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "<< (T_SL)"                  shift, and go to state 256
    ">> (T_SR)"                  shift, and go to state 257
    '+'                          shift, and go to state 258
    '-'                          shift, and go to state 259
    '.'                          shift, and go to state 260
    '*'                          shift, and go to state 261
    '/'                          shift, and go to state 262
    '%'                          shift, and go to state 263
    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    '<'                           error (nonassociative)
    "<= (T_IS_SMALLER_OR_EQUAL)"  error (nonassociative)
    '>'                           error (nonassociative)
    ">= (T_IS_GREATER_OR_EQUAL)"  error (nonassociative)

    $default  reduce using rule 348 (expr)


State 415

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349     | expr "<= (T_IS_SMALLER_OR_EQUAL)" expr .
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "<< (T_SL)"                  shift, and go to state 256
    ">> (T_SR)"                  shift, and go to state 257
    '+'                          shift, and go to state 258
    '-'                          shift, and go to state 259
    '.'                          shift, and go to state 260
    '*'                          shift, and go to state 261
    '/'                          shift, and go to state 262
    '%'                          shift, and go to state 263
    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    '<'                           error (nonassociative)
    "<= (T_IS_SMALLER_OR_EQUAL)"  error (nonassociative)
    '>'                           error (nonassociative)
    ">= (T_IS_GREATER_OR_EQUAL)"  error (nonassociative)

    $default  reduce using rule 349 (expr)


State 416

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  350     | expr '>' expr .
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "<< (T_SL)"                  shift, and go to state 256
    ">> (T_SR)"                  shift, and go to state 257
    '+'                          shift, and go to state 258
    '-'                          shift, and go to state 259
    '.'                          shift, and go to state 260
    '*'                          shift, and go to state 261
    '/'                          shift, and go to state 262
    '%'                          shift, and go to state 263
    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    '<'                           error (nonassociative)
    "<= (T_IS_SMALLER_OR_EQUAL)"  error (nonassociative)
    '>'                           error (nonassociative)
    ">= (T_IS_GREATER_OR_EQUAL)"  error (nonassociative)

    $default  reduce using rule 350 (expr)


State 417

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351     | expr ">= (T_IS_GREATER_OR_EQUAL)" expr .
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "<< (T_SL)"                  shift, and go to state 256
    ">> (T_SR)"                  shift, and go to state 257
    '+'                          shift, and go to state 258
    '-'                          shift, and go to state 259
    '.'                          shift, and go to state 260
    '*'                          shift, and go to state 261
    '/'                          shift, and go to state 262
    '%'                          shift, and go to state 263
    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    '<'                           error (nonassociative)
    "<= (T_IS_SMALLER_OR_EQUAL)"  error (nonassociative)
    '>'                           error (nonassociative)
    ">= (T_IS_GREATER_OR_EQUAL)"  error (nonassociative)

    $default  reduce using rule 351 (expr)


State 418

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  338     | expr "<< (T_SL)" expr .
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '+'                          shift, and go to state 258
    '-'                          shift, and go to state 259
    '.'                          shift, and go to state 260
    '*'                          shift, and go to state 261
    '/'                          shift, and go to state 262
    '%'                          shift, and go to state 263
    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    $default  reduce using rule 338 (expr)


State 419

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  339     | expr ">> (T_SR)" expr .
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '+'                          shift, and go to state 258
    '-'                          shift, and go to state 259
    '.'                          shift, and go to state 260
    '*'                          shift, and go to state 261
    '/'                          shift, and go to state 262
    '%'                          shift, and go to state 263
    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    $default  reduce using rule 339 (expr)


State 420

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  332     | expr '+' expr .
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '*'                          shift, and go to state 261
    '/'                          shift, and go to state 262
    '%'                          shift, and go to state 263
    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    $default  reduce using rule 332 (expr)


State 421

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  333     | expr '-' expr .
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '*'                          shift, and go to state 261
    '/'                          shift, and go to state 262
    '%'                          shift, and go to state 263
    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    $default  reduce using rule 333 (expr)


State 422

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  331     | expr '.' expr .
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '*'                          shift, and go to state 261
    '/'                          shift, and go to state 262
    '%'                          shift, and go to state 263
    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    $default  reduce using rule 331 (expr)


State 423

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  334     | expr '*' expr .
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    $default  reduce using rule 334 (expr)


State 424

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  336     | expr '/' expr .
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    $default  reduce using rule 336 (expr)


State 425

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  337     | expr '%' expr .
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
    "** (T_POW)"                 shift, and go to state 265

    $default  reduce using rule 337 (expr)


State 426

  353 expr: expr "instanceof (T_INSTANCEOF)" class_name_reference .

    $default  reduce using rule 353 (expr)


State 427

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  335     | expr "** (T_POW)" expr .
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "** (T_POW)"  shift, and go to state 265

    $default  reduce using rule 335 (expr)


State 428

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" . backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 613


State 429

  376 expr: function returns_ref backup_doc_comment . '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '('  shift, and go to state 614


State 430

    2 reserved_non_modifiers: "include (T_INCLUDE)" .

    $default  reduce using rule 2 (reserved_non_modifiers)


State 431

    3 reserved_non_modifiers: "include_once (T_INCLUDE_ONCE)" .

    $default  reduce using rule 3 (reserved_non_modifiers)


State 432

    4 reserved_non_modifiers: "eval (T_EVAL)" .

    $default  reduce using rule 4 (reserved_non_modifiers)


State 433

    5 reserved_non_modifiers: "require (T_REQUIRE)" .

    $default  reduce using rule 5 (reserved_non_modifiers)


State 434

    6 reserved_non_modifiers: "require_once (T_REQUIRE_ONCE)" .

    $default  reduce using rule 6 (reserved_non_modifiers)


State 435

    7 reserved_non_modifiers: "or (T_LOGICAL_OR)" .

    $default  reduce using rule 7 (reserved_non_modifiers)


State 436

    8 reserved_non_modifiers: "xor (T_LOGICAL_XOR)" .

    $default  reduce using rule 8 (reserved_non_modifiers)


State 437

    9 reserved_non_modifiers: "and (T_LOGICAL_AND)" .

    $default  reduce using rule 9 (reserved_non_modifiers)


State 438

   45 reserved_non_modifiers: "print (T_PRINT)" .

    $default  reduce using rule 45 (reserved_non_modifiers)


State 439

   46 reserved_non_modifiers: "yield (T_YIELD)" .

    $default  reduce using rule 46 (reserved_non_modifiers)


State 440

   10 reserved_non_modifiers: "instanceof (T_INSTANCEOF)" .

    $default  reduce using rule 10 (reserved_non_modifiers)


State 441

   11 reserved_non_modifiers: "new (T_NEW)" .

    $default  reduce using rule 11 (reserved_non_modifiers)


State 442

   12 reserved_non_modifiers: "clone (T_CLONE)" .

    $default  reduce using rule 12 (reserved_non_modifiers)


State 443

   15 reserved_non_modifiers: "elseif (T_ELSEIF)" .

    $default  reduce using rule 15 (reserved_non_modifiers)


State 444

   16 reserved_non_modifiers: "else (T_ELSE)" .

    $default  reduce using rule 16 (reserved_non_modifiers)


State 445

   17 reserved_non_modifiers: "endif (T_ENDIF)" .

    $default  reduce using rule 17 (reserved_non_modifiers)


State 446

   70 semi_reserved: "static (T_STATIC)" .

    $default  reduce using rule 70 (semi_reserved)


State 447

   71 semi_reserved: "abstract (T_ABSTRACT)" .

    $default  reduce using rule 71 (semi_reserved)


State 448

   72 semi_reserved: "final (T_FINAL)" .

    $default  reduce using rule 72 (semi_reserved)


State 449

   73 semi_reserved: "private (T_PRIVATE)" .

    $default  reduce using rule 73 (semi_reserved)


State 450

   74 semi_reserved: "protected (T_PROTECTED)" .

    $default  reduce using rule 74 (semi_reserved)


State 451

   75 semi_reserved: "public (T_PUBLIC)" .

    $default  reduce using rule 75 (semi_reserved)


State 452

   76 identifier: "identifier (T_STRING)" .

    $default  reduce using rule 76 (identifier)


State 453

   13 reserved_non_modifiers: "exit (T_EXIT)" .

    $default  reduce using rule 13 (reserved_non_modifiers)


State 454

   14 reserved_non_modifiers: "if (T_IF)" .

    $default  reduce using rule 14 (reserved_non_modifiers)


State 455

   18 reserved_non_modifiers: "echo (T_ECHO)" .

    $default  reduce using rule 18 (reserved_non_modifiers)


State 456

   19 reserved_non_modifiers: "do (T_DO)" .

    $default  reduce using rule 19 (reserved_non_modifiers)


State 457

   20 reserved_non_modifiers: "while (T_WHILE)" .

    $default  reduce using rule 20 (reserved_non_modifiers)


State 458

   21 reserved_non_modifiers: "endwhile (T_ENDWHILE)" .

    $default  reduce using rule 21 (reserved_non_modifiers)


State 459

   22 reserved_non_modifiers: "for (T_FOR)" .

    $default  reduce using rule 22 (reserved_non_modifiers)


State 460

   23 reserved_non_modifiers: "endfor (T_ENDFOR)" .

    $default  reduce using rule 23 (reserved_non_modifiers)


State 461

   24 reserved_non_modifiers: "foreach (T_FOREACH)" .

    $default  reduce using rule 24 (reserved_non_modifiers)


State 462

   25 reserved_non_modifiers: "endforeach (T_ENDFOREACH)" .

    $default  reduce using rule 25 (reserved_non_modifiers)


State 463

   26 reserved_non_modifiers: "declare (T_DECLARE)" .

    $default  reduce using rule 26 (reserved_non_modifiers)


State 464

   27 reserved_non_modifiers: "enddeclare (T_ENDDECLARE)" .

    $default  reduce using rule 27 (reserved_non_modifiers)


State 465

   28 reserved_non_modifiers: "as (T_AS)" .

    $default  reduce using rule 28 (reserved_non_modifiers)


State 466

   48 reserved_non_modifiers: "switch (T_SWITCH)" .

    $default  reduce using rule 48 (reserved_non_modifiers)


State 467

   49 reserved_non_modifiers: "endswitch (T_ENDSWITCH)" .

    $default  reduce using rule 49 (reserved_non_modifiers)


State 468

   50 reserved_non_modifiers: "case (T_CASE)" .

    $default  reduce using rule 50 (reserved_non_modifiers)


State 469

   51 reserved_non_modifiers: "default (T_DEFAULT)" .

    $default  reduce using rule 51 (reserved_non_modifiers)


State 470

   52 reserved_non_modifiers: "break (T_BREAK)" .

    $default  reduce using rule 52 (reserved_non_modifiers)


State 471

   40 reserved_non_modifiers: "continue (T_CONTINUE)" .

    $default  reduce using rule 40 (reserved_non_modifiers)


State 472

   41 reserved_non_modifiers: "goto (T_GOTO)" .

    $default  reduce using rule 41 (reserved_non_modifiers)


State 473

   42 reserved_non_modifiers: "function (T_FUNCTION)" .

    $default  reduce using rule 42 (reserved_non_modifiers)


State 474

   43 reserved_non_modifiers: "const (T_CONST)" .

    $default  reduce using rule 43 (reserved_non_modifiers)


State 475

   44 reserved_non_modifiers: "return (T_RETURN)" .

    $default  reduce using rule 44 (reserved_non_modifiers)


State 476

   29 reserved_non_modifiers: "try (T_TRY)" .

    $default  reduce using rule 29 (reserved_non_modifiers)


State 477

   30 reserved_non_modifiers: "catch (T_CATCH)" .

    $default  reduce using rule 30 (reserved_non_modifiers)


State 478

   31 reserved_non_modifiers: "finally (T_FINALLY)" .

    $default  reduce using rule 31 (reserved_non_modifiers)


State 479

   32 reserved_non_modifiers: "throw (T_THROW)" .

    $default  reduce using rule 32 (reserved_non_modifiers)


State 480

   33 reserved_non_modifiers: "use (T_USE)" .

    $default  reduce using rule 33 (reserved_non_modifiers)


State 481

   34 reserved_non_modifiers: "insteadof (T_INSTEADOF)" .

    $default  reduce using rule 34 (reserved_non_modifiers)


State 482

   35 reserved_non_modifiers: "global (T_GLOBAL)" .

    $default  reduce using rule 35 (reserved_non_modifiers)


State 483

   36 reserved_non_modifiers: "var (T_VAR)" .

    $default  reduce using rule 36 (reserved_non_modifiers)


State 484

   37 reserved_non_modifiers: "unset (T_UNSET)" .

    $default  reduce using rule 37 (reserved_non_modifiers)


State 485

   38 reserved_non_modifiers: "isset (T_ISSET)" .

    $default  reduce using rule 38 (reserved_non_modifiers)


State 486

   39 reserved_non_modifiers: "empty (T_EMPTY)" .

    $default  reduce using rule 39 (reserved_non_modifiers)


State 487

   60 reserved_non_modifiers: "class (T_CLASS)" .

    $default  reduce using rule 60 (reserved_non_modifiers)


State 488

   58 reserved_non_modifiers: "trait (T_TRAIT)" .

    $default  reduce using rule 58 (reserved_non_modifiers)


State 489

   59 reserved_non_modifiers: "interface (T_INTERFACE)" .

    $default  reduce using rule 59 (reserved_non_modifiers)


State 490

   55 reserved_non_modifiers: "extends (T_EXTENDS)" .

    $default  reduce using rule 55 (reserved_non_modifiers)


State 491

   56 reserved_non_modifiers: "implements (T_IMPLEMENTS)" .

    $default  reduce using rule 56 (reserved_non_modifiers)


State 492

   47 reserved_non_modifiers: "list (T_LIST)" .

    $default  reduce using rule 47 (reserved_non_modifiers)


State 493

   53 reserved_non_modifiers: "array (T_ARRAY)" .

    $default  reduce using rule 53 (reserved_non_modifiers)


State 494

   54 reserved_non_modifiers: "callable (T_CALLABLE)" .

    $default  reduce using rule 54 (reserved_non_modifiers)


State 495

   65 reserved_non_modifiers: "__LINE__ (T_LINE)" .

    $default  reduce using rule 65 (reserved_non_modifiers)


State 496

   66 reserved_non_modifiers: "__FILE__ (T_FILE)" .

    $default  reduce using rule 66 (reserved_non_modifiers)


State 497

   67 reserved_non_modifiers: "__DIR__ (T_DIR)" .

    $default  reduce using rule 67 (reserved_non_modifiers)


State 498

   61 reserved_non_modifiers: "__CLASS__ (T_CLASS_C)" .

    $default  reduce using rule 61 (reserved_non_modifiers)


State 499

   62 reserved_non_modifiers: "__TRAIT__ (T_TRAIT_C)" .

    $default  reduce using rule 62 (reserved_non_modifiers)


State 500

   64 reserved_non_modifiers: "__METHOD__ (T_METHOD_C)" .

    $default  reduce using rule 64 (reserved_non_modifiers)


State 501

   63 reserved_non_modifiers: "__FUNCTION__ (T_FUNC_C)" .

    $default  reduce using rule 63 (reserved_non_modifiers)


State 502

   57 reserved_non_modifiers: "namespace (T_NAMESPACE)" .

    $default  reduce using rule 57 (reserved_non_modifiers)


State 503

   68 reserved_non_modifiers: "__NAMESPACE__ (T_NS_C)" .

    $default  reduce using rule 68 (reserved_non_modifiers)


State 504

  456 member_name: '{' . expr '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 615
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 505

   69 semi_reserved: reserved_non_modifiers .

    $default  reduce using rule 69 (semi_reserved)


State 506

   77 identifier: semi_reserved .

    $default  reduce using rule 77 (identifier)


State 507

  424 constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .
  455 member_name: identifier .

    '('       reduce using rule 455 (member_name)
    $default  reduce using rule 424 (constant)


State 508

  447 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .
  457 member_name: simple_variable .

    '('       reduce using rule 457 (member_name)
    $default  reduce using rule 447 (static_member)


State 509

  390 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name . argument_list

    '('  shift, and go to state 228

    argument_list  go to state 616


State 510

  437 callable_variable: constant '[' optional_expr . ']'

    ']'  shift, and go to state 617


State 511

  425 constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .
  455 member_name: identifier .

    '('       reduce using rule 455 (member_name)
    $default  reduce using rule 425 (constant)


State 512

  448 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .
  457 member_name: simple_variable .

    '('       reduce using rule 457 (member_name)
    $default  reduce using rule 448 (static_member)


State 513

  391 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name . argument_list

    '('  shift, and go to state 228

    argument_list  go to state 618


State 514

  436 callable_variable: dereferencable '[' optional_expr . ']'

    ']'  shift, and go to state 619


State 515

  458 property_name: "identifier (T_STRING)" .

    $default  reduce using rule 458 (property_name)


State 516

  459 property_name: '{' . expr '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 620
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 517

  460 property_name: simple_variable .

    $default  reduce using rule 460 (property_name)


State 518

  439 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name . argument_list
  443 variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name .

    '('  shift, and go to state 228

    $default  reduce using rule 443 (variable)

    argument_list  go to state 621


State 519

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  438 callable_variable: dereferencable '{' expr . '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    '}'                           shift, and go to state 622


State 520

  305 expr: variable '=' '&' . variable

    '['                                           shift, and go to state 129
    "static (T_STATIC)"                           shift, and go to state 130
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 131
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 132
    constant               go to state 133
    variable_class_name    go to state 105
    dereferencable         go to state 106
    callable_expr          go to state 107
    callable_variable      go to state 108
    variable               go to state 623
    simple_variable        go to state 110
    static_member          go to state 111


State 521

  304 expr: variable '=' expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 304 (expr)


State 522

  307 expr: variable "+= (T_PLUS_EQUAL)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 307 (expr)


State 523

  308 expr: variable "-= (T_MINUS_EQUAL)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 308 (expr)


State 524

  309 expr: variable "*= (T_MUL_EQUAL)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 309 (expr)


State 525

  311 expr: variable "/= (T_DIV_EQUAL)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 311 (expr)


State 526

  312 expr: variable ".= (T_CONCAT_EQUAL)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 312 (expr)


State 527

  313 expr: variable "%= (T_MOD_EQUAL)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 313 (expr)


State 528

  314 expr: variable "&= (T_AND_EQUAL)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 314 (expr)


State 529

  315 expr: variable "|= (T_OR_EQUAL)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 315 (expr)


State 530

  316 expr: variable "^= (T_XOR_EQUAL)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 316 (expr)


State 531

  317 expr: variable "<<= (T_SL_EQUAL)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 317 (expr)


State 532

  318 expr: variable ">>= (T_SR_EQUAL)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 318 (expr)


State 533

  310 expr: variable "**= (T_POW_EQUAL)" expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 310 (expr)


State 534

  491 internal_functions_in_yacc: "eval (T_EVAL)" '(' expr ')' .

    $default  reduce using rule 491 (internal_functions_in_yacc)


State 535

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  374     | "yield (T_YIELD)" expr "=> (T_DOUBLE_ARROW)" expr .

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 374 (expr)


State 536

  405 dereferencable_scalar: '[' array_pair_list ']' .

    $default  reduce using rule 405 (dereferencable_scalar)


State 537

  430 dereferencable: '(' expr ')' .
  433 callable_expr: '(' expr ')' .

    '('       reduce using rule 433 (callable_expr)
    $default  reduce using rule 430 (dereferencable)


State 538

  302 expr: "list (T_LIST)" '(' array_pair_list . ')' '=' expr
  471 array_pair: "list (T_LIST)" '(' array_pair_list . ')'

    ')'  shift, and go to state 624


State 539

  468 array_pair: expr "=> (T_DOUBLE_ARROW)" '&' . variable

    '['                                           shift, and go to state 129
    "static (T_STATIC)"                           shift, and go to state 130
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 131
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 132
    constant               go to state 133
    variable_class_name    go to state 105
    dereferencable         go to state 106
    callable_expr          go to state 107
    callable_variable      go to state 108
    variable               go to state 625
    simple_variable        go to state 110
    static_member          go to state 111


State 540

  302 expr: "list (T_LIST)" . '(' array_pair_list ')' '=' expr
  470 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" . '(' array_pair_list ')'

    '('  shift, and go to state 626


State 541

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  466 array_pair: expr "=> (T_DOUBLE_ARROW)" expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 466 (array_pair)


State 542

  303 expr: '[' array_pair_list ']' '=' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 627
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 543

  464 non_empty_array_pair_list: non_empty_array_pair_list ',' possible_array_pair .

    $default  reduce using rule 464 (non_empty_array_pair_list)


State 544

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments . extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    "extends (T_EXTENDS)"  shift, and go to state 583

    $default  reduce using rule 182 (extends_from)

    extends_from  go to state 628


State 545

  453 new_variable: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .

    $default  reduce using rule 453 (new_variable)


State 546

  450 new_variable: new_variable '[' optional_expr . ']'

    ']'  shift, and go to state 629


State 547

  452 new_variable: new_variable "-> (T_OBJECT_OPERATOR)" property_name .

    $default  reduce using rule 452 (new_variable)


State 548

  454 new_variable: new_variable ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .

    $default  reduce using rule 454 (new_variable)


State 549

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  451 new_variable: new_variable '{' expr . '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    '}'                           shift, and go to state 630


State 550

  244 static_var: "variable (T_VARIABLE)" '=' expr .
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 244 (static_var)


State 551

  241 static_var_list: static_var_list ',' static_var .

    $default  reduce using rule 241 (static_var_list)


State 552

  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment . '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '('  shift, and go to state 631


State 553

  398 exit_expr: '(' optional_expr ')' .

    $default  reduce using rule 398 (exit_expr)


State 554

  209 if_stmt_without_else: "if (T_IF)" '(' expr ')' . statement
  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' . ':' inner_statement_list

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 632
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 633
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr                        go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 555

  290 echo_expr_list: echo_expr_list ',' echo_expr .

    $default  reduce using rule 290 (echo_expr_list)


State 556

  135 statement: "do (T_DO)" statement "while (T_WHILE)" '(' . expr ')' ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 634
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 557

  134 statement: "while (T_WHILE)" '(' expr ')' . while_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 635
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 636
    while_statement             go to state 637
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr                        go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 558

  136 statement: "for (T_FOR)" '(' for_exprs ';' . for_exprs ';' for_exprs ')' for_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 293 (for_exprs)

    namespace_name              go to state 83
    name                        go to state 84
    for_exprs                   go to state 638
    non_empty_for_exprs         go to state 320
    new_expr                    go to state 97
    expr                        go to state 321
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 559

  295 non_empty_for_exprs: non_empty_for_exprs ',' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 639
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 560

  147 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" . foreach_variable ')' foreach_statement
  148          | "foreach (T_FOREACH)" '(' expr "as (T_AS)" . foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement

    '&'                                           shift, and go to state 640
    '['                                           shift, and go to state 641
    "static (T_STATIC)"                           shift, and go to state 130
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "list (T_LIST)"                               shift, and go to state 642
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 131
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    foreach_variable       go to state 643
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 132
    constant               go to state 133
    variable_class_name    go to state 105
    dereferencable         go to state 106
    callable_expr          go to state 107
    callable_variable      go to state 108
    variable               go to state 644
    simple_variable        go to state 110
    static_member          go to state 111


State 561

  150 statement: "declare (T_DECLARE)" '(' const_list ')' . $@3 declare_statement

    $default  reduce using rule 149 ($@3)

    $@3  go to state 645


State 562

  137 statement: "switch (T_SWITCH)" '(' expr ')' . switch_case_list

    ':'  shift, and go to state 646
    '{'  shift, and go to state 647

    switch_case_list  go to state 648


State 563

  289 const_decl: "identifier (T_STRING)" '=' expr . backup_doc_comment
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 649


State 564

  121 const_list: const_list ',' const_decl .

    $default  reduce using rule 121 (const_list)


State 565

  152 statement: "try (T_TRY)" '{' inner_statement_list '}' . catch_list finally_statement

    $default  reduce using rule 156 (catch_list)

    catch_list  go to state 650


State 566

   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" . '{' inline_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 386
    '{'                      shift, and go to state 651


State 567

  118 unprefixed_use_declaration: namespace_name "as (T_AS)" "identifier (T_STRING)" .

    $default  reduce using rule 118 (unprefixed_use_declaration)


State 568

  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' . inline_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 114
    "function (T_FUNCTION)"  shift, and go to state 186
    "const (T_CONST)"        shift, and go to state 187

    namespace_name              go to state 574
    use_type                    go to state 652
    inline_use_declarations     go to state 653
    inline_use_declaration      go to state 654
    unprefixed_use_declaration  go to state 655


State 569

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name . "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
  117 unprefixed_use_declaration: namespace_name .
  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

    "as (T_AS)"            shift, and go to state 336
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 656

    $default  reduce using rule 117 (unprefixed_use_declaration)


State 570

   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" . '{' unprefixed_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 386
    '{'                      shift, and go to state 657


State 571

   97 top_statement: "use (T_USE)" use_type group_use_declaration ';' .

    $default  reduce using rule 97 (top_statement)


State 572

   99 top_statement: "use (T_USE)" use_type use_declarations ';' .

    $default  reduce using rule 99 (top_statement)


State 573

  120 use_declaration: "\\ (T_NS_SEPARATOR)" . unprefixed_use_declaration

    "identifier (T_STRING)"  shift, and go to state 114

    namespace_name              go to state 574
    unprefixed_use_declaration  go to state 335


State 574

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  117 unprefixed_use_declaration: namespace_name .
  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

    "as (T_AS)"            shift, and go to state 336
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 227

    $default  reduce using rule 117 (unprefixed_use_declaration)


State 575

  113 use_declarations: use_declarations ',' use_declaration .

    $default  reduce using rule 113 (use_declarations)


State 576

  238 global_var_list: global_var_list ',' global_var .

    $default  reduce using rule 238 (global_var_list)


State 577

  108 possible_comma: ',' .
  163 unset_variables: unset_variables ',' . unset_variable

    '['                                           shift, and go to state 129
    "static (T_STATIC)"                           shift, and go to state 130
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 131
    '$'                                           shift, and go to state 82

    $default  reduce using rule 108 (possible_comma)

    namespace_name         go to state 83
    name                   go to state 84
    unset_variable         go to state 658
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 132
    constant               go to state 133
    variable_class_name    go to state 105
    dereferencable         go to state 106
    callable_expr          go to state 107
    callable_variable      go to state 108
    variable               go to state 349
    simple_variable        go to state 110
    static_member          go to state 111


State 578

  146 statement: "unset (T_UNSET)" '(' unset_variables possible_comma . ')' ';'

    ')'  shift, and go to state 659


State 579

  108 possible_comma: ',' .
  495 isset_variables: isset_variables ',' . isset_variable

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 108 (possible_comma)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 350
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112
    isset_variable              go to state 660


State 580

  487 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables possible_comma . ')'

    ')'  shift, and go to state 661


State 581

  488 internal_functions_in_yacc: "empty (T_EMPTY)" '(' expr ')' .

    $default  reduce using rule 488 (internal_functions_in_yacc)


State 582

   90 top_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';' .

    $default  reduce using rule 90 (top_statement)


State 583

  183 extends_from: "extends (T_EXTENDS)" . name

    "identifier (T_STRING)"    shift, and go to state 114
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 662


State 584

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from . implements_list backup_doc_comment '{' class_statement_list '}'

    "implements (T_IMPLEMENTS)"  shift, and go to state 663

    $default  reduce using rule 186 (implements_list)

    implements_list  go to state 664


State 585

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment . '{' class_statement_list '}'

    '{'  shift, and go to state 665


State 586

  185 interface_extends_list: "extends (T_EXTENDS)" . name_list

    "identifier (T_STRING)"    shift, and go to state 114
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 666
    name_list       go to state 667


State 587

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list . backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 668


State 588

  302 expr: "list (T_LIST)" '(' array_pair_list ')' . '=' expr

    '='  shift, and go to state 669


State 589

  404 dereferencable_scalar: "array (T_ARRAY)" '(' array_pair_list ')' .

    $default  reduce using rule 404 (dereferencable_scalar)


State 590

  485 encaps_var_offset: '-' . "number (T_NUM_STRING)"

    "number (T_NUM_STRING)"  shift, and go to state 670


State 591

  483 encaps_var_offset: "identifier (T_STRING)" .

    $default  reduce using rule 483 (encaps_var_offset)


State 592

  486 encaps_var_offset: "variable (T_VARIABLE)" .

    $default  reduce using rule 486 (encaps_var_offset)


State 593

  484 encaps_var_offset: "number (T_NUM_STRING)" .

    $default  reduce using rule 484 (encaps_var_offset)


State 594

  477 encaps_var: "variable (T_VARIABLE)" '[' encaps_var_offset . ']'

    ']'  shift, and go to state 671


State 595

  478 encaps_var: "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)" .

    $default  reduce using rule 478 (encaps_var)


State 596

  481 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' . expr ']' '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 672
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 597

  480 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '}' .

    $default  reduce using rule 480 (encaps_var)


State 598

  479 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}' .

    $default  reduce using rule 479 (encaps_var)


State 599

  482 encaps_var: "{$ (T_CURLY_OPEN)" variable '}' .

    $default  reduce using rule 482 (encaps_var)


State 600

   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 '{' . top_statement_list '}'

    $default  reduce using rule 79 (top_statement_list)

    top_statement_list  go to state 673


State 601

   78 top_statement_list: top_statement_list . top_statement
   95 top_statement: "namespace (T_NAMESPACE)" $@2 '{' top_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "const (T_CONST)"                             shift, and go to state 51
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "use (T_USE)"                                 shift, and go to state 55
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 60
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 74
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 674
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    top_statement                    go to state 85
    statement                        go to state 86
    function_declaration_statement   go to state 87
    class_declaration_statement      go to state 88
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 91
    interface_declaration_statement  go to state 92
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 602

  130 inner_statement: "__halt_compiler (T_HALT_COMPILER)" '(' . ')' ';'

    ')'  shift, and go to state 675


State 603

  445 simple_variable: '$' '{' expr '}' .

    $default  reduce using rule 445 (simple_variable)


State 604

  237 argument: "... (T_ELLIPSIS)" expr .
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 237 (argument)


State 605

  108 possible_comma: ',' .
  235 non_empty_argument_list: non_empty_argument_list ',' . argument

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    "... (T_ELLIPSIS)"                            shift, and go to state 387
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 108 (possible_comma)

    namespace_name              go to state 83
    name                        go to state 84
    argument                    go to state 676
    new_expr                    go to state 97
    expr                        go to state 391
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 606

  233 argument_list: '(' non_empty_argument_list possible_comma . ')'

    ')'  shift, and go to state 677


State 607

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" . extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    "extends (T_EXTENDS)"  shift, and go to state 583

    $default  reduce using rule 182 (extends_from)

    extends_from  go to state 678


State 608

  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' expr . ')' statement
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ')'                           shift, and go to state 679


State 609

  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr . ')' ':' inner_statement_list
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ')'                           shift, and go to state 680


State 610

  123 inner_statement_list: inner_statement_list . inner_statement
  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list . "endif (T_ENDIF)" ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "endif (T_ENDIF)"                             shift, and go to state 681
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 611

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  357     | expr '?' ':' expr .
  358     | expr . "?? (T_COALESCE)" expr

    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 357 (expr)


State 612

  356 expr: expr '?' expr ':' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 682
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 613

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment . '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '('  shift, and go to state 683


State 614

  376 expr: function returns_ref backup_doc_comment '(' . parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '?'                        shift, and go to state 684
    "identifier (T_STRING)"    shift, and go to state 114
    "array (T_ARRAY)"          shift, and go to state 685
    "callable (T_CALLABLE)"    shift, and go to state 686
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    ')'       reduce using rule 218 (parameter_list)
    $default  reduce using rule 223 (optional_type)

    namespace_name            go to state 83
    name                      go to state 687
    parameter_list            go to state 688
    non_empty_parameter_list  go to state 689
    parameter                 go to state 690
    optional_type             go to state 691
    type_expr                 go to state 692
    type                      go to state 693


State 615

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  456 member_name: '{' expr . '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    '}'                           shift, and go to state 694


State 616

  390 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list .

    $default  reduce using rule 390 (function_call)


State 617

  437 callable_variable: constant '[' optional_expr ']' .

    $default  reduce using rule 437 (callable_variable)


State 618

  391 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list .

    $default  reduce using rule 391 (function_call)


State 619

  436 callable_variable: dereferencable '[' optional_expr ']' .

    $default  reduce using rule 436 (callable_variable)


State 620

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  459 property_name: '{' expr . '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    '}'                           shift, and go to state 695


State 621

  439 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name argument_list .

    $default  reduce using rule 439 (callable_variable)


State 622

  438 callable_variable: dereferencable '{' expr '}' .

    $default  reduce using rule 438 (callable_variable)


State 623

  305 expr: variable '=' '&' variable .
  429 dereferencable: variable .

    '['                            reduce using rule 429 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 429 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 429 (dereferencable)
    '{'                            reduce using rule 429 (dereferencable)
    $default                       reduce using rule 305 (expr)


State 624

  302 expr: "list (T_LIST)" '(' array_pair_list ')' . '=' expr
  471 array_pair: "list (T_LIST)" '(' array_pair_list ')' .

    '='  shift, and go to state 669

    $default  reduce using rule 471 (array_pair)


State 625

  429 dereferencable: variable .
  468 array_pair: expr "=> (T_DOUBLE_ARROW)" '&' variable .

    ','       reduce using rule 468 (array_pair)
    ')'       reduce using rule 468 (array_pair)
    ']'       reduce using rule 468 (array_pair)
    $default  reduce using rule 429 (dereferencable)


State 626

  302 expr: "list (T_LIST)" '(' . array_pair_list ')' '=' expr
  470 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' . array_pair_list ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 144
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 145
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 462 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 146
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    array_pair_list             go to state 696
    possible_array_pair         go to state 148
    non_empty_array_pair_list   go to state 149
    array_pair                  go to state 150
    internal_functions_in_yacc  go to state 112


State 627

  303 expr: '[' array_pair_list ']' '=' expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 303 (expr)


State 628

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from . implements_list backup_doc_comment '{' class_statement_list '}'

    "implements (T_IMPLEMENTS)"  shift, and go to state 663

    $default  reduce using rule 186 (implements_list)

    implements_list  go to state 697


State 629

  450 new_variable: new_variable '[' optional_expr ']' .

    $default  reduce using rule 450 (new_variable)


State 630

  451 new_variable: new_variable '{' expr '}' .

    $default  reduce using rule 451 (new_variable)


State 631

  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' . parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '?'                        shift, and go to state 684
    "identifier (T_STRING)"    shift, and go to state 114
    "array (T_ARRAY)"          shift, and go to state 685
    "callable (T_CALLABLE)"    shift, and go to state 686
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    ')'       reduce using rule 218 (parameter_list)
    $default  reduce using rule 223 (optional_type)

    namespace_name            go to state 83
    name                      go to state 687
    parameter_list            go to state 698
    non_empty_parameter_list  go to state 689
    parameter                 go to state 690
    optional_type             go to state 691
    type_expr                 go to state 692
    type                      go to state 693


State 632

  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' ':' . inner_statement_list

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 699


State 633

  209 if_stmt_without_else: "if (T_IF)" '(' expr ')' statement .

    $default  reduce using rule 209 (if_stmt_without_else)


State 634

  135 statement: "do (T_DO)" statement "while (T_WHILE)" '(' expr . ')' ';'
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ')'                           shift, and go to state 700


State 635

  208 while_statement: ':' . inner_statement_list "endwhile (T_ENDWHILE)" ';'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 701


State 636

  207 while_statement: statement .

    $default  reduce using rule 207 (while_statement)


State 637

  134 statement: "while (T_WHILE)" '(' expr ')' while_statement .

    $default  reduce using rule 134 (statement)


State 638

  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs . ';' for_exprs ')' for_statement

    ';'  shift, and go to state 702


State 639

  295 non_empty_for_exprs: non_empty_for_exprs ',' expr .
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 295 (non_empty_for_exprs)


State 640

  189 foreach_variable: '&' . variable

    '['                                           shift, and go to state 129
    "static (T_STATIC)"                           shift, and go to state 130
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 131
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 132
    constant               go to state 133
    variable_class_name    go to state 105
    dereferencable         go to state 106
    callable_expr          go to state 107
    callable_variable      go to state 108
    variable               go to state 703
    simple_variable        go to state 110
    static_member          go to state 111


State 641

  191 foreach_variable: '[' . array_pair_list ']'
  405 dereferencable_scalar: '[' . array_pair_list ']'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 144
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 145
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 462 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 146
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    array_pair_list             go to state 704
    possible_array_pair         go to state 148
    non_empty_array_pair_list   go to state 149
    array_pair                  go to state 150
    internal_functions_in_yacc  go to state 112


State 642

  190 foreach_variable: "list (T_LIST)" . '(' array_pair_list ')'

    '('  shift, and go to state 705


State 643

  147 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable . ')' foreach_statement
  148          | "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable . "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement

    "=> (T_DOUBLE_ARROW)"  shift, and go to state 706
    ')'                    shift, and go to state 707


State 644

  188 foreach_variable: variable .
  429 dereferencable: variable .

    "=> (T_DOUBLE_ARROW)"  reduce using rule 188 (foreach_variable)
    ')'                    reduce using rule 188 (foreach_variable)
    $default               reduce using rule 429 (dereferencable)


State 645

  150 statement: "declare (T_DECLARE)" '(' const_list ')' $@3 . declare_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 708
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 709
    declare_statement           go to state 710
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr                        go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 646

  200 switch_case_list: ':' . case_list "endswitch (T_ENDSWITCH)" ';'
  201                 | ':' . ';' case_list "endswitch (T_ENDSWITCH)" ';'

    ';'  shift, and go to state 711

    $default  reduce using rule 202 (case_list)

    case_list  go to state 712


State 647

  198 switch_case_list: '{' . case_list '}'
  199                 | '{' . ';' case_list '}'

    ';'  shift, and go to state 713

    $default  reduce using rule 202 (case_list)

    case_list  go to state 714


State 648

  137 statement: "switch (T_SWITCH)" '(' expr ')' switch_case_list .

    $default  reduce using rule 137 (statement)


State 649

  289 const_decl: "identifier (T_STRING)" '=' expr backup_doc_comment .

    $default  reduce using rule 289 (const_decl)


State 650

  152 statement: "try (T_TRY)" '{' inner_statement_list '}' catch_list . finally_statement
  157 catch_list: catch_list . "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'

    "catch (T_CATCH)"      shift, and go to state 715
    "finally (T_FINALLY)"  shift, and go to state 716

    $default  reduce using rule 160 (finally_statement)

    finally_statement  go to state 717


State 651

  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' . inline_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 114
    "function (T_FUNCTION)"  shift, and go to state 186
    "const (T_CONST)"        shift, and go to state 187

    namespace_name              go to state 574
    use_type                    go to state 652
    inline_use_declarations     go to state 718
    inline_use_declaration      go to state 654
    unprefixed_use_declaration  go to state 655


State 652

  116 inline_use_declaration: use_type . unprefixed_use_declaration

    "identifier (T_STRING)"  shift, and go to state 114

    namespace_name              go to state 574
    unprefixed_use_declaration  go to state 719


State 653

  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations . possible_comma '}'
  109 inline_use_declarations: inline_use_declarations . ',' inline_use_declaration

    ','  shift, and go to state 720

    $default  reduce using rule 107 (possible_comma)

    possible_comma  go to state 721


State 654

  110 inline_use_declarations: inline_use_declaration .

    $default  reduce using rule 110 (inline_use_declarations)


State 655

  115 inline_use_declaration: unprefixed_use_declaration .

    $default  reduce using rule 115 (inline_use_declaration)


State 656

   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" . '{' unprefixed_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 386
    '{'                      shift, and go to state 722


State 657

  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' . unprefixed_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 114

    namespace_name               go to state 574
    unprefixed_use_declarations  go to state 723
    unprefixed_use_declaration   go to state 724


State 658

  163 unset_variables: unset_variables ',' unset_variable .

    $default  reduce using rule 163 (unset_variables)


State 659

  146 statement: "unset (T_UNSET)" '(' unset_variables possible_comma ')' . ';'

    ';'  shift, and go to state 725


State 660

  495 isset_variables: isset_variables ',' isset_variable .

    $default  reduce using rule 495 (isset_variables)


State 661

  487 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables possible_comma ')' .

    $default  reduce using rule 487 (internal_functions_in_yacc)


State 662

  183 extends_from: "extends (T_EXTENDS)" name .

    $default  reduce using rule 183 (extends_from)


State 663

  187 implements_list: "implements (T_IMPLEMENTS)" . name_list

    "identifier (T_STRING)"    shift, and go to state 114
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 666
    name_list       go to state 726


State 664

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list . backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 727


State 665

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment '{' . class_statement_list '}'

    $default  reduce using rule 246 (class_statement_list)

    class_statement_list  go to state 728


State 666

  251 name_list: name .

    $default  reduce using rule 251 (name_list)


State 667

  185 interface_extends_list: "extends (T_EXTENDS)" name_list .
  252 name_list: name_list . ',' name

    ','  shift, and go to state 729

    $default  reduce using rule 185 (interface_extends_list)


State 668

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment . '{' class_statement_list '}'

    '{'  shift, and go to state 730


State 669

  302 expr: "list (T_LIST)" '(' array_pair_list ')' '=' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 731
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 670

  485 encaps_var_offset: '-' "number (T_NUM_STRING)" .

    $default  reduce using rule 485 (encaps_var_offset)


State 671

  477 encaps_var: "variable (T_VARIABLE)" '[' encaps_var_offset ']' .

    $default  reduce using rule 477 (encaps_var)


State 672

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr
  481 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr . ']' '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ']'                           shift, and go to state 732


State 673

   78 top_statement_list: top_statement_list . top_statement
   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 '{' top_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "const (T_CONST)"                             shift, and go to state 51
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "use (T_USE)"                                 shift, and go to state 55
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 60
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 74
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 733
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    top_statement                    go to state 85
    statement                        go to state 86
    function_declaration_statement   go to state 87
    class_declaration_statement      go to state 88
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 91
    interface_declaration_statement  go to state 92
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 674

   95 top_statement: "namespace (T_NAMESPACE)" $@2 '{' top_statement_list '}' .

    $default  reduce using rule 95 (top_statement)


State 675

  130 inner_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' . ';'

    ';'  shift, and go to state 734


State 676

  235 non_empty_argument_list: non_empty_argument_list ',' argument .

    $default  reduce using rule 235 (non_empty_argument_list)


State 677

  233 argument_list: '(' non_empty_argument_list possible_comma ')' .

    $default  reduce using rule 233 (argument_list)


State 678

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from . implements_list backup_doc_comment '{' class_statement_list '}'

    "implements (T_IMPLEMENTS)"  shift, and go to state 663

    $default  reduce using rule 186 (implements_list)

    implements_list  go to state 735


State 679

  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' . statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 736
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr                        go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 680

  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' . ':' inner_statement_list

    ':'  shift, and go to state 737


State 681

  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" . ';'

    ';'  shift, and go to state 738


State 682

  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  356     | expr '?' expr ':' expr .
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 356 (expr)


State 683

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' . parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '?'                        shift, and go to state 684
    "identifier (T_STRING)"    shift, and go to state 114
    "array (T_ARRAY)"          shift, and go to state 685
    "callable (T_CALLABLE)"    shift, and go to state 686
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    ')'       reduce using rule 218 (parameter_list)
    $default  reduce using rule 223 (optional_type)

    namespace_name            go to state 83
    name                      go to state 687
    parameter_list            go to state 739
    non_empty_parameter_list  go to state 689
    parameter                 go to state 690
    optional_type             go to state 691
    type_expr                 go to state 692
    type                      go to state 693


State 684

  226 type_expr: '?' . type

    "identifier (T_STRING)"    shift, and go to state 114
    "array (T_ARRAY)"          shift, and go to state 685
    "callable (T_CALLABLE)"    shift, and go to state 686
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 687
    type            go to state 740


State 685

  227 type: "array (T_ARRAY)" .

    $default  reduce using rule 227 (type)


State 686

  228 type: "callable (T_CALLABLE)" .

    $default  reduce using rule 228 (type)


State 687

  229 type: name .

    $default  reduce using rule 229 (type)


State 688

  376 expr: function returns_ref backup_doc_comment '(' parameter_list . ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    ')'  shift, and go to state 741


State 689

  217 parameter_list: non_empty_parameter_list .
  220 non_empty_parameter_list: non_empty_parameter_list . ',' parameter

    ','  shift, and go to state 742

    $default  reduce using rule 217 (parameter_list)


State 690

  219 non_empty_parameter_list: parameter .

    $default  reduce using rule 219 (non_empty_parameter_list)


State 691

  221 parameter: optional_type . is_reference is_variadic "variable (T_VARIABLE)"
  222          | optional_type . is_reference is_variadic "variable (T_VARIABLE)" '=' expr

    '&'  shift, and go to state 743

    $default  reduce using rule 166 (is_reference)

    is_reference  go to state 744


State 692

  224 optional_type: type_expr .

    $default  reduce using rule 224 (optional_type)


State 693

  225 type_expr: type .

    $default  reduce using rule 225 (type_expr)


State 694

  456 member_name: '{' expr '}' .

    $default  reduce using rule 456 (member_name)


State 695

  459 property_name: '{' expr '}' .

    $default  reduce using rule 459 (property_name)


State 696

  302 expr: "list (T_LIST)" '(' array_pair_list . ')' '=' expr
  470 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list . ')'

    ')'  shift, and go to state 745


State 697

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list . backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 746


State 698

  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list . ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    ')'  shift, and go to state 747


State 699

  123 inner_statement_list: inner_statement_list . inner_statement
  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' ':' inner_statement_list .

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 213 (alt_if_stmt_without_else)

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 700

  135 statement: "do (T_DO)" statement "while (T_WHILE)" '(' expr ')' . ';'

    ';'  shift, and go to state 748


State 701

  123 inner_statement_list: inner_statement_list . inner_statement
  208 while_statement: ':' inner_statement_list . "endwhile (T_ENDWHILE)" ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "endwhile (T_ENDWHILE)"                       shift, and go to state 749
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 702

  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs ';' . for_exprs ')' for_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 293 (for_exprs)

    namespace_name              go to state 83
    name                        go to state 84
    for_exprs                   go to state 750
    non_empty_for_exprs         go to state 320
    new_expr                    go to state 97
    expr                        go to state 321
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 703

  189 foreach_variable: '&' variable .
  429 dereferencable: variable .

    "=> (T_DOUBLE_ARROW)"  reduce using rule 189 (foreach_variable)
    ')'                    reduce using rule 189 (foreach_variable)
    $default               reduce using rule 429 (dereferencable)


State 704

  191 foreach_variable: '[' array_pair_list . ']'
  405 dereferencable_scalar: '[' array_pair_list . ']'

    ']'  shift, and go to state 751


State 705

  190 foreach_variable: "list (T_LIST)" '(' . array_pair_list ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 144
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 145
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 462 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 146
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    array_pair_list             go to state 752
    possible_array_pair         go to state 148
    non_empty_array_pair_list   go to state 149
    array_pair                  go to state 150
    internal_functions_in_yacc  go to state 112


State 706

  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" . foreach_variable ')' foreach_statement

    '&'                                           shift, and go to state 640
    '['                                           shift, and go to state 641
    "static (T_STATIC)"                           shift, and go to state 130
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "list (T_LIST)"                               shift, and go to state 642
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 131
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    foreach_variable       go to state 753
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 132
    constant               go to state 133
    variable_class_name    go to state 105
    dereferencable         go to state 106
    callable_expr          go to state 107
    callable_variable      go to state 108
    variable               go to state 644
    simple_variable        go to state 110
    static_member          go to state 111


State 707

  147 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable ')' . foreach_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 754
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 755
    foreach_statement           go to state 756
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr                        go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 708

  197 declare_statement: ':' . inner_statement_list "enddeclare (T_ENDDECLARE)" ';'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 757


State 709

  196 declare_statement: statement .

    $default  reduce using rule 196 (declare_statement)


State 710

  150 statement: "declare (T_DECLARE)" '(' const_list ')' $@3 declare_statement .

    $default  reduce using rule 150 (statement)


State 711

  201 switch_case_list: ':' ';' . case_list "endswitch (T_ENDSWITCH)" ';'

    $default  reduce using rule 202 (case_list)

    case_list  go to state 758


State 712

  200 switch_case_list: ':' case_list . "endswitch (T_ENDSWITCH)" ';'
  203 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  204          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "endswitch (T_ENDSWITCH)"  shift, and go to state 759
    "case (T_CASE)"            shift, and go to state 760
    "default (T_DEFAULT)"      shift, and go to state 761


State 713

  199 switch_case_list: '{' ';' . case_list '}'

    $default  reduce using rule 202 (case_list)

    case_list  go to state 762


State 714

  198 switch_case_list: '{' case_list . '}'
  203 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  204          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "case (T_CASE)"        shift, and go to state 760
    "default (T_DEFAULT)"  shift, and go to state 761
    '}'                    shift, and go to state 763


State 715

  157 catch_list: catch_list "catch (T_CATCH)" . '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'

    '('  shift, and go to state 764


State 716

  161 finally_statement: "finally (T_FINALLY)" . '{' inner_statement_list '}'

    '{'  shift, and go to state 765


State 717

  152 statement: "try (T_TRY)" '{' inner_statement_list '}' catch_list finally_statement .

    $default  reduce using rule 152 (statement)


State 718

  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations . possible_comma '}'
  109 inline_use_declarations: inline_use_declarations . ',' inline_use_declaration

    ','  shift, and go to state 720

    $default  reduce using rule 107 (possible_comma)

    possible_comma  go to state 766


State 719

  116 inline_use_declaration: use_type unprefixed_use_declaration .

    $default  reduce using rule 116 (inline_use_declaration)


State 720

  108 possible_comma: ',' .
  109 inline_use_declarations: inline_use_declarations ',' . inline_use_declaration

    "identifier (T_STRING)"  shift, and go to state 114
    "function (T_FUNCTION)"  shift, and go to state 186
    "const (T_CONST)"        shift, and go to state 187

    $default  reduce using rule 108 (possible_comma)

    namespace_name              go to state 574
    use_type                    go to state 652
    inline_use_declaration      go to state 767
    unprefixed_use_declaration  go to state 655


State 721

  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma . '}'

    '}'  shift, and go to state 768


State 722

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' . unprefixed_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 114

    namespace_name               go to state 574
    unprefixed_use_declarations  go to state 769
    unprefixed_use_declaration   go to state 724


State 723

  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations . possible_comma '}'
  111 unprefixed_use_declarations: unprefixed_use_declarations . ',' unprefixed_use_declaration

    ','  shift, and go to state 770

    $default  reduce using rule 107 (possible_comma)

    possible_comma  go to state 771


State 724

  112 unprefixed_use_declarations: unprefixed_use_declaration .

    $default  reduce using rule 112 (unprefixed_use_declarations)


State 725

  146 statement: "unset (T_UNSET)" '(' unset_variables possible_comma ')' ';' .

    $default  reduce using rule 146 (statement)


State 726

  187 implements_list: "implements (T_IMPLEMENTS)" name_list .
  252 name_list: name_list . ',' name

    ','  shift, and go to state 729

    $default  reduce using rule 187 (implements_list)


State 727

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment . '{' class_statement_list '}'

    '{'  shift, and go to state 772


State 728

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment '{' class_statement_list . '}'
  245 class_statement_list: class_statement_list . class_statement

    "static (T_STATIC)"        shift, and go to state 773
    "abstract (T_ABSTRACT)"    shift, and go to state 774
    "final (T_FINAL)"          shift, and go to state 775
    "private (T_PRIVATE)"      shift, and go to state 776
    "protected (T_PROTECTED)"  shift, and go to state 777
    "public (T_PUBLIC)"        shift, and go to state 778
    "use (T_USE)"              shift, and go to state 779
    "var (T_VAR)"              shift, and go to state 780
    '}'                        shift, and go to state 781

    $default  reduce using rule 272 (method_modifiers)

    class_statement             go to state 782
    variable_modifiers          go to state 783
    method_modifiers            go to state 784
    non_empty_member_modifiers  go to state 785
    member_modifier             go to state 786


State 729

  252 name_list: name_list ',' . name

    "identifier (T_STRING)"    shift, and go to state 114
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 787


State 730

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' . class_statement_list '}'

    $default  reduce using rule 246 (class_statement_list)

    class_statement_list  go to state 788


State 731

  302 expr: "list (T_LIST)" '(' array_pair_list ')' '=' expr .
  323     | expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 302 (expr)


State 732

  481 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' . '}'

    '}'  shift, and go to state 789


State 733

   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 '{' top_statement_list '}' .

    $default  reduce using rule 93 (top_statement)


State 734

  130 inner_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';' .

    $default  reduce using rule 130 (inner_statement)


State 735

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list . backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 790


State 736

  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' statement .

    $default  reduce using rule 210 (if_stmt_without_else)


State 737

  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' ':' . inner_statement_list

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 791


State 738

  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" ';' .

    $default  reduce using rule 216 (alt_if_stmt)


State 739

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list . ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    ')'  shift, and go to state 792


State 740

  226 type_expr: '?' type .

    $default  reduce using rule 226 (type_expr)


State 741

  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' . lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    "use (T_USE)"  shift, and go to state 793

    $default  reduce using rule 383 (lexical_vars)

    lexical_vars  go to state 794


State 742

  220 non_empty_parameter_list: non_empty_parameter_list ',' . parameter

    '?'                        shift, and go to state 684
    "identifier (T_STRING)"    shift, and go to state 114
    "array (T_ARRAY)"          shift, and go to state 685
    "callable (T_CALLABLE)"    shift, and go to state 686
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    $default  reduce using rule 223 (optional_type)

    namespace_name  go to state 83
    name            go to state 687
    parameter       go to state 795
    optional_type   go to state 691
    type_expr       go to state 692
    type            go to state 693


State 743

  167 is_reference: '&' .

    $default  reduce using rule 167 (is_reference)


State 744

  221 parameter: optional_type is_reference . is_variadic "variable (T_VARIABLE)"
  222          | optional_type is_reference . is_variadic "variable (T_VARIABLE)" '=' expr

    "... (T_ELLIPSIS)"  shift, and go to state 796

    $default  reduce using rule 168 (is_variadic)

    is_variadic  go to state 797


State 745

  302 expr: "list (T_LIST)" '(' array_pair_list ')' . '=' expr
  470 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')' .

    '='  shift, and go to state 669

    $default  reduce using rule 470 (array_pair)


State 746

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment . '{' class_statement_list '}'

    '{'  shift, and go to state 798


State 747

  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' . lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    "use (T_USE)"  shift, and go to state 793

    $default  reduce using rule 383 (lexical_vars)

    lexical_vars  go to state 799


State 748

  135 statement: "do (T_DO)" statement "while (T_WHILE)" '(' expr ')' ';' .

    $default  reduce using rule 135 (statement)


State 749

  208 while_statement: ':' inner_statement_list "endwhile (T_ENDWHILE)" . ';'

    ';'  shift, and go to state 800


State 750

  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs ';' for_exprs . ')' for_statement

    ')'  shift, and go to state 801


State 751

  191 foreach_variable: '[' array_pair_list ']' .
  405 dereferencable_scalar: '[' array_pair_list ']' .

    "=> (T_DOUBLE_ARROW)"  reduce using rule 191 (foreach_variable)
    ')'                    reduce using rule 191 (foreach_variable)
    $default               reduce using rule 405 (dereferencable_scalar)


State 752

  190 foreach_variable: "list (T_LIST)" '(' array_pair_list . ')'

    ')'  shift, and go to state 802


State 753

  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable . ')' foreach_statement

    ')'  shift, and go to state 803


State 754

  195 foreach_statement: ':' . inner_statement_list "endforeach (T_ENDFOREACH)" ';'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 804


State 755

  194 foreach_statement: statement .

    $default  reduce using rule 194 (foreach_statement)


State 756

  147 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable ')' foreach_statement .

    $default  reduce using rule 147 (statement)


State 757

  123 inner_statement_list: inner_statement_list . inner_statement
  197 declare_statement: ':' inner_statement_list . "enddeclare (T_ENDDECLARE)" ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "enddeclare (T_ENDDECLARE)"                   shift, and go to state 805
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 758

  201 switch_case_list: ':' ';' case_list . "endswitch (T_ENDSWITCH)" ';'
  203 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  204          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "endswitch (T_ENDSWITCH)"  shift, and go to state 806
    "case (T_CASE)"            shift, and go to state 760
    "default (T_DEFAULT)"      shift, and go to state 761


State 759

  200 switch_case_list: ':' case_list "endswitch (T_ENDSWITCH)" . ';'

    ';'  shift, and go to state 807


State 760

  203 case_list: case_list "case (T_CASE)" . expr case_separator inner_statement_list

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 808
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 761

  204 case_list: case_list "default (T_DEFAULT)" . case_separator inner_statement_list

    ':'  shift, and go to state 809
    ';'  shift, and go to state 810

    case_separator  go to state 811


State 762

  199 switch_case_list: '{' ';' case_list . '}'
  203 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  204          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "case (T_CASE)"        shift, and go to state 760
    "default (T_DEFAULT)"  shift, and go to state 761
    '}'                    shift, and go to state 812


State 763

  198 switch_case_list: '{' case_list '}' .

    $default  reduce using rule 198 (switch_case_list)


State 764

  157 catch_list: catch_list "catch (T_CATCH)" '(' . catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'

    "identifier (T_STRING)"    shift, and go to state 114
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name   go to state 83
    name             go to state 813
    catch_name_list  go to state 814


State 765

  161 finally_statement: "finally (T_FINALLY)" '{' . inner_statement_list '}'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 815


State 766

  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma . '}'

    '}'  shift, and go to state 816


State 767

  109 inline_use_declarations: inline_use_declarations ',' inline_use_declaration .

    $default  reduce using rule 109 (inline_use_declarations)


State 768

  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}' .

    $default  reduce using rule 105 (mixed_group_use_declaration)


State 769

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations . possible_comma '}'
  111 unprefixed_use_declarations: unprefixed_use_declarations . ',' unprefixed_use_declaration

    ','  shift, and go to state 770

    $default  reduce using rule 107 (possible_comma)

    possible_comma  go to state 817


State 770

  108 possible_comma: ',' .
  111 unprefixed_use_declarations: unprefixed_use_declarations ',' . unprefixed_use_declaration

    "identifier (T_STRING)"  shift, and go to state 114

    $default  reduce using rule 108 (possible_comma)

    namespace_name              go to state 574
    unprefixed_use_declaration  go to state 818


State 771

  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma . '}'

    '}'  shift, and go to state 819


State 772

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' . class_statement_list '}'

    $default  reduce using rule 246 (class_statement_list)

    class_statement_list  go to state 820


State 773

  279 member_modifier: "static (T_STATIC)" .

    $default  reduce using rule 279 (member_modifier)


State 774

  280 member_modifier: "abstract (T_ABSTRACT)" .

    $default  reduce using rule 280 (member_modifier)


State 775

  281 member_modifier: "final (T_FINAL)" .

    $default  reduce using rule 281 (member_modifier)


State 776

  278 member_modifier: "private (T_PRIVATE)" .

    $default  reduce using rule 278 (member_modifier)


State 777

  277 member_modifier: "protected (T_PROTECTED)" .

    $default  reduce using rule 277 (member_modifier)


State 778

  276 member_modifier: "public (T_PUBLIC)" .

    $default  reduce using rule 276 (member_modifier)


State 779

  249 class_statement: "use (T_USE)" . name_list trait_adaptations

    "identifier (T_STRING)"    shift, and go to state 114
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 666
    name_list       go to state 821


State 780

  271 variable_modifiers: "var (T_VAR)" .

    $default  reduce using rule 271 (variable_modifiers)


State 781

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment '{' class_statement_list '}' .

    $default  reduce using rule 179 (trait_declaration_statement)


State 782

  245 class_statement_list: class_statement_list class_statement .

    $default  reduce using rule 245 (class_statement_list)


State 783

  247 class_statement: variable_modifiers . property_list ';'

    "variable (T_VARIABLE)"  shift, and go to state 822

    property_list  go to state 823
    property       go to state 824


State 784

  248 class_statement: method_modifiers . "const (T_CONST)" class_const_list ';'
  250                | method_modifiers . function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

    "function (T_FUNCTION)"  shift, and go to state 50
    "const (T_CONST)"        shift, and go to state 825

    function  go to state 826


State 785

  270 variable_modifiers: non_empty_member_modifiers .
  273 method_modifiers: non_empty_member_modifiers .
  275 non_empty_member_modifiers: non_empty_member_modifiers . member_modifier

    "static (T_STATIC)"        shift, and go to state 773
    "abstract (T_ABSTRACT)"    shift, and go to state 774
    "final (T_FINAL)"          shift, and go to state 775
    "private (T_PRIVATE)"      shift, and go to state 776
    "protected (T_PROTECTED)"  shift, and go to state 777
    "public (T_PUBLIC)"        shift, and go to state 778

    "variable (T_VARIABLE)"  reduce using rule 270 (variable_modifiers)
    $default                 reduce using rule 273 (method_modifiers)

    member_modifier  go to state 827


State 786

  274 non_empty_member_modifiers: member_modifier .

    $default  reduce using rule 274 (non_empty_member_modifiers)


State 787

  252 name_list: name_list ',' name .

    $default  reduce using rule 252 (name_list)


State 788

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list . '}'
  245 class_statement_list: class_statement_list . class_statement

    "static (T_STATIC)"        shift, and go to state 773
    "abstract (T_ABSTRACT)"    shift, and go to state 774
    "final (T_FINAL)"          shift, and go to state 775
    "private (T_PRIVATE)"      shift, and go to state 776
    "protected (T_PROTECTED)"  shift, and go to state 777
    "public (T_PUBLIC)"        shift, and go to state 778
    "use (T_USE)"              shift, and go to state 779
    "var (T_VAR)"              shift, and go to state 780
    '}'                        shift, and go to state 828

    $default  reduce using rule 272 (method_modifiers)

    class_statement             go to state 782
    variable_modifiers          go to state 783
    method_modifiers            go to state 784
    non_empty_member_modifiers  go to state 785
    member_modifier             go to state 786


State 789

  481 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' '}' .

    $default  reduce using rule 481 (encaps_var)


State 790

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment . '{' class_statement_list '}'

    '{'  shift, and go to state 829


State 791

  123 inner_statement_list: inner_statement_list . inner_statement
  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' ':' inner_statement_list .

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 214 (alt_if_stmt_without_else)

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 792

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' . return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    ':'  shift, and go to state 830

    $default  reduce using rule 230 (return_type)

    return_type  go to state 831


State 793

  384 lexical_vars: "use (T_USE)" . '(' lexical_var_list ')'

    '('  shift, and go to state 832


State 794

  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars . return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    ':'  shift, and go to state 830

    $default  reduce using rule 230 (return_type)

    return_type  go to state 833


State 795

  220 non_empty_parameter_list: non_empty_parameter_list ',' parameter .

    $default  reduce using rule 220 (non_empty_parameter_list)


State 796

  169 is_variadic: "... (T_ELLIPSIS)" .

    $default  reduce using rule 169 (is_variadic)


State 797

  221 parameter: optional_type is_reference is_variadic . "variable (T_VARIABLE)"
  222          | optional_type is_reference is_variadic . "variable (T_VARIABLE)" '=' expr

    "variable (T_VARIABLE)"  shift, and go to state 834


State 798

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment '{' . class_statement_list '}'

    $default  reduce using rule 246 (class_statement_list)

    class_statement_list  go to state 835


State 799

  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars . return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    ':'  shift, and go to state 830

    $default  reduce using rule 230 (return_type)

    return_type  go to state 836


State 800

  208 while_statement: ':' inner_statement_list "endwhile (T_ENDWHILE)" ';' .

    $default  reduce using rule 208 (while_statement)


State 801

  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs ';' for_exprs ')' . for_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 837
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 838
    for_statement               go to state 839
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr                        go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 802

  190 foreach_variable: "list (T_LIST)" '(' array_pair_list ')' .

    $default  reduce using rule 190 (foreach_variable)


State 803

  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' . foreach_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 754
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 755
    foreach_statement           go to state 840
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr                        go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 804

  123 inner_statement_list: inner_statement_list . inner_statement
  195 foreach_statement: ':' inner_statement_list . "endforeach (T_ENDFOREACH)" ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "endforeach (T_ENDFOREACH)"                   shift, and go to state 841
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 805

  197 declare_statement: ':' inner_statement_list "enddeclare (T_ENDDECLARE)" . ';'

    ';'  shift, and go to state 842


State 806

  201 switch_case_list: ':' ';' case_list "endswitch (T_ENDSWITCH)" . ';'

    ';'  shift, and go to state 843


State 807

  200 switch_case_list: ':' case_list "endswitch (T_ENDSWITCH)" ';' .

    $default  reduce using rule 200 (switch_case_list)


State 808

  203 case_list: case_list "case (T_CASE)" expr . case_separator inner_statement_list
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    ':'                           shift, and go to state 809
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265
    ';'                           shift, and go to state 810

    case_separator  go to state 844


State 809

  205 case_separator: ':' .

    $default  reduce using rule 205 (case_separator)


State 810

  206 case_separator: ';' .

    $default  reduce using rule 206 (case_separator)


State 811

  204 case_list: case_list "default (T_DEFAULT)" case_separator . inner_statement_list

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 845


State 812

  199 switch_case_list: '{' ';' case_list '}' .

    $default  reduce using rule 199 (switch_case_list)


State 813

  158 catch_name_list: name .

    $default  reduce using rule 158 (catch_name_list)


State 814

  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list . "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'
  159 catch_name_list: catch_name_list . '|' name

    '|'                      shift, and go to state 846
    "variable (T_VARIABLE)"  shift, and go to state 847


State 815

  123 inner_statement_list: inner_statement_list . inner_statement
  161 finally_statement: "finally (T_FINALLY)" '{' inner_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 848
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 816

  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}' .

    $default  reduce using rule 106 (mixed_group_use_declaration)


State 817

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma . '}'

    '}'  shift, and go to state 849


State 818

  111 unprefixed_use_declarations: unprefixed_use_declarations ',' unprefixed_use_declaration .

    $default  reduce using rule 111 (unprefixed_use_declarations)


State 819

  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}' .

    $default  reduce using rule 103 (group_use_declaration)


State 820

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list . '}'
  245 class_statement_list: class_statement_list . class_statement

    "static (T_STATIC)"        shift, and go to state 773
    "abstract (T_ABSTRACT)"    shift, and go to state 774
    "final (T_FINAL)"          shift, and go to state 775
    "private (T_PRIVATE)"      shift, and go to state 776
    "protected (T_PROTECTED)"  shift, and go to state 777
    "public (T_PUBLIC)"        shift, and go to state 778
    "use (T_USE)"              shift, and go to state 779
    "var (T_VAR)"              shift, and go to state 780
    '}'                        shift, and go to state 850

    $default  reduce using rule 272 (method_modifiers)

    class_statement             go to state 782
    variable_modifiers          go to state 783
    method_modifiers            go to state 784
    non_empty_member_modifiers  go to state 785
    member_modifier             go to state 786


State 821

  249 class_statement: "use (T_USE)" name_list . trait_adaptations
  252 name_list: name_list . ',' name

    ','  shift, and go to state 729
    ';'  shift, and go to state 851
    '{'  shift, and go to state 852

    trait_adaptations  go to state 853


State 822

  284 property: "variable (T_VARIABLE)" . backup_doc_comment
  285         | "variable (T_VARIABLE)" . '=' expr backup_doc_comment

    '='  shift, and go to state 854

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 855


State 823

  247 class_statement: variable_modifiers property_list . ';'
  282 property_list: property_list . ',' property

    ','  shift, and go to state 856
    ';'  shift, and go to state 857


State 824

  283 property_list: property .

    $default  reduce using rule 283 (property_list)


State 825

  248 class_statement: method_modifiers "const (T_CONST)" . class_const_list ';'

    "include (T_INCLUDE)"            shift, and go to state 430
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
    "eval (T_EVAL)"                  shift, and go to state 432
    "require (T_REQUIRE)"            shift, and go to state 433
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
    "or (T_LOGICAL_OR)"              shift, and go to state 435
    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
    "and (T_LOGICAL_AND)"            shift, and go to state 437
    "print (T_PRINT)"                shift, and go to state 438
    "yield (T_YIELD)"                shift, and go to state 439
    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
    "new (T_NEW)"                    shift, and go to state 441
    "clone (T_CLONE)"                shift, and go to state 442
    "elseif (T_ELSEIF)"              shift, and go to state 443
    "else (T_ELSE)"                  shift, and go to state 444
    "endif (T_ENDIF)"                shift, and go to state 445
    "static (T_STATIC)"              shift, and go to state 446
    "abstract (T_ABSTRACT)"          shift, and go to state 447
    "final (T_FINAL)"                shift, and go to state 448
    "private (T_PRIVATE)"            shift, and go to state 449
    "protected (T_PROTECTED)"        shift, and go to state 450
    "public (T_PUBLIC)"              shift, and go to state 451
    "identifier (T_STRING)"          shift, and go to state 452
    "exit (T_EXIT)"                  shift, and go to state 453
    "if (T_IF)"                      shift, and go to state 454
    "echo (T_ECHO)"                  shift, and go to state 455
    "do (T_DO)"                      shift, and go to state 456
    "while (T_WHILE)"                shift, and go to state 457
    "endwhile (T_ENDWHILE)"          shift, and go to state 458
    "for (T_FOR)"                    shift, and go to state 459
    "endfor (T_ENDFOR)"              shift, and go to state 460
    "foreach (T_FOREACH)"            shift, and go to state 461
    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
    "declare (T_DECLARE)"            shift, and go to state 463
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
    "as (T_AS)"                      shift, and go to state 465
    "switch (T_SWITCH)"              shift, and go to state 466
    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
    "case (T_CASE)"                  shift, and go to state 468
    "default (T_DEFAULT)"            shift, and go to state 469
    "break (T_BREAK)"                shift, and go to state 470
    "continue (T_CONTINUE)"          shift, and go to state 471
    "goto (T_GOTO)"                  shift, and go to state 472
    "function (T_FUNCTION)"          shift, and go to state 473
    "const (T_CONST)"                shift, and go to state 474
    "return (T_RETURN)"              shift, and go to state 475
    "try (T_TRY)"                    shift, and go to state 476
    "catch (T_CATCH)"                shift, and go to state 477
    "finally (T_FINALLY)"            shift, and go to state 478
    "throw (T_THROW)"                shift, and go to state 479
    "use (T_USE)"                    shift, and go to state 480
    "insteadof (T_INSTEADOF)"        shift, and go to state 481
    "global (T_GLOBAL)"              shift, and go to state 482
    "var (T_VAR)"                    shift, and go to state 483
    "unset (T_UNSET)"                shift, and go to state 484
    "isset (T_ISSET)"                shift, and go to state 485
    "empty (T_EMPTY)"                shift, and go to state 486
    "class (T_CLASS)"                shift, and go to state 487
    "trait (T_TRAIT)"                shift, and go to state 488
    "interface (T_INTERFACE)"        shift, and go to state 489
    "extends (T_EXTENDS)"            shift, and go to state 490
    "implements (T_IMPLEMENTS)"      shift, and go to state 491
    "list (T_LIST)"                  shift, and go to state 492
    "array (T_ARRAY)"                shift, and go to state 493
    "callable (T_CALLABLE)"          shift, and go to state 494
    "__LINE__ (T_LINE)"              shift, and go to state 495
    "__FILE__ (T_FILE)"              shift, and go to state 496
    "__DIR__ (T_DIR)"                shift, and go to state 497
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
    "namespace (T_NAMESPACE)"        shift, and go to state 502
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503

    reserved_non_modifiers  go to state 505
    semi_reserved           go to state 506
    identifier              go to state 858
    class_const_list        go to state 859
    class_const_decl        go to state 860


State 826

  250 class_statement: method_modifiers function . returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

    '&'  shift, and go to state 267

    $default  reduce using rule 381 (returns_ref)

    returns_ref  go to state 861


State 827

  275 non_empty_member_modifiers: non_empty_member_modifiers member_modifier .

    $default  reduce using rule 275 (non_empty_member_modifiers)


State 828

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list '}' .

    $default  reduce using rule 181 (interface_declaration_statement)


State 829

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' . class_statement_list '}'

    $default  reduce using rule 246 (class_statement_list)

    class_statement_list  go to state 862


State 830

  231 return_type: ':' . type_expr

    '?'                        shift, and go to state 684
    "identifier (T_STRING)"    shift, and go to state 114
    "array (T_ARRAY)"          shift, and go to state 685
    "callable (T_CALLABLE)"    shift, and go to state 686
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 687
    type_expr       go to state 863
    type            go to state 693


State 831

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type . backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 380 (backup_fn_flags)

    backup_fn_flags  go to state 864


State 832

  384 lexical_vars: "use (T_USE)" '(' . lexical_var_list ')'

    '&'                      shift, and go to state 865
    "variable (T_VARIABLE)"  shift, and go to state 866

    lexical_var_list  go to state 867
    lexical_var       go to state 868


State 833

  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type . backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 380 (backup_fn_flags)

    backup_fn_flags  go to state 869


State 834

  221 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)" .
  222          | optional_type is_reference is_variadic "variable (T_VARIABLE)" . '=' expr

    '='  shift, and go to state 870

    $default  reduce using rule 221 (parameter)


State 835

  245 class_statement_list: class_statement_list . class_statement
  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list . '}'

    "static (T_STATIC)"        shift, and go to state 773
    "abstract (T_ABSTRACT)"    shift, and go to state 774
    "final (T_FINAL)"          shift, and go to state 775
    "private (T_PRIVATE)"      shift, and go to state 776
    "protected (T_PROTECTED)"  shift, and go to state 777
    "public (T_PUBLIC)"        shift, and go to state 778
    "use (T_USE)"              shift, and go to state 779
    "var (T_VAR)"              shift, and go to state 780
    '}'                        shift, and go to state 871

    $default  reduce using rule 272 (method_modifiers)

    class_statement             go to state 782
    variable_modifiers          go to state 783
    method_modifiers            go to state 784
    non_empty_member_modifiers  go to state 785
    member_modifier             go to state 786


State 836

  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type . backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 380 (backup_fn_flags)

    backup_fn_flags  go to state 872


State 837

  193 for_statement: ':' . inner_statement_list "endfor (T_ENDFOR)" ';'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 873


State 838

  192 for_statement: statement .

    $default  reduce using rule 192 (for_statement)


State 839

  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs ';' for_exprs ')' for_statement .

    $default  reduce using rule 136 (statement)


State 840

  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement .

    $default  reduce using rule 148 (statement)


State 841

  195 foreach_statement: ':' inner_statement_list "endforeach (T_ENDFOREACH)" . ';'

    ';'  shift, and go to state 874


State 842

  197 declare_statement: ':' inner_statement_list "enddeclare (T_ENDDECLARE)" ';' .

    $default  reduce using rule 197 (declare_statement)


State 843

  201 switch_case_list: ':' ';' case_list "endswitch (T_ENDSWITCH)" ';' .

    $default  reduce using rule 201 (switch_case_list)


State 844

  203 case_list: case_list "case (T_CASE)" expr case_separator . inner_statement_list

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 875


State 845

  123 inner_statement_list: inner_statement_list . inner_statement
  204 case_list: case_list "default (T_DEFAULT)" case_separator inner_statement_list .

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 204 (case_list)

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 846

  159 catch_name_list: catch_name_list '|' . name

    "identifier (T_STRING)"    shift, and go to state 114
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 876


State 847

  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" . ')' '{' inner_statement_list '}'

    ')'  shift, and go to state 877


State 848

  161 finally_statement: "finally (T_FINALLY)" '{' inner_statement_list '}' .

    $default  reduce using rule 161 (finally_statement)


State 849

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}' .

    $default  reduce using rule 104 (group_use_declaration)


State 850

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}' .

    $default  reduce using rule 173 (class_declaration_statement)


State 851

  253 trait_adaptations: ';' .

    $default  reduce using rule 253 (trait_adaptations)


State 852

  254 trait_adaptations: '{' . '}'
  255                  | '{' . trait_adaptation_list '}'

    "include (T_INCLUDE)"            shift, and go to state 430
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
    "eval (T_EVAL)"                  shift, and go to state 432
    "require (T_REQUIRE)"            shift, and go to state 433
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
    "or (T_LOGICAL_OR)"              shift, and go to state 435
    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
    "and (T_LOGICAL_AND)"            shift, and go to state 437
    "print (T_PRINT)"                shift, and go to state 438
    "yield (T_YIELD)"                shift, and go to state 439
    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
    "new (T_NEW)"                    shift, and go to state 441
    "clone (T_CLONE)"                shift, and go to state 442
    "elseif (T_ELSEIF)"              shift, and go to state 443
    "else (T_ELSE)"                  shift, and go to state 444
    "endif (T_ENDIF)"                shift, and go to state 445
    "static (T_STATIC)"              shift, and go to state 446
    "abstract (T_ABSTRACT)"          shift, and go to state 447
    "final (T_FINAL)"                shift, and go to state 448
    "private (T_PRIVATE)"            shift, and go to state 449
    "protected (T_PROTECTED)"        shift, and go to state 450
    "public (T_PUBLIC)"              shift, and go to state 451
    "identifier (T_STRING)"          shift, and go to state 878
    "exit (T_EXIT)"                  shift, and go to state 453
    "if (T_IF)"                      shift, and go to state 454
    "echo (T_ECHO)"                  shift, and go to state 455
    "do (T_DO)"                      shift, and go to state 456
    "while (T_WHILE)"                shift, and go to state 457
    "endwhile (T_ENDWHILE)"          shift, and go to state 458
    "for (T_FOR)"                    shift, and go to state 459
    "endfor (T_ENDFOR)"              shift, and go to state 460
    "foreach (T_FOREACH)"            shift, and go to state 461
    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
    "declare (T_DECLARE)"            shift, and go to state 463
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
    "as (T_AS)"                      shift, and go to state 465
    "switch (T_SWITCH)"              shift, and go to state 466
    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
    "case (T_CASE)"                  shift, and go to state 468
    "default (T_DEFAULT)"            shift, and go to state 469
    "break (T_BREAK)"                shift, and go to state 470
    "continue (T_CONTINUE)"          shift, and go to state 471
    "goto (T_GOTO)"                  shift, and go to state 472
    "function (T_FUNCTION)"          shift, and go to state 473
    "const (T_CONST)"                shift, and go to state 474
    "return (T_RETURN)"              shift, and go to state 475
    "try (T_TRY)"                    shift, and go to state 476
    "catch (T_CATCH)"                shift, and go to state 477
    "finally (T_FINALLY)"            shift, and go to state 478
    "throw (T_THROW)"                shift, and go to state 479
    "use (T_USE)"                    shift, and go to state 480
    "insteadof (T_INSTEADOF)"        shift, and go to state 481
    "global (T_GLOBAL)"              shift, and go to state 482
    "var (T_VAR)"                    shift, and go to state 483
    "unset (T_UNSET)"                shift, and go to state 484
    "isset (T_ISSET)"                shift, and go to state 485
    "empty (T_EMPTY)"                shift, and go to state 486
    "class (T_CLASS)"                shift, and go to state 487
    "trait (T_TRAIT)"                shift, and go to state 488
    "interface (T_INTERFACE)"        shift, and go to state 489
    "extends (T_EXTENDS)"            shift, and go to state 490
    "implements (T_IMPLEMENTS)"      shift, and go to state 491
    "list (T_LIST)"                  shift, and go to state 492
    "array (T_ARRAY)"                shift, and go to state 493
    "callable (T_CALLABLE)"          shift, and go to state 494
    "__LINE__ (T_LINE)"              shift, and go to state 495
    "__FILE__ (T_FILE)"              shift, and go to state 496
    "__DIR__ (T_DIR)"                shift, and go to state 497
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
    "namespace (T_NAMESPACE)"        shift, and go to state 879
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
    "\\ (T_NS_SEPARATOR)"            shift, and go to state 76
    '}'                              shift, and go to state 880

    reserved_non_modifiers           go to state 505
    semi_reserved                    go to state 506
    identifier                       go to state 881
    namespace_name                   go to state 83
    name                             go to state 882
    trait_adaptation_list            go to state 883
    trait_adaptation                 go to state 884
    trait_precedence                 go to state 885
    trait_alias                      go to state 886
    trait_method_reference           go to state 887
    absolute_trait_method_reference  go to state 888


State 853

  249 class_statement: "use (T_USE)" name_list trait_adaptations .

    $default  reduce using rule 249 (class_statement)


State 854

  285 property: "variable (T_VARIABLE)" '=' . expr backup_doc_comment

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 889
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 855

  284 property: "variable (T_VARIABLE)" backup_doc_comment .

    $default  reduce using rule 284 (property)


State 856

  282 property_list: property_list ',' . property

    "variable (T_VARIABLE)"  shift, and go to state 822

    property  go to state 890


State 857

  247 class_statement: variable_modifiers property_list ';' .

    $default  reduce using rule 247 (class_statement)


State 858

  288 class_const_decl: identifier . '=' expr backup_doc_comment

    '='  shift, and go to state 891


State 859

  248 class_statement: method_modifiers "const (T_CONST)" class_const_list . ';'
  286 class_const_list: class_const_list . ',' class_const_decl

    ','  shift, and go to state 892
    ';'  shift, and go to state 893


State 860

  287 class_const_list: class_const_decl .

    $default  reduce using rule 287 (class_const_list)


State 861

  250 class_statement: method_modifiers function returns_ref . identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

    "include (T_INCLUDE)"            shift, and go to state 430
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
    "eval (T_EVAL)"                  shift, and go to state 432
    "require (T_REQUIRE)"            shift, and go to state 433
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
    "or (T_LOGICAL_OR)"              shift, and go to state 435
    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
    "and (T_LOGICAL_AND)"            shift, and go to state 437
    "print (T_PRINT)"                shift, and go to state 438
    "yield (T_YIELD)"                shift, and go to state 439
    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
    "new (T_NEW)"                    shift, and go to state 441
    "clone (T_CLONE)"                shift, and go to state 442
    "elseif (T_ELSEIF)"              shift, and go to state 443
    "else (T_ELSE)"                  shift, and go to state 444
    "endif (T_ENDIF)"                shift, and go to state 445
    "static (T_STATIC)"              shift, and go to state 446
    "abstract (T_ABSTRACT)"          shift, and go to state 447
    "final (T_FINAL)"                shift, and go to state 448
    "private (T_PRIVATE)"            shift, and go to state 449
    "protected (T_PROTECTED)"        shift, and go to state 450
    "public (T_PUBLIC)"              shift, and go to state 451
    "identifier (T_STRING)"          shift, and go to state 452
    "exit (T_EXIT)"                  shift, and go to state 453
    "if (T_IF)"                      shift, and go to state 454
    "echo (T_ECHO)"                  shift, and go to state 455
    "do (T_DO)"                      shift, and go to state 456
    "while (T_WHILE)"                shift, and go to state 457
    "endwhile (T_ENDWHILE)"          shift, and go to state 458
    "for (T_FOR)"                    shift, and go to state 459
    "endfor (T_ENDFOR)"              shift, and go to state 460
    "foreach (T_FOREACH)"            shift, and go to state 461
    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
    "declare (T_DECLARE)"            shift, and go to state 463
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
    "as (T_AS)"                      shift, and go to state 465
    "switch (T_SWITCH)"              shift, and go to state 466
    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
    "case (T_CASE)"                  shift, and go to state 468
    "default (T_DEFAULT)"            shift, and go to state 469
    "break (T_BREAK)"                shift, and go to state 470
    "continue (T_CONTINUE)"          shift, and go to state 471
    "goto (T_GOTO)"                  shift, and go to state 472
    "function (T_FUNCTION)"          shift, and go to state 473
    "const (T_CONST)"                shift, and go to state 474
    "return (T_RETURN)"              shift, and go to state 475
    "try (T_TRY)"                    shift, and go to state 476
    "catch (T_CATCH)"                shift, and go to state 477
    "finally (T_FINALLY)"            shift, and go to state 478
    "throw (T_THROW)"                shift, and go to state 479
    "use (T_USE)"                    shift, and go to state 480
    "insteadof (T_INSTEADOF)"        shift, and go to state 481
    "global (T_GLOBAL)"              shift, and go to state 482
    "var (T_VAR)"                    shift, and go to state 483
    "unset (T_UNSET)"                shift, and go to state 484
    "isset (T_ISSET)"                shift, and go to state 485
    "empty (T_EMPTY)"                shift, and go to state 486
    "class (T_CLASS)"                shift, and go to state 487
    "trait (T_TRAIT)"                shift, and go to state 488
    "interface (T_INTERFACE)"        shift, and go to state 489
    "extends (T_EXTENDS)"            shift, and go to state 490
    "implements (T_IMPLEMENTS)"      shift, and go to state 491
    "list (T_LIST)"                  shift, and go to state 492
    "array (T_ARRAY)"                shift, and go to state 493
    "callable (T_CALLABLE)"          shift, and go to state 494
    "__LINE__ (T_LINE)"              shift, and go to state 495
    "__FILE__ (T_FILE)"              shift, and go to state 496
    "__DIR__ (T_DIR)"                shift, and go to state 497
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
    "namespace (T_NAMESPACE)"        shift, and go to state 502
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503

    reserved_non_modifiers  go to state 505
    semi_reserved           go to state 506
    identifier              go to state 894


State 862

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list . '}'
  245 class_statement_list: class_statement_list . class_statement

    "static (T_STATIC)"        shift, and go to state 773
    "abstract (T_ABSTRACT)"    shift, and go to state 774
    "final (T_FINAL)"          shift, and go to state 775
    "private (T_PRIVATE)"      shift, and go to state 776
    "protected (T_PROTECTED)"  shift, and go to state 777
    "public (T_PUBLIC)"        shift, and go to state 778
    "use (T_USE)"              shift, and go to state 779
    "var (T_VAR)"              shift, and go to state 780
    '}'                        shift, and go to state 895

    $default  reduce using rule 272 (method_modifiers)

    class_statement             go to state 782
    variable_modifiers          go to state 783
    method_modifiers            go to state 784
    non_empty_member_modifiers  go to state 785
    member_modifier             go to state 786


State 863

  231 return_type: ':' type_expr .

    $default  reduce using rule 231 (return_type)


State 864

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags . '{' inner_statement_list '}' backup_fn_flags

    '{'  shift, and go to state 896


State 865

  388 lexical_var: '&' . "variable (T_VARIABLE)"

    "variable (T_VARIABLE)"  shift, and go to state 897


State 866

  387 lexical_var: "variable (T_VARIABLE)" .

    $default  reduce using rule 387 (lexical_var)


State 867

  384 lexical_vars: "use (T_USE)" '(' lexical_var_list . ')'
  385 lexical_var_list: lexical_var_list . ',' lexical_var

    ','  shift, and go to state 898
    ')'  shift, and go to state 899


State 868

  386 lexical_var_list: lexical_var .

    $default  reduce using rule 386 (lexical_var_list)


State 869

  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags . '{' inner_statement_list '}' backup_fn_flags

    '{'  shift, and go to state 900


State 870

  222 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)" '=' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 901
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 871

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list '}' .

    $default  reduce using rule 298 (anonymous_class)


State 872

  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags . '{' inner_statement_list '}' backup_fn_flags

    '{'  shift, and go to state 902


State 873

  123 inner_statement_list: inner_statement_list . inner_statement
  193 for_statement: ':' inner_statement_list . "endfor (T_ENDFOR)" ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "endfor (T_ENDFOR)"                           shift, and go to state 903
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 874

  195 foreach_statement: ':' inner_statement_list "endforeach (T_ENDFOREACH)" ';' .

    $default  reduce using rule 195 (foreach_statement)


State 875

  123 inner_statement_list: inner_statement_list . inner_statement
  203 case_list: case_list "case (T_CASE)" expr case_separator inner_statement_list .

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 203 (case_list)

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 876

  159 catch_name_list: catch_name_list '|' name .

    $default  reduce using rule 159 (catch_name_list)


State 877

  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' . '{' inner_statement_list '}'

    '{'  shift, and go to state 904


State 878

   76 identifier: "identifier (T_STRING)" .
   80 namespace_name: "identifier (T_STRING)" .

    "as (T_AS)"  reduce using rule 76 (identifier)
    $default     reduce using rule 80 (namespace_name)


State 879

   57 reserved_non_modifiers: "namespace (T_NAMESPACE)" .
   83 name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name

    "\\ (T_NS_SEPARATOR)"  shift, and go to state 214

    $default  reduce using rule 57 (reserved_non_modifiers)


State 880

  254 trait_adaptations: '{' '}' .

    $default  reduce using rule 254 (trait_adaptations)


State 881

  265 trait_method_reference: identifier .

    $default  reduce using rule 265 (trait_method_reference)


State 882

  267 absolute_trait_method_reference: name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier

    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 905


State 883

  255 trait_adaptations: '{' trait_adaptation_list . '}'
  257 trait_adaptation_list: trait_adaptation_list . trait_adaptation

    "include (T_INCLUDE)"            shift, and go to state 430
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
    "eval (T_EVAL)"                  shift, and go to state 432
    "require (T_REQUIRE)"            shift, and go to state 433
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
    "or (T_LOGICAL_OR)"              shift, and go to state 435
    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
    "and (T_LOGICAL_AND)"            shift, and go to state 437
    "print (T_PRINT)"                shift, and go to state 438
    "yield (T_YIELD)"                shift, and go to state 439
    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
    "new (T_NEW)"                    shift, and go to state 441
    "clone (T_CLONE)"                shift, and go to state 442
    "elseif (T_ELSEIF)"              shift, and go to state 443
    "else (T_ELSE)"                  shift, and go to state 444
    "endif (T_ENDIF)"                shift, and go to state 445
    "static (T_STATIC)"              shift, and go to state 446
    "abstract (T_ABSTRACT)"          shift, and go to state 447
    "final (T_FINAL)"                shift, and go to state 448
    "private (T_PRIVATE)"            shift, and go to state 449
    "protected (T_PROTECTED)"        shift, and go to state 450
    "public (T_PUBLIC)"              shift, and go to state 451
    "identifier (T_STRING)"          shift, and go to state 878
    "exit (T_EXIT)"                  shift, and go to state 453
    "if (T_IF)"                      shift, and go to state 454
    "echo (T_ECHO)"                  shift, and go to state 455
    "do (T_DO)"                      shift, and go to state 456
    "while (T_WHILE)"                shift, and go to state 457
    "endwhile (T_ENDWHILE)"          shift, and go to state 458
    "for (T_FOR)"                    shift, and go to state 459
    "endfor (T_ENDFOR)"              shift, and go to state 460
    "foreach (T_FOREACH)"            shift, and go to state 461
    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
    "declare (T_DECLARE)"            shift, and go to state 463
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
    "as (T_AS)"                      shift, and go to state 465
    "switch (T_SWITCH)"              shift, and go to state 466
    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
    "case (T_CASE)"                  shift, and go to state 468
    "default (T_DEFAULT)"            shift, and go to state 469
    "break (T_BREAK)"                shift, and go to state 470
    "continue (T_CONTINUE)"          shift, and go to state 471
    "goto (T_GOTO)"                  shift, and go to state 472
    "function (T_FUNCTION)"          shift, and go to state 473
    "const (T_CONST)"                shift, and go to state 474
    "return (T_RETURN)"              shift, and go to state 475
    "try (T_TRY)"                    shift, and go to state 476
    "catch (T_CATCH)"                shift, and go to state 477
    "finally (T_FINALLY)"            shift, and go to state 478
    "throw (T_THROW)"                shift, and go to state 479
    "use (T_USE)"                    shift, and go to state 480
    "insteadof (T_INSTEADOF)"        shift, and go to state 481
    "global (T_GLOBAL)"              shift, and go to state 482
    "var (T_VAR)"                    shift, and go to state 483
    "unset (T_UNSET)"                shift, and go to state 484
    "isset (T_ISSET)"                shift, and go to state 485
    "empty (T_EMPTY)"                shift, and go to state 486
    "class (T_CLASS)"                shift, and go to state 487
    "trait (T_TRAIT)"                shift, and go to state 488
    "interface (T_INTERFACE)"        shift, and go to state 489
    "extends (T_EXTENDS)"            shift, and go to state 490
    "implements (T_IMPLEMENTS)"      shift, and go to state 491
    "list (T_LIST)"                  shift, and go to state 492
    "array (T_ARRAY)"                shift, and go to state 493
    "callable (T_CALLABLE)"          shift, and go to state 494
    "__LINE__ (T_LINE)"              shift, and go to state 495
    "__FILE__ (T_FILE)"              shift, and go to state 496
    "__DIR__ (T_DIR)"                shift, and go to state 497
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
    "namespace (T_NAMESPACE)"        shift, and go to state 879
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
    "\\ (T_NS_SEPARATOR)"            shift, and go to state 76
    '}'                              shift, and go to state 906

    reserved_non_modifiers           go to state 505
    semi_reserved                    go to state 506
    identifier                       go to state 881
    namespace_name                   go to state 83
    name                             go to state 882
    trait_adaptation                 go to state 907
    trait_precedence                 go to state 885
    trait_alias                      go to state 886
    trait_method_reference           go to state 887
    absolute_trait_method_reference  go to state 888


State 884

  256 trait_adaptation_list: trait_adaptation .

    $default  reduce using rule 256 (trait_adaptation_list)


State 885

  258 trait_adaptation: trait_precedence . ';'

    ';'  shift, and go to state 908


State 886

  259 trait_adaptation: trait_alias . ';'

    ';'  shift, and go to state 909


State 887

  261 trait_alias: trait_method_reference . "as (T_AS)" "identifier (T_STRING)"
  262            | trait_method_reference . "as (T_AS)" reserved_non_modifiers
  263            | trait_method_reference . "as (T_AS)" member_modifier identifier
  264            | trait_method_reference . "as (T_AS)" member_modifier

    "as (T_AS)"  shift, and go to state 910


State 888

  260 trait_precedence: absolute_trait_method_reference . "insteadof (T_INSTEADOF)" name_list
  266 trait_method_reference: absolute_trait_method_reference .

    "insteadof (T_INSTEADOF)"  shift, and go to state 911

    $default  reduce using rule 266 (trait_method_reference)


State 889

  285 property: "variable (T_VARIABLE)" '=' expr . backup_doc_comment
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 912


State 890

  282 property_list: property_list ',' property .

    $default  reduce using rule 282 (property_list)


State 891

  288 class_const_decl: identifier '=' . expr backup_doc_comment

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 113
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 114
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr                        go to state 913
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    variable_class_name         go to state 105
    dereferencable              go to state 106
    callable_expr               go to state 107
    callable_variable           go to state 108
    variable                    go to state 109
    simple_variable             go to state 110
    static_member               go to state 111
    internal_functions_in_yacc  go to state 112


State 892

  286 class_const_list: class_const_list ',' . class_const_decl

    "include (T_INCLUDE)"            shift, and go to state 430
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
    "eval (T_EVAL)"                  shift, and go to state 432
    "require (T_REQUIRE)"            shift, and go to state 433
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
    "or (T_LOGICAL_OR)"              shift, and go to state 435
    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
    "and (T_LOGICAL_AND)"            shift, and go to state 437
    "print (T_PRINT)"                shift, and go to state 438
    "yield (T_YIELD)"                shift, and go to state 439
    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
    "new (T_NEW)"                    shift, and go to state 441
    "clone (T_CLONE)"                shift, and go to state 442
    "elseif (T_ELSEIF)"              shift, and go to state 443
    "else (T_ELSE)"                  shift, and go to state 444
    "endif (T_ENDIF)"                shift, and go to state 445
    "static (T_STATIC)"              shift, and go to state 446
    "abstract (T_ABSTRACT)"          shift, and go to state 447
    "final (T_FINAL)"                shift, and go to state 448
    "private (T_PRIVATE)"            shift, and go to state 449
    "protected (T_PROTECTED)"        shift, and go to state 450
    "public (T_PUBLIC)"              shift, and go to state 451
    "identifier (T_STRING)"          shift, and go to state 452
    "exit (T_EXIT)"                  shift, and go to state 453
    "if (T_IF)"                      shift, and go to state 454
    "echo (T_ECHO)"                  shift, and go to state 455
    "do (T_DO)"                      shift, and go to state 456
    "while (T_WHILE)"                shift, and go to state 457
    "endwhile (T_ENDWHILE)"          shift, and go to state 458
    "for (T_FOR)"                    shift, and go to state 459
    "endfor (T_ENDFOR)"              shift, and go to state 460
    "foreach (T_FOREACH)"            shift, and go to state 461
    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
    "declare (T_DECLARE)"            shift, and go to state 463
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
    "as (T_AS)"                      shift, and go to state 465
    "switch (T_SWITCH)"              shift, and go to state 466
    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
    "case (T_CASE)"                  shift, and go to state 468
    "default (T_DEFAULT)"            shift, and go to state 469
    "break (T_BREAK)"                shift, and go to state 470
    "continue (T_CONTINUE)"          shift, and go to state 471
    "goto (T_GOTO)"                  shift, and go to state 472
    "function (T_FUNCTION)"          shift, and go to state 473
    "const (T_CONST)"                shift, and go to state 474
    "return (T_RETURN)"              shift, and go to state 475
    "try (T_TRY)"                    shift, and go to state 476
    "catch (T_CATCH)"                shift, and go to state 477
    "finally (T_FINALLY)"            shift, and go to state 478
    "throw (T_THROW)"                shift, and go to state 479
    "use (T_USE)"                    shift, and go to state 480
    "insteadof (T_INSTEADOF)"        shift, and go to state 481
    "global (T_GLOBAL)"              shift, and go to state 482
    "var (T_VAR)"                    shift, and go to state 483
    "unset (T_UNSET)"                shift, and go to state 484
    "isset (T_ISSET)"                shift, and go to state 485
    "empty (T_EMPTY)"                shift, and go to state 486
    "class (T_CLASS)"                shift, and go to state 487
    "trait (T_TRAIT)"                shift, and go to state 488
    "interface (T_INTERFACE)"        shift, and go to state 489
    "extends (T_EXTENDS)"            shift, and go to state 490
    "implements (T_IMPLEMENTS)"      shift, and go to state 491
    "list (T_LIST)"                  shift, and go to state 492
    "array (T_ARRAY)"                shift, and go to state 493
    "callable (T_CALLABLE)"          shift, and go to state 494
    "__LINE__ (T_LINE)"              shift, and go to state 495
    "__FILE__ (T_FILE)"              shift, and go to state 496
    "__DIR__ (T_DIR)"                shift, and go to state 497
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
    "namespace (T_NAMESPACE)"        shift, and go to state 502
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503

    reserved_non_modifiers  go to state 505
    semi_reserved           go to state 506
    identifier              go to state 858
    class_const_decl        go to state 914


State 893

  248 class_statement: method_modifiers "const (T_CONST)" class_const_list ';' .

    $default  reduce using rule 248 (class_statement)


State 894

  250 class_statement: method_modifiers function returns_ref identifier . backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 915


State 895

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}' .

    $default  reduce using rule 171 (class_declaration_statement)


State 896

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' . inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 916


State 897

  388 lexical_var: '&' "variable (T_VARIABLE)" .

    $default  reduce using rule 388 (lexical_var)


State 898

  385 lexical_var_list: lexical_var_list ',' . lexical_var

    '&'                      shift, and go to state 865
    "variable (T_VARIABLE)"  shift, and go to state 866

    lexical_var  go to state 917


State 899

  384 lexical_vars: "use (T_USE)" '(' lexical_var_list ')' .

    $default  reduce using rule 384 (lexical_vars)


State 900

  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' . inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 918


State 901

  222 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)" '=' expr .
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 222 (parameter)


State 902

  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' . inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 919


State 903

  193 for_statement: ':' inner_statement_list "endfor (T_ENDFOR)" . ';'

    ';'  shift, and go to state 920


State 904

  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' . inner_statement_list '}'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 921


State 905

  267 absolute_trait_method_reference: name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier

    "include (T_INCLUDE)"            shift, and go to state 430
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
    "eval (T_EVAL)"                  shift, and go to state 432
    "require (T_REQUIRE)"            shift, and go to state 433
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
    "or (T_LOGICAL_OR)"              shift, and go to state 435
    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
    "and (T_LOGICAL_AND)"            shift, and go to state 437
    "print (T_PRINT)"                shift, and go to state 438
    "yield (T_YIELD)"                shift, and go to state 439
    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
    "new (T_NEW)"                    shift, and go to state 441
    "clone (T_CLONE)"                shift, and go to state 442
    "elseif (T_ELSEIF)"              shift, and go to state 443
    "else (T_ELSE)"                  shift, and go to state 444
    "endif (T_ENDIF)"                shift, and go to state 445
    "static (T_STATIC)"              shift, and go to state 446
    "abstract (T_ABSTRACT)"          shift, and go to state 447
    "final (T_FINAL)"                shift, and go to state 448
    "private (T_PRIVATE)"            shift, and go to state 449
    "protected (T_PROTECTED)"        shift, and go to state 450
    "public (T_PUBLIC)"              shift, and go to state 451
    "identifier (T_STRING)"          shift, and go to state 452
    "exit (T_EXIT)"                  shift, and go to state 453
    "if (T_IF)"                      shift, and go to state 454
    "echo (T_ECHO)"                  shift, and go to state 455
    "do (T_DO)"                      shift, and go to state 456
    "while (T_WHILE)"                shift, and go to state 457
    "endwhile (T_ENDWHILE)"          shift, and go to state 458
    "for (T_FOR)"                    shift, and go to state 459
    "endfor (T_ENDFOR)"              shift, and go to state 460
    "foreach (T_FOREACH)"            shift, and go to state 461
    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
    "declare (T_DECLARE)"            shift, and go to state 463
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
    "as (T_AS)"                      shift, and go to state 465
    "switch (T_SWITCH)"              shift, and go to state 466
    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
    "case (T_CASE)"                  shift, and go to state 468
    "default (T_DEFAULT)"            shift, and go to state 469
    "break (T_BREAK)"                shift, and go to state 470
    "continue (T_CONTINUE)"          shift, and go to state 471
    "goto (T_GOTO)"                  shift, and go to state 472
    "function (T_FUNCTION)"          shift, and go to state 473
    "const (T_CONST)"                shift, and go to state 474
    "return (T_RETURN)"              shift, and go to state 475
    "try (T_TRY)"                    shift, and go to state 476
    "catch (T_CATCH)"                shift, and go to state 477
    "finally (T_FINALLY)"            shift, and go to state 478
    "throw (T_THROW)"                shift, and go to state 479
    "use (T_USE)"                    shift, and go to state 480
    "insteadof (T_INSTEADOF)"        shift, and go to state 481
    "global (T_GLOBAL)"              shift, and go to state 482
    "var (T_VAR)"                    shift, and go to state 483
    "unset (T_UNSET)"                shift, and go to state 484
    "isset (T_ISSET)"                shift, and go to state 485
    "empty (T_EMPTY)"                shift, and go to state 486
    "class (T_CLASS)"                shift, and go to state 487
    "trait (T_TRAIT)"                shift, and go to state 488
    "interface (T_INTERFACE)"        shift, and go to state 489
    "extends (T_EXTENDS)"            shift, and go to state 490
    "implements (T_IMPLEMENTS)"      shift, and go to state 491
    "list (T_LIST)"                  shift, and go to state 492
    "array (T_ARRAY)"                shift, and go to state 493
    "callable (T_CALLABLE)"          shift, and go to state 494
    "__LINE__ (T_LINE)"              shift, and go to state 495
    "__FILE__ (T_FILE)"              shift, and go to state 496
    "__DIR__ (T_DIR)"                shift, and go to state 497
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
    "namespace (T_NAMESPACE)"        shift, and go to state 502
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503

    reserved_non_modifiers  go to state 505
    semi_reserved           go to state 506
    identifier              go to state 922


State 906

  255 trait_adaptations: '{' trait_adaptation_list '}' .

    $default  reduce using rule 255 (trait_adaptations)


State 907

  257 trait_adaptation_list: trait_adaptation_list trait_adaptation .

    $default  reduce using rule 257 (trait_adaptation_list)


State 908

  258 trait_adaptation: trait_precedence ';' .

    $default  reduce using rule 258 (trait_adaptation)


State 909

  259 trait_adaptation: trait_alias ';' .

    $default  reduce using rule 259 (trait_adaptation)


State 910

  261 trait_alias: trait_method_reference "as (T_AS)" . "identifier (T_STRING)"
  262            | trait_method_reference "as (T_AS)" . reserved_non_modifiers
  263            | trait_method_reference "as (T_AS)" . member_modifier identifier
  264            | trait_method_reference "as (T_AS)" . member_modifier

    "include (T_INCLUDE)"            shift, and go to state 430
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
    "eval (T_EVAL)"                  shift, and go to state 432
    "require (T_REQUIRE)"            shift, and go to state 433
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
    "or (T_LOGICAL_OR)"              shift, and go to state 435
    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
    "and (T_LOGICAL_AND)"            shift, and go to state 437
    "print (T_PRINT)"                shift, and go to state 438
    "yield (T_YIELD)"                shift, and go to state 439
    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
    "new (T_NEW)"                    shift, and go to state 441
    "clone (T_CLONE)"                shift, and go to state 442
    "elseif (T_ELSEIF)"              shift, and go to state 443
    "else (T_ELSE)"                  shift, and go to state 444
    "endif (T_ENDIF)"                shift, and go to state 445
    "static (T_STATIC)"              shift, and go to state 773
    "abstract (T_ABSTRACT)"          shift, and go to state 774
    "final (T_FINAL)"                shift, and go to state 775
    "private (T_PRIVATE)"            shift, and go to state 776
    "protected (T_PROTECTED)"        shift, and go to state 777
    "public (T_PUBLIC)"              shift, and go to state 778
    "identifier (T_STRING)"          shift, and go to state 923
    "exit (T_EXIT)"                  shift, and go to state 453
    "if (T_IF)"                      shift, and go to state 454
    "echo (T_ECHO)"                  shift, and go to state 455
    "do (T_DO)"                      shift, and go to state 456
    "while (T_WHILE)"                shift, and go to state 457
    "endwhile (T_ENDWHILE)"          shift, and go to state 458
    "for (T_FOR)"                    shift, and go to state 459
    "endfor (T_ENDFOR)"              shift, and go to state 460
    "foreach (T_FOREACH)"            shift, and go to state 461
    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
    "declare (T_DECLARE)"            shift, and go to state 463
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
    "as (T_AS)"                      shift, and go to state 465
    "switch (T_SWITCH)"              shift, and go to state 466
    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
    "case (T_CASE)"                  shift, and go to state 468
    "default (T_DEFAULT)"            shift, and go to state 469
    "break (T_BREAK)"                shift, and go to state 470
    "continue (T_CONTINUE)"          shift, and go to state 471
    "goto (T_GOTO)"                  shift, and go to state 472
    "function (T_FUNCTION)"          shift, and go to state 473
    "const (T_CONST)"                shift, and go to state 474
    "return (T_RETURN)"              shift, and go to state 475
    "try (T_TRY)"                    shift, and go to state 476
    "catch (T_CATCH)"                shift, and go to state 477
    "finally (T_FINALLY)"            shift, and go to state 478
    "throw (T_THROW)"                shift, and go to state 479
    "use (T_USE)"                    shift, and go to state 480
    "insteadof (T_INSTEADOF)"        shift, and go to state 481
    "global (T_GLOBAL)"              shift, and go to state 482
    "var (T_VAR)"                    shift, and go to state 483
    "unset (T_UNSET)"                shift, and go to state 484
    "isset (T_ISSET)"                shift, and go to state 485
    "empty (T_EMPTY)"                shift, and go to state 486
    "class (T_CLASS)"                shift, and go to state 487
    "trait (T_TRAIT)"                shift, and go to state 488
    "interface (T_INTERFACE)"        shift, and go to state 489
    "extends (T_EXTENDS)"            shift, and go to state 490
    "implements (T_IMPLEMENTS)"      shift, and go to state 491
    "list (T_LIST)"                  shift, and go to state 492
    "array (T_ARRAY)"                shift, and go to state 493
    "callable (T_CALLABLE)"          shift, and go to state 494
    "__LINE__ (T_LINE)"              shift, and go to state 495
    "__FILE__ (T_FILE)"              shift, and go to state 496
    "__DIR__ (T_DIR)"                shift, and go to state 497
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
    "namespace (T_NAMESPACE)"        shift, and go to state 502
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503

    reserved_non_modifiers  go to state 924
    member_modifier         go to state 925


State 911

  260 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" . name_list

    "identifier (T_STRING)"    shift, and go to state 114
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 666
    name_list       go to state 926


State 912

  285 property: "variable (T_VARIABLE)" '=' expr backup_doc_comment .

    $default  reduce using rule 285 (property)


State 913

  288 class_const_decl: identifier '=' expr . backup_doc_comment
  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
  324     | expr . "&& (T_BOOLEAN_AND)" expr
  325     | expr . "or (T_LOGICAL_OR)" expr
  326     | expr . "and (T_LOGICAL_AND)" expr
  327     | expr . "xor (T_LOGICAL_XOR)" expr
  328     | expr . '|' expr
  329     | expr . '&' expr
  330     | expr . '^' expr
  331     | expr . '.' expr
  332     | expr . '+' expr
  333     | expr . '-' expr
  334     | expr . '*' expr
  335     | expr . "** (T_POW)" expr
  336     | expr . '/' expr
  337     | expr . '%' expr
  338     | expr . "<< (T_SL)" expr
  339     | expr . ">> (T_SR)" expr
  344     | expr . "=== (T_IS_IDENTICAL)" expr
  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  346     | expr . "== (T_IS_EQUAL)" expr
  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
  348     | expr . '<' expr
  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  350     | expr . '>' expr
  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  352     | expr . "<=> (T_SPACESHIP)" expr
  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  356     | expr . '?' expr ':' expr
  357     | expr . '?' ':' expr
  358     | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 237
    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
    "and (T_LOGICAL_AND)"         shift, and go to state 239
    '?'                           shift, and go to state 240
    "?? (T_COALESCE)"             shift, and go to state 241
    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
    '|'                           shift, and go to state 244
    '^'                           shift, and go to state 245
    '&'                           shift, and go to state 246
    "== (T_IS_EQUAL)"             shift, and go to state 247
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
    "<=> (T_SPACESHIP)"           shift, and go to state 251
    '<'                           shift, and go to state 252
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
    '>'                           shift, and go to state 254
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
    "<< (T_SL)"                   shift, and go to state 256
    ">> (T_SR)"                   shift, and go to state 257
    '+'                           shift, and go to state 258
    '-'                           shift, and go to state 259
    '.'                           shift, and go to state 260
    '*'                           shift, and go to state 261
    '/'                           shift, and go to state 262
    '%'                           shift, and go to state 263
    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
    "** (T_POW)"                  shift, and go to state 265

    $default  reduce using rule 379 (backup_doc_comment)

    backup_doc_comment  go to state 927


State 914

  286 class_const_list: class_const_list ',' class_const_decl .

    $default  reduce using rule 286 (class_const_list)


State 915

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment . '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

    '('  shift, and go to state 928


State 916

  123 inner_statement_list: inner_statement_list . inner_statement
  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list . '}' backup_fn_flags

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 929
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 917

  385 lexical_var_list: lexical_var_list ',' lexical_var .

    $default  reduce using rule 385 (lexical_var_list)


State 918

  123 inner_statement_list: inner_statement_list . inner_statement
  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list . '}' backup_fn_flags

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 930
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 919

  123 inner_statement_list: inner_statement_list . inner_statement
  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list . '}' backup_fn_flags

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 931
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 920

  193 for_statement: ':' inner_statement_list "endfor (T_ENDFOR)" ';' .

    $default  reduce using rule 193 (for_statement)


State 921

  123 inner_statement_list: inner_statement_list . inner_statement
  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 932
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 922

  267 absolute_trait_method_reference: name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .

    $default  reduce using rule 267 (absolute_trait_method_reference)


State 923

  261 trait_alias: trait_method_reference "as (T_AS)" "identifier (T_STRING)" .

    $default  reduce using rule 261 (trait_alias)


State 924

  262 trait_alias: trait_method_reference "as (T_AS)" reserved_non_modifiers .

    $default  reduce using rule 262 (trait_alias)


State 925

  263 trait_alias: trait_method_reference "as (T_AS)" member_modifier . identifier
  264            | trait_method_reference "as (T_AS)" member_modifier .

    "include (T_INCLUDE)"            shift, and go to state 430
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
    "eval (T_EVAL)"                  shift, and go to state 432
    "require (T_REQUIRE)"            shift, and go to state 433
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
    "or (T_LOGICAL_OR)"              shift, and go to state 435
    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
    "and (T_LOGICAL_AND)"            shift, and go to state 437
    "print (T_PRINT)"                shift, and go to state 438
    "yield (T_YIELD)"                shift, and go to state 439
    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
    "new (T_NEW)"                    shift, and go to state 441
    "clone (T_CLONE)"                shift, and go to state 442
    "elseif (T_ELSEIF)"              shift, and go to state 443
    "else (T_ELSE)"                  shift, and go to state 444
    "endif (T_ENDIF)"                shift, and go to state 445
    "static (T_STATIC)"              shift, and go to state 446
    "abstract (T_ABSTRACT)"          shift, and go to state 447
    "final (T_FINAL)"                shift, and go to state 448
    "private (T_PRIVATE)"            shift, and go to state 449
    "protected (T_PROTECTED)"        shift, and go to state 450
    "public (T_PUBLIC)"              shift, and go to state 451
    "identifier (T_STRING)"          shift, and go to state 452
    "exit (T_EXIT)"                  shift, and go to state 453
    "if (T_IF)"                      shift, and go to state 454
    "echo (T_ECHO)"                  shift, and go to state 455
    "do (T_DO)"                      shift, and go to state 456
    "while (T_WHILE)"                shift, and go to state 457
    "endwhile (T_ENDWHILE)"          shift, and go to state 458
    "for (T_FOR)"                    shift, and go to state 459
    "endfor (T_ENDFOR)"              shift, and go to state 460
    "foreach (T_FOREACH)"            shift, and go to state 461
    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
    "declare (T_DECLARE)"            shift, and go to state 463
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
    "as (T_AS)"                      shift, and go to state 465
    "switch (T_SWITCH)"              shift, and go to state 466
    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
    "case (T_CASE)"                  shift, and go to state 468
    "default (T_DEFAULT)"            shift, and go to state 469
    "break (T_BREAK)"                shift, and go to state 470
    "continue (T_CONTINUE)"          shift, and go to state 471
    "goto (T_GOTO)"                  shift, and go to state 472
    "function (T_FUNCTION)"          shift, and go to state 473
    "const (T_CONST)"                shift, and go to state 474
    "return (T_RETURN)"              shift, and go to state 475
    "try (T_TRY)"                    shift, and go to state 476
    "catch (T_CATCH)"                shift, and go to state 477
    "finally (T_FINALLY)"            shift, and go to state 478
    "throw (T_THROW)"                shift, and go to state 479
    "use (T_USE)"                    shift, and go to state 480
    "insteadof (T_INSTEADOF)"        shift, and go to state 481
    "global (T_GLOBAL)"              shift, and go to state 482
    "var (T_VAR)"                    shift, and go to state 483
    "unset (T_UNSET)"                shift, and go to state 484
    "isset (T_ISSET)"                shift, and go to state 485
    "empty (T_EMPTY)"                shift, and go to state 486
    "class (T_CLASS)"                shift, and go to state 487
    "trait (T_TRAIT)"                shift, and go to state 488
    "interface (T_INTERFACE)"        shift, and go to state 489
    "extends (T_EXTENDS)"            shift, and go to state 490
    "implements (T_IMPLEMENTS)"      shift, and go to state 491
    "list (T_LIST)"                  shift, and go to state 492
    "array (T_ARRAY)"                shift, and go to state 493
    "callable (T_CALLABLE)"          shift, and go to state 494
    "__LINE__ (T_LINE)"              shift, and go to state 495
    "__FILE__ (T_FILE)"              shift, and go to state 496
    "__DIR__ (T_DIR)"                shift, and go to state 497
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
    "namespace (T_NAMESPACE)"        shift, and go to state 502
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503

    $default  reduce using rule 264 (trait_alias)

    reserved_non_modifiers  go to state 505
    semi_reserved           go to state 506
    identifier              go to state 933


State 926

  252 name_list: name_list . ',' name
  260 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" name_list .

    ','  shift, and go to state 729

    $default  reduce using rule 260 (trait_precedence)


State 927

  288 class_const_decl: identifier '=' expr backup_doc_comment .

    $default  reduce using rule 288 (class_const_decl)


State 928

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' . parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

    '?'                        shift, and go to state 684
    "identifier (T_STRING)"    shift, and go to state 114
    "array (T_ARRAY)"          shift, and go to state 685
    "callable (T_CALLABLE)"    shift, and go to state 686
    "namespace (T_NAMESPACE)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    ')'       reduce using rule 218 (parameter_list)
    $default  reduce using rule 223 (optional_type)

    namespace_name            go to state 83
    name                      go to state 687
    parameter_list            go to state 934
    non_empty_parameter_list  go to state 689
    parameter                 go to state 690
    optional_type             go to state 691
    type_expr                 go to state 692
    type                      go to state 693


State 929

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' . backup_fn_flags

    $default  reduce using rule 380 (backup_fn_flags)

    backup_fn_flags  go to state 935


State 930

  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' . backup_fn_flags

    $default  reduce using rule 380 (backup_fn_flags)

    backup_fn_flags  go to state 936


State 931

  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' . backup_fn_flags

    $default  reduce using rule 380 (backup_fn_flags)

    backup_fn_flags  go to state 937


State 932

  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}' .

    $default  reduce using rule 157 (catch_list)


State 933

  263 trait_alias: trait_method_reference "as (T_AS)" member_modifier identifier .

    $default  reduce using rule 263 (trait_alias)


State 934

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list . ')' return_type backup_fn_flags method_body backup_fn_flags

    ')'  shift, and go to state 938


State 935

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags .

    $default  reduce using rule 165 (function_declaration_statement)


State 936

  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags .

    $default  reduce using rule 376 (expr)


State 937

  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags .

    $default  reduce using rule 377 (expr)


State 938

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' . return_type backup_fn_flags method_body backup_fn_flags

    ':'  shift, and go to state 830

    $default  reduce using rule 230 (return_type)

    return_type  go to state 939


State 939

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type . backup_fn_flags method_body backup_fn_flags

    $default  reduce using rule 380 (backup_fn_flags)

    backup_fn_flags  go to state 940


State 940

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags . method_body backup_fn_flags

    ';'  shift, and go to state 941
    '{'  shift, and go to state 942

    method_body  go to state 943


State 941

  268 method_body: ';' .

    $default  reduce using rule 268 (method_body)


State 942

  269 method_body: '{' . inner_statement_list '}'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 944


State 943

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body . backup_fn_flags

    $default  reduce using rule 380 (backup_fn_flags)

    backup_fn_flags  go to state 945


State 944

  123 inner_statement_list: inner_statement_list . inner_statement
  269 method_body: '{' inner_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 115
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 946
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 377
    statement                        go to state 378
    function_declaration_statement   go to state 379
    class_declaration_statement      go to state 380
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr                             go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    variable_class_name              go to state 105
    dereferencable                   go to state 106
    callable_expr                    go to state 107
    callable_variable                go to state 108
    variable                         go to state 109
    simple_variable                  go to state 110
    static_member                    go to state 111
    internal_functions_in_yacc       go to state 112


State 945

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags .

    $default  reduce using rule 250 (class_statement)


State 946

  269 method_body: '{' inner_statement_list '}' .

    $default  reduce using rule 269 (method_body)