📄 Viewing: zend_language_parser.output

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)"
   "invalid character (T_BAD_CHARACTER)"
   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                       | "fn (T_FN)"

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

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

   79 top_statement_list: top_statement_list top_statement
   80                   | %empty

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

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

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

   93 $@1: %empty

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

   95 $@2: %empty

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

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

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

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

  108 possible_comma: %empty
  109               | ','

  110 inline_use_declarations: inline_use_declarations ',' inline_use_declaration
  111                        | inline_use_declaration

  112 unprefixed_use_declarations: unprefixed_use_declarations ',' unprefixed_use_declaration
  113                            | unprefixed_use_declaration

  114 use_declarations: use_declarations ',' use_declaration
  115                 | use_declaration

  116 inline_use_declaration: unprefixed_use_declaration
  117                       | use_type unprefixed_use_declaration

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

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

  122 const_list: const_list ',' const_decl
  123           | const_decl

  124 inner_statement_list: inner_statement_list inner_statement
  125                     | %empty

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

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

  150 $@3: %empty

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

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

  159 catch_name_list: name
  160                | catch_name_list '|' name

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

  163 unset_variables: unset_variable
  164                | unset_variables ',' unset_variable

  165 unset_variable: variable

  166 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

  167 is_reference: %empty
  168             | '&'

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

  171 @4: %empty

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

  173 @5: %empty

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

  175 class_modifiers: class_modifier
  176                | class_modifiers class_modifier

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

  179 @6: %empty

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

  181 @7: %empty

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

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

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

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

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

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

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

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

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

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

  206 case_separator: ':'
  207               | ';'

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

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

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

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

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

  218 parameter_list: non_empty_parameter_list
  219               | %empty

  220 non_empty_parameter_list: parameter
  221                         | non_empty_parameter_list ',' parameter

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

  224 optional_type: %empty
  225              | type_expr

  226 type_expr: type
  227          | '?' type

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

  231 return_type: %empty
  232            | ':' type_expr

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

  235 non_empty_argument_list: argument
  236                        | non_empty_argument_list ',' argument

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

  239 global_var_list: global_var_list ',' global_var
  240                | global_var

  241 global_var: simple_variable

  242 static_var_list: static_var_list ',' static_var
  243                | static_var

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

  246 class_statement_list: class_statement_list class_statement
  247                     | %empty

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

  252 name_list: name
  253          | name_list ',' name

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

  257 trait_adaptation_list: trait_adaptation
  258                      | trait_adaptation_list trait_adaptation

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

  261 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" name_list

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

  266 trait_method_reference: identifier
  267                       | absolute_trait_method_reference

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

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

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

  273 method_modifiers: %empty
  274                 | non_empty_member_modifiers

  275 non_empty_member_modifiers: member_modifier
  276                           | non_empty_member_modifiers member_modifier

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

  283 property_list: property_list ',' property
  284              | property

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

  287 class_const_list: class_const_list ',' class_const_decl
  288                 | class_const_decl

  289 class_const_decl: identifier '=' expr backup_doc_comment

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

  291 echo_expr_list: echo_expr_list ',' echo_expr
  292               | echo_expr

  293 echo_expr: expr

  294 for_exprs: %empty
  295          | non_empty_for_exprs

  296 non_empty_for_exprs: non_empty_for_exprs ',' expr
  297                    | expr

  298 @8: %empty

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

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

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

  380 inline_function: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
  381                | fn returns_ref '(' parameter_list ')' return_type backup_doc_comment "=> (T_DOUBLE_ARROW)" backup_fn_flags backup_lex_pos expr backup_fn_flags

  382 fn: "fn (T_FN)"

  383 function: "function (T_FUNCTION)"

  384 backup_doc_comment: %empty

  385 backup_fn_flags: %empty

  386 backup_lex_pos: %empty

  387 returns_ref: %empty
  388            | '&'

  389 lexical_vars: %empty
  390             | "use (T_USE)" '(' lexical_var_list ')'

  391 lexical_var_list: lexical_var_list ',' lexical_var
  392                 | lexical_var

  393 lexical_var: "variable (T_VARIABLE)"
  394            | '&' "variable (T_VARIABLE)"

  395 function_call: name argument_list
  396              | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  397              | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  398              | callable_expr argument_list

  399 class_name: "static (T_STATIC)"
  400           | name

  401 class_name_reference: class_name
  402                     | new_variable

  403 exit_expr: %empty
  404          | '(' optional_expr ')'

  405 backticks_expr: %empty
  406               | "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"
  407               | encaps_list

  408 ctor_arguments: %empty
  409               | argument_list

  410 dereferencable_scalar: "array (T_ARRAY)" '(' array_pair_list ')'
  411                      | '[' array_pair_list ']'
  412                      | "quoted-string (T_CONSTANT_ENCAPSED_STRING)"

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

  429 constant: name
  430         | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
  431         | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier

  432 optional_expr: %empty
  433              | expr

  434 variable_class_name: dereferencable

  435 dereferencable: variable
  436               | '(' expr ')'
  437               | dereferencable_scalar

  438 callable_expr: callable_variable
  439              | '(' expr ')'
  440              | dereferencable_scalar

  441 callable_variable: simple_variable
  442                  | dereferencable '[' optional_expr ']'
  443                  | constant '[' optional_expr ']'
  444                  | dereferencable '{' expr '}'
  445                  | dereferencable "-> (T_OBJECT_OPERATOR)" property_name argument_list
  446                  | function_call

  447 variable: callable_variable
  448         | static_member
  449         | dereferencable "-> (T_OBJECT_OPERATOR)" property_name

  450 simple_variable: "variable (T_VARIABLE)"
  451                | '$' '{' expr '}'
  452                | '$' simple_variable

  453 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
  454              | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

  455 new_variable: simple_variable
  456             | new_variable '[' optional_expr ']'
  457             | new_variable '{' expr '}'
  458             | new_variable "-> (T_OBJECT_OPERATOR)" property_name
  459             | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
  460             | new_variable ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

  461 member_name: identifier
  462            | '{' expr '}'
  463            | simple_variable

  464 property_name: "identifier (T_STRING)"
  465              | '{' expr '}'
  466              | simple_variable

  467 array_pair_list: non_empty_array_pair_list

  468 possible_array_pair: %empty
  469                    | array_pair

  470 non_empty_array_pair_list: non_empty_array_pair_list ',' possible_array_pair
  471                          | possible_array_pair

  472 array_pair: expr "=> (T_DOUBLE_ARROW)" expr
  473           | expr
  474           | expr "=> (T_DOUBLE_ARROW)" '&' variable
  475           | '&' variable
  476           | "... (T_ELLIPSIS)" expr
  477           | expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')'
  478           | "list (T_LIST)" '(' array_pair_list ')'

  479 encaps_list: encaps_list encaps_var
  480            | encaps_list "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"
  481            | encaps_var
  482            | "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" encaps_var

  483 encaps_var: "variable (T_VARIABLE)"
  484           | "variable (T_VARIABLE)" '[' encaps_var_offset ']'
  485           | "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)"
  486           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}'
  487           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '}'
  488           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' '}'
  489           | "{$ (T_CURLY_OPEN)" variable '}'

  490 encaps_var_offset: "identifier (T_STRING)"
  491                  | "number (T_NUM_STRING)"
  492                  | '-' "number (T_NUM_STRING)"
  493                  | "variable (T_VARIABLE)"

  494 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables possible_comma ')'
  495                           | "empty (T_EMPTY)" '(' expr ')'
  496                           | "include (T_INCLUDE)" expr
  497                           | "include_once (T_INCLUDE_ONCE)" expr
  498                           | "eval (T_EVAL)" '(' expr ')'
  499                           | "require (T_REQUIRE)" expr
  500                           | "require_once (T_REQUIRE_ONCE)" expr

  501 isset_variables: isset_variable
  502                | isset_variables ',' isset_variable

  503 isset_variable: expr


Terminals, with rules where they appear

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


Nonterminals, with rules where they appear

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


State 0

    0 $accept: . start "end of file"

    $default  reduce using rule 80 (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 .
   79 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "const (T_CONST)"                             shift, and go to state 48
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "use (T_USE)"                                 shift, and go to state 52
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 1 (start)

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


State 3

    0 $accept: start "end of file" .

    $default  accept


State 4

  496 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 119
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 5

  497 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 121
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 6

  499 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 122
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 7

  500 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 123
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 8

  373 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 124
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 9

  374 expr: "yield (T_YIELD)" .
  375     | "yield (T_YIELD)" . expr
  376     | "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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 374 (expr)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 125
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 10

  377 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 126
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 11

  342 expr: '+' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 127
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 12

  343 expr: '-' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 128
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 13

  344 expr: '!' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 129
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 14

  345 expr: '~' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 130
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 15

  362 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 131
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 16

  363 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 132
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 17

  364 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 133
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 18

  365 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 134
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 19

  366 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 135
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 20

  367 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 136
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 21

  368 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 137
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 22

  370 expr: '@' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 138
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 23

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

    "identifier (T_STRING)"    shift, and go to state 116
    "variable (T_VARIABLE)"    shift, and go to state 28
    "static (T_STATIC)"        shift, and go to state 139
    "class (T_CLASS)"          shift, and go to state 140
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
    '$'                        shift, and go to state 83

    namespace_name        go to state 84
    name                  go to state 141
    anonymous_class       go to state 142
    class_name            go to state 143
    class_name_reference  go to state 144
    simple_variable       go to state 145
    new_variable          go to state 146


State 24

  307 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 147
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 25

  413 scalar: "integer number (T_LNUMBER)" .

    $default  reduce using rule 413 (scalar)


State 26

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

    $default  reduce using rule 414 (scalar)


State 27

   81 namespace_name: "identifier (T_STRING)" .
  156 statement: "identifier (T_STRING)" . ':'

    ':'  shift, and go to state 148

    $default  reduce using rule 81 (namespace_name)


State 28

  450 simple_variable: "variable (T_VARIABLE)" .

    $default  reduce using rule 450 (simple_variable)


State 29

  145 statement: T_INLINE_HTML .

    $default  reduce using rule 145 (statement)


State 30

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

    $default  reduce using rule 412 (dereferencable_scalar)


State 31

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

    '('  shift, and go to state 149


State 32

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

    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "static (T_STATIC)"                           shift, and go to state 139
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 150
    '['                                           shift, and go to state 151
    '$'                                           shift, and go to state 83

    namespace_name         go to state 84
    name                   go to state 85
    function_call          go to state 103
    class_name             go to state 104
    dereferencable_scalar  go to state 152
    constant               go to state 153
    variable_class_name    go to state 108
    dereferencable         go to state 109
    callable_expr          go to state 110
    callable_variable      go to state 111
    variable               go to state 154
    simple_variable        go to state 113
    static_member          go to state 114


State 33

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

    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "static (T_STATIC)"                           shift, and go to state 139
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 150
    '['                                           shift, and go to state 151
    '$'                                           shift, and go to state 83

    namespace_name         go to state 84
    name                   go to state 85
    function_call          go to state 103
    class_name             go to state 104
    dereferencable_scalar  go to state 152
    constant               go to state 153
    variable_class_name    go to state 108
    dereferencable         go to state 109
    callable_expr          go to state 110
    callable_variable      go to state 111
    variable               go to state 155
    simple_variable        go to state 113
    static_member          go to state 114


State 34

  369 expr: "exit (T_EXIT)" . exit_expr

    '('  shift, and go to state 156

    $default  reduce using rule 403 (exit_expr)

    exit_expr  go to state 157


State 35

  210 if_stmt_without_else: "if (T_IF)" . '(' expr ')' statement
  214 alt_if_stmt_without_else: "if (T_IF)" . '(' expr ')' ':' inner_statement_list

    '('  shift, and go to state 158


State 36

  144 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    echo_expr_list              go to state 159
    echo_expr                   go to state 160
    new_expr                    go to state 98
    expr                        go to state 161
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 37

  136 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    statement                   go to state 162
    if_stmt_without_else        go to state 94
    if_stmt                     go to state 95
    alt_if_stmt_without_else    go to state 96
    alt_if_stmt                 go to state 97
    new_expr                    go to state 98
    expr                        go to state 99
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 38

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

    '('  shift, and go to state 163


State 39

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

    '('  shift, and go to state 164


State 40

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

    '('  shift, and go to state 165


State 41

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

    '('  shift, and go to state 166


State 42

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

    '('  shift, and go to state 167


State 43

  139 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 432 (optional_expr)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 168
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    optional_expr               go to state 169
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 44

  140 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 432 (optional_expr)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 168
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    optional_expr               go to state 170
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 45

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

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


State 46

  383 function: "function (T_FUNCTION)" .

    $default  reduce using rule 383 (function)


State 47

  382 fn: "fn (T_FN)" .

    $default  reduce using rule 382 (fn)


State 48

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

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

    const_list  go to state 173
    const_decl  go to state 174


State 49

  141 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 432 (optional_expr)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 168
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    optional_expr               go to state 175
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 50

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

    '{'  shift, and go to state 176


State 51

  154 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 177
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 52

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

    "identifier (T_STRING)"  shift, and go to state 116
    "function (T_FUNCTION)"  shift, and go to state 178
    "const (T_CONST)"        shift, and go to state 179
    "\\ (T_NS_SEPARATOR)"    shift, and go to state 180

    namespace_name               go to state 181
    use_type                     go to state 182
    mixed_group_use_declaration  go to state 183
    use_declarations             go to state 184
    unprefixed_use_declaration   go to state 185
    use_declaration              go to state 186


State 53

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

    "variable (T_VARIABLE)"  shift, and go to state 28
    '$'                      shift, and go to state 83

    global_var_list  go to state 187
    global_var       go to state 188
    simple_variable  go to state 189


State 54

  143 statement: "static (T_STATIC)" . static_var_list ';'
  379 expr: "static (T_STATIC)" . inline_function
  399 class_name: "static (T_STATIC)" .

    "variable (T_VARIABLE)"  shift, and go to state 190
    "function (T_FUNCTION)"  shift, and go to state 46
    "fn (T_FN)"              shift, and go to state 47

    $default  reduce using rule 399 (class_name)

    static_var_list  go to state 191
    static_var       go to state 192
    inline_function  go to state 193
    fn               go to state 101
    function         go to state 120


State 55

  177 class_modifier: "abstract (T_ABSTRACT)" .

    $default  reduce using rule 177 (class_modifier)


State 56

  178 class_modifier: "final (T_FINAL)" .

    $default  reduce using rule 178 (class_modifier)


State 57

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

    '('  shift, and go to state 194


State 58

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

    '('  shift, and go to state 195


State 59

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

    '('  shift, and go to state 196


State 60

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

    '('  shift, and go to state 197


State 61

  174 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 (@5)

    @5  go to state 198


State 62

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

    $default  reduce using rule 179 (@6)

    @6  go to state 199


State 63

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

    $default  reduce using rule 181 (@7)

    @7  go to state 200


State 64

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

    '('  shift, and go to state 201


State 65

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

    '('  shift, and go to state 202


State 66

  415 scalar: "__LINE__ (T_LINE)" .

    $default  reduce using rule 415 (scalar)


State 67

  416 scalar: "__FILE__ (T_FILE)" .

    $default  reduce using rule 416 (scalar)


State 68

  417 scalar: "__DIR__ (T_DIR)" .

    $default  reduce using rule 417 (scalar)


State 69

  422 scalar: "__CLASS__ (T_CLASS_C)" .

    $default  reduce using rule 422 (scalar)


State 70

  418 scalar: "__TRAIT__ (T_TRAIT_C)" .

    $default  reduce using rule 418 (scalar)


State 71

  419 scalar: "__METHOD__ (T_METHOD_C)" .

    $default  reduce using rule 419 (scalar)


State 72

  420 scalar: "__FUNCTION__ (T_FUNC_C)" .

    $default  reduce using rule 420 (scalar)


State 73

  423 scalar: "heredoc start (T_START_HEREDOC)" . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "heredoc end (T_END_HEREDOC)"
  424       | "heredoc start (T_START_HEREDOC)" . "heredoc end (T_END_HEREDOC)"
  426       | "heredoc start (T_START_HEREDOC)" . encaps_list "heredoc end (T_END_HEREDOC)"

    "variable (T_VARIABLE)"                                     shift, and go to state 203
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 204
    "heredoc end (T_END_HEREDOC)"                               shift, and go to state 205
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 206
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 207

    encaps_list  go to state 208
    encaps_var   go to state 209


State 74

   84 name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name
   92 top_statement: "namespace (T_NAMESPACE)" . namespace_name ';'
   94              | "namespace (T_NAMESPACE)" . namespace_name $@1 '{' top_statement_list '}'
   96              | "namespace (T_NAMESPACE)" . $@2 '{' top_statement_list '}'

    "identifier (T_STRING)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"    shift, and go to state 210

    $default  reduce using rule 95 ($@2)

    namespace_name  go to state 211
    $@2             go to state 212


State 75

  421 scalar: "__NAMESPACE__ (T_NS_C)" .

    $default  reduce using rule 421 (scalar)


State 76

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

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

    namespace_name  go to state 213


State 77

  356 expr: '(' . expr ')'
  436 dereferencable: '(' . expr ')'
  439 callable_expr: '(' . expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 214
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 78

  152 statement: ';' .

    $default  reduce using rule 152 (statement)


State 79

  132 statement: '{' . inner_statement_list '}'

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 215


State 80

  304 expr: '[' . array_pair_list ']' '=' expr
  411 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '&'                                           shift, and go to state 216
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 217
    "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 118
    "__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 218
    '('                                           shift, and go to state 77
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    $default  reduce using rule 468 (possible_array_pair)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 219
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    array_pair_list             go to state 220
    possible_array_pair         go to state 221
    non_empty_array_pair_list   go to state 222
    array_pair                  go to state 223
    internal_functions_in_yacc  go to state 115


State 81

  372 expr: '`' . backticks_expr '`'

    "variable (T_VARIABLE)"                                     shift, and go to state 203
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 224
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 206
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 207

    $default  reduce using rule 405 (backticks_expr)

    backticks_expr  go to state 225
    encaps_list     go to state 226
    encaps_var      go to state 209


State 82

  425 scalar: '"' . encaps_list '"'

    "variable (T_VARIABLE)"                                     shift, and go to state 203
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 227
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 206
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 207

    encaps_list  go to state 228
    encaps_var   go to state 209


State 83

  451 simple_variable: '$' . '{' expr '}'
  452                | '$' . simple_variable

    "variable (T_VARIABLE)"  shift, and go to state 28
    '{'                      shift, and go to state 229
    '$'                      shift, and go to state 83

    simple_variable  go to state 230


State 84

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

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

    $default  reduce using rule 83 (name)


State 85

  395 function_call: name . argument_list
  400 class_name: name .
  429 constant: name .

    '('  shift, and go to state 232

    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 400 (class_name)
    $default                       reduce using rule 429 (constant)

    argument_list  go to state 233


State 86

   79 top_statement_list: top_statement_list top_statement .

    $default  reduce using rule 79 (top_statement_list)


State 87

   86 top_statement: statement .

    $default  reduce using rule 86 (top_statement)


State 88

   87 top_statement: function_declaration_statement .

    $default  reduce using rule 87 (top_statement)


State 89

   88 top_statement: class_declaration_statement .

    $default  reduce using rule 88 (top_statement)


State 90

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

    "abstract (T_ABSTRACT)"  shift, and go to state 55
    "final (T_FINAL)"        shift, and go to state 56
    "class (T_CLASS)"        shift, and go to state 234

    class_modifier  go to state 235


State 91

  175 class_modifiers: class_modifier .

    $default  reduce using rule 175 (class_modifiers)


State 92

   89 top_statement: trait_declaration_statement .

    $default  reduce using rule 89 (top_statement)


State 93

   90 top_statement: interface_declaration_statement .

    $default  reduce using rule 90 (top_statement)


State 94

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

    "elseif (T_ELSEIF)"  shift, and go to state 236
    "else (T_ELSE)"      shift, and go to state 237

    $default  reduce using rule 212 (if_stmt)


State 95

  133 statement: if_stmt .

    $default  reduce using rule 133 (statement)


State 96

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

    "elseif (T_ELSEIF)"  shift, and go to state 238
    "else (T_ELSE)"      shift, and go to state 239
    "endif (T_ENDIF)"    shift, and go to state 240


State 97

  134 statement: alt_if_stmt .

    $default  reduce using rule 134 (statement)


State 98

  357 expr: new_expr .

    $default  reduce using rule 357 (expr)


State 99

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

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


State 100

  378 expr: inline_function .

    $default  reduce using rule 378 (expr)


State 101

  381 inline_function: fn . returns_ref '(' parameter_list ')' return_type backup_doc_comment "=> (T_DOUBLE_ARROW)" backup_fn_flags backup_lex_pos expr backup_fn_flags

    '&'  shift, and go to state 271

    $default  reduce using rule 387 (returns_ref)

    returns_ref  go to state 272


State 102

  166 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
  380 inline_function: 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 271

    $default  reduce using rule 387 (returns_ref)

    returns_ref  go to state 273


State 103

  446 callable_variable: function_call .

    $default  reduce using rule 446 (callable_variable)


State 104

  396 function_call: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  430 constant: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
  453 static_member: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

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


State 105

  427 scalar: dereferencable_scalar .
  437 dereferencable: dereferencable_scalar .
  440 callable_expr: dereferencable_scalar .

    "-> (T_OBJECT_OPERATOR)"       reduce using rule 437 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 437 (dereferencable)
    '('                            reduce using rule 440 (callable_expr)
    '{'                            reduce using rule 437 (dereferencable)
    '['                            reduce using rule 437 (dereferencable)
    $default                       reduce using rule 427 (scalar)


State 106

  371 expr: scalar .

    $default  reduce using rule 371 (expr)


State 107

  428 scalar: constant .
  443 callable_variable: constant . '[' optional_expr ']'

    '['  shift, and go to state 275

    $default  reduce using rule 428 (scalar)


State 108

  397 function_call: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  431 constant: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
  454 static_member: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

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


State 109

  434 variable_class_name: dereferencable .
  442 callable_variable: dereferencable . '[' optional_expr ']'
  444                  | dereferencable . '{' expr '}'
  445                  | dereferencable . "-> (T_OBJECT_OPERATOR)" property_name argument_list
  449 variable: dereferencable . "-> (T_OBJECT_OPERATOR)" property_name

    "-> (T_OBJECT_OPERATOR)"  shift, and go to state 277
    '{'                       shift, and go to state 278
    '['                       shift, and go to state 279

    $default  reduce using rule 434 (variable_class_name)


State 110

  398 function_call: callable_expr . argument_list

    '('  shift, and go to state 232

    argument_list  go to state 280


State 111

  438 callable_expr: callable_variable .
  447 variable: callable_variable .

    '('       reduce using rule 438 (callable_expr)
    $default  reduce using rule 447 (variable)


State 112

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

    '='                       shift, and go to state 281
    "+= (T_PLUS_EQUAL)"       shift, and go to state 282
    "-= (T_MINUS_EQUAL)"      shift, and go to state 283
    "*= (T_MUL_EQUAL)"        shift, and go to state 284
    "/= (T_DIV_EQUAL)"        shift, and go to state 285
    ".= (T_CONCAT_EQUAL)"     shift, and go to state 286
    "%= (T_MOD_EQUAL)"        shift, and go to state 287
    "&= (T_AND_EQUAL)"        shift, and go to state 288
    "|= (T_OR_EQUAL)"         shift, and go to state 289
    "^= (T_XOR_EQUAL)"        shift, and go to state 290
    "<<= (T_SL_EQUAL)"        shift, and go to state 291
    ">>= (T_SR_EQUAL)"        shift, and go to state 292
    "**= (T_POW_EQUAL)"       shift, and go to state 293
    "??= (T_COALESCE_EQUAL)"  shift, and go to state 294
    "++ (T_INC)"              shift, and go to state 295
    "-- (T_DEC)"              shift, and go to state 296

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


State 113

  441 callable_variable: simple_variable .

    $default  reduce using rule 441 (callable_variable)


State 114

  448 variable: static_member .

    $default  reduce using rule 448 (variable)


State 115

  361 expr: internal_functions_in_yacc .

    $default  reduce using rule 361 (expr)


State 116

   81 namespace_name: "identifier (T_STRING)" .

    $default  reduce using rule 81 (namespace_name)


State 117

  379 expr: "static (T_STATIC)" . inline_function
  399 class_name: "static (T_STATIC)" .

    "function (T_FUNCTION)"  shift, and go to state 46
    "fn (T_FN)"              shift, and go to state 47

    $default  reduce using rule 399 (class_name)

    inline_function  go to state 193
    fn               go to state 101
    function         go to state 120


State 118

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

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


State 119

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

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

    $default  reduce using rule 496 (internal_functions_in_yacc)


State 120

  380 inline_function: 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 271

    $default  reduce using rule 387 (returns_ref)

    returns_ref  go to state 297


State 121

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

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

    $default  reduce using rule 497 (internal_functions_in_yacc)


State 122

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

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

    $default  reduce using rule 499 (internal_functions_in_yacc)


State 123

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

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

    $default  reduce using rule 500 (internal_functions_in_yacc)


State 124

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

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

    $default  reduce using rule 373 (expr)


State 125

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

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

    $default  reduce using rule 375 (expr)


State 126

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

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

    $default  reduce using rule 377 (expr)


State 127

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

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

    $default  reduce using rule 342 (expr)


State 128

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

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

    $default  reduce using rule 343 (expr)


State 129

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

    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

    $default  reduce using rule 344 (expr)


State 130

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

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

    $default  reduce using rule 345 (expr)


State 131

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

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

    $default  reduce using rule 362 (expr)


State 132

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

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

    $default  reduce using rule 363 (expr)


State 133

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

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

    $default  reduce using rule 364 (expr)


State 134

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

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

    $default  reduce using rule 365 (expr)


State 135

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

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

    $default  reduce using rule 366 (expr)


State 136

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

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

    $default  reduce using rule 367 (expr)


State 137

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

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

    $default  reduce using rule 368 (expr)


State 138

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

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

    $default  reduce using rule 370 (expr)


State 139

  399 class_name: "static (T_STATIC)" .

    $default  reduce using rule 399 (class_name)


State 140

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

    $default  reduce using rule 298 (@8)

    @8  go to state 299


State 141

  400 class_name: name .

    $default  reduce using rule 400 (class_name)


State 142

  301 new_expr: "new (T_NEW)" anonymous_class .

    $default  reduce using rule 301 (new_expr)


State 143

  401 class_name_reference: class_name .
  459 new_variable: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

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

    $default  reduce using rule 401 (class_name_reference)


State 144

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

    '('  shift, and go to state 232

    $default  reduce using rule 408 (ctor_arguments)

    argument_list   go to state 301
    ctor_arguments  go to state 302


State 145

  455 new_variable: simple_variable .

    $default  reduce using rule 455 (new_variable)


State 146

  402 class_name_reference: new_variable .
  456 new_variable: new_variable . '[' optional_expr ']'
  457             | new_variable . '{' expr '}'
  458             | new_variable . "-> (T_OBJECT_OPERATOR)" property_name
  460             | new_variable . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

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

    $default  reduce using rule 402 (class_name_reference)


State 147

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

    $default  reduce using rule 307 (expr)


State 148

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

    $default  reduce using rule 156 (statement)


State 149

  498 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 307
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 150

  436 dereferencable: '(' . expr ')'
  439 callable_expr: '(' . expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 308
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 151

  411 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '&'                                           shift, and go to state 216
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 217
    "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 118
    "__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 218
    '('                                           shift, and go to state 77
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    $default  reduce using rule 468 (possible_array_pair)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 219
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    array_pair_list             go to state 309
    possible_array_pair         go to state 221
    non_empty_array_pair_list   go to state 222
    array_pair                  go to state 223
    internal_functions_in_yacc  go to state 115


State 152

  437 dereferencable: dereferencable_scalar .
  440 callable_expr: dereferencable_scalar .

    '('       reduce using rule 440 (callable_expr)
    $default  reduce using rule 437 (dereferencable)


State 153

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

    '['  shift, and go to state 275


State 154

  322 expr: "++ (T_INC)" variable .
  435 dereferencable: variable .

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


State 155

  324 expr: "-- (T_DEC)" variable .
  435 dereferencable: variable .

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


State 156

  404 exit_expr: '(' . optional_expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 432 (optional_expr)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 168
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    optional_expr               go to state 310
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 157

  369 expr: "exit (T_EXIT)" exit_expr .

    $default  reduce using rule 369 (expr)


State 158

  210 if_stmt_without_else: "if (T_IF)" '(' . expr ')' statement
  214 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 311
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 159

  144 statement: "echo (T_ECHO)" echo_expr_list . ';'
  291 echo_expr_list: echo_expr_list . ',' echo_expr

    ';'  shift, and go to state 312
    ','  shift, and go to state 313


State 160

  292 echo_expr_list: echo_expr .

    $default  reduce using rule 292 (echo_expr_list)


State 161

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

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

    $default  reduce using rule 293 (echo_expr)


State 162

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

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


State 163

  135 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 315
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 164

  137 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 294 (for_exprs)

    namespace_name              go to state 84
    name                        go to state 85
    for_exprs                   go to state 316
    non_empty_for_exprs         go to state 317
    new_expr                    go to state 98
    expr                        go to state 318
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 165

  148 statement: "foreach (T_FOREACH)" '(' . expr "as (T_AS)" foreach_variable ')' foreach_statement
  149          | "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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 319
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 166

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

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

    const_list  go to state 320
    const_decl  go to state 174


State 167

  138 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 321
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 168

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

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

    $default  reduce using rule 433 (optional_expr)


State 169

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

    ';'  shift, and go to state 322


State 170

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

    ';'  shift, and go to state 323


State 171

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

    ';'  shift, and go to state 324


State 172

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

    '='  shift, and go to state 325


State 173

  101 top_statement: "const (T_CONST)" const_list . ';'
  122 const_list: const_list . ',' const_decl

    ';'  shift, and go to state 326
    ','  shift, and go to state 327


State 174

  123 const_list: const_decl .

    $default  reduce using rule 123 (const_list)


State 175

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

    ';'  shift, and go to state 328


State 176

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

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 329


State 177

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

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


State 178

  102 use_type: "function (T_FUNCTION)" .

    $default  reduce using rule 102 (use_type)


State 179

  103 use_type: "const (T_CONST)" .

    $default  reduce using rule 103 (use_type)


State 180

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

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

    namespace_name              go to state 331
    unprefixed_use_declaration  go to state 332


State 181

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

    "as (T_AS)"            shift, and go to state 333
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 334

    $default  reduce using rule 118 (unprefixed_use_declaration)


State 182

   98 top_statement: "use (T_USE)" use_type . group_use_declaration ';'
  100              | "use (T_USE)" use_type . use_declarations ';'

    "identifier (T_STRING)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"    shift, and go to state 335

    namespace_name              go to state 336
    group_use_declaration       go to state 337
    use_declarations            go to state 338
    unprefixed_use_declaration  go to state 185
    use_declaration             go to state 186


State 183

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

    ';'  shift, and go to state 339


State 184

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

    ';'  shift, and go to state 340
    ','  shift, and go to state 341


State 185

  120 use_declaration: unprefixed_use_declaration .

    $default  reduce using rule 120 (use_declaration)


State 186

  115 use_declarations: use_declaration .

    $default  reduce using rule 115 (use_declarations)


State 187

  142 statement: "global (T_GLOBAL)" global_var_list . ';'
  239 global_var_list: global_var_list . ',' global_var

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


State 188

  240 global_var_list: global_var .

    $default  reduce using rule 240 (global_var_list)


State 189

  241 global_var: simple_variable .

    $default  reduce using rule 241 (global_var)


State 190

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

    '='  shift, and go to state 344

    $default  reduce using rule 244 (static_var)


State 191

  143 statement: "static (T_STATIC)" static_var_list . ';'
  242 static_var_list: static_var_list . ',' static_var

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


State 192

  243 static_var_list: static_var .

    $default  reduce using rule 243 (static_var_list)


State 193

  379 expr: "static (T_STATIC)" inline_function .

    $default  reduce using rule 379 (expr)


State 194

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

    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "static (T_STATIC)"                           shift, and go to state 139
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 150
    '['                                           shift, and go to state 151
    '$'                                           shift, and go to state 83

    namespace_name         go to state 84
    name                   go to state 85
    unset_variables        go to state 347
    unset_variable         go to state 348
    function_call          go to state 103
    class_name             go to state 104
    dereferencable_scalar  go to state 152
    constant               go to state 153
    variable_class_name    go to state 108
    dereferencable         go to state 109
    callable_expr          go to state 110
    callable_variable      go to state 111
    variable               go to state 349
    simple_variable        go to state 113
    static_member          go to state 114


State 195

  494 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 350
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115
    isset_variables             go to state 351
    isset_variable              go to state 352


State 196

  495 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 353
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 197

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

    ')'  shift, and go to state 354


State 198

  174 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 199

  180 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 200

  182 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 201

  303 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '&'                                           shift, and go to state 216
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 217
    "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 118
    "__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 218
    '('                                           shift, and go to state 77
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    $default  reduce using rule 468 (possible_array_pair)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 219
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    array_pair_list             go to state 358
    possible_array_pair         go to state 221
    non_empty_array_pair_list   go to state 222
    array_pair                  go to state 223
    internal_functions_in_yacc  go to state 115


State 202

  410 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '&'                                           shift, and go to state 216
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 217
    "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 118
    "__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 218
    '('                                           shift, and go to state 77
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    $default  reduce using rule 468 (possible_array_pair)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 219
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    array_pair_list             go to state 359
    possible_array_pair         go to state 221
    non_empty_array_pair_list   go to state 222
    array_pair                  go to state 223
    internal_functions_in_yacc  go to state 115


State 203

  483 encaps_var: "variable (T_VARIABLE)" .
  484           | "variable (T_VARIABLE)" . '[' encaps_var_offset ']'
  485           | "variable (T_VARIABLE)" . "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)"

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

    $default  reduce using rule 483 (encaps_var)


State 204

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

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

    encaps_var  go to state 363


State 205

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

    $default  reduce using rule 424 (scalar)


State 206

  486 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . expr '}'
  487           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . "variable name (T_STRING_VARNAME)" '}'
  488           | "${ (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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "variable name (T_STRING_VARNAME)"            shift, and go to state 364
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 365
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 207

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

    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "static (T_STATIC)"                           shift, and go to state 139
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 150
    '['                                           shift, and go to state 151
    '$'                                           shift, and go to state 83

    namespace_name         go to state 84
    name                   go to state 85
    function_call          go to state 103
    class_name             go to state 104
    dereferencable_scalar  go to state 152
    constant               go to state 153
    variable_class_name    go to state 108
    dereferencable         go to state 109
    callable_expr          go to state 110
    callable_variable      go to state 111
    variable               go to state 366
    simple_variable        go to state 113
    static_member          go to state 114


State 208

  426 scalar: "heredoc start (T_START_HEREDOC)" encaps_list . "heredoc end (T_END_HEREDOC)"
  479 encaps_list: encaps_list . encaps_var
  480            | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"

    "variable (T_VARIABLE)"                                     shift, and go to state 203
    "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 206
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 207

    encaps_var  go to state 369


State 209

  481 encaps_list: encaps_var .

    $default  reduce using rule 481 (encaps_list)


State 210

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

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

    namespace_name  go to state 370


State 211

   82 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
   92 top_statement: "namespace (T_NAMESPACE)" namespace_name . ';'
   94              | "namespace (T_NAMESPACE)" namespace_name . $@1 '{' top_statement_list '}'

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

    $default  reduce using rule 93 ($@1)

    $@1  go to state 372


State 212

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

    '{'  shift, and go to state 373


State 213

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

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

    $default  reduce using rule 85 (name)


State 214

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

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


State 215

  124 inner_statement_list: inner_statement_list . inner_statement
  132 statement: '{' inner_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 216

  475 array_pair: '&' . variable

    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "static (T_STATIC)"                           shift, and go to state 139
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 150
    '['                                           shift, and go to state 151
    '$'                                           shift, and go to state 83

    namespace_name         go to state 84
    name                   go to state 85
    function_call          go to state 103
    class_name             go to state 104
    dereferencable_scalar  go to state 152
    constant               go to state 153
    variable_class_name    go to state 108
    dereferencable         go to state 109
    callable_expr          go to state 110
    callable_variable      go to state 111
    variable               go to state 383
    simple_variable        go to state 113
    static_member          go to state 114


State 217

  303 expr: "list (T_LIST)" . '(' array_pair_list ')' '=' expr
  478 array_pair: "list (T_LIST)" . '(' array_pair_list ')'

    '('  shift, and go to state 384


State 218

  476 array_pair: "... (T_ELLIPSIS)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 385
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 219

  325 expr: expr . "|| (T_BOOLEAN_OR)" expr
  326     | expr . "&& (T_BOOLEAN_AND)" expr
  327     | expr . "or (T_LOGICAL_OR)" expr
  328     | expr . "and (T_LOGICAL_AND)" expr
  329     | expr . "xor (T_LOGICAL_XOR)" expr
  330     | expr . '|' expr
  331     | expr . '&' expr
  332     | expr . '^' expr
  333     | expr . '.' expr
  334     | expr . '+' expr
  335     | expr . '-' expr
  336     | expr . '*' expr
  337     | expr . "** (T_POW)" expr
  338     | expr . '/' expr
  339     | expr . '%' expr
  340     | expr . "<< (T_SL)" expr
  341     | expr . ">> (T_SR)" expr
  346     | expr . "=== (T_IS_IDENTICAL)" expr
  347     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  348     | expr . "== (T_IS_EQUAL)" expr
  349     | expr . "!= (T_IS_NOT_EQUAL)" expr
  350     | expr . '<' expr
  351     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  352     | expr . '>' expr
  353     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  354     | expr . "<=> (T_SPACESHIP)" expr
  355     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  358     | expr . '?' expr ':' expr
  359     | expr . '?' ':' expr
  360     | expr . "?? (T_COALESCE)" expr
  472 array_pair: expr . "=> (T_DOUBLE_ARROW)" expr
  473           | expr .
  474           | expr . "=> (T_DOUBLE_ARROW)" '&' variable
  477           | expr . "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')'

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

    $default  reduce using rule 473 (array_pair)


State 220

  304 expr: '[' array_pair_list . ']' '=' expr
  411 dereferencable_scalar: '[' array_pair_list . ']'

    ']'  shift, and go to state 387


State 221

  471 non_empty_array_pair_list: possible_array_pair .

    $default  reduce using rule 471 (non_empty_array_pair_list)


State 222

  467 array_pair_list: non_empty_array_pair_list .
  470 non_empty_array_pair_list: non_empty_array_pair_list . ',' possible_array_pair

    ','  shift, and go to state 388

    $default  reduce using rule 467 (array_pair_list)


State 223

  469 possible_array_pair: array_pair .

    $default  reduce using rule 469 (possible_array_pair)


State 224

  406 backticks_expr: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" .
  482 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var

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

    $default  reduce using rule 406 (backticks_expr)

    encaps_var  go to state 363


State 225

  372 expr: '`' backticks_expr . '`'

    '`'  shift, and go to state 389


State 226

  407 backticks_expr: encaps_list .
  479 encaps_list: encaps_list . encaps_var
  480            | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"

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

    $default  reduce using rule 407 (backticks_expr)

    encaps_var  go to state 369


State 227

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

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

    encaps_var  go to state 363


State 228

  425 scalar: '"' encaps_list . '"'
  479 encaps_list: encaps_list . encaps_var
  480            | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"

    "variable (T_VARIABLE)"                                     shift, and go to state 203
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 367
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 206
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 207
    '"'                                                         shift, and go to state 390

    encaps_var  go to state 369


State 229

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

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 391
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 230

  452 simple_variable: '$' simple_variable .

    $default  reduce using rule 452 (simple_variable)


State 231

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

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


State 232

  233 argument_list: '(' . ')'
  234              | '(' . 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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 393
    '('                                           shift, and go to state 77
    ')'                                           shift, and go to state 394
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    non_empty_argument_list     go to state 395
    argument                    go to state 396
    new_expr                    go to state 98
    expr                        go to state 397
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 233

  395 function_call: name argument_list .

    $default  reduce using rule 395 (function_call)


State 234

  172 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 (@4)

    @4  go to state 398


State 235

  176 class_modifiers: class_modifiers class_modifier .

    $default  reduce using rule 176 (class_modifiers)


State 236

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

    '('  shift, and go to state 399


State 237

  213 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    statement                   go to state 400
    if_stmt_without_else        go to state 94
    if_stmt                     go to state 95
    alt_if_stmt_without_else    go to state 96
    alt_if_stmt                 go to state 97
    new_expr                    go to state 98
    expr                        go to state 99
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 238

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

    '('  shift, and go to state 401


State 239

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

    ':'  shift, and go to state 402


State 240

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

    ';'  shift, and go to state 403


State 241

  327 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 404
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 242

  329 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 405
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 243

  328 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 406
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 244

  358 expr: expr '?' . expr ':' expr
  359     | expr '?' . ':' expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    ':'                                           shift, and go to state 407
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 408
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 245

  360 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 409
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 246

  325 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 410
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 247

  326 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 411
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 248

  330 expr: expr '|' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 412
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 249

  332 expr: expr '^' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 413
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 250

  331 expr: expr '&' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 414
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 251

  348 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 415
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 252

  349 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 416
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 253

  346 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 417
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 254

  347 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 418
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 255

  354 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 419
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 256

  350 expr: expr '<' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 420
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 257

  351 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 421
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 258

  352 expr: expr '>' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 422
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 259

  353 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 423
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 260

  340 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 424
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 261

  341 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 425
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 262

  334 expr: expr '+' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 426
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 263

  335 expr: expr '-' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 427
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 264

  333 expr: expr '.' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 428
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 265

  336 expr: expr '*' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 429
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 266

  338 expr: expr '/' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 430
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 267

  339 expr: expr '%' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 431
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 268

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

    "identifier (T_STRING)"    shift, and go to state 116
    "variable (T_VARIABLE)"    shift, and go to state 28
    "static (T_STATIC)"        shift, and go to state 139
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
    '$'                        shift, and go to state 83

    namespace_name        go to state 84
    name                  go to state 141
    class_name            go to state 143
    class_name_reference  go to state 432
    simple_variable       go to state 145
    new_variable          go to state 146


State 269

  337 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 433
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 270

  146 statement: expr ';' .

    $default  reduce using rule 146 (statement)


State 271

  388 returns_ref: '&' .

    $default  reduce using rule 388 (returns_ref)


State 272

  381 inline_function: fn returns_ref . '(' parameter_list ')' return_type backup_doc_comment "=> (T_DOUBLE_ARROW)" backup_fn_flags backup_lex_pos expr backup_fn_flags

    '('  shift, and go to state 434


State 273

  166 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
  380 inline_function: 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 435

    $default  reduce using rule 384 (backup_doc_comment)

    backup_doc_comment  go to state 436


State 274

  396 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . member_name argument_list
  430 constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier
  453 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable

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

    reserved_non_modifiers  go to state 513
    semi_reserved           go to state 514
    identifier              go to state 515
    simple_variable         go to state 516
    member_name             go to state 517


State 275

  443 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 432 (optional_expr)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 168
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    optional_expr               go to state 518
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 276

  397 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . member_name argument_list
  431 constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier
  454 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable

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

    reserved_non_modifiers  go to state 513
    semi_reserved           go to state 514
    identifier              go to state 519
    simple_variable         go to state 520
    member_name             go to state 521


State 277

  445 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" . property_name argument_list
  449 variable: dereferencable "-> (T_OBJECT_OPERATOR)" . property_name

    "identifier (T_STRING)"  shift, and go to state 522
    "variable (T_VARIABLE)"  shift, and go to state 28
    '{'                      shift, and go to state 523
    '$'                      shift, and go to state 83

    simple_variable  go to state 524
    property_name    go to state 525


State 278

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

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 526
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 279

  442 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 432 (optional_expr)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 168
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    optional_expr               go to state 527
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 280

  398 function_call: callable_expr argument_list .

    $default  reduce using rule 398 (function_call)


State 281

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

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '&'                                           shift, and go to state 528
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 529
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 282

  308 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 530
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 283

  309 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 531
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 284

  310 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 532
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 285

  312 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 533
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 286

  313 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 534
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 287

  314 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 535
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 288

  315 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 536
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 289

  316 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 537
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 290

  317 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 538
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 291

  318 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 539
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 292

  319 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 540
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 293

  311 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 541
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 294

  320 expr: variable "??= (T_COALESCE_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 542
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 295

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

    $default  reduce using rule 321 (expr)


State 296

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

    $default  reduce using rule 323 (expr)


State 297

  380 inline_function: 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 384 (backup_doc_comment)

    backup_doc_comment  go to state 436


State 298

  376 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 543
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 299

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

    '('  shift, and go to state 232

    $default  reduce using rule 408 (ctor_arguments)

    argument_list   go to state 301
    ctor_arguments  go to state 544


State 300

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

    "variable (T_VARIABLE)"  shift, and go to state 28
    '$'                      shift, and go to state 83

    simple_variable  go to state 545


State 301

  409 ctor_arguments: argument_list .

    $default  reduce using rule 409 (ctor_arguments)


State 302

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

    $default  reduce using rule 300 (new_expr)


State 303

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

    "identifier (T_STRING)"  shift, and go to state 522
    "variable (T_VARIABLE)"  shift, and go to state 28
    '{'                      shift, and go to state 523
    '$'                      shift, and go to state 83

    simple_variable  go to state 524
    property_name    go to state 546


State 304

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

    "variable (T_VARIABLE)"  shift, and go to state 28
    '$'                      shift, and go to state 83

    simple_variable  go to state 547


State 305

  457 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 548
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 306

  456 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 432 (optional_expr)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 168
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    optional_expr               go to state 549
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 307

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

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


State 308

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

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


State 309

  411 dereferencable_scalar: '[' array_pair_list . ']'

    ']'  shift, and go to state 552


State 310

  404 exit_expr: '(' optional_expr . ')'

    ')'  shift, and go to state 553


State 311

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

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


State 312

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

    $default  reduce using rule 144 (statement)


State 313

  291 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    echo_expr                   go to state 555
    new_expr                    go to state 98
    expr                        go to state 161
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 314

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

    '('  shift, and go to state 556


State 315

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

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


State 316

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

    ';'  shift, and go to state 558


State 317

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

    ','  shift, and go to state 559

    $default  reduce using rule 295 (for_exprs)


State 318

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

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

    $default  reduce using rule 297 (non_empty_for_exprs)


State 319

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

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


State 320

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

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


State 321

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

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


State 322

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

    $default  reduce using rule 139 (statement)


State 323

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

    $default  reduce using rule 140 (statement)


State 324

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

    $default  reduce using rule 155 (statement)


State 325

  290 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 563
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 326

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

    $default  reduce using rule 101 (top_statement)


State 327

  122 const_list: const_list ',' . const_decl

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

    const_decl  go to state 564


State 328

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

    $default  reduce using rule 141 (statement)


State 329

  124 inner_statement_list: inner_statement_list . inner_statement
  153 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 330

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

    $default  reduce using rule 154 (statement)


State 331

   82 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  107 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name . "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
  118 unprefixed_use_declaration: namespace_name .
  119                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

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

    $default  reduce using rule 118 (unprefixed_use_declaration)


State 332

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

    $default  reduce using rule 121 (use_declaration)


State 333

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

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


State 334

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

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


State 335

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

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

    namespace_name              go to state 569
    unprefixed_use_declaration  go to state 332


State 336

   82 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  104 group_use_declaration: namespace_name . "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
  118 unprefixed_use_declaration: namespace_name .
  119                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

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

    $default  reduce using rule 118 (unprefixed_use_declaration)


State 337

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

    ';'  shift, and go to state 571


State 338

  100 top_statement: "use (T_USE)" use_type use_declarations . ';'
  114 use_declarations: use_declarations . ',' use_declaration

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


State 339

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

    $default  reduce using rule 97 (top_statement)


State 340

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

    $default  reduce using rule 99 (top_statement)


State 341

  114 use_declarations: use_declarations ',' . use_declaration

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

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


State 342

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

    $default  reduce using rule 142 (statement)


State 343

  239 global_var_list: global_var_list ',' . global_var

    "variable (T_VARIABLE)"  shift, and go to state 28
    '$'                      shift, and go to state 83

    global_var       go to state 576
    simple_variable  go to state 189


State 344

  245 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 577
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 345

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

    $default  reduce using rule 143 (statement)


State 346

  242 static_var_list: static_var_list ',' . static_var

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

    static_var  go to state 578


State 347

  147 statement: "unset (T_UNSET)" '(' unset_variables . possible_comma ')' ';'
  164 unset_variables: unset_variables . ',' unset_variable

    ','  shift, and go to state 579

    $default  reduce using rule 108 (possible_comma)

    possible_comma  go to state 580


State 348

  163 unset_variables: unset_variable .

    $default  reduce using rule 163 (unset_variables)


State 349

  165 unset_variable: variable .
  435 dereferencable: variable .

    ')'       reduce using rule 165 (unset_variable)
    ','       reduce using rule 165 (unset_variable)
    $default  reduce using rule 435 (dereferencable)


State 350

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

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

    $default  reduce using rule 503 (isset_variable)


State 351

  494 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables . possible_comma ')'
  502 isset_variables: isset_variables . ',' isset_variable

    ','  shift, and go to state 581

    $default  reduce using rule 108 (possible_comma)

    possible_comma  go to state 582


State 352

  501 isset_variables: isset_variable .

    $default  reduce using rule 501 (isset_variables)


State 353

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

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


State 354

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

    ';'  shift, and go to state 584


State 355

  174 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 585

    $default  reduce using rule 183 (extends_from)

    extends_from  go to state 586


State 356

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

    $default  reduce using rule 384 (backup_doc_comment)

    backup_doc_comment  go to state 587


State 357

  182 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 588

    $default  reduce using rule 185 (interface_extends_list)

    interface_extends_list  go to state 589


State 358

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

    ')'  shift, and go to state 590


State 359

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

    ')'  shift, and go to state 591


State 360

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

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


State 361

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

    '-'                      shift, and go to state 593
    "identifier (T_STRING)"  shift, and go to state 594
    "variable (T_VARIABLE)"  shift, and go to state 595
    "number (T_NUM_STRING)"  shift, and go to state 596

    encaps_var_offset  go to state 597


State 362

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

    $default  reduce using rule 423 (scalar)


State 363

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

    $default  reduce using rule 482 (encaps_list)


State 364

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

    '}'  shift, and go to state 598
    '['  shift, and go to state 599


State 365

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

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


State 366

  435 dereferencable: variable .
  489 encaps_var: "{$ (T_CURLY_OPEN)" variable . '}'

    '}'  shift, and go to state 601

    $default  reduce using rule 435 (dereferencable)


State 367

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

    $default  reduce using rule 480 (encaps_list)


State 368

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

    $default  reduce using rule 426 (scalar)


State 369

  479 encaps_list: encaps_list encaps_var .

    $default  reduce using rule 479 (encaps_list)


State 370

   82 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
   84 name: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name .

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

    $default  reduce using rule 84 (name)


State 371

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

    $default  reduce using rule 92 (top_statement)


State 372

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

    '{'  shift, and go to state 602


State 373

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

    $default  reduce using rule 80 (top_statement_list)

    top_statement_list  go to state 603


State 374

  356 expr: '(' expr ')' .
  436 dereferencable: '(' expr ')' .
  439 callable_expr: '(' expr ')' .

    "-> (T_OBJECT_OPERATOR)"       reduce using rule 436 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 436 (dereferencable)
    '('                            reduce using rule 439 (callable_expr)
    '{'                            reduce using rule 436 (dereferencable)
    '['                            reduce using rule 436 (dereferencable)
    $default                       reduce using rule 356 (expr)


State 375

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

    '('  shift, and go to state 604


State 376

  132 statement: '{' inner_statement_list '}' .

    $default  reduce using rule 132 (statement)


State 377

  124 inner_statement_list: inner_statement_list inner_statement .

    $default  reduce using rule 124 (inner_statement_list)


State 378

  126 inner_statement: statement .

    $default  reduce using rule 126 (inner_statement)


State 379

  127 inner_statement: function_declaration_statement .

    $default  reduce using rule 127 (inner_statement)


State 380

  128 inner_statement: class_declaration_statement .

    $default  reduce using rule 128 (inner_statement)


State 381

  129 inner_statement: trait_declaration_statement .

    $default  reduce using rule 129 (inner_statement)


State 382

  130 inner_statement: interface_declaration_statement .

    $default  reduce using rule 130 (inner_statement)


State 383

  435 dereferencable: variable .
  475 array_pair: '&' variable .

    ')'       reduce using rule 475 (array_pair)
    ','       reduce using rule 475 (array_pair)
    ']'       reduce using rule 475 (array_pair)
    $default  reduce using rule 435 (dereferencable)


State 384

  303 expr: "list (T_LIST)" '(' . array_pair_list ')' '=' expr
  478 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '&'                                           shift, and go to state 216
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 217
    "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 118
    "__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 218
    '('                                           shift, and go to state 77
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    $default  reduce using rule 468 (possible_array_pair)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 219
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    array_pair_list             go to state 605
    possible_array_pair         go to state 221
    non_empty_array_pair_list   go to state 222
    array_pair                  go to state 223
    internal_functions_in_yacc  go to state 115


State 385

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

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

    $default  reduce using rule 476 (array_pair)


State 386

  472 array_pair: expr "=> (T_DOUBLE_ARROW)" . expr
  474           | expr "=> (T_DOUBLE_ARROW)" . '&' variable
  477           | 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '&'                                           shift, and go to state 606
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 607
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 608
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 387

  304 expr: '[' array_pair_list ']' . '=' expr
  411 dereferencable_scalar: '[' array_pair_list ']' .

    '='  shift, and go to state 609

    $default  reduce using rule 411 (dereferencable_scalar)


State 388

  470 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '&'                                           shift, and go to state 216
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 217
    "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 118
    "__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 218
    '('                                           shift, and go to state 77
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    $default  reduce using rule 468 (possible_array_pair)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 219
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    possible_array_pair         go to state 610
    array_pair                  go to state 223
    internal_functions_in_yacc  go to state 115


State 389

  372 expr: '`' backticks_expr '`' .

    $default  reduce using rule 372 (expr)


State 390

  425 scalar: '"' encaps_list '"' .

    $default  reduce using rule 425 (scalar)


State 391

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

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


State 392

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

    $default  reduce using rule 82 (namespace_name)


State 393

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

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 612
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 394

  233 argument_list: '(' ')' .

    $default  reduce using rule 233 (argument_list)


State 395

  234 argument_list: '(' non_empty_argument_list . possible_comma ')'
  236 non_empty_argument_list: non_empty_argument_list . ',' argument

    ','  shift, and go to state 613

    $default  reduce using rule 108 (possible_comma)

    possible_comma  go to state 614


State 396

  235 non_empty_argument_list: argument .

    $default  reduce using rule 235 (non_empty_argument_list)


State 397

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

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

    $default  reduce using rule 237 (argument)


State 398

  172 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 615


State 399

  211 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 616
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 400

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

    $default  reduce using rule 213 (if_stmt)


State 401

  215 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 617
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 402

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

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 618


State 403

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

    $default  reduce using rule 216 (alt_if_stmt)


State 404

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

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

    $default  reduce using rule 327 (expr)


State 405

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

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

    $default  reduce using rule 329 (expr)


State 406

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

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

    $default  reduce using rule 328 (expr)


State 407

  359 expr: expr '?' ':' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 619
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 408

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

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


State 409

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

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

    $default  reduce using rule 360 (expr)


State 410

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

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

    $default  reduce using rule 325 (expr)


State 411

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

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

    $default  reduce using rule 326 (expr)


State 412

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

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

    $default  reduce using rule 330 (expr)


State 413

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

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

    $default  reduce using rule 332 (expr)


State 414

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

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

    $default  reduce using rule 331 (expr)


State 415

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

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

    "== (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 348 (expr)


State 416

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

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

    "== (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 349 (expr)


State 417

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

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

    "== (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 418

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

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

    "== (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 419

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

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

    "== (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 354 (expr)


State 420

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

    "<< (T_SL)"                  shift, and go to state 260
    ">> (T_SR)"                  shift, and go to state 261
    '+'                          shift, and go to state 262
    '-'                          shift, and go to state 263
    '.'                          shift, and go to state 264
    '*'                          shift, and go to state 265
    '/'                          shift, and go to state 266
    '%'                          shift, and go to state 267
    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

    '<'                           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 421

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

    "<< (T_SL)"                  shift, and go to state 260
    ">> (T_SR)"                  shift, and go to state 261
    '+'                          shift, and go to state 262
    '-'                          shift, and go to state 263
    '.'                          shift, and go to state 264
    '*'                          shift, and go to state 265
    '/'                          shift, and go to state 266
    '%'                          shift, and go to state 267
    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

    '<'                           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 422

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

    "<< (T_SL)"                  shift, and go to state 260
    ">> (T_SR)"                  shift, and go to state 261
    '+'                          shift, and go to state 262
    '-'                          shift, and go to state 263
    '.'                          shift, and go to state 264
    '*'                          shift, and go to state 265
    '/'                          shift, and go to state 266
    '%'                          shift, and go to state 267
    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

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

    $default  reduce using rule 352 (expr)


State 423

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

    "<< (T_SL)"                  shift, and go to state 260
    ">> (T_SR)"                  shift, and go to state 261
    '+'                          shift, and go to state 262
    '-'                          shift, and go to state 263
    '.'                          shift, and go to state 264
    '*'                          shift, and go to state 265
    '/'                          shift, and go to state 266
    '%'                          shift, and go to state 267
    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

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

    $default  reduce using rule 353 (expr)


State 424

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

    '+'                          shift, and go to state 262
    '-'                          shift, and go to state 263
    '.'                          shift, and go to state 264
    '*'                          shift, and go to state 265
    '/'                          shift, and go to state 266
    '%'                          shift, and go to state 267
    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

    $default  reduce using rule 340 (expr)


State 425

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

    '+'                          shift, and go to state 262
    '-'                          shift, and go to state 263
    '.'                          shift, and go to state 264
    '*'                          shift, and go to state 265
    '/'                          shift, and go to state 266
    '%'                          shift, and go to state 267
    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

    $default  reduce using rule 341 (expr)


State 426

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

    '*'                          shift, and go to state 265
    '/'                          shift, and go to state 266
    '%'                          shift, and go to state 267
    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

    $default  reduce using rule 334 (expr)


State 427

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

    '*'                          shift, and go to state 265
    '/'                          shift, and go to state 266
    '%'                          shift, and go to state 267
    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

    $default  reduce using rule 335 (expr)


State 428

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

    '*'                          shift, and go to state 265
    '/'                          shift, and go to state 266
    '%'                          shift, and go to state 267
    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

    $default  reduce using rule 333 (expr)


State 429

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

    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

    $default  reduce using rule 336 (expr)


State 430

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

    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

    $default  reduce using rule 338 (expr)


State 431

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

    "instanceof (T_INSTANCEOF)"  shift, and go to state 268
    "** (T_POW)"                 shift, and go to state 269

    $default  reduce using rule 339 (expr)


State 432

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

    $default  reduce using rule 355 (expr)


State 433

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

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

    $default  reduce using rule 337 (expr)


State 434

  381 inline_function: fn returns_ref '(' . parameter_list ')' return_type backup_doc_comment "=> (T_DOUBLE_ARROW)" backup_fn_flags backup_lex_pos expr backup_fn_flags

    '?'                        shift, and go to state 621
    "identifier (T_STRING)"    shift, and go to state 116
    "array (T_ARRAY)"          shift, and go to state 622
    "callable (T_CALLABLE)"    shift, and go to state 623
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    ')'       reduce using rule 219 (parameter_list)
    $default  reduce using rule 224 (optional_type)

    namespace_name            go to state 84
    name                      go to state 624
    parameter_list            go to state 625
    non_empty_parameter_list  go to state 626
    parameter                 go to state 627
    optional_type             go to state 628
    type_expr                 go to state 629
    type                      go to state 630


State 435

  166 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 384 (backup_doc_comment)

    backup_doc_comment  go to state 631


State 436

  380 inline_function: 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 632


State 437

    2 reserved_non_modifiers: "include (T_INCLUDE)" .

    $default  reduce using rule 2 (reserved_non_modifiers)


State 438

    3 reserved_non_modifiers: "include_once (T_INCLUDE_ONCE)" .

    $default  reduce using rule 3 (reserved_non_modifiers)


State 439

    5 reserved_non_modifiers: "require (T_REQUIRE)" .

    $default  reduce using rule 5 (reserved_non_modifiers)


State 440

    6 reserved_non_modifiers: "require_once (T_REQUIRE_ONCE)" .

    $default  reduce using rule 6 (reserved_non_modifiers)


State 441

    7 reserved_non_modifiers: "or (T_LOGICAL_OR)" .

    $default  reduce using rule 7 (reserved_non_modifiers)


State 442

    8 reserved_non_modifiers: "xor (T_LOGICAL_XOR)" .

    $default  reduce using rule 8 (reserved_non_modifiers)


State 443

    9 reserved_non_modifiers: "and (T_LOGICAL_AND)" .

    $default  reduce using rule 9 (reserved_non_modifiers)


State 444

   45 reserved_non_modifiers: "print (T_PRINT)" .

    $default  reduce using rule 45 (reserved_non_modifiers)


State 445

   46 reserved_non_modifiers: "yield (T_YIELD)" .

    $default  reduce using rule 46 (reserved_non_modifiers)


State 446

   10 reserved_non_modifiers: "instanceof (T_INSTANCEOF)" .

    $default  reduce using rule 10 (reserved_non_modifiers)


State 447

   11 reserved_non_modifiers: "new (T_NEW)" .

    $default  reduce using rule 11 (reserved_non_modifiers)


State 448

   12 reserved_non_modifiers: "clone (T_CLONE)" .

    $default  reduce using rule 12 (reserved_non_modifiers)


State 449

   15 reserved_non_modifiers: "elseif (T_ELSEIF)" .

    $default  reduce using rule 15 (reserved_non_modifiers)


State 450

   16 reserved_non_modifiers: "else (T_ELSE)" .

    $default  reduce using rule 16 (reserved_non_modifiers)


State 451

   77 identifier: "identifier (T_STRING)" .

    $default  reduce using rule 77 (identifier)


State 452

    4 reserved_non_modifiers: "eval (T_EVAL)" .

    $default  reduce using rule 4 (reserved_non_modifiers)


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

   17 reserved_non_modifiers: "endif (T_ENDIF)" .

    $default  reduce using rule 17 (reserved_non_modifiers)


State 456

   18 reserved_non_modifiers: "echo (T_ECHO)" .

    $default  reduce using rule 18 (reserved_non_modifiers)


State 457

   19 reserved_non_modifiers: "do (T_DO)" .

    $default  reduce using rule 19 (reserved_non_modifiers)


State 458

   20 reserved_non_modifiers: "while (T_WHILE)" .

    $default  reduce using rule 20 (reserved_non_modifiers)


State 459

   21 reserved_non_modifiers: "endwhile (T_ENDWHILE)" .

    $default  reduce using rule 21 (reserved_non_modifiers)


State 460

   22 reserved_non_modifiers: "for (T_FOR)" .

    $default  reduce using rule 22 (reserved_non_modifiers)


State 461

   23 reserved_non_modifiers: "endfor (T_ENDFOR)" .

    $default  reduce using rule 23 (reserved_non_modifiers)


State 462

   24 reserved_non_modifiers: "foreach (T_FOREACH)" .

    $default  reduce using rule 24 (reserved_non_modifiers)


State 463

   25 reserved_non_modifiers: "endforeach (T_ENDFOREACH)" .

    $default  reduce using rule 25 (reserved_non_modifiers)


State 464

   26 reserved_non_modifiers: "declare (T_DECLARE)" .

    $default  reduce using rule 26 (reserved_non_modifiers)


State 465

   27 reserved_non_modifiers: "enddeclare (T_ENDDECLARE)" .

    $default  reduce using rule 27 (reserved_non_modifiers)


State 466

   28 reserved_non_modifiers: "as (T_AS)" .

    $default  reduce using rule 28 (reserved_non_modifiers)


State 467

   48 reserved_non_modifiers: "switch (T_SWITCH)" .

    $default  reduce using rule 48 (reserved_non_modifiers)


State 468

   49 reserved_non_modifiers: "endswitch (T_ENDSWITCH)" .

    $default  reduce using rule 49 (reserved_non_modifiers)


State 469

   50 reserved_non_modifiers: "case (T_CASE)" .

    $default  reduce using rule 50 (reserved_non_modifiers)


State 470

   51 reserved_non_modifiers: "default (T_DEFAULT)" .

    $default  reduce using rule 51 (reserved_non_modifiers)


State 471

   52 reserved_non_modifiers: "break (T_BREAK)" .

    $default  reduce using rule 52 (reserved_non_modifiers)


State 472

   40 reserved_non_modifiers: "continue (T_CONTINUE)" .

    $default  reduce using rule 40 (reserved_non_modifiers)


State 473

   41 reserved_non_modifiers: "goto (T_GOTO)" .

    $default  reduce using rule 41 (reserved_non_modifiers)


State 474

   42 reserved_non_modifiers: "function (T_FUNCTION)" .

    $default  reduce using rule 42 (reserved_non_modifiers)


State 475

   69 reserved_non_modifiers: "fn (T_FN)" .

    $default  reduce using rule 69 (reserved_non_modifiers)


State 476

   43 reserved_non_modifiers: "const (T_CONST)" .

    $default  reduce using rule 43 (reserved_non_modifiers)


State 477

   44 reserved_non_modifiers: "return (T_RETURN)" .

    $default  reduce using rule 44 (reserved_non_modifiers)


State 478

   29 reserved_non_modifiers: "try (T_TRY)" .

    $default  reduce using rule 29 (reserved_non_modifiers)


State 479

   30 reserved_non_modifiers: "catch (T_CATCH)" .

    $default  reduce using rule 30 (reserved_non_modifiers)


State 480

   31 reserved_non_modifiers: "finally (T_FINALLY)" .

    $default  reduce using rule 31 (reserved_non_modifiers)


State 481

   32 reserved_non_modifiers: "throw (T_THROW)" .

    $default  reduce using rule 32 (reserved_non_modifiers)


State 482

   33 reserved_non_modifiers: "use (T_USE)" .

    $default  reduce using rule 33 (reserved_non_modifiers)


State 483

   34 reserved_non_modifiers: "insteadof (T_INSTEADOF)" .

    $default  reduce using rule 34 (reserved_non_modifiers)


State 484

   35 reserved_non_modifiers: "global (T_GLOBAL)" .

    $default  reduce using rule 35 (reserved_non_modifiers)


State 485

   71 semi_reserved: "static (T_STATIC)" .

    $default  reduce using rule 71 (semi_reserved)


State 486

   72 semi_reserved: "abstract (T_ABSTRACT)" .

    $default  reduce using rule 72 (semi_reserved)


State 487

   73 semi_reserved: "final (T_FINAL)" .

    $default  reduce using rule 73 (semi_reserved)


State 488

   74 semi_reserved: "private (T_PRIVATE)" .

    $default  reduce using rule 74 (semi_reserved)


State 489

   75 semi_reserved: "protected (T_PROTECTED)" .

    $default  reduce using rule 75 (semi_reserved)


State 490

   76 semi_reserved: "public (T_PUBLIC)" .

    $default  reduce using rule 76 (semi_reserved)


State 491

   36 reserved_non_modifiers: "var (T_VAR)" .

    $default  reduce using rule 36 (reserved_non_modifiers)


State 492

   37 reserved_non_modifiers: "unset (T_UNSET)" .

    $default  reduce using rule 37 (reserved_non_modifiers)


State 493

   38 reserved_non_modifiers: "isset (T_ISSET)" .

    $default  reduce using rule 38 (reserved_non_modifiers)


State 494

   39 reserved_non_modifiers: "empty (T_EMPTY)" .

    $default  reduce using rule 39 (reserved_non_modifiers)


State 495

   60 reserved_non_modifiers: "class (T_CLASS)" .

    $default  reduce using rule 60 (reserved_non_modifiers)


State 496

   58 reserved_non_modifiers: "trait (T_TRAIT)" .

    $default  reduce using rule 58 (reserved_non_modifiers)


State 497

   59 reserved_non_modifiers: "interface (T_INTERFACE)" .

    $default  reduce using rule 59 (reserved_non_modifiers)


State 498

   55 reserved_non_modifiers: "extends (T_EXTENDS)" .

    $default  reduce using rule 55 (reserved_non_modifiers)


State 499

   56 reserved_non_modifiers: "implements (T_IMPLEMENTS)" .

    $default  reduce using rule 56 (reserved_non_modifiers)


State 500

   47 reserved_non_modifiers: "list (T_LIST)" .

    $default  reduce using rule 47 (reserved_non_modifiers)


State 501

   53 reserved_non_modifiers: "array (T_ARRAY)" .

    $default  reduce using rule 53 (reserved_non_modifiers)


State 502

   54 reserved_non_modifiers: "callable (T_CALLABLE)" .

    $default  reduce using rule 54 (reserved_non_modifiers)


State 503

   65 reserved_non_modifiers: "__LINE__ (T_LINE)" .

    $default  reduce using rule 65 (reserved_non_modifiers)


State 504

   66 reserved_non_modifiers: "__FILE__ (T_FILE)" .

    $default  reduce using rule 66 (reserved_non_modifiers)


State 505

   67 reserved_non_modifiers: "__DIR__ (T_DIR)" .

    $default  reduce using rule 67 (reserved_non_modifiers)


State 506

   61 reserved_non_modifiers: "__CLASS__ (T_CLASS_C)" .

    $default  reduce using rule 61 (reserved_non_modifiers)


State 507

   62 reserved_non_modifiers: "__TRAIT__ (T_TRAIT_C)" .

    $default  reduce using rule 62 (reserved_non_modifiers)


State 508

   64 reserved_non_modifiers: "__METHOD__ (T_METHOD_C)" .

    $default  reduce using rule 64 (reserved_non_modifiers)


State 509

   63 reserved_non_modifiers: "__FUNCTION__ (T_FUNC_C)" .

    $default  reduce using rule 63 (reserved_non_modifiers)


State 510

   57 reserved_non_modifiers: "namespace (T_NAMESPACE)" .

    $default  reduce using rule 57 (reserved_non_modifiers)


State 511

   68 reserved_non_modifiers: "__NAMESPACE__ (T_NS_C)" .

    $default  reduce using rule 68 (reserved_non_modifiers)


State 512

  462 member_name: '{' . expr '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 633
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 513

   70 semi_reserved: reserved_non_modifiers .

    $default  reduce using rule 70 (semi_reserved)


State 514

   78 identifier: semi_reserved .

    $default  reduce using rule 78 (identifier)


State 515

  430 constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .
  461 member_name: identifier .

    '('       reduce using rule 461 (member_name)
    $default  reduce using rule 430 (constant)


State 516

  453 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .
  463 member_name: simple_variable .

    '('       reduce using rule 463 (member_name)
    $default  reduce using rule 453 (static_member)


State 517

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

    '('  shift, and go to state 232

    argument_list  go to state 634


State 518

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

    ']'  shift, and go to state 635


State 519

  431 constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .
  461 member_name: identifier .

    '('       reduce using rule 461 (member_name)
    $default  reduce using rule 431 (constant)


State 520

  454 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .
  463 member_name: simple_variable .

    '('       reduce using rule 463 (member_name)
    $default  reduce using rule 454 (static_member)


State 521

  397 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name . argument_list

    '('  shift, and go to state 232

    argument_list  go to state 636


State 522

  464 property_name: "identifier (T_STRING)" .

    $default  reduce using rule 464 (property_name)


State 523

  465 property_name: '{' . expr '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 637
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 524

  466 property_name: simple_variable .

    $default  reduce using rule 466 (property_name)


State 525

  445 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name . argument_list
  449 variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name .

    '('  shift, and go to state 232

    $default  reduce using rule 449 (variable)

    argument_list  go to state 638


State 526

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

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


State 527

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

    ']'  shift, and go to state 640


State 528

  306 expr: variable '=' '&' . variable

    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "static (T_STATIC)"                           shift, and go to state 139
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 150
    '['                                           shift, and go to state 151
    '$'                                           shift, and go to state 83

    namespace_name         go to state 84
    name                   go to state 85
    function_call          go to state 103
    class_name             go to state 104
    dereferencable_scalar  go to state 152
    constant               go to state 153
    variable_class_name    go to state 108
    dereferencable         go to state 109
    callable_expr          go to state 110
    callable_variable      go to state 111
    variable               go to state 641
    simple_variable        go to state 113
    static_member          go to state 114


State 529

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

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

    $default  reduce using rule 305 (expr)


State 530

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

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

    $default  reduce using rule 308 (expr)


State 531

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

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

    $default  reduce using rule 309 (expr)


State 532

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

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

    $default  reduce using rule 310 (expr)


State 533

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

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

    $default  reduce using rule 312 (expr)


State 534

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

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

    $default  reduce using rule 313 (expr)


State 535

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

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

    $default  reduce using rule 314 (expr)


State 536

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

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

    $default  reduce using rule 315 (expr)


State 537

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

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

    $default  reduce using rule 316 (expr)


State 538

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

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

    $default  reduce using rule 317 (expr)


State 539

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

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

    $default  reduce using rule 318 (expr)


State 540

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

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

    $default  reduce using rule 319 (expr)


State 541

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

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

    $default  reduce using rule 311 (expr)


State 542

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

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

    $default  reduce using rule 320 (expr)


State 543

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

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

    $default  reduce using rule 376 (expr)


State 544

  299 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 585

    $default  reduce using rule 183 (extends_from)

    extends_from  go to state 642


State 545

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

    $default  reduce using rule 459 (new_variable)


State 546

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

    $default  reduce using rule 458 (new_variable)


State 547

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

    $default  reduce using rule 460 (new_variable)


State 548

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

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


State 549

  456 new_variable: new_variable '[' optional_expr . ']'

    ']'  shift, and go to state 644


State 550

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

    $default  reduce using rule 498 (internal_functions_in_yacc)


State 551

  436 dereferencable: '(' expr ')' .
  439 callable_expr: '(' expr ')' .

    '('       reduce using rule 439 (callable_expr)
    $default  reduce using rule 436 (dereferencable)


State 552

  411 dereferencable_scalar: '[' array_pair_list ']' .

    $default  reduce using rule 411 (dereferencable_scalar)


State 553

  404 exit_expr: '(' optional_expr ')' .

    $default  reduce using rule 404 (exit_expr)


State 554

  210 if_stmt_without_else: "if (T_IF)" '(' expr ')' . statement
  214 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    ':'                                           shift, and go to state 645
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    statement                   go to state 646
    if_stmt_without_else        go to state 94
    if_stmt                     go to state 95
    alt_if_stmt_without_else    go to state 96
    alt_if_stmt                 go to state 97
    new_expr                    go to state 98
    expr                        go to state 99
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 555

  291 echo_expr_list: echo_expr_list ',' echo_expr .

    $default  reduce using rule 291 (echo_expr_list)


State 556

  136 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 647
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 557

  135 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    ':'                                           shift, and go to state 648
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    statement                   go to state 649
    while_statement             go to state 650
    if_stmt_without_else        go to state 94
    if_stmt                     go to state 95
    alt_if_stmt_without_else    go to state 96
    alt_if_stmt                 go to state 97
    new_expr                    go to state 98
    expr                        go to state 99
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 558

  137 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 294 (for_exprs)

    namespace_name              go to state 84
    name                        go to state 85
    for_exprs                   go to state 651
    non_empty_for_exprs         go to state 317
    new_expr                    go to state 98
    expr                        go to state 318
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 559

  296 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 652
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 560

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

    '&'                                           shift, and go to state 653
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "static (T_STATIC)"                           shift, and go to state 139
    "list (T_LIST)"                               shift, and go to state 654
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 150
    '['                                           shift, and go to state 655
    '$'                                           shift, and go to state 83

    namespace_name         go to state 84
    name                   go to state 85
    foreach_variable       go to state 656
    function_call          go to state 103
    class_name             go to state 104
    dereferencable_scalar  go to state 152
    constant               go to state 153
    variable_class_name    go to state 108
    dereferencable         go to state 109
    callable_expr          go to state 110
    callable_variable      go to state 111
    variable               go to state 657
    simple_variable        go to state 113
    static_member          go to state 114


State 561

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

    $default  reduce using rule 150 ($@3)

    $@3  go to state 658


State 562

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

    ':'  shift, and go to state 659
    '{'  shift, and go to state 660

    switch_case_list  go to state 661


State 563

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

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

    $default  reduce using rule 384 (backup_doc_comment)

    backup_doc_comment  go to state 662


State 564

  122 const_list: const_list ',' const_decl .

    $default  reduce using rule 122 (const_list)


State 565

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

    $default  reduce using rule 157 (catch_list)

    catch_list  go to state 663


State 566

   82 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
  107 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 392
    '{'                      shift, and go to state 664


State 567

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

    $default  reduce using rule 119 (unprefixed_use_declaration)


State 568

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

    "identifier (T_STRING)"  shift, and go to state 116
    "function (T_FUNCTION)"  shift, and go to state 178
    "const (T_CONST)"        shift, and go to state 179

    namespace_name              go to state 574
    use_type                    go to state 665
    inline_use_declarations     go to state 666
    inline_use_declaration      go to state 667
    unprefixed_use_declaration  go to state 668


State 569

   82 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  105 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name . "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
  118 unprefixed_use_declaration: namespace_name .
  119                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

    "as (T_AS)"            shift, and go to state 333
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 669

    $default  reduce using rule 118 (unprefixed_use_declaration)


State 570

   82 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
  104 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" . '{' unprefixed_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 392
    '{'                      shift, and go to state 670


State 571

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

    $default  reduce using rule 98 (top_statement)


State 572

  100 top_statement: "use (T_USE)" use_type use_declarations ';' .

    $default  reduce using rule 100 (top_statement)


State 573

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

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

    namespace_name              go to state 574
    unprefixed_use_declaration  go to state 332


State 574

   82 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  118 unprefixed_use_declaration: namespace_name .
  119                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

    "as (T_AS)"            shift, and go to state 333
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 231

    $default  reduce using rule 118 (unprefixed_use_declaration)


State 575

  114 use_declarations: use_declarations ',' use_declaration .

    $default  reduce using rule 114 (use_declarations)


State 576

  239 global_var_list: global_var_list ',' global_var .

    $default  reduce using rule 239 (global_var_list)


State 577

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

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

    $default  reduce using rule 245 (static_var)


State 578

  242 static_var_list: static_var_list ',' static_var .

    $default  reduce using rule 242 (static_var_list)


State 579

  109 possible_comma: ',' .
  164 unset_variables: unset_variables ',' . unset_variable

    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "static (T_STATIC)"                           shift, and go to state 139
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 150
    '['                                           shift, and go to state 151
    '$'                                           shift, and go to state 83

    $default  reduce using rule 109 (possible_comma)

    namespace_name         go to state 84
    name                   go to state 85
    unset_variable         go to state 671
    function_call          go to state 103
    class_name             go to state 104
    dereferencable_scalar  go to state 152
    constant               go to state 153
    variable_class_name    go to state 108
    dereferencable         go to state 109
    callable_expr          go to state 110
    callable_variable      go to state 111
    variable               go to state 349
    simple_variable        go to state 113
    static_member          go to state 114


State 580

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

    ')'  shift, and go to state 672


State 581

  109 possible_comma: ',' .
  502 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 109 (possible_comma)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 350
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115
    isset_variable              go to state 673


State 582

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

    ')'  shift, and go to state 674


State 583

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

    $default  reduce using rule 495 (internal_functions_in_yacc)


State 584

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

    $default  reduce using rule 91 (top_statement)


State 585

  184 extends_from: "extends (T_EXTENDS)" . name

    "identifier (T_STRING)"    shift, and go to state 116
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 84
    name            go to state 675


State 586

  174 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 676

    $default  reduce using rule 187 (implements_list)

    implements_list  go to state 677


State 587

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

    '{'  shift, and go to state 678


State 588

  186 interface_extends_list: "extends (T_EXTENDS)" . name_list

    "identifier (T_STRING)"    shift, and go to state 116
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 84
    name            go to state 679
    name_list       go to state 680


State 589

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

    $default  reduce using rule 384 (backup_doc_comment)

    backup_doc_comment  go to state 681


State 590

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

    '='  shift, and go to state 682


State 591

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

    $default  reduce using rule 410 (dereferencable_scalar)


State 592

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

    $default  reduce using rule 485 (encaps_var)


State 593

  492 encaps_var_offset: '-' . "number (T_NUM_STRING)"

    "number (T_NUM_STRING)"  shift, and go to state 683


State 594

  490 encaps_var_offset: "identifier (T_STRING)" .

    $default  reduce using rule 490 (encaps_var_offset)


State 595

  493 encaps_var_offset: "variable (T_VARIABLE)" .

    $default  reduce using rule 493 (encaps_var_offset)


State 596

  491 encaps_var_offset: "number (T_NUM_STRING)" .

    $default  reduce using rule 491 (encaps_var_offset)


State 597

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

    ']'  shift, and go to state 684


State 598

  487 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '}' .

    $default  reduce using rule 487 (encaps_var)


State 599

  488 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 685
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 600

  486 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}' .

    $default  reduce using rule 486 (encaps_var)


State 601

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

    $default  reduce using rule 489 (encaps_var)


State 602

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

    $default  reduce using rule 80 (top_statement_list)

    top_statement_list  go to state 686


State 603

   79 top_statement_list: top_statement_list . top_statement
   96 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "const (T_CONST)"                             shift, and go to state 48
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "use (T_USE)"                                 shift, and go to state 52
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 687
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

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


State 604

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

    ')'  shift, and go to state 688


State 605

  303 expr: "list (T_LIST)" '(' array_pair_list . ')' '=' expr
  478 array_pair: "list (T_LIST)" '(' array_pair_list . ')'

    ')'  shift, and go to state 689


State 606

  474 array_pair: expr "=> (T_DOUBLE_ARROW)" '&' . variable

    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "static (T_STATIC)"                           shift, and go to state 139
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 150
    '['                                           shift, and go to state 151
    '$'                                           shift, and go to state 83

    namespace_name         go to state 84
    name                   go to state 85
    function_call          go to state 103
    class_name             go to state 104
    dereferencable_scalar  go to state 152
    constant               go to state 153
    variable_class_name    go to state 108
    dereferencable         go to state 109
    callable_expr          go to state 110
    callable_variable      go to state 111
    variable               go to state 690
    simple_variable        go to state 113
    static_member          go to state 114


State 607

  303 expr: "list (T_LIST)" . '(' array_pair_list ')' '=' expr
  477 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" . '(' array_pair_list ')'

    '('  shift, and go to state 691


State 608

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

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

    $default  reduce using rule 472 (array_pair)


State 609

  304 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 692
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 610

  470 non_empty_array_pair_list: non_empty_array_pair_list ',' possible_array_pair .

    $default  reduce using rule 470 (non_empty_array_pair_list)


State 611

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

    $default  reduce using rule 451 (simple_variable)


State 612

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

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

    $default  reduce using rule 238 (argument)


State 613

  109 possible_comma: ',' .
  236 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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 393
    '('                                           shift, and go to state 77
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    $default  reduce using rule 109 (possible_comma)

    namespace_name              go to state 84
    name                        go to state 85
    argument                    go to state 693
    new_expr                    go to state 98
    expr                        go to state 397
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 614

  234 argument_list: '(' non_empty_argument_list possible_comma . ')'

    ')'  shift, and go to state 694


State 615

  172 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 585

    $default  reduce using rule 183 (extends_from)

    extends_from  go to state 695


State 616

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

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


State 617

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

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


State 618

  124 inner_statement_list: inner_statement_list . inner_statement
  217 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "endif (T_ENDIF)"                             shift, and go to state 698
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 619

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

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

    $default  reduce using rule 359 (expr)


State 620

  358 expr: expr '?' expr ':' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 699
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 621

  227 type_expr: '?' . type

    "identifier (T_STRING)"    shift, and go to state 116
    "array (T_ARRAY)"          shift, and go to state 622
    "callable (T_CALLABLE)"    shift, and go to state 623
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 84
    name            go to state 624
    type            go to state 700


State 622

  228 type: "array (T_ARRAY)" .

    $default  reduce using rule 228 (type)


State 623

  229 type: "callable (T_CALLABLE)" .

    $default  reduce using rule 229 (type)


State 624

  230 type: name .

    $default  reduce using rule 230 (type)


State 625

  381 inline_function: fn returns_ref '(' parameter_list . ')' return_type backup_doc_comment "=> (T_DOUBLE_ARROW)" backup_fn_flags backup_lex_pos expr backup_fn_flags

    ')'  shift, and go to state 701


State 626

  218 parameter_list: non_empty_parameter_list .
  221 non_empty_parameter_list: non_empty_parameter_list . ',' parameter

    ','  shift, and go to state 702

    $default  reduce using rule 218 (parameter_list)


State 627

  220 non_empty_parameter_list: parameter .

    $default  reduce using rule 220 (non_empty_parameter_list)


State 628

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

    '&'  shift, and go to state 703

    $default  reduce using rule 167 (is_reference)

    is_reference  go to state 704


State 629

  225 optional_type: type_expr .

    $default  reduce using rule 225 (optional_type)


State 630

  226 type_expr: type .

    $default  reduce using rule 226 (type_expr)


State 631

  166 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 705


State 632

  380 inline_function: 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 621
    "identifier (T_STRING)"    shift, and go to state 116
    "array (T_ARRAY)"          shift, and go to state 622
    "callable (T_CALLABLE)"    shift, and go to state 623
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    ')'       reduce using rule 219 (parameter_list)
    $default  reduce using rule 224 (optional_type)

    namespace_name            go to state 84
    name                      go to state 624
    parameter_list            go to state 706
    non_empty_parameter_list  go to state 626
    parameter                 go to state 627
    optional_type             go to state 628
    type_expr                 go to state 629
    type                      go to state 630


State 633

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

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


State 634

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

    $default  reduce using rule 396 (function_call)


State 635

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

    $default  reduce using rule 443 (callable_variable)


State 636

  397 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list .

    $default  reduce using rule 397 (function_call)


State 637

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

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


State 638

  445 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name argument_list .

    $default  reduce using rule 445 (callable_variable)


State 639

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

    $default  reduce using rule 444 (callable_variable)


State 640

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

    $default  reduce using rule 442 (callable_variable)


State 641

  306 expr: variable '=' '&' variable .
  435 dereferencable: variable .

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


State 642

  299 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 676

    $default  reduce using rule 187 (implements_list)

    implements_list  go to state 709


State 643

  457 new_variable: new_variable '{' expr '}' .

    $default  reduce using rule 457 (new_variable)


State 644

  456 new_variable: new_variable '[' optional_expr ']' .

    $default  reduce using rule 456 (new_variable)


State 645

  214 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' ':' . inner_statement_list

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 710


State 646

  210 if_stmt_without_else: "if (T_IF)" '(' expr ')' statement .

    $default  reduce using rule 210 (if_stmt_without_else)


State 647

  136 statement: "do (T_DO)" statement "while (T_WHILE)" '(' expr . ')' ';'
  325 expr: expr . "|| (T_BOOLEAN_OR)" expr
  326     | expr . "&& (T_BOOLEAN_AND)" expr
  327     | expr . "or (T_LOGICAL_OR)" expr
  328     | expr . "and (T_LOGICAL_AND)" expr
  329     | expr . "xor (T_LOGICAL_XOR)" expr
  330     | expr . '|' expr
  331     | expr . '&' expr
  332     | expr . '^' expr
  333     | expr . '.' expr
  334     | expr . '+' expr
  335     | expr . '-' expr
  336     | expr . '*' expr
  337     | expr . "** (T_POW)" expr
  338     | expr . '/' expr
  339     | expr . '%' expr
  340     | expr . "<< (T_SL)" expr
  341     | expr . ">> (T_SR)" expr
  346     | expr . "=== (T_IS_IDENTICAL)" expr
  347     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  348     | expr . "== (T_IS_EQUAL)" expr
  349     | expr . "!= (T_IS_NOT_EQUAL)" expr
  350     | expr . '<' expr
  351     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  352     | expr . '>' expr
  353     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  354     | expr . "<=> (T_SPACESHIP)" expr
  355     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  358     | expr . '?' expr ':' expr
  359     | expr . '?' ':' expr
  360     | expr . "?? (T_COALESCE)" expr

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


State 648

  209 while_statement: ':' . inner_statement_list "endwhile (T_ENDWHILE)" ';'

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 712


State 649

  208 while_statement: statement .

    $default  reduce using rule 208 (while_statement)


State 650

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

    $default  reduce using rule 135 (statement)


State 651

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

    ';'  shift, and go to state 713


State 652

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

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

    $default  reduce using rule 296 (non_empty_for_exprs)


State 653

  190 foreach_variable: '&' . variable

    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "static (T_STATIC)"                           shift, and go to state 139
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 150
    '['                                           shift, and go to state 151
    '$'                                           shift, and go to state 83

    namespace_name         go to state 84
    name                   go to state 85
    function_call          go to state 103
    class_name             go to state 104
    dereferencable_scalar  go to state 152
    constant               go to state 153
    variable_class_name    go to state 108
    dereferencable         go to state 109
    callable_expr          go to state 110
    callable_variable      go to state 111
    variable               go to state 714
    simple_variable        go to state 113
    static_member          go to state 114


State 654

  191 foreach_variable: "list (T_LIST)" . '(' array_pair_list ')'

    '('  shift, and go to state 715


State 655

  192 foreach_variable: '[' . array_pair_list ']'
  411 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '&'                                           shift, and go to state 216
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 217
    "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 118
    "__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 218
    '('                                           shift, and go to state 77
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    $default  reduce using rule 468 (possible_array_pair)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 219
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    array_pair_list             go to state 716
    possible_array_pair         go to state 221
    non_empty_array_pair_list   go to state 222
    array_pair                  go to state 223
    internal_functions_in_yacc  go to state 115


State 656

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

    "=> (T_DOUBLE_ARROW)"  shift, and go to state 717
    ')'                    shift, and go to state 718


State 657

  189 foreach_variable: variable .
  435 dereferencable: variable .

    "=> (T_DOUBLE_ARROW)"  reduce using rule 189 (foreach_variable)
    ')'                    reduce using rule 189 (foreach_variable)
    $default               reduce using rule 435 (dereferencable)


State 658

  151 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    ':'                                           shift, and go to state 719
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    statement                   go to state 720
    declare_statement           go to state 721
    if_stmt_without_else        go to state 94
    if_stmt                     go to state 95
    alt_if_stmt_without_else    go to state 96
    alt_if_stmt                 go to state 97
    new_expr                    go to state 98
    expr                        go to state 99
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 659

  201 switch_case_list: ':' . case_list "endswitch (T_ENDSWITCH)" ';'
  202                 | ':' . ';' case_list "endswitch (T_ENDSWITCH)" ';'

    ';'  shift, and go to state 722

    $default  reduce using rule 203 (case_list)

    case_list  go to state 723


State 660

  199 switch_case_list: '{' . case_list '}'
  200                 | '{' . ';' case_list '}'

    ';'  shift, and go to state 724

    $default  reduce using rule 203 (case_list)

    case_list  go to state 725


State 661

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

    $default  reduce using rule 138 (statement)


State 662

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

    $default  reduce using rule 290 (const_decl)


State 663

  153 statement: "try (T_TRY)" '{' inner_statement_list '}' catch_list . finally_statement
  158 catch_list: catch_list . "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'

    "catch (T_CATCH)"      shift, and go to state 726
    "finally (T_FINALLY)"  shift, and go to state 727

    $default  reduce using rule 161 (finally_statement)

    finally_statement  go to state 728


State 664

  107 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 116
    "function (T_FUNCTION)"  shift, and go to state 178
    "const (T_CONST)"        shift, and go to state 179

    namespace_name              go to state 574
    use_type                    go to state 665
    inline_use_declarations     go to state 729
    inline_use_declaration      go to state 667
    unprefixed_use_declaration  go to state 668


State 665

  117 inline_use_declaration: use_type . unprefixed_use_declaration

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

    namespace_name              go to state 574
    unprefixed_use_declaration  go to state 730


State 666

  106 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations . possible_comma '}'
  110 inline_use_declarations: inline_use_declarations . ',' inline_use_declaration

    ','  shift, and go to state 731

    $default  reduce using rule 108 (possible_comma)

    possible_comma  go to state 732


State 667

  111 inline_use_declarations: inline_use_declaration .

    $default  reduce using rule 111 (inline_use_declarations)


State 668

  116 inline_use_declaration: unprefixed_use_declaration .

    $default  reduce using rule 116 (inline_use_declaration)


State 669

   82 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
  105 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" . '{' unprefixed_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 392
    '{'                      shift, and go to state 733


State 670

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

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

    namespace_name               go to state 574
    unprefixed_use_declarations  go to state 734
    unprefixed_use_declaration   go to state 735


State 671

  164 unset_variables: unset_variables ',' unset_variable .

    $default  reduce using rule 164 (unset_variables)


State 672

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

    ';'  shift, and go to state 736


State 673

  502 isset_variables: isset_variables ',' isset_variable .

    $default  reduce using rule 502 (isset_variables)


State 674

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

    $default  reduce using rule 494 (internal_functions_in_yacc)


State 675

  184 extends_from: "extends (T_EXTENDS)" name .

    $default  reduce using rule 184 (extends_from)


State 676

  188 implements_list: "implements (T_IMPLEMENTS)" . name_list

    "identifier (T_STRING)"    shift, and go to state 116
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 84
    name            go to state 679
    name_list       go to state 737


State 677

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

    $default  reduce using rule 384 (backup_doc_comment)

    backup_doc_comment  go to state 738


State 678

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

    $default  reduce using rule 247 (class_statement_list)

    class_statement_list  go to state 739


State 679

  252 name_list: name .

    $default  reduce using rule 252 (name_list)


State 680

  186 interface_extends_list: "extends (T_EXTENDS)" name_list .
  253 name_list: name_list . ',' name

    ','  shift, and go to state 740

    $default  reduce using rule 186 (interface_extends_list)


State 681

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

    '{'  shift, and go to state 741


State 682

  303 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 742
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 683

  492 encaps_var_offset: '-' "number (T_NUM_STRING)" .

    $default  reduce using rule 492 (encaps_var_offset)


State 684

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

    $default  reduce using rule 484 (encaps_var)


State 685

  325 expr: expr . "|| (T_BOOLEAN_OR)" expr
  326     | expr . "&& (T_BOOLEAN_AND)" expr
  327     | expr . "or (T_LOGICAL_OR)" expr
  328     | expr . "and (T_LOGICAL_AND)" expr
  329     | expr . "xor (T_LOGICAL_XOR)" expr
  330     | expr . '|' expr
  331     | expr . '&' expr
  332     | expr . '^' expr
  333     | expr . '.' expr
  334     | expr . '+' expr
  335     | expr . '-' expr
  336     | expr . '*' expr
  337     | expr . "** (T_POW)" expr
  338     | expr . '/' expr
  339     | expr . '%' expr
  340     | expr . "<< (T_SL)" expr
  341     | expr . ">> (T_SR)" expr
  346     | expr . "=== (T_IS_IDENTICAL)" expr
  347     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  348     | expr . "== (T_IS_EQUAL)" expr
  349     | expr . "!= (T_IS_NOT_EQUAL)" expr
  350     | expr . '<' expr
  351     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  352     | expr . '>' expr
  353     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  354     | expr . "<=> (T_SPACESHIP)" expr
  355     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  358     | expr . '?' expr ':' expr
  359     | expr . '?' ':' expr
  360     | expr . "?? (T_COALESCE)" expr
  488 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr . ']' '}'

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


State 686

   79 top_statement_list: top_statement_list . top_statement
   94 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "const (T_CONST)"                             shift, and go to state 48
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "use (T_USE)"                                 shift, and go to state 52
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 744
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

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


State 687

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

    $default  reduce using rule 96 (top_statement)


State 688

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

    ';'  shift, and go to state 745


State 689

  303 expr: "list (T_LIST)" '(' array_pair_list ')' . '=' expr
  478 array_pair: "list (T_LIST)" '(' array_pair_list ')' .

    '='  shift, and go to state 682

    $default  reduce using rule 478 (array_pair)


State 690

  435 dereferencable: variable .
  474 array_pair: expr "=> (T_DOUBLE_ARROW)" '&' variable .

    ')'       reduce using rule 474 (array_pair)
    ','       reduce using rule 474 (array_pair)
    ']'       reduce using rule 474 (array_pair)
    $default  reduce using rule 435 (dereferencable)


State 691

  303 expr: "list (T_LIST)" '(' . array_pair_list ')' '=' expr
  477 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '&'                                           shift, and go to state 216
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 217
    "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 118
    "__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 218
    '('                                           shift, and go to state 77
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    $default  reduce using rule 468 (possible_array_pair)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 219
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    array_pair_list             go to state 746
    possible_array_pair         go to state 221
    non_empty_array_pair_list   go to state 222
    array_pair                  go to state 223
    internal_functions_in_yacc  go to state 115


State 692

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

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

    $default  reduce using rule 304 (expr)


State 693

  236 non_empty_argument_list: non_empty_argument_list ',' argument .

    $default  reduce using rule 236 (non_empty_argument_list)


State 694

  234 argument_list: '(' non_empty_argument_list possible_comma ')' .

    $default  reduce using rule 234 (argument_list)


State 695

  172 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 676

    $default  reduce using rule 187 (implements_list)

    implements_list  go to state 747


State 696

  211 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    statement                   go to state 748
    if_stmt_without_else        go to state 94
    if_stmt                     go to state 95
    alt_if_stmt_without_else    go to state 96
    alt_if_stmt                 go to state 97
    new_expr                    go to state 98
    expr                        go to state 99
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 697

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

    ':'  shift, and go to state 749


State 698

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

    ';'  shift, and go to state 750


State 699

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

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

    $default  reduce using rule 358 (expr)


State 700

  227 type_expr: '?' type .

    $default  reduce using rule 227 (type_expr)


State 701

  381 inline_function: fn returns_ref '(' parameter_list ')' . return_type backup_doc_comment "=> (T_DOUBLE_ARROW)" backup_fn_flags backup_lex_pos expr backup_fn_flags

    ':'  shift, and go to state 751

    $default  reduce using rule 231 (return_type)

    return_type  go to state 752


State 702

  221 non_empty_parameter_list: non_empty_parameter_list ',' . parameter

    '?'                        shift, and go to state 621
    "identifier (T_STRING)"    shift, and go to state 116
    "array (T_ARRAY)"          shift, and go to state 622
    "callable (T_CALLABLE)"    shift, and go to state 623
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    $default  reduce using rule 224 (optional_type)

    namespace_name  go to state 84
    name            go to state 624
    parameter       go to state 753
    optional_type   go to state 628
    type_expr       go to state 629
    type            go to state 630


State 703

  168 is_reference: '&' .

    $default  reduce using rule 168 (is_reference)


State 704

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

    "... (T_ELLIPSIS)"  shift, and go to state 754

    $default  reduce using rule 169 (is_variadic)

    is_variadic  go to state 755


State 705

  166 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 621
    "identifier (T_STRING)"    shift, and go to state 116
    "array (T_ARRAY)"          shift, and go to state 622
    "callable (T_CALLABLE)"    shift, and go to state 623
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    ')'       reduce using rule 219 (parameter_list)
    $default  reduce using rule 224 (optional_type)

    namespace_name            go to state 84
    name                      go to state 624
    parameter_list            go to state 756
    non_empty_parameter_list  go to state 626
    parameter                 go to state 627
    optional_type             go to state 628
    type_expr                 go to state 629
    type                      go to state 630


State 706

  380 inline_function: 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 757


State 707

  462 member_name: '{' expr '}' .

    $default  reduce using rule 462 (member_name)


State 708

  465 property_name: '{' expr '}' .

    $default  reduce using rule 465 (property_name)


State 709

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

    $default  reduce using rule 384 (backup_doc_comment)

    backup_doc_comment  go to state 758


State 710

  124 inner_statement_list: inner_statement_list . inner_statement
  214 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 214 (alt_if_stmt_without_else)

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 711

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

    ';'  shift, and go to state 759


State 712

  124 inner_statement_list: inner_statement_list . inner_statement
  209 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "endwhile (T_ENDWHILE)"                       shift, and go to state 760
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 713

  137 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 294 (for_exprs)

    namespace_name              go to state 84
    name                        go to state 85
    for_exprs                   go to state 761
    non_empty_for_exprs         go to state 317
    new_expr                    go to state 98
    expr                        go to state 318
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 714

  190 foreach_variable: '&' variable .
  435 dereferencable: variable .

    "=> (T_DOUBLE_ARROW)"  reduce using rule 190 (foreach_variable)
    ')'                    reduce using rule 190 (foreach_variable)
    $default               reduce using rule 435 (dereferencable)


State 715

  191 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '&'                                           shift, and go to state 216
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 217
    "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 118
    "__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 218
    '('                                           shift, and go to state 77
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    $default  reduce using rule 468 (possible_array_pair)

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 219
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    array_pair_list             go to state 762
    possible_array_pair         go to state 221
    non_empty_array_pair_list   go to state 222
    array_pair                  go to state 223
    internal_functions_in_yacc  go to state 115


State 716

  192 foreach_variable: '[' array_pair_list . ']'
  411 dereferencable_scalar: '[' array_pair_list . ']'

    ']'  shift, and go to state 763


State 717

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

    '&'                                           shift, and go to state 653
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "static (T_STATIC)"                           shift, and go to state 139
    "list (T_LIST)"                               shift, and go to state 654
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 150
    '['                                           shift, and go to state 655
    '$'                                           shift, and go to state 83

    namespace_name         go to state 84
    name                   go to state 85
    foreach_variable       go to state 764
    function_call          go to state 103
    class_name             go to state 104
    dereferencable_scalar  go to state 152
    constant               go to state 153
    variable_class_name    go to state 108
    dereferencable         go to state 109
    callable_expr          go to state 110
    callable_variable      go to state 111
    variable               go to state 657
    simple_variable        go to state 113
    static_member          go to state 114


State 718

  148 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    ':'                                           shift, and go to state 765
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    statement                   go to state 766
    foreach_statement           go to state 767
    if_stmt_without_else        go to state 94
    if_stmt                     go to state 95
    alt_if_stmt_without_else    go to state 96
    alt_if_stmt                 go to state 97
    new_expr                    go to state 98
    expr                        go to state 99
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 719

  198 declare_statement: ':' . inner_statement_list "enddeclare (T_ENDDECLARE)" ';'

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 768


State 720

  197 declare_statement: statement .

    $default  reduce using rule 197 (declare_statement)


State 721

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

    $default  reduce using rule 151 (statement)


State 722

  202 switch_case_list: ':' ';' . case_list "endswitch (T_ENDSWITCH)" ';'

    $default  reduce using rule 203 (case_list)

    case_list  go to state 769


State 723

  201 switch_case_list: ':' case_list . "endswitch (T_ENDSWITCH)" ';'
  204 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  205          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "endswitch (T_ENDSWITCH)"  shift, and go to state 770
    "case (T_CASE)"            shift, and go to state 771
    "default (T_DEFAULT)"      shift, and go to state 772


State 724

  200 switch_case_list: '{' ';' . case_list '}'

    $default  reduce using rule 203 (case_list)

    case_list  go to state 773


State 725

  199 switch_case_list: '{' case_list . '}'
  204 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  205          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "case (T_CASE)"        shift, and go to state 771
    "default (T_DEFAULT)"  shift, and go to state 772
    '}'                    shift, and go to state 774


State 726

  158 catch_list: catch_list "catch (T_CATCH)" . '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'

    '('  shift, and go to state 775


State 727

  162 finally_statement: "finally (T_FINALLY)" . '{' inner_statement_list '}'

    '{'  shift, and go to state 776


State 728

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

    $default  reduce using rule 153 (statement)


State 729

  107 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations . possible_comma '}'
  110 inline_use_declarations: inline_use_declarations . ',' inline_use_declaration

    ','  shift, and go to state 731

    $default  reduce using rule 108 (possible_comma)

    possible_comma  go to state 777


State 730

  117 inline_use_declaration: use_type unprefixed_use_declaration .

    $default  reduce using rule 117 (inline_use_declaration)


State 731

  109 possible_comma: ',' .
  110 inline_use_declarations: inline_use_declarations ',' . inline_use_declaration

    "identifier (T_STRING)"  shift, and go to state 116
    "function (T_FUNCTION)"  shift, and go to state 178
    "const (T_CONST)"        shift, and go to state 179

    $default  reduce using rule 109 (possible_comma)

    namespace_name              go to state 574
    use_type                    go to state 665
    inline_use_declaration      go to state 778
    unprefixed_use_declaration  go to state 668


State 732

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

    '}'  shift, and go to state 779


State 733

  105 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' . unprefixed_use_declarations possible_comma '}'

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

    namespace_name               go to state 574
    unprefixed_use_declarations  go to state 780
    unprefixed_use_declaration   go to state 735


State 734

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

    ','  shift, and go to state 781

    $default  reduce using rule 108 (possible_comma)

    possible_comma  go to state 782


State 735

  113 unprefixed_use_declarations: unprefixed_use_declaration .

    $default  reduce using rule 113 (unprefixed_use_declarations)


State 736

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

    $default  reduce using rule 147 (statement)


State 737

  188 implements_list: "implements (T_IMPLEMENTS)" name_list .
  253 name_list: name_list . ',' name

    ','  shift, and go to state 740

    $default  reduce using rule 188 (implements_list)


State 738

  174 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 783


State 739

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

    "use (T_USE)"              shift, and go to state 784
    "static (T_STATIC)"        shift, and go to state 785
    "abstract (T_ABSTRACT)"    shift, and go to state 786
    "final (T_FINAL)"          shift, and go to state 787
    "private (T_PRIVATE)"      shift, and go to state 788
    "protected (T_PROTECTED)"  shift, and go to state 789
    "public (T_PUBLIC)"        shift, and go to state 790
    "var (T_VAR)"              shift, and go to state 791
    '}'                        shift, and go to state 792

    $default  reduce using rule 273 (method_modifiers)

    class_statement             go to state 793
    variable_modifiers          go to state 794
    method_modifiers            go to state 795
    non_empty_member_modifiers  go to state 796
    member_modifier             go to state 797


State 740

  253 name_list: name_list ',' . name

    "identifier (T_STRING)"    shift, and go to state 116
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 84
    name            go to state 798


State 741

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

    $default  reduce using rule 247 (class_statement_list)

    class_statement_list  go to state 799


State 742

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

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

    $default  reduce using rule 303 (expr)


State 743

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

    '}'  shift, and go to state 800


State 744

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

    $default  reduce using rule 94 (top_statement)


State 745

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

    $default  reduce using rule 131 (inner_statement)


State 746

  303 expr: "list (T_LIST)" '(' array_pair_list . ')' '=' expr
  477 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list . ')'

    ')'  shift, and go to state 801


State 747

  172 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 384 (backup_doc_comment)

    backup_doc_comment  go to state 802


State 748

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

    $default  reduce using rule 211 (if_stmt_without_else)


State 749

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

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 803


State 750

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

    $default  reduce using rule 217 (alt_if_stmt)


State 751

  232 return_type: ':' . type_expr

    '?'                        shift, and go to state 621
    "identifier (T_STRING)"    shift, and go to state 116
    "array (T_ARRAY)"          shift, and go to state 622
    "callable (T_CALLABLE)"    shift, and go to state 623
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 84
    name            go to state 624
    type_expr       go to state 804
    type            go to state 630


State 752

  381 inline_function: fn returns_ref '(' parameter_list ')' return_type . backup_doc_comment "=> (T_DOUBLE_ARROW)" backup_fn_flags backup_lex_pos expr backup_fn_flags

    $default  reduce using rule 384 (backup_doc_comment)

    backup_doc_comment  go to state 805


State 753

  221 non_empty_parameter_list: non_empty_parameter_list ',' parameter .

    $default  reduce using rule 221 (non_empty_parameter_list)


State 754

  170 is_variadic: "... (T_ELLIPSIS)" .

    $default  reduce using rule 170 (is_variadic)


State 755

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

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


State 756

  166 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 807


State 757

  380 inline_function: 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 808

    $default  reduce using rule 389 (lexical_vars)

    lexical_vars  go to state 809


State 758

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

    '{'  shift, and go to state 810


State 759

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

    $default  reduce using rule 136 (statement)


State 760

  209 while_statement: ':' inner_statement_list "endwhile (T_ENDWHILE)" . ';'

    ';'  shift, and go to state 811


State 761

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

    ')'  shift, and go to state 812


State 762

  191 foreach_variable: "list (T_LIST)" '(' array_pair_list . ')'

    ')'  shift, and go to state 813


State 763

  192 foreach_variable: '[' array_pair_list ']' .
  411 dereferencable_scalar: '[' array_pair_list ']' .

    "=> (T_DOUBLE_ARROW)"  reduce using rule 192 (foreach_variable)
    ')'                    reduce using rule 192 (foreach_variable)
    $default               reduce using rule 411 (dereferencable_scalar)


State 764

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

    ')'  shift, and go to state 814


State 765

  196 foreach_statement: ':' . inner_statement_list "endforeach (T_ENDFOREACH)" ';'

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 815


State 766

  195 foreach_statement: statement .

    $default  reduce using rule 195 (foreach_statement)


State 767

  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable ')' foreach_statement .

    $default  reduce using rule 148 (statement)


State 768

  124 inner_statement_list: inner_statement_list . inner_statement
  198 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "enddeclare (T_ENDDECLARE)"                   shift, and go to state 816
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 769

  202 switch_case_list: ':' ';' case_list . "endswitch (T_ENDSWITCH)" ';'
  204 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  205          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "endswitch (T_ENDSWITCH)"  shift, and go to state 817
    "case (T_CASE)"            shift, and go to state 771
    "default (T_DEFAULT)"      shift, and go to state 772


State 770

  201 switch_case_list: ':' case_list "endswitch (T_ENDSWITCH)" . ';'

    ';'  shift, and go to state 818


State 771

  204 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 819
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 772

  205 case_list: case_list "default (T_DEFAULT)" . case_separator inner_statement_list

    ':'  shift, and go to state 820
    ';'  shift, and go to state 821

    case_separator  go to state 822


State 773

  200 switch_case_list: '{' ';' case_list . '}'
  204 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  205          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "case (T_CASE)"        shift, and go to state 771
    "default (T_DEFAULT)"  shift, and go to state 772
    '}'                    shift, and go to state 823


State 774

  199 switch_case_list: '{' case_list '}' .

    $default  reduce using rule 199 (switch_case_list)


State 775

  158 catch_list: catch_list "catch (T_CATCH)" '(' . catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'

    "identifier (T_STRING)"    shift, and go to state 116
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name   go to state 84
    name             go to state 824
    catch_name_list  go to state 825


State 776

  162 finally_statement: "finally (T_FINALLY)" '{' . inner_statement_list '}'

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 826


State 777

  107 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma . '}'

    '}'  shift, and go to state 827


State 778

  110 inline_use_declarations: inline_use_declarations ',' inline_use_declaration .

    $default  reduce using rule 110 (inline_use_declarations)


State 779

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

    $default  reduce using rule 106 (mixed_group_use_declaration)


State 780

  105 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations . possible_comma '}'
  112 unprefixed_use_declarations: unprefixed_use_declarations . ',' unprefixed_use_declaration

    ','  shift, and go to state 781

    $default  reduce using rule 108 (possible_comma)

    possible_comma  go to state 828


State 781

  109 possible_comma: ',' .
  112 unprefixed_use_declarations: unprefixed_use_declarations ',' . unprefixed_use_declaration

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

    $default  reduce using rule 109 (possible_comma)

    namespace_name              go to state 574
    unprefixed_use_declaration  go to state 829


State 782

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

    '}'  shift, and go to state 830


State 783

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

    $default  reduce using rule 247 (class_statement_list)

    class_statement_list  go to state 831


State 784

  250 class_statement: "use (T_USE)" . name_list trait_adaptations

    "identifier (T_STRING)"    shift, and go to state 116
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 84
    name            go to state 679
    name_list       go to state 832


State 785

  280 member_modifier: "static (T_STATIC)" .

    $default  reduce using rule 280 (member_modifier)


State 786

  281 member_modifier: "abstract (T_ABSTRACT)" .

    $default  reduce using rule 281 (member_modifier)


State 787

  282 member_modifier: "final (T_FINAL)" .

    $default  reduce using rule 282 (member_modifier)


State 788

  279 member_modifier: "private (T_PRIVATE)" .

    $default  reduce using rule 279 (member_modifier)


State 789

  278 member_modifier: "protected (T_PROTECTED)" .

    $default  reduce using rule 278 (member_modifier)


State 790

  277 member_modifier: "public (T_PUBLIC)" .

    $default  reduce using rule 277 (member_modifier)


State 791

  272 variable_modifiers: "var (T_VAR)" .

    $default  reduce using rule 272 (variable_modifiers)


State 792

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

    $default  reduce using rule 180 (trait_declaration_statement)


State 793

  246 class_statement_list: class_statement_list class_statement .

    $default  reduce using rule 246 (class_statement_list)


State 794

  248 class_statement: variable_modifiers . optional_type property_list ';'

    '?'                        shift, and go to state 621
    "identifier (T_STRING)"    shift, and go to state 116
    "array (T_ARRAY)"          shift, and go to state 622
    "callable (T_CALLABLE)"    shift, and go to state 623
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    $default  reduce using rule 224 (optional_type)

    namespace_name  go to state 84
    name            go to state 624
    optional_type   go to state 833
    type_expr       go to state 629
    type            go to state 630


State 795

  249 class_statement: method_modifiers . "const (T_CONST)" class_const_list ';'
  251                | 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 46
    "const (T_CONST)"        shift, and go to state 834

    function  go to state 835


State 796

  271 variable_modifiers: non_empty_member_modifiers .
  274 method_modifiers: non_empty_member_modifiers .
  276 non_empty_member_modifiers: non_empty_member_modifiers . member_modifier

    "static (T_STATIC)"        shift, and go to state 785
    "abstract (T_ABSTRACT)"    shift, and go to state 786
    "final (T_FINAL)"          shift, and go to state 787
    "private (T_PRIVATE)"      shift, and go to state 788
    "protected (T_PROTECTED)"  shift, and go to state 789
    "public (T_PUBLIC)"        shift, and go to state 790

    "function (T_FUNCTION)"  reduce using rule 274 (method_modifiers)
    "const (T_CONST)"        reduce using rule 274 (method_modifiers)
    $default                 reduce using rule 271 (variable_modifiers)

    member_modifier  go to state 836


State 797

  275 non_empty_member_modifiers: member_modifier .

    $default  reduce using rule 275 (non_empty_member_modifiers)


State 798

  253 name_list: name_list ',' name .

    $default  reduce using rule 253 (name_list)


State 799

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

    "use (T_USE)"              shift, and go to state 784
    "static (T_STATIC)"        shift, and go to state 785
    "abstract (T_ABSTRACT)"    shift, and go to state 786
    "final (T_FINAL)"          shift, and go to state 787
    "private (T_PRIVATE)"      shift, and go to state 788
    "protected (T_PROTECTED)"  shift, and go to state 789
    "public (T_PUBLIC)"        shift, and go to state 790
    "var (T_VAR)"              shift, and go to state 791
    '}'                        shift, and go to state 837

    $default  reduce using rule 273 (method_modifiers)

    class_statement             go to state 793
    variable_modifiers          go to state 794
    method_modifiers            go to state 795
    non_empty_member_modifiers  go to state 796
    member_modifier             go to state 797


State 800

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

    $default  reduce using rule 488 (encaps_var)


State 801

  303 expr: "list (T_LIST)" '(' array_pair_list ')' . '=' expr
  477 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')' .

    '='  shift, and go to state 682

    $default  reduce using rule 477 (array_pair)


State 802

  172 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 838


State 803

  124 inner_statement_list: inner_statement_list . inner_statement
  215 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 215 (alt_if_stmt_without_else)

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 804

  232 return_type: ':' type_expr .

    $default  reduce using rule 232 (return_type)


State 805

  381 inline_function: fn returns_ref '(' parameter_list ')' return_type backup_doc_comment . "=> (T_DOUBLE_ARROW)" backup_fn_flags backup_lex_pos expr backup_fn_flags

    "=> (T_DOUBLE_ARROW)"  shift, and go to state 839


State 806

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

    '='  shift, and go to state 840

    $default  reduce using rule 222 (parameter)


State 807

  166 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 751

    $default  reduce using rule 231 (return_type)

    return_type  go to state 841


State 808

  390 lexical_vars: "use (T_USE)" . '(' lexical_var_list ')'

    '('  shift, and go to state 842


State 809

  380 inline_function: 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 751

    $default  reduce using rule 231 (return_type)

    return_type  go to state 843


State 810

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

    $default  reduce using rule 247 (class_statement_list)

    class_statement_list  go to state 844


State 811

  209 while_statement: ':' inner_statement_list "endwhile (T_ENDWHILE)" ';' .

    $default  reduce using rule 209 (while_statement)


State 812

  137 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    ':'                                           shift, and go to state 845
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    statement                   go to state 846
    for_statement               go to state 847
    if_stmt_without_else        go to state 94
    if_stmt                     go to state 95
    alt_if_stmt_without_else    go to state 96
    alt_if_stmt                 go to state 97
    new_expr                    go to state 98
    expr                        go to state 99
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 813

  191 foreach_variable: "list (T_LIST)" '(' array_pair_list ')' .

    $default  reduce using rule 191 (foreach_variable)


State 814

  149 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    ':'                                           shift, and go to state 765
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    statement                   go to state 766
    foreach_statement           go to state 848
    if_stmt_without_else        go to state 94
    if_stmt                     go to state 95
    alt_if_stmt_without_else    go to state 96
    alt_if_stmt                 go to state 97
    new_expr                    go to state 98
    expr                        go to state 99
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 815

  124 inner_statement_list: inner_statement_list . inner_statement
  196 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "endforeach (T_ENDFOREACH)"                   shift, and go to state 849
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 816

  198 declare_statement: ':' inner_statement_list "enddeclare (T_ENDDECLARE)" . ';'

    ';'  shift, and go to state 850


State 817

  202 switch_case_list: ':' ';' case_list "endswitch (T_ENDSWITCH)" . ';'

    ';'  shift, and go to state 851


State 818

  201 switch_case_list: ':' case_list "endswitch (T_ENDSWITCH)" ';' .

    $default  reduce using rule 201 (switch_case_list)


State 819

  204 case_list: case_list "case (T_CASE)" expr . case_separator inner_statement_list
  325 expr: expr . "|| (T_BOOLEAN_OR)" expr
  326     | expr . "&& (T_BOOLEAN_AND)" expr
  327     | expr . "or (T_LOGICAL_OR)" expr
  328     | expr . "and (T_LOGICAL_AND)" expr
  329     | expr . "xor (T_LOGICAL_XOR)" expr
  330     | expr . '|' expr
  331     | expr . '&' expr
  332     | expr . '^' expr
  333     | expr . '.' expr
  334     | expr . '+' expr
  335     | expr . '-' expr
  336     | expr . '*' expr
  337     | expr . "** (T_POW)" expr
  338     | expr . '/' expr
  339     | expr . '%' expr
  340     | expr . "<< (T_SL)" expr
  341     | expr . ">> (T_SR)" expr
  346     | expr . "=== (T_IS_IDENTICAL)" expr
  347     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  348     | expr . "== (T_IS_EQUAL)" expr
  349     | expr . "!= (T_IS_NOT_EQUAL)" expr
  350     | expr . '<' expr
  351     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  352     | expr . '>' expr
  353     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  354     | expr . "<=> (T_SPACESHIP)" expr
  355     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  358     | expr . '?' expr ':' expr
  359     | expr . '?' ':' expr
  360     | expr . "?? (T_COALESCE)" expr

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

    case_separator  go to state 852


State 820

  206 case_separator: ':' .

    $default  reduce using rule 206 (case_separator)


State 821

  207 case_separator: ';' .

    $default  reduce using rule 207 (case_separator)


State 822

  205 case_list: case_list "default (T_DEFAULT)" case_separator . inner_statement_list

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 853


State 823

  200 switch_case_list: '{' ';' case_list '}' .

    $default  reduce using rule 200 (switch_case_list)


State 824

  159 catch_name_list: name .

    $default  reduce using rule 159 (catch_name_list)


State 825

  158 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list . "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'
  160 catch_name_list: catch_name_list . '|' name

    '|'                      shift, and go to state 854
    "variable (T_VARIABLE)"  shift, and go to state 855


State 826

  124 inner_statement_list: inner_statement_list . inner_statement
  162 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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 856
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 827

  107 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}' .

    $default  reduce using rule 107 (mixed_group_use_declaration)


State 828

  105 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma . '}'

    '}'  shift, and go to state 857


State 829

  112 unprefixed_use_declarations: unprefixed_use_declarations ',' unprefixed_use_declaration .

    $default  reduce using rule 112 (unprefixed_use_declarations)


State 830

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

    $default  reduce using rule 104 (group_use_declaration)


State 831

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

    "use (T_USE)"              shift, and go to state 784
    "static (T_STATIC)"        shift, and go to state 785
    "abstract (T_ABSTRACT)"    shift, and go to state 786
    "final (T_FINAL)"          shift, and go to state 787
    "private (T_PRIVATE)"      shift, and go to state 788
    "protected (T_PROTECTED)"  shift, and go to state 789
    "public (T_PUBLIC)"        shift, and go to state 790
    "var (T_VAR)"              shift, and go to state 791
    '}'                        shift, and go to state 858

    $default  reduce using rule 273 (method_modifiers)

    class_statement             go to state 793
    variable_modifiers          go to state 794
    method_modifiers            go to state 795
    non_empty_member_modifiers  go to state 796
    member_modifier             go to state 797


State 832

  250 class_statement: "use (T_USE)" name_list . trait_adaptations
  253 name_list: name_list . ',' name

    ';'  shift, and go to state 859
    '{'  shift, and go to state 860
    ','  shift, and go to state 740

    trait_adaptations  go to state 861


State 833

  248 class_statement: variable_modifiers optional_type . property_list ';'

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

    property_list  go to state 863
    property       go to state 864


State 834

  249 class_statement: method_modifiers "const (T_CONST)" . class_const_list ';'

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

    reserved_non_modifiers  go to state 513
    semi_reserved           go to state 514
    identifier              go to state 865
    class_const_list        go to state 866
    class_const_decl        go to state 867


State 835

  251 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 271

    $default  reduce using rule 387 (returns_ref)

    returns_ref  go to state 868


State 836

  276 non_empty_member_modifiers: non_empty_member_modifiers member_modifier .

    $default  reduce using rule 276 (non_empty_member_modifiers)


State 837

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

    $default  reduce using rule 182 (interface_declaration_statement)


State 838

  172 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 247 (class_statement_list)

    class_statement_list  go to state 869


State 839

  381 inline_function: fn returns_ref '(' parameter_list ')' return_type backup_doc_comment "=> (T_DOUBLE_ARROW)" . backup_fn_flags backup_lex_pos expr backup_fn_flags

    $default  reduce using rule 385 (backup_fn_flags)

    backup_fn_flags  go to state 870


State 840

  223 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 871
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 841

  166 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 385 (backup_fn_flags)

    backup_fn_flags  go to state 872


State 842

  390 lexical_vars: "use (T_USE)" '(' . lexical_var_list ')'

    '&'                      shift, and go to state 873
    "variable (T_VARIABLE)"  shift, and go to state 874

    lexical_var_list  go to state 875
    lexical_var       go to state 876


State 843

  380 inline_function: 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 385 (backup_fn_flags)

    backup_fn_flags  go to state 877


State 844

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

    "use (T_USE)"              shift, and go to state 784
    "static (T_STATIC)"        shift, and go to state 785
    "abstract (T_ABSTRACT)"    shift, and go to state 786
    "final (T_FINAL)"          shift, and go to state 787
    "private (T_PRIVATE)"      shift, and go to state 788
    "protected (T_PROTECTED)"  shift, and go to state 789
    "public (T_PUBLIC)"        shift, and go to state 790
    "var (T_VAR)"              shift, and go to state 791
    '}'                        shift, and go to state 878

    $default  reduce using rule 273 (method_modifiers)

    class_statement             go to state 793
    variable_modifiers          go to state 794
    method_modifiers            go to state 795
    non_empty_member_modifiers  go to state 796
    member_modifier             go to state 797


State 845

  194 for_statement: ':' . inner_statement_list "endfor (T_ENDFOR)" ';'

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 879


State 846

  193 for_statement: statement .

    $default  reduce using rule 193 (for_statement)


State 847

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

    $default  reduce using rule 137 (statement)


State 848

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

    $default  reduce using rule 149 (statement)


State 849

  196 foreach_statement: ':' inner_statement_list "endforeach (T_ENDFOREACH)" . ';'

    ';'  shift, and go to state 880


State 850

  198 declare_statement: ':' inner_statement_list "enddeclare (T_ENDDECLARE)" ';' .

    $default  reduce using rule 198 (declare_statement)


State 851

  202 switch_case_list: ':' ';' case_list "endswitch (T_ENDSWITCH)" ';' .

    $default  reduce using rule 202 (switch_case_list)


State 852

  204 case_list: case_list "case (T_CASE)" expr case_separator . inner_statement_list

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 881


State 853

  124 inner_statement_list: inner_statement_list . inner_statement
  205 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 205 (case_list)

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 854

  160 catch_name_list: catch_name_list '|' . name

    "identifier (T_STRING)"    shift, and go to state 116
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 84
    name            go to state 882


State 855

  158 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" . ')' '{' inner_statement_list '}'

    ')'  shift, and go to state 883


State 856

  162 finally_statement: "finally (T_FINALLY)" '{' inner_statement_list '}' .

    $default  reduce using rule 162 (finally_statement)


State 857

  105 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}' .

    $default  reduce using rule 105 (group_use_declaration)


State 858

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

    $default  reduce using rule 174 (class_declaration_statement)


State 859

  254 trait_adaptations: ';' .

    $default  reduce using rule 254 (trait_adaptations)


State 860

  255 trait_adaptations: '{' . '}'
  256                  | '{' . trait_adaptation_list '}'

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

    reserved_non_modifiers           go to state 513
    semi_reserved                    go to state 514
    identifier                       go to state 887
    namespace_name                   go to state 84
    name                             go to state 888
    trait_adaptation_list            go to state 889
    trait_adaptation                 go to state 890
    trait_precedence                 go to state 891
    trait_alias                      go to state 892
    trait_method_reference           go to state 893
    absolute_trait_method_reference  go to state 894


State 861

  250 class_statement: "use (T_USE)" name_list trait_adaptations .

    $default  reduce using rule 250 (class_statement)


State 862

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

    '='  shift, and go to state 895

    $default  reduce using rule 384 (backup_doc_comment)

    backup_doc_comment  go to state 896


State 863

  248 class_statement: variable_modifiers optional_type property_list . ';'
  283 property_list: property_list . ',' property

    ';'  shift, and go to state 897
    ','  shift, and go to state 898


State 864

  284 property_list: property .

    $default  reduce using rule 284 (property_list)


State 865

  289 class_const_decl: identifier . '=' expr backup_doc_comment

    '='  shift, and go to state 899


State 866

  249 class_statement: method_modifiers "const (T_CONST)" class_const_list . ';'
  287 class_const_list: class_const_list . ',' class_const_decl

    ';'  shift, and go to state 900
    ','  shift, and go to state 901


State 867

  288 class_const_list: class_const_decl .

    $default  reduce using rule 288 (class_const_list)


State 868

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

    reserved_non_modifiers  go to state 513
    semi_reserved           go to state 514
    identifier              go to state 902


State 869

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

    "use (T_USE)"              shift, and go to state 784
    "static (T_STATIC)"        shift, and go to state 785
    "abstract (T_ABSTRACT)"    shift, and go to state 786
    "final (T_FINAL)"          shift, and go to state 787
    "private (T_PRIVATE)"      shift, and go to state 788
    "protected (T_PROTECTED)"  shift, and go to state 789
    "public (T_PUBLIC)"        shift, and go to state 790
    "var (T_VAR)"              shift, and go to state 791
    '}'                        shift, and go to state 903

    $default  reduce using rule 273 (method_modifiers)

    class_statement             go to state 793
    variable_modifiers          go to state 794
    method_modifiers            go to state 795
    non_empty_member_modifiers  go to state 796
    member_modifier             go to state 797


State 870

  381 inline_function: fn returns_ref '(' parameter_list ')' return_type backup_doc_comment "=> (T_DOUBLE_ARROW)" backup_fn_flags . backup_lex_pos expr backup_fn_flags

    $default  reduce using rule 386 (backup_lex_pos)

    backup_lex_pos  go to state 904


State 871

  223 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)" '=' expr .
  325 expr: expr . "|| (T_BOOLEAN_OR)" expr
  326     | expr . "&& (T_BOOLEAN_AND)" expr
  327     | expr . "or (T_LOGICAL_OR)" expr
  328     | expr . "and (T_LOGICAL_AND)" expr
  329     | expr . "xor (T_LOGICAL_XOR)" expr
  330     | expr . '|' expr
  331     | expr . '&' expr
  332     | expr . '^' expr
  333     | expr . '.' expr
  334     | expr . '+' expr
  335     | expr . '-' expr
  336     | expr . '*' expr
  337     | expr . "** (T_POW)" expr
  338     | expr . '/' expr
  339     | expr . '%' expr
  340     | expr . "<< (T_SL)" expr
  341     | expr . ">> (T_SR)" expr
  346     | expr . "=== (T_IS_IDENTICAL)" expr
  347     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  348     | expr . "== (T_IS_EQUAL)" expr
  349     | expr . "!= (T_IS_NOT_EQUAL)" expr
  350     | expr . '<' expr
  351     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  352     | expr . '>' expr
  353     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  354     | expr . "<=> (T_SPACESHIP)" expr
  355     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  358     | expr . '?' expr ':' expr
  359     | expr . '?' ':' expr
  360     | expr . "?? (T_COALESCE)" expr

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

    $default  reduce using rule 223 (parameter)


State 872

  166 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 905


State 873

  394 lexical_var: '&' . "variable (T_VARIABLE)"

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


State 874

  393 lexical_var: "variable (T_VARIABLE)" .

    $default  reduce using rule 393 (lexical_var)


State 875

  390 lexical_vars: "use (T_USE)" '(' lexical_var_list . ')'
  391 lexical_var_list: lexical_var_list . ',' lexical_var

    ')'  shift, and go to state 907
    ','  shift, and go to state 908


State 876

  392 lexical_var_list: lexical_var .

    $default  reduce using rule 392 (lexical_var_list)


State 877

  380 inline_function: 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 909


State 878

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

    $default  reduce using rule 299 (anonymous_class)


State 879

  124 inner_statement_list: inner_statement_list . inner_statement
  194 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "endfor (T_ENDFOR)"                           shift, and go to state 910
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 880

  196 foreach_statement: ':' inner_statement_list "endforeach (T_ENDFOREACH)" ';' .

    $default  reduce using rule 196 (foreach_statement)


State 881

  124 inner_statement_list: inner_statement_list . inner_statement
  204 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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
    '$'                                           shift, and go to state 83

    $default  reduce using rule 204 (case_list)

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 882

  160 catch_name_list: catch_name_list '|' name .

    $default  reduce using rule 160 (catch_name_list)


State 883

  158 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' . '{' inner_statement_list '}'

    '{'  shift, and go to state 911


State 884

   77 identifier: "identifier (T_STRING)" .
   81 namespace_name: "identifier (T_STRING)" .

    "as (T_AS)"  reduce using rule 77 (identifier)
    $default     reduce using rule 81 (namespace_name)


State 885

   57 reserved_non_modifiers: "namespace (T_NAMESPACE)" .
   84 name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name

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

    $default  reduce using rule 57 (reserved_non_modifiers)


State 886

  255 trait_adaptations: '{' '}' .

    $default  reduce using rule 255 (trait_adaptations)


State 887

  266 trait_method_reference: identifier .

    $default  reduce using rule 266 (trait_method_reference)


State 888

  268 absolute_trait_method_reference: name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier

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


State 889

  256 trait_adaptations: '{' trait_adaptation_list . '}'
  258 trait_adaptation_list: trait_adaptation_list . trait_adaptation

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

    reserved_non_modifiers           go to state 513
    semi_reserved                    go to state 514
    identifier                       go to state 887
    namespace_name                   go to state 84
    name                             go to state 888
    trait_adaptation                 go to state 914
    trait_precedence                 go to state 891
    trait_alias                      go to state 892
    trait_method_reference           go to state 893
    absolute_trait_method_reference  go to state 894


State 890

  257 trait_adaptation_list: trait_adaptation .

    $default  reduce using rule 257 (trait_adaptation_list)


State 891

  259 trait_adaptation: trait_precedence . ';'

    ';'  shift, and go to state 915


State 892

  260 trait_adaptation: trait_alias . ';'

    ';'  shift, and go to state 916


State 893

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

    "as (T_AS)"  shift, and go to state 917


State 894

  261 trait_precedence: absolute_trait_method_reference . "insteadof (T_INSTEADOF)" name_list
  267 trait_method_reference: absolute_trait_method_reference .

    "insteadof (T_INSTEADOF)"  shift, and go to state 918

    $default  reduce using rule 267 (trait_method_reference)


State 895

  286 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 919
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 896

  285 property: "variable (T_VARIABLE)" backup_doc_comment .

    $default  reduce using rule 285 (property)


State 897

  248 class_statement: variable_modifiers optional_type property_list ';' .

    $default  reduce using rule 248 (class_statement)


State 898

  283 property_list: property_list ',' . property

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

    property  go to state 920


State 899

  289 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 921
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 900

  249 class_statement: method_modifiers "const (T_CONST)" class_const_list ';' .

    $default  reduce using rule 249 (class_statement)


State 901

  287 class_const_list: class_const_list ',' . class_const_decl

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

    reserved_non_modifiers  go to state 513
    semi_reserved           go to state 514
    identifier              go to state 865
    class_const_decl        go to state 922


State 902

  251 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 384 (backup_doc_comment)

    backup_doc_comment  go to state 923


State 903

  172 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 172 (class_declaration_statement)


State 904

  381 inline_function: fn returns_ref '(' parameter_list ')' return_type backup_doc_comment "=> (T_DOUBLE_ARROW)" backup_fn_flags backup_lex_pos . expr backup_fn_flags

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 116
    "variable (T_VARIABLE)"                       shift, and go to state 28
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "static (T_STATIC)"                           shift, and go to state 117
    "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 118
    "__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
    '$'                                           shift, and go to state 83

    namespace_name              go to state 84
    name                        go to state 85
    new_expr                    go to state 98
    expr                        go to state 924
    inline_function             go to state 100
    fn                          go to state 101
    function                    go to state 120
    function_call               go to state 103
    class_name                  go to state 104
    dereferencable_scalar       go to state 105
    scalar                      go to state 106
    constant                    go to state 107
    variable_class_name         go to state 108
    dereferencable              go to state 109
    callable_expr               go to state 110
    callable_variable           go to state 111
    variable                    go to state 112
    simple_variable             go to state 113
    static_member               go to state 114
    internal_functions_in_yacc  go to state 115


State 905

  166 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 125 (inner_statement_list)

    inner_statement_list  go to state 925


State 906

  394 lexical_var: '&' "variable (T_VARIABLE)" .

    $default  reduce using rule 394 (lexical_var)


State 907

  390 lexical_vars: "use (T_USE)" '(' lexical_var_list ')' .

    $default  reduce using rule 390 (lexical_vars)


State 908

  391 lexical_var_list: lexical_var_list ',' . lexical_var

    '&'                      shift, and go to state 873
    "variable (T_VARIABLE)"  shift, and go to state 874

    lexical_var  go to state 926


State 909

  380 inline_function: 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 125 (inner_statement_list)

    inner_statement_list  go to state 927


State 910

  194 for_statement: ':' inner_statement_list "endfor (T_ENDFOR)" . ';'

    ';'  shift, and go to state 928


State 911

  158 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' . inner_statement_list '}'

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 929


State 912

  268 absolute_trait_method_reference: name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier

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

    reserved_non_modifiers  go to state 513
    semi_reserved           go to state 514
    identifier              go to state 930


State 913

  256 trait_adaptations: '{' trait_adaptation_list '}' .

    $default  reduce using rule 256 (trait_adaptations)


State 914

  258 trait_adaptation_list: trait_adaptation_list trait_adaptation .

    $default  reduce using rule 258 (trait_adaptation_list)


State 915

  259 trait_adaptation: trait_precedence ';' .

    $default  reduce using rule 259 (trait_adaptation)


State 916

  260 trait_adaptation: trait_alias ';' .

    $default  reduce using rule 260 (trait_adaptation)


State 917

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

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

    reserved_non_modifiers  go to state 932
    member_modifier         go to state 933


State 918

  261 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" . name_list

    "identifier (T_STRING)"    shift, and go to state 116
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 84
    name            go to state 679
    name_list       go to state 934


State 919

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

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

    $default  reduce using rule 384 (backup_doc_comment)

    backup_doc_comment  go to state 935


State 920

  283 property_list: property_list ',' property .

    $default  reduce using rule 283 (property_list)


State 921

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

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

    $default  reduce using rule 384 (backup_doc_comment)

    backup_doc_comment  go to state 936


State 922

  287 class_const_list: class_const_list ',' class_const_decl .

    $default  reduce using rule 287 (class_const_list)


State 923

  251 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 937


State 924

  325 expr: expr . "|| (T_BOOLEAN_OR)" expr
  326     | expr . "&& (T_BOOLEAN_AND)" expr
  327     | expr . "or (T_LOGICAL_OR)" expr
  328     | expr . "and (T_LOGICAL_AND)" expr
  329     | expr . "xor (T_LOGICAL_XOR)" expr
  330     | expr . '|' expr
  331     | expr . '&' expr
  332     | expr . '^' expr
  333     | expr . '.' expr
  334     | expr . '+' expr
  335     | expr . '-' expr
  336     | expr . '*' expr
  337     | expr . "** (T_POW)" expr
  338     | expr . '/' expr
  339     | expr . '%' expr
  340     | expr . "<< (T_SL)" expr
  341     | expr . ">> (T_SR)" expr
  346     | expr . "=== (T_IS_IDENTICAL)" expr
  347     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  348     | expr . "== (T_IS_EQUAL)" expr
  349     | expr . "!= (T_IS_NOT_EQUAL)" expr
  350     | expr . '<' expr
  351     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  352     | expr . '>' expr
  353     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  354     | expr . "<=> (T_SPACESHIP)" expr
  355     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  358     | expr . '?' expr ':' expr
  359     | expr . '?' ':' expr
  360     | expr . "?? (T_COALESCE)" expr
  381 inline_function: fn returns_ref '(' parameter_list ')' return_type backup_doc_comment "=> (T_DOUBLE_ARROW)" backup_fn_flags backup_lex_pos expr . backup_fn_flags

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

    $default  reduce using rule 385 (backup_fn_flags)

    backup_fn_flags  go to state 938


State 925

  124 inner_statement_list: inner_statement_list . inner_statement
  166 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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 939
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 926

  391 lexical_var_list: lexical_var_list ',' lexical_var .

    $default  reduce using rule 391 (lexical_var_list)


State 927

  124 inner_statement_list: inner_statement_list . inner_statement
  380 inline_function: 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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 940
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 928

  194 for_statement: ':' inner_statement_list "endfor (T_ENDFOR)" ';' .

    $default  reduce using rule 194 (for_statement)


State 929

  124 inner_statement_list: inner_statement_list . inner_statement
  158 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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 941
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 930

  268 absolute_trait_method_reference: name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .

    $default  reduce using rule 268 (absolute_trait_method_reference)


State 931

  262 trait_alias: trait_method_reference "as (T_AS)" "identifier (T_STRING)" .

    $default  reduce using rule 262 (trait_alias)


State 932

  263 trait_alias: trait_method_reference "as (T_AS)" reserved_non_modifiers .

    $default  reduce using rule 263 (trait_alias)


State 933

  264 trait_alias: trait_method_reference "as (T_AS)" member_modifier . identifier
  265            | trait_method_reference "as (T_AS)" member_modifier .

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

    $default  reduce using rule 265 (trait_alias)

    reserved_non_modifiers  go to state 513
    semi_reserved           go to state 514
    identifier              go to state 942


State 934

  253 name_list: name_list . ',' name
  261 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" name_list .

    ','  shift, and go to state 740

    $default  reduce using rule 261 (trait_precedence)


State 935

  286 property: "variable (T_VARIABLE)" '=' expr backup_doc_comment .

    $default  reduce using rule 286 (property)


State 936

  289 class_const_decl: identifier '=' expr backup_doc_comment .

    $default  reduce using rule 289 (class_const_decl)


State 937

  251 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 621
    "identifier (T_STRING)"    shift, and go to state 116
    "array (T_ARRAY)"          shift, and go to state 622
    "callable (T_CALLABLE)"    shift, and go to state 623
    "namespace (T_NAMESPACE)"  shift, and go to state 118
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    ')'       reduce using rule 219 (parameter_list)
    $default  reduce using rule 224 (optional_type)

    namespace_name            go to state 84
    name                      go to state 624
    parameter_list            go to state 943
    non_empty_parameter_list  go to state 626
    parameter                 go to state 627
    optional_type             go to state 628
    type_expr                 go to state 629
    type                      go to state 630


State 938

  381 inline_function: fn returns_ref '(' parameter_list ')' return_type backup_doc_comment "=> (T_DOUBLE_ARROW)" backup_fn_flags backup_lex_pos expr backup_fn_flags .

    $default  reduce using rule 381 (inline_function)


State 939

  166 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 385 (backup_fn_flags)

    backup_fn_flags  go to state 944


State 940

  380 inline_function: 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 385 (backup_fn_flags)

    backup_fn_flags  go to state 945


State 941

  158 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}' .

    $default  reduce using rule 158 (catch_list)


State 942

  264 trait_alias: trait_method_reference "as (T_AS)" member_modifier identifier .

    $default  reduce using rule 264 (trait_alias)


State 943

  251 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 946


State 944

  166 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 166 (function_declaration_statement)


State 945

  380 inline_function: 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 (inline_function)


State 946

  251 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 751

    $default  reduce using rule 231 (return_type)

    return_type  go to state 947


State 947

  251 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 385 (backup_fn_flags)

    backup_fn_flags  go to state 948


State 948

  251 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 949
    '{'  shift, and go to state 950

    method_body  go to state 951


State 949

  269 method_body: ';' .

    $default  reduce using rule 269 (method_body)


State 950

  270 method_body: '{' . inner_statement_list '}'

    $default  reduce using rule 125 (inner_statement_list)

    inner_statement_list  go to state 952


State 951

  251 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 385 (backup_fn_flags)

    backup_fn_flags  go to state 953


State 952

  124 inner_statement_list: inner_statement_list . inner_statement
  270 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
    "require (T_REQUIRE)"                         shift, and go to state 6
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 7
    "print (T_PRINT)"                             shift, and go to state 8
    "yield (T_YIELD)"                             shift, and go to state 9
    "yield from (T_YIELD_FROM)"                   shift, and go to state 10
    '+'                                           shift, and go to state 11
    '-'                                           shift, and go to state 12
    '!'                                           shift, and go to state 13
    '~'                                           shift, and go to state 14
    "(int) (T_INT_CAST)"                          shift, and go to state 15
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 16
    "(string) (T_STRING_CAST)"                    shift, and go to state 17
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 18
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 19
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 20
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 21
    '@'                                           shift, and go to state 22
    "new (T_NEW)"                                 shift, and go to state 23
    "clone (T_CLONE)"                             shift, and go to state 24
    "integer number (T_LNUMBER)"                  shift, and go to state 25
    "floating-point number (T_DNUMBER)"           shift, and go to state 26
    "identifier (T_STRING)"                       shift, and go to state 27
    "variable (T_VARIABLE)"                       shift, and go to state 28
    T_INLINE_HTML                                 shift, and go to state 29
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 30
    "eval (T_EVAL)"                               shift, and go to state 31
    "++ (T_INC)"                                  shift, and go to state 32
    "-- (T_DEC)"                                  shift, and go to state 33
    "exit (T_EXIT)"                               shift, and go to state 34
    "if (T_IF)"                                   shift, and go to state 35
    "echo (T_ECHO)"                               shift, and go to state 36
    "do (T_DO)"                                   shift, and go to state 37
    "while (T_WHILE)"                             shift, and go to state 38
    "for (T_FOR)"                                 shift, and go to state 39
    "foreach (T_FOREACH)"                         shift, and go to state 40
    "declare (T_DECLARE)"                         shift, and go to state 41
    "switch (T_SWITCH)"                           shift, and go to state 42
    "break (T_BREAK)"                             shift, and go to state 43
    "continue (T_CONTINUE)"                       shift, and go to state 44
    "goto (T_GOTO)"                               shift, and go to state 45
    "function (T_FUNCTION)"                       shift, and go to state 46
    "fn (T_FN)"                                   shift, and go to state 47
    "return (T_RETURN)"                           shift, and go to state 49
    "try (T_TRY)"                                 shift, and go to state 50
    "throw (T_THROW)"                             shift, and go to state 51
    "global (T_GLOBAL)"                           shift, and go to state 53
    "static (T_STATIC)"                           shift, and go to state 54
    "abstract (T_ABSTRACT)"                       shift, and go to state 55
    "final (T_FINAL)"                             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 118
    "__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 954
    '['                                           shift, and go to state 80
    '`'                                           shift, and go to state 81
    '"'                                           shift, and go to state 82
    '$'                                           shift, and go to state 83

    namespace_name                   go to state 84
    name                             go to state 85
    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 90
    class_modifier                   go to state 91
    trait_declaration_statement      go to state 381
    interface_declaration_statement  go to state 382
    if_stmt_without_else             go to state 94
    if_stmt                          go to state 95
    alt_if_stmt_without_else         go to state 96
    alt_if_stmt                      go to state 97
    new_expr                         go to state 98
    expr                             go to state 99
    inline_function                  go to state 100
    fn                               go to state 101
    function                         go to state 102
    function_call                    go to state 103
    class_name                       go to state 104
    dereferencable_scalar            go to state 105
    scalar                           go to state 106
    constant                         go to state 107
    variable_class_name              go to state 108
    dereferencable                   go to state 109
    callable_expr                    go to state 110
    callable_variable                go to state 111
    variable                         go to state 112
    simple_variable                  go to state 113
    static_member                    go to state 114
    internal_functions_in_yacc       go to state 115


State 953

  251 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 251 (class_statement)


State 954

  270 method_body: '{' inner_statement_list '}' .

    $default  reduce using rule 270 (method_body)

🌑 DarkStealth — WP Plugin Edition

Directory: /usr/src/php-7.4.23/Zend