open Reason_parser

module Default = struct


  open Ppxlib
  open Parsetree
  open Ast_helper

  let default_loc = ref Location.none

  let default_expr () =
    let id = Location.{txt = "merlin.hole"; loc = !default_loc} in
    Exp.mk ~loc:!default_loc (Pexp_extension (id, PStr []))

  let default_pattern () = Pat.any ~loc:!default_loc ()

  let default_module_expr () = Mod.structure ~loc:!default_loc[]
  let default_module_type () = Mty.signature ~loc:!default_loc[]


  let value (type a) : a MenhirInterpreter.symbol -> a = function
    | MenhirInterpreter.T MenhirInterpreter.T_error -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_WITH -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_WHILE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_WHEN -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_VIRTUAL -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_VAL -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_UNDERSCORE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_UIDENT -> ""
    | MenhirInterpreter.T MenhirInterpreter.T_TYPE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_TRY -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_TRUE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_TO -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_TILDE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_THEN -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_SWITCH -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_STRUCT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_STRING -> ("", None, None)
    | MenhirInterpreter.T MenhirInterpreter.T_STAR -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_SLASHGREATER -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_SIG -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_SHARPOP -> raise Not_found
    | MenhirInterpreter.T MenhirInterpreter.T_SHARPEQUAL -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_SHARP -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_SEMISEMI -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_SEMI -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_RPAREN -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_REC -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_RBRACKET -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_RBRACE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_QUOTED_STRING_ITEM -> raise Not_found
    | MenhirInterpreter.T MenhirInterpreter.T_QUOTED_STRING_EXPR -> raise Not_found
    | MenhirInterpreter.T MenhirInterpreter.T_QUOTE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_QUESTION -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_PUB -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_PRI -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_PREFIXOP -> ""
    | MenhirInterpreter.T MenhirInterpreter.T_POSTFIXOP -> ""
    | MenhirInterpreter.T MenhirInterpreter.T_PLUSEQ -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_PLUSDOT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_PLUS -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_PERCENT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_OR -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_OPEN -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_OF -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_OBJECT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_NONREC -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_NEW -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_NATIVEINT -> 0n
    | MenhirInterpreter.T MenhirInterpreter.T_MUTABLE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_MODULE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_MINUSGREATER -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_MINUSDOT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_MINUS -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LPAREN -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LIDENT -> ""
    | MenhirInterpreter.T MenhirInterpreter.T_LETOP -> raise Not_found
    | MenhirInterpreter.T MenhirInterpreter.T_LET -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LESSUIDENT -> ""
    | MenhirInterpreter.T MenhirInterpreter.T_LESSSLASHIDENTGREATER -> ""
    | MenhirInterpreter.T MenhirInterpreter.T_LESSSLASHGREATER -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LESSIDENT -> ""
    | MenhirInterpreter.T MenhirInterpreter.T_LESSGREATER -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LESSDOTDOTGREATER -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LESS -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LBRACKETPERCENTPERCENT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LBRACKETPERCENT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LBRACKETLESS -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LBRACKETGREATER -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LBRACKETBAR -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LBRACKETAT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LBRACKET -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LBRACELESS -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LBRACE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_LAZY -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_INT -> ("0", None)
    | MenhirInterpreter.T MenhirInterpreter.T_INITIALIZER -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_INHERIT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_INFIXOP4 -> raise Not_found
    | MenhirInterpreter.T MenhirInterpreter.T_INFIXOP3 -> ""
    | MenhirInterpreter.T MenhirInterpreter.T_INFIXOP2 -> ""
    | MenhirInterpreter.T MenhirInterpreter.T_INFIXOP1 -> ""
    | MenhirInterpreter.T MenhirInterpreter.T_INFIXOP0 -> ""
    | MenhirInterpreter.T MenhirInterpreter.T_INCLUDE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_IN -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_IF -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_GREATERRBRACE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_GREATERDOTDOTDOT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_GREATER -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_FUNCTOR -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_FUNCTION -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_FUN -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_FOR -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_FLOAT -> ("0.0", None)
    | MenhirInterpreter.T MenhirInterpreter.T_FALSE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_EXTERNAL -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_EXCEPTION -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_ES6_FUN -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_EQUALGREATER -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_EQUAL -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_EOL -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_EOF -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_END -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_ELSE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_DOWNTO -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_DOTDOTDOT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_DOTDOT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_DOT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_DONE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_DOCSTRING -> raise Not_found
    | MenhirInterpreter.T MenhirInterpreter.T_DO -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_CONSTRAINT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_COMMENT -> raise Not_found
    | MenhirInterpreter.T MenhirInterpreter.T_COMMA -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_COLONGREATER -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_COLONEQUAL -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_COLONCOLON -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_COLON -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_CLASS -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_CHAR -> raise Not_found
    | MenhirInterpreter.T MenhirInterpreter.T_BEGIN -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_BARRBRACKET -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_BARBAR -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_BAR -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_BANG -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_BACKQUOTE -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_ASSERT -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_AS -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_ANDOP -> raise Not_found
    | MenhirInterpreter.T MenhirInterpreter.T_AND -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_AMPERSAND -> ()
    | MenhirInterpreter.T MenhirInterpreter.T_AMPERAMPER -> ()
    | MenhirInterpreter.N MenhirInterpreter.N_with_constraint -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_virtual_flag -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_value_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_value -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_val_longident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_val_ident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_use_file_no_mapper -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_use_file -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_unattributed_expr -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_unattributed_core_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_variance -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_variables_with_variance_comma_list -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_variables_with_variance -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_variable_with_variance -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_variable -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_subst_other_kind -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_subst_kind -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_subst_declarations -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_subst_constructor_declarations_aux -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_subst_constructor_declarations -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_parameters -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_parameter -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_other_kind -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_longident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_declarations -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_declaration_kind -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_declaration_details -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_type_constraint -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_toplevel_phrase -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_toplevel_directive -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_tag_field -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_structure_item -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_structure -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_string_literal_labels -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_string_literal_label -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_string_literal_exprs_maybe_punned -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_string_literal_expr_maybe_punned_with_comma -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_string_literal_expr_maybe_punned -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_str_type_extension -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_str_exception_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_single_attr_id -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_simple_pattern_not_ident_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_simple_pattern_not_ident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_simple_pattern_ident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_simple_pattern_direct_argument -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_simple_pattern -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_simple_module_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_simple_expr_template_constructor -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_simple_expr_no_constructor -> default_expr ()
    | MenhirInterpreter.N MenhirInterpreter.N_simple_expr_no_call -> default_expr ()
    | MenhirInterpreter.N MenhirInterpreter.N_simple_expr_direct_argument -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_simple_expr_call -> (default_expr (), [])
    | MenhirInterpreter.N MenhirInterpreter.N_signed_constant -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_signature_items -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_signature_item -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_signature -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_sig_type_extension -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_sig_exception_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_seq_expr_no_seq_option_SEMI__ -> default_expr ()
    | MenhirInterpreter.N MenhirInterpreter.N_seq_expr_no_seq_SEMI_ -> default_expr ()
    | MenhirInterpreter.N MenhirInterpreter.N_seq_expr_option_SEMI__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_seq_expr_SEMI_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_separated_nonempty_list_AMPERSAND_non_arrowed_simple_core_types_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_row_field_list -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_row_field -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_record_label_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_record_expr_with_string_keys -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_record_expr -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_record_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_rec_flag -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_protected_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_primitive_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_poly_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_payload -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_pattern_without_or -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_pattern_optional_constraint -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_pattern_constructor_argument -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_pattern_comma_list_extension -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_pattern -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_parse_pattern -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_parse_expression -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_parse_core_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_parenthesized_expr -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_package_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_override_flag -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_optional_expr_extension -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_optional -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_type_constraint_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_preceded_COLONGREATER_core_type__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_preceded_COLON_simple_module_type__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_preceded_COLON_poly_type__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_preceded_COLON_non_arrowed_core_type__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_preceded_COLON_expr__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_preceded_COLON_core_type__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_preceded_COLON_class_constructor_type__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_item_extension_sugar_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_constructor_arguments_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_as_loc_preceded_AS_LIDENT___ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_SEMI_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_OF_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_MODULE_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_LET_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_DOTDOTDOT_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_DOT_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_option_COMMA_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_opt_LET_MODULE_ident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_opt_LET_MODULE_REC_ident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_opt_LET_MODULE -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_operator -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_open_description -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_open_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_object_record_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_object_label_declarations -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_object_label_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_object_body_class_fields -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_object_body -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_nonrec_flag -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_nonempty_list_preceded_CONSTRAINT_constrain__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_nonempty_list_name_tag_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_nonempty_list_attributed_ext_constructor_extension_constructor_declaration__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_nonempty_list_attributed_ext_constructor_either_extension_constructor_declaration_extension_constructor_rebind___ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_nonempty_list_as_loc_preceded_QUOTE_ident___ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_nonempty_list_as_loc_attribute__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_nonempty_list_as_loc_LIDENT__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_nonempty_list___anonymous_31_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_non_labeled_argument_list -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_non_arrowed_simple_core_types -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_non_arrowed_simple_core_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_non_arrowed_core_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_mutable_or_virtual_flags -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_mutable_flag -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_mty_longident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_type_signature -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_type_body_EQUAL_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_type_body_COLON_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_parameter -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_expr_structure -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_expr_body -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_expr -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_complex_expr -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_binding_body -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_arguments_comma_list -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_module_arguments -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_mod_longident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_mod_ident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_mod_ext_longident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_mod_ext_lesslongident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_mod_ext_less_apply -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_mod_ext_apply -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_method_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_match_case_seq_expr_option_SEMI___ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_match_case_expr_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_SEMI_class_sig_field_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_SEMI_class_field_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_uncurried_labeled_expr_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_uncurried_arrow_type_parameter_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_type_variable_with_variance_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_type_parameter_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_string_literal_label_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_string_literal_expr_maybe_punned_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_record_label_declaration_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_protected_type_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_pattern_optional_constraint_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_opt_spread_pattern__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_opt_spread_lbl_expr__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_opt_spread_expr_optional_constraint__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_object_label_declaration_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_module_parameter_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_module_complex_expr_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_mod_ext_longident_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_labeled_pattern_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_field_expr_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_expr_optional_constraint_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_expr_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_COMMA_core_type_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lseparated_nonempty_list_aux_AND_with_constraint_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_loption_type_parameters_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_loption_terminated_pattern_comma_list_option_COMMA___ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_loption_row_field_list_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_loption_preceded_GREATER_nonempty_list_name_tag___ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_loption_parenthesized_type_variables_with_variance_comma_list__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_loption_parenthesized_class_type_arguments_comma_list__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_loption_object_label_declarations_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_loption_located_attributes_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_loption_functor_parameters_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_loption_class_type_parameters_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_longident_type_constraint -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_llist_aux_preceded_COMMA_opt_spread_lbl_expr___ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_llist_aux_match_case_seq_expr_option_SEMI____ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_llist_aux_match_case_expr__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_list_simple_expr_no_call_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_list_bar_row_field_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_list_attributed_ext_constructor_extension_constructor_declaration__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_list_attributed_ext_constructor_either_extension_constructor_declaration_extension_constructor_rebind___ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_list_and_module_rec_declaration_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_list_and_module_bindings_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_list_and_let_binding_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_list_and_class_type_declaration_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_list_and_class_description_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_list_and_class_declaration_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_letop_bindings -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_letop_binding_body -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_let_bindings -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_let_binding_body -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_let_binding -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_lbl_pattern -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_labelled_arrow_type_parameter_optional -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_labeled_pattern_constraint -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_labeled_pattern -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_labeled_expr_constraint -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_labeled_expr -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_labeled_arguments -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_label_longident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_jsx_without_leading_less -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_jsx_start_tag_and_args_without_leading_less -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_jsx_start_tag_and_args -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_jsx_arguments -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_jsx -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_item_extension_sugar -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_item_extension -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_interface -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_implementation -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_ident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_greater_spread -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_generalized_constructor_arguments -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_functor_parameters -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_fun_def_EQUALGREATER_non_arrowed_core_type_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_fun_def_EQUAL_core_type_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_field_expr -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_extension_constructor_rebind -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_extension_constructor_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_extension -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_expr_optional_constraint -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_expr_list_or_seq_expr -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_expr_list -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_expr_comma_seq_extension -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_expr -> default_expr ()
    | MenhirInterpreter.N MenhirInterpreter.N_es6_parameters -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_embedded_private_flag_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_embedded___anonymous_39_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_embedded___anonymous_32_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_embedded___anonymous_1_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_embedded___anonymous_0_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_either_preceded_EQUALGREATER_expr__braced_expr_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_either_preceded_EQUAL_expr__braced_expr_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_either_preceded_EQUAL_class_instance_type__class_type_body_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_either_preceded_EQUAL_class_expr__class_body_expr_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_either_parenthesized_longident_type_constraint__longident_type_constraint_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_either_extension_constructor_declaration_extension_constructor_rebind_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_either_constructor_declaration_bar_constructor_declaration_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_either___anonymous_11___anonymous_12_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_either_ES6_FUN_FUN_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_direction_flag -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_core_type2 -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_core_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_constructor_declarations_aux -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_constructor_declarations -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_constructor_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_constructor_arguments_comma_list -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_constructor_arguments -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_constrain_field -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_constrain -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_constr_longident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_constant -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_clty_longident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_type_declarations -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_type_declaration_details -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_type_body -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_type_arguments_comma_list -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_simple_expr -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_sig_field -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_sig_body_fields -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_sig_body_cty -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_sig_body -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_self_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_self_expr -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_longident -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_instance_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_field -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_expr_lets_and_rest -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_expr -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_descriptions -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_description_details -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_declaration_details -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_declaration_body -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_class_constructor_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_braced_expr -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_boption_AMPERSAND_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_basic_core_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_bar_row_field -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_bar_constructor_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_attributed_ext_constructors_extension_constructor_declaration_ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_attributed_ext_constructors_either_extension_constructor_declaration_extension_constructor_rebind__ -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_attribute -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_attr_id -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_arrowed_simple_core_type -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_arrow_type_parameters -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_arrow_type_parameter -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_and_type_subst_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_and_type_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_and_module_rec_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_and_module_bindings -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_and_class_type_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_and_class_description -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N_and_class_declaration -> raise Not_found
    | MenhirInterpreter.N MenhirInterpreter.N__lbl_pattern_list -> raise Not_found
end

let default_value = Default.value

open MenhirInterpreter

type action =
  | Abort
  | R of int
  | S : 'a symbol -> action
  | Sub of action list

type decision =
  | Nothing
  | One of action list
  | Select of (int -> action list)

let depth =
  [|0;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;2;3;2;2;1;1;2;1;1;1;1;2;3;1;1;1;2;1;2;3;4;1;2;3;4;2;3;5;6;3;4;1;2;3;1;1;1;1;2;3;3;2;1;1;1;1;1;2;1;1;1;1;1;2;2;3;4;1;1;1;2;1;1;1;1;2;1;1;2;1;1;2;3;4;1;1;2;1;1;2;3;1;1;2;1;1;1;2;1;1;1;1;2;1;1;1;1;1;1;1;1;1;1;1;2;1;2;3;2;3;1;2;1;1;2;1;2;1;1;2;1;2;2;3;1;2;2;3;2;3;1;1;2;3;1;2;1;2;3;2;1;1;2;1;1;1;1;1;1;1;2;1;2;1;1;2;1;1;1;1;1;1;2;3;2;2;3;1;2;1;2;2;3;1;1;2;1;1;1;1;1;1;2;1;2;2;1;1;2;1;2;3;2;3;4;1;1;2;1;1;3;2;1;2;3;3;1;1;1;3;1;1;2;3;1;1;1;1;1;2;3;1;1;1;4;2;3;1;2;3;4;5;6;2;1;2;3;4;1;2;1;2;2;1;2;3;1;1;1;2;2;1;2;3;2;2;3;1;2;3;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;2;1;1;1;1;1;1;2;3;1;1;2;1;1;2;3;1;4;5;1;6;1;1;1;1;2;2;1;2;1;2;1;2;3;1;1;1;1;1;2;3;1;1;1;1;2;4;5;1;6;1;1;2;1;1;1;2;3;1;2;1;3;1;2;3;1;2;1;1;2;3;4;1;1;1;2;2;2;3;4;3;4;2;3;4;3;1;2;3;1;1;2;3;1;2;3;4;1;1;1;1;2;3;4;2;3;4;1;2;3;1;2;1;2;3;1;2;3;4;2;3;4;3;4;1;1;2;1;3;4;1;2;3;1;2;1;2;3;4;5;1;1;1;1;2;2;3;1;1;2;3;2;1;2;1;1;2;1;1;1;2;3;4;5;1;2;3;4;2;2;3;3;4;2;3;1;2;3;2;1;2;3;1;1;1;2;2;1;2;1;1;2;1;2;3;1;2;3;1;2;1;2;1;2;3;4;1;2;3;4;5;3;4;2;3;1;1;1;2;3;1;2;3;4;5;3;4;4;2;3;2;7;1;1;2;2;1;2;3;1;2;2;3;3;4;1;2;3;1;2;3;1;2;1;1;2;1;1;1;2;3;2;3;2;3;4;2;3;4;2;3;2;3;2;3;3;3;2;2;2;2;3;4;1;1;1;2;3;2;3;1;2;3;1;2;1;2;3;4;5;1;3;2;4;2;1;2;1;1;2;1;3;1;1;2;2;2;2;3;2;3;4;1;5;5;5;6;4;4;4;4;5;5;1;1;1;1;2;3;2;2;1;2;3;3;2;3;3;4;5;6;7;8;9;2;3;4;5;6;7;8;4;4;5;6;7;8;9;10;1;1;1;2;3;4;2;1;1;2;3;1;1;1;1;2;2;1;1;1;2;3;2;3;4;5;6;7;4;5;1;2;3;4;2;3;4;5;1;2;3;3;1;1;2;3;1;1;2;4;5;2;3;4;1;3;2;3;4;5;1;4;1;2;2;3;4;5;1;2;1;1;1;2;1;2;2;1;2;2;1;1;2;1;3;4;3;1;4;5;1;1;1;1;1;2;3;1;2;3;1;1;2;3;4;5;4;1;2;1;1;1;1;2;1;2;1;1;1;1;3;1;2;3;1;2;3;1;2;3;4;1;1;2;3;1;1;1;1;2;1;1;2;3;2;3;1;2;2;2;3;3;4;1;1;2;2;3;1;2;3;1;2;3;1;2;1;1;2;3;4;5;3;4;5;3;4;4;5;3;4;5;1;2;2;3;4;2;3;2;3;2;3;4;2;2;2;3;2;3;4;5;6;7;8;2;3;1;2;1;1;2;1;2;1;2;1;3;4;5;1;2;3;4;5;1;1;1;2;2;3;1;3;2;3;4;5;1;2;3;4;1;2;3;1;1;2;2;3;2;1;2;3;2;1;2;3;1;1;1;2;1;1;1;2;1;1;2;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;4;3;2;3;2;3;2;3;2;3;4;5;1;2;3;4;5;1;2;3;2;3;1;2;3;1;2;1;3;1;2;3;4;5;1;1;2;3;1;2;4;1;2;3;4;5;3;4;5;6;7;2;3;4;5;6;2;3;1;2;4;5;6;7;8;3;4;5;6;7;2;1;2;3;2;3;4;2;1;2;3;4;1;1;2;1;3;1;2;3;1;2;3;4;1;2;3;4;1;2;3;1;2;3;1;1;2;1;2;1;3;1;2;3;1;1;1;4;5;6;1;1;1;2;1;2;3;3;4;1;1;2;3;4;2;3;5;6;2;3;2;3;4;1;2;3;2;2;3;1;2;3;4;5;1;2;3;1;1;2;1;2;3;4;3;2;1;2;2;3;4;1;2;3;1;2;2;2;3;1;2;3;4;5;2;3;2;3;4;5;6;7;1;1;1;2;3;1;2;1;2;3;1;1;2;3;1;1;2;1;1;2;3;2;3;4;5;1;2;2;4;5;6;7;1;1;2;2;3;1;4;2;1;3;4;5;6;4;4;1;1;2;1;2;3;1;1;1;2;3;4;5;6;3;4;5;6;1;2;3;4;1;2;3;4;5;2;3;4;5;6;7;4;5;6;7;1;2;3;1;2;2;1;2;3;1;2;2;3;4;1;4;5;1;1;2;3;3;1;2;4;5;1;2;2;3;4;2;3;2;3;2;2;3;4;2;3;4;2;3;4;5;3;4;2;3;5;6;1;3;3;4;5;3;4;4;5;3;4;2;3;5;6;1;3;1;2;2;3;4;4;4;1;2;3;1;2;3;4;4;2;3;4;5;6;5;3;1;1;2;2;4;1;4;5;6;7;8;9;2;3;4;5;6;9;6;7;7;1;2;3;2;1;2;4;5;4;5;1;2;3;4;5;6;7;8;8;5;6;6;2;3;4;4;5;6;7;8;9;10;10;7;8;8;4;3;3;4;5;6;2;3;4;5;6;7;3;4;5;6;7;8;3;4;5;1;2;3;4;2;3;4;5;3;4;5;6;3;4;3;4;5;6;1;6;1;1;7;8;9;10;1;5;2;1;2;3;1;2;4;1;2;3;4;5;3;4;5;6;7;2;3;4;5;6;1;2;3;4;5;6;3;4;4;3;4;2;3;4;1;2;1;2;1;2;3;4;1;2;1;3;4;5;1;2;1;2;1;2;3;4;5;6;7;8;2;3;1;2;3;1;1;2;1;2;1;2;3;4;5;6;1;1;2;3;4;3;1;2;3;4;5;6;7;8;9;10;1;2;3;4;5;6;6;1;2;7;1;1;2;3;4;3;4;5;6;1;1;2;1;2;3;4;5;6;6;7;1;2;1;1;2;1;2;1;1;1;1;1;2;2;1;2;2;3;3;4;3;1;1;1;2;1;2;2;1;2;3;4;1;1;2;3;4;5;1;2;3;4;5;1;1;1;1;2;3;1;1;1;1;2;2;3;2;1;2;1;2;2;1;1;2;3;2;1;2;1;1;2;3;4;5;1;2;3;2;3;4;5;6;2;3;4;5;6;2;3;2;3;2;1;2;1;3;2;1;1;6;1;1;2;3;3;4;2;3;1;2;4;1;3;1;2;1;2;3;4;1;2;1;2;3;4;1;5;1;2;3;2;1;2;1;2;3;3;1;2;1;1;1;2;1;3;1;1;1;2;3;2;1;1;2;1;2;1;2;1;2;3;1;2;3;4;3;1;2;1;2;3;4;2;3;4;4;1;1;2;3;4;5;6;7;8;6;4;4;5;6;7;8;9;10;3;4;5;6;7;8;9;5;5;6;7;8;9;10;11;2;3;4;5;2;3;4;5;6;5;2;3;4;5;6;2;3;2;3;4;5;6;7;7;8;2;3;2;3;4;5;3;4;2;3;4;3;2;3;4;2;3;4;5;2;1;1;1;2;1;2;1;1;2;3;4;1;2;1;1;1;1;1;1;1;1;2;1;2;1;2;1;3;1;1;2;3;4;1;2;1;5;1;2;3;4;5;6;4;5;6;7;8;3;4;5;6;7;3;1;2;4;1;2;1;1;2;3;4;5;1;1;1;2;3;1;2;3;4;5;6;5;6;7;2;3;4;5;4;5;6;2;2;3;2;3;4;5;2;3;2;2;1;2;3;4;5;2;3;4;5;6;7;8;2;3;4;3;3;1;2;1;1;1;2;3;2;1;1;2;2;3;4;1;1;2;3;1;1;6;2;3;2;3;3;4;5;2;3;1;2;2;5;1;1;4;5;6;5;6;7;8;4;5;6;7;8;9;8;9;10;9;10;11;12;8;9;10;11;7;4;5;6;7;3;2;1;2;1;2;3;3;1;2;1;2;1;2;1;1;2;3;2;3;2;3;4;5;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;2;3;4;3;2;3;2;3;2;3;2;3;1;1;2;3;1;1;1;2;3;4;5;6;2;3;4;5;6;7;3;4;5;6;7;8;3;4;5;1;2;1;2;1;2;3;1;2;3;4;3;1;2;1;1;1;2;3;4;5;6;7;1;2;3;4;1;2;3;4;5;3;4;2;3;1;1;1;2;3;1;2;3;4;5;3;4;4;2;3;2;8;4;5;6;7;8;9;10;3;4;5;6;7;8;9;5;6;7;8;9;10;11;2;3;4;5;2;3;4;5;6;2;2;3;2;3;4;5;6;7;7;8;2;3;4;2;2;3;2;3;4;2;3;1;1;2;1;1;2;1;1;2;3;3;4;2;3;3;1;2;1;2;2;3;2;3;4;5;1;5;1;2;3;1;2;2;1;2;3;2;2;3;4;3;4;2;2;3;4;2;3;4;5;6;2;4;5;3;4;5;3;4;5;3;4;4;5;3;4;5;6;3;4;4;5;4;5;2;3;2;3;2;2;3;2;3;4;4;1;2;3;4;5;6;3;4;4;5;6;7;2;2;3;4;5;3;4;5;6;3;1;1;2;3;4;5;3;4;5;3;4;5;3;4;4;5;3;4;5;6;3;4;4;5;4;5;1;1;1;1;2;3;3;4;4;5;6;2;3;4;2;3;2;2;3;4;4;3;4;2;2;3;2;3;4;2;3;2;3;3;4;4;5;3;4;5;6;7;3;4;2;3;1;2;3;2;1;1;2;3;2;3;4;2;3;4;2;3;4;5;2;3;4;5;6;3;4;2;3;1;2;3;1;1;2;3;3;4;1;1;2;1;2;1;2;1;3;3;2;2;2;3;2;3;4;5;5;6;5;4;4;4;5;4;2;3;3;4;5;6;7;3;4;5;6;7;8;9;2;3;4;5;6;7;8;4;5;6;7;8;9;10;3;4;3;2;2;3;4;5;6;7;8;2;2;3;2;2;3;2;4;5;3;4;2;3;2;3;4;5;6;7;2;3;2;3;4;5;6;7;2;3;4;5;3;4;5;6;7;8;2;2;3;5;6;2;3;4;2;4;5;4;5;6;2;1;1;2;3;4;5;3;4;5;2;3;2;3;2;3;2;3;1;1;2;3;3;4;2;3;2;3;3;4;1;2;1;0;1;2;1;0;1;1;2;0;1;1;2;0;1;2;1;0;1;2;1;1;1;1;1;1;3;1;1;1;2;1;2;1;0;1;1;1;1;2;3;1;2;3;1;2;2;|]

let can_pop (type a) : a terminal -> bool = function
  | T_WITH -> true
  | T_WHILE -> true
  | T_WHEN -> true
  | T_VIRTUAL -> true
  | T_VAL -> true
  | T_UNDERSCORE -> true
  | T_TYPE -> true
  | T_TRY -> true
  | T_TRUE -> true
  | T_TO -> true
  | T_TILDE -> true
  | T_THEN -> true
  | T_SWITCH -> true
  | T_STRUCT -> true
  | T_STAR -> true
  | T_SLASHGREATER -> true
  | T_SIG -> true
  | T_SHARPEQUAL -> true
  | T_SHARP -> true
  | T_SEMISEMI -> true
  | T_SEMI -> true
  | T_RPAREN -> true
  | T_REC -> true
  | T_RBRACKET -> true
  | T_RBRACE -> true
  | T_QUOTE -> true
  | T_QUESTION -> true
  | T_PUB -> true
  | T_PRI -> true
  | T_PLUSEQ -> true
  | T_PLUSDOT -> true
  | T_PLUS -> true
  | T_PERCENT -> true
  | T_OR -> true
  | T_OPEN -> true
  | T_OF -> true
  | T_OBJECT -> true
  | T_NONREC -> true
  | T_NEW -> true
  | T_MUTABLE -> true
  | T_MODULE -> true
  | T_MINUSGREATER -> true
  | T_MINUSDOT -> true
  | T_MINUS -> true
  | T_LPAREN -> true
  | T_LET -> true
  | T_LESSSLASHGREATER -> true
  | T_LESSGREATER -> true
  | T_LESSDOTDOTGREATER -> true
  | T_LESS -> true
  | T_LBRACKETPERCENTPERCENT -> true
  | T_LBRACKETPERCENT -> true
  | T_LBRACKETLESS -> true
  | T_LBRACKETGREATER -> true
  | T_LBRACKETBAR -> true
  | T_LBRACKETAT -> true
  | T_LBRACKET -> true
  | T_LBRACELESS -> true
  | T_LBRACE -> true
  | T_LAZY -> true
  | T_INITIALIZER -> true
  | T_INHERIT -> true
  | T_INCLUDE -> true
  | T_IN -> true
  | T_IF -> true
  | T_GREATERRBRACE -> true
  | T_GREATERDOTDOTDOT -> true
  | T_GREATER -> true
  | T_FUNCTOR -> true
  | T_FUNCTION -> true
  | T_FUN -> true
  | T_FOR -> true
  | T_FALSE -> true
  | T_EXTERNAL -> true
  | T_EXCEPTION -> true
  | T_ES6_FUN -> true
  | T_EQUALGREATER -> true
  | T_EQUAL -> true
  | T_EOL -> true
  | T_END -> true
  | T_ELSE -> true
  | T_DOWNTO -> true
  | T_DOTDOTDOT -> true
  | T_DOTDOT -> true
  | T_DOT -> true
  | T_DONE -> true
  | T_DO -> true
  | T_CONSTRAINT -> true
  | T_COMMA -> true
  | T_COLONGREATER -> true
  | T_COLONEQUAL -> true
  | T_COLONCOLON -> true
  | T_COLON -> true
  | T_CLASS -> true
  | T_BEGIN -> true
  | T_BARRBRACKET -> true
  | T_BARBAR -> true
  | T_BAR -> true
  | T_BANG -> true
  | T_BACKQUOTE -> true
  | T_ASSERT -> true
  | T_AS -> true
  | T_AND -> true
  | T_AMPERSAND -> true
  | T_AMPERAMPER -> true
  | _ -> false

let recover =
  let r0 = Sub [S (T T_RPAREN); R 696] in
  let r1 = Sub [S (T T_DOT); r0] in
  let r2 = Sub [S (T T_LPAREN); r1] in
  let r3 = Sub [S (N N_simple_expr_call); R 1166] in
  let r4 = Sub [r2; r3] in
  let r5 = Sub [S (T T_WITH); R 1028; R 34] in
  let r6 = Sub [S (N N_simple_expr_call); R 243] in
  let r7 = Sub [r2; r6] in
  let r8 = Sub [S (N N_seq_expr_no_seq_option_SEMI__); R 764] in
  let r9 = Sub [S (T T_RBRACE); R 60] in
  let r10 = Sub [S (N N_expr); R 1215] in
  let r11 = Sub [S (T T_EQUAL); r10] in
  let r12 = Sub [S (T T_LIDENT); r11] in
  let r13 = Sub [R 555; r12] in
  let r14 = Sub [R 692; r13] in
  let r15 = Sub [S (T T_UNDERSCORE); R 50] in
  let r16 = Sub [r15; R 563] in
  let r17 = Sub [r16; R 1155] in
  let r18 = Sub [r17; R 183] in
  let r19 = Sub [r18; R 181] in
  let r20 = Sub [r19; R 1213] in
  let r21 = Sub [S (T T_COLON); r20] in
  let r22 = Sub [S (T T_LIDENT); r21] in
  let r23 = Sub [S (T T_UIDENT); R 510] in
  let r24 = Sub [r23; R 453] in
  let r25 = Sub [S (T T_RPAREN); R 501] in
  let r26 = Sub [r24; r25] in
  let r27 = Sub [S (T T_UIDENT); R 511] in
  let r28 = Sub [S (T T_RPAREN); R 502] in
  let r29 = Sub [S (T T_RPAREN); R 503] in
  let r30 = Sub [r19; R 728] in
  let r31 = Sub [R 688; R 368] in
  let r32 = Sub [S (T T_EQUAL); r31] in
  let r33 = Sub [r30; r32] in
  let r34 = Sub [S (T T_COLON); r33] in
  let r35 = Sub [S (T T_LIDENT); R 112] in
  let r36 = Sub [S (T T_LIDENT); R 113] in
  let r37 = Sub [r30; R 471] in
  let r38 = Sub [S (T T_RPAREN); R 1116] in
  let r39 = Sub [R 652; r38] in
  let r40 = Sub [S (T T_LIDENT); R 321] in
  let r41 = Sub [r40; R 48] in
  let r42 = Sub [S (T T_RBRACE); R 552] in
  let r43 = Sub [R 800; r42] in
  let r44 = Sub [S (T T_LBRACE); r43] in
  let r45 = Sub [r44; R 948] in
  let r46 = Sub [r45; R 545] in
  let r47 = Sub [r46; R 694] in
  let r48 = Sub [S (T T_RPAREN); R 541] in
  let r49 = Sub [S (T T_RPAREN); R 947] in
  let r50 = Sub [S (T T_LPAREN); r48; r49] in
  let r51 = Sub [S (T T_RPAREN); R 533] in
  let r52 = Sub [S (T T_LPAREN); r51] in
  let r53 = Sub [S (T T_RPAREN); R 951] in
  let r54 = Sub [r52; r53] in
  let r55 = Sub [S (T T_OF); r54] in
  let r56 = Sub [S (T T_UNDERSCORE); R 959; R 953] in
  let r57 = Sub [r56; R 709] in
  let r58 = Sub [r57; R 701] in
  let r59 = Sub [S (T T_DOT); R 496] in
  let r60 = Sub [S (T T_EQUALGREATER); r59] in
  let r61 = Sub [r58; r60] in
  let r62 = Sub [S (T T_BAR); r61] in
  let r63 = Sub [S (T T_RBRACE); R 240] in
  let r64 = Sub [R 415; r63] in
  let r65 = Sub [r62; r64] in
  let r66 = Sub [S (T T_LBRACE); r65] in
  let r67 = Sub [S (N N_simple_expr_no_constructor); r66] in
  let r68 = Sub [S (T T_RPAREN); R 1208] in
  let r69 = Sub [S (T T_LESSDOTDOTGREATER); R 641; r68] in
  let r70 = Sub [S (T T_RBRACE); R 239] in
  let r71 = Sub [R 415; r70] in
  let r72 = Sub [r62; r71] in
  let r73 = Sub [S (T T_LBRACE); r72] in
  let r74 = Sub [S (N N_simple_expr_no_constructor); r73] in
  let r75 = Sub [S (T T_RPAREN); R 504] in
  let r76 = Sub [R 331; R 333] in
  let r77 = Sub [R 331; R 334] in
  let r78 = Sub [R 331; R 332] in
  let r79 = Sub [S (T T_LESSSLASHGREATER); R 327] in
  let r80 = Sub [S (N N_expr); R 278] in
  let r81 = Sub [R 331; R 338] in
  let r82 = Sub [R 1046; R 718] in
  let r83 = Sub [S (T T_RBRACKET); R 289] in
  let r84 = Sub [r82; r83] in
  let r85 = Sub [R 431; R 1149] in
  let r86 = Sub [R 21; R 1093] in
  let r87 = Sub [R 1101; r86] in
  let r88 = Sub [r87; R 1088] in
  let r89 = Sub [r85; r88] in
  let r90 = Sub [S (T T_LIDENT); r89] in
  let r91 = Sub [r90; R 1095] in
  let r92 = Sub [R 595; r91] in
  let r93 = Sub [r87; R 1087] in
  let r94 = Sub [r85; r93] in
  let r95 = Sub [R 652; R 1151] in
  let r96 = Sub [S (T T_UNDERSCORE); R 214; R 1148; R 481; r95] in
  let r97 = Sub [S (T T_RPAREN); R 432] in
  let r98 = Sub [r96; r97] in
  let r99 = Sub [S (T T_GREATER); R 1150] in
  let r100 = Sub [R 674; R 317] in
  let r101 = Sub [R 668; r100] in
  let r102 = Sub [r101; R 164] in
  let r103 = Sub [S (T T_GREATER); R 1118] in
  let r104 = Sub [R 652; r103] in
  let r105 = Sub [S (T T_GREATER); R 1117] in
  let r106 = Sub [R 652; r105] in
  let r107 = Sub [r16; R 560] in
  let r108 = Sub [r107; R 755] in
  let r109 = Sub [R 409; R 756] in
  let r110 = Sub [r108; r109] in
  let r111 = Sub [S (T T_RBRACKET); R 56] in
  let r112 = Sub [R 433; r111] in
  let r113 = Sub [S (T T_RBRACKET); R 55] in
  let r114 = Sub [S (T T_RBRACKET); R 53] in
  let r115 = Sub [S (T T_RBRACKET); R 36] in
  let r116 = Sub [r82; r115] in
  let r117 = Sub [S (T T_RBRACE); R 1163] in
  let r118 = Sub [R 415; r117] in
  let r119 = Sub [r62; r118] in
  let r120 = Sub [S (T T_LBRACE); r119] in
  let r121 = Sub [S (N N_simple_expr_no_constructor); r120] in
  let r122 = Sub [S (T T_LESSSLASHGREATER); R 343] in
  let r123 = Sub [R 411; r122] in
  let r124 = Sub [S (T T_GREATER); r123] in
  let r125 = Sub [S (T T_RBRACKET); R 876] in
  let r126 = Sub [S (T T_BARRBRACKET); R 886] in
  let r127 = Sub [S (N N_expr); R 287] in
  let r128 = Sub [r127; R 461] in
  let r129 = Sub [S (T T_BARRBRACKET); R 845] in
  let r130 = Sub [S (T T_BARRBRACKET); R 846] in
  let r131 = Sub [R 652; R 283] in
  let r132 = Sub [S (T T_RBRACKET); R 872] in
  let r133 = Sub [S (T T_RPAREN); R 880] in
  let r134 = Sub [S (T T_RBRACE); R 540] in
  let r135 = Sub [S (T T_RBRACE); R 1162] in
  let r136 = Sub [R 415; r135] in
  let r137 = Sub [r62; r136] in
  let r138 = Sub [S (T T_LBRACE); r137] in
  let r139 = Sub [S (N N_simple_expr_no_constructor); r138] in
  let r140 = Sub [S (T T_BARRBRACKET); R 917] in
  let r141 = Sub [S (T T_BARRBRACKET); R 918] in
  let r142 = Sub [S (T T_RBRACKET); R 153] in
  let r143 = Sub [S (T T_RBRACE); R 894] in
  let r144 = Sub [S (T T_LBRACE); r143] in
  let r145 = Sub [S (N N_seq_expr_no_seq_SEMI_); R 760; R 286] in
  let r146 = Sub [S (T T_RPAREN); R 892] in
  let r147 = Sub [S (N N_simple_expr_call); R 241] in
  let r148 = Sub [r2; r147] in
  let r149 = Sub [S (T T_RPAREN); R 505] in
  let r150 = Sub [S (T T_RPAREN); R 506] in
  let r151 = Sub [S (T T_LESSSLASHIDENTGREATER); R 329] in
  let r152 = Sub [S (T T_RPAREN); R 350] in
  let r153 = Sub [S (T T_UNDERSCORE); R 358] in
  let r154 = Sub [S (T T_LIDENT); R 1207] in
  let r155 = Sub [S (T T_QUESTION); R 355] in
  let r156 = Sub [R 684; R 1084] in
  let r157 = Sub [r19; r156] in
  let r158 = Sub [r101; R 296] in
  let r159 = Sub [S (T T_TRUE); r158] in
  let r160 = Sub [R 404; R 40] in
  let r161 = Sub [r159; r160] in
  let r162 = Sub [r161; R 792] in
  let r163 = Sub [r101; R 291] in
  let r164 = Sub [r19; R 443] in
  let r165 = Sub [R 652; R 163] in
  let r166 = Sub [S (T T_RPAREN); R 162] in
  let r167 = Sub [r164; r165; r166] in
  let r168 = Sub [S (T T_RBRACKET); R 54] in
  let r169 = Sub [S (T T_RBRACE); R 608] in
  let r170 = Sub [S (T T_RBRACE); R 612] in
  let r171 = Sub [r19; R 724] in
  let r172 = Sub [r171; R 1043] in
  let r173 = Sub [r40; R 573] in
  let r174 = Sub [r30; R 27] in
  let r175 = Sub [r174; R 483] in
  let r176 = Sub [S (T T_RPAREN); R 30] in
  let r177 = Sub [R 652; r176] in
  let r178 = Sub [R 654; r175; r177] in
  let r179 = Sub [r18; R 31] in
  let r180 = Sub [S (T T_EQUALGREATER); r179] in
  let r181 = Sub [r30; R 28] in
  let r182 = Sub [S (T T_COLON); r181] in
  let r183 = Sub [r17; R 184] in
  let r184 = Sub [S (T T_LIDENT); R 1100] in
  let r185 = Sub [r18; R 32] in
  let r186 = Sub [r40; R 182] in
  let r187 = Sub [r19; R 725] in
  let r188 = Sub [S (T T_LIDENT); R 603] in
  let r189 = Sub [r171; R 1044] in
  let r190 = Sub [S (T T_COLON); r189] in
  let r191 = Sub [S (T T_RBRACE); R 611] in
  let r192 = Sub [S (T T_LESSIDENT); r104; R 564; R 758] in
  let r193 = Sub [r40; R 1081] in
  let r194 = Sub [S (T T_BACKQUOTE); r193] in
  let r195 = Sub [r108; R 45] in
  let r196 = Sub [S (T T_LIDENT); R 751] in
  let r197 = Sub [S (T T_LIDENT); R 750] in
  let r198 = Sub [S (T T_RBRACE); R 731] in
  let r199 = Sub [R 652; r198] in
  let r200 = Sub [r101; R 293] in
  let r201 = Sub [S (T T_RPAREN); r200] in
  let r202 = Sub [r101; R 292] in
  let r203 = Sub [S (T T_RBRACKET); r202] in
  let r204 = Sub [r101; R 295] in
  let r205 = Sub [r101; R 294] in
  let r206 = Sub [r159; R 585] in
  let r207 = Sub [R 404; R 405] in
  let r208 = Sub [R 404; R 406] in
  let r209 = Sub [R 404; R 407] in
  let r210 = Sub [r159; r209] in
  let r211 = Sub [R 404; R 408] in
  let r212 = Sub [S (T T_DOTDOT); R 1140] in
  let r213 = Sub [r101; R 169] in
  let r214 = Sub [r101; R 166] in
  let r215 = Sub [S (T T_RPAREN); r214] in
  let r216 = Sub [r101; R 165] in
  let r217 = Sub [S (T T_RBRACKET); r216] in
  let r218 = Sub [S (T T_TRUE); r213] in
  let r219 = Sub [r101; R 173] in
  let r220 = Sub [S (T T_COLONCOLON); r219] in
  let r221 = Sub [r101; R 170] in
  let r222 = Sub [r101; R 172] in
  let r223 = Sub [S (T T_RPAREN); r222] in
  let r224 = Sub [r101; R 171] in
  let r225 = Sub [S (T T_RBRACKET); r224] in
  let r226 = Sub [r218; R 43] in
  let r227 = Sub [R 24; R 1124] in
  let r228 = Sub [r227; R 1122] in
  let r229 = Sub [r19; R 157] in
  let r230 = Sub [S (T T_EQUAL); r229] in
  let r231 = Sub [R 24; R 1132] in
  let r232 = Sub [S (T T_COLONEQUAL); r212; r231] in
  let r233 = Sub [r232; R 25] in
  let r234 = Sub [r85; r233] in
  let r235 = Sub [r232; R 26] in
  let r236 = Sub [r85; r235] in
  let r237 = Sub [S (T T_LIDENT); r236] in
  let r238 = Sub [S (T T_BAR); r226] in
  let r239 = Sub [R 555; r197; R 473; r199] in
  let r240 = Sub [r90; R 23] in
  let r241 = Sub [r161; R 793] in
  let r242 = Sub [R 226; r241] in
  let r243 = Sub [S (T T_PLUSEQ); r242] in
  let r244 = Sub [r85; r243] in
  let r245 = Sub [S (T T_LIDENT); r244] in
  let r246 = Sub [r90; R 1097] in
  let r247 = Sub [R 595; r246] in
  let r248 = Sub [r161; R 796] in
  let r249 = Sub [r161; R 797] in
  let r250 = Sub [R 226; r249] in
  let r251 = Sub [S (T T_PLUSEQ); r250] in
  let r252 = Sub [r85; r251] in
  let r253 = Sub [S (T T_LIDENT); r252] in
  let r254 = Sub [S (T T_UIDENT); R 515] in
  let r255 = Sub [r254; R 615] in
  let r256 = Sub [R 670; r255] in
  let r257 = Sub [S (T T_UIDENT); R 516] in
  let r258 = Sub [r40; R 821] in
  let r259 = Sub [r23; R 1224] in
  let r260 = Sub [S (T T_COLONEQUAL); r259] in
  let r261 = Sub [S (T T_UIDENT); r260] in
  let r262 = Sub [S (T T_MODULE); r261] in
  let r263 = Sub [S (T T_LIDENT); R 347] in
  let r264 = Sub [r19; R 1222] in
  let r265 = Sub [S (T T_COLONEQUAL); r264] in
  let r266 = Sub [r85; r265] in
  let r267 = Sub [S (T T_LIDENT); R 348] in
  let r268 = Sub [r19; R 1220] in
  let r269 = Sub [r46; R 1225] in
  let r270 = Sub [S (T T_EQUAL); r269] in
  let r271 = Sub [r40; R 554] in
  let r272 = Sub [r46; R 547] in
  let r273 = Sub [r23; R 1223] in
  let r274 = Sub [r171; R 803] in
  let r275 = Sub [S (T T_COLON); r274] in
  let r276 = Sub [r154; r275] in
  let r277 = Sub [S (T T_RBRACKET); R 324] in
  let r278 = Sub [r82; r277] in
  let r279 = Sub [S (T T_UNDERSCORE); R 514] in
  let r280 = Sub [S (T T_RPAREN); R 967] in
  let r281 = Sub [r47; R 708] in
  let r282 = Sub [R 660; r281] in
  let r283 = Sub [S (T T_BARRBRACKET); R 972] in
  let r284 = Sub [r58; R 467] in
  let r285 = Sub [S (T T_RBRACKET); R 971] in
  let r286 = Sub [R 652; R 703] in
  let r287 = Sub [r263; R 370; R 7] in
  let r288 = Sub [R 656; r287] in
  let r289 = Sub [S (T T_RBRACE); R 970] in
  let r290 = Sub [r40; R 964] in
  let r291 = Sub [S (T T_PLUS); S (T T_FLOAT); R 840] in
  let r292 = Sub [S (T T_RBRACKET); R 977] in
  let r293 = Sub [S (T T_LBRACKET); r292] in
  let r294 = Sub [r58; R 706] in
  let r295 = Sub [S (T T_RPAREN); R 705] in
  let r296 = Sub [R 652; r295] in
  let r297 = Sub [S (T T_COLON); r282] in
  let r298 = Sub [S (T T_BARRBRACKET); R 957] in
  let r299 = Sub [R 656; r284; r286] in
  let r300 = Sub [S (T T_RBRACKET); R 956] in
  let r301 = Sub [S (T T_RBRACE); R 955] in
  let r302 = Sub [S (T T_BARRBRACKET); R 975] in
  let r303 = Sub [S (T T_RBRACE); R 973] in
  let r304 = Sub [S (T T_RPAREN); R 966] in
  let r305 = Sub [S (T T_RPAREN); R 714] in
  let r306 = Sub [r57; r305] in
  let r307 = Sub [S (T T_COMMA); r306] in
  let r308 = Sub [r57; r307] in
  let r309 = Sub [S (T T_LPAREN); r308] in
  let r310 = Sub [S (N N_expr); R 203] in
  let r311 = Sub [S (T T_EQUALGREATER); r310] in
  let r312 = Sub [r311; R 309] in
  let r313 = Sub [R 678; r312] in
  let r314 = Sub [S (T T_RPAREN); r313] in
  let r315 = Sub [S (T T_LPAREN); r314] in
  let r316 = Sub [r315; R 235] in
  let r317 = Sub [R 674; R 367; R 361] in
  let r318 = Sub [S (T T_DOWNTO); R 186] in
  let r319 = Sub [S (N N_simple_expr_call); R 244] in
  let r320 = Sub [S (T T_RPAREN); r319] in
  let r321 = Sub [S (N N_expr); r320] in
  let r322 = Sub [r318; r321] in
  let r323 = Sub [S (N N_expr); r322] in
  let r324 = Sub [S (T T_IN); r323] in
  let r325 = Sub [r58; r324] in
  let r326 = Sub [S (T T_LPAREN); r325] in
  let r327 = Sub [S (T T_UNDERSCORE); R 232] in
  let r328 = Sub [S (N N_expr); R 236] in
  let r329 = Sub [S (T T_EQUALGREATER); r328] in
  let r330 = Sub [S (T T_RPAREN); R 231] in
  let r331 = Sub [S (T T_RPAREN); R 229] in
  let r332 = Sub [S (T T_RBRACKET); R 854] in
  let r333 = Sub [S (N N_expr); r332] in
  let r334 = Sub [S (T T_RBRACE); R 853] in
  let r335 = Sub [S (T T_LBRACE); r334] in
  let r336 = Sub [S (N N_expr); R 282] in
  let r337 = Sub [S (N N_expr); R 381] in
  let r338 = Sub [S (N N_expr); R 281] in
  let r339 = Sub [S (T T_COLON); r338] in
  let r340 = Sub [S (N N_expr); R 382] in
  let r341 = Sub [S (T T_EQUAL); r340] in
  let r342 = Sub [S (N N_expr); R 383] in
  let r343 = Sub [r8; R 777] in
  let r344 = Sub [r154; R 958; r337] in
  let r345 = Sub [r344; R 384] in
  let r346 = Sub [r8; R 788] in
  let r347 = Sub [S (T T_SEMI); r346] in
  let r348 = Sub [S (N N_expr); R 378] in
  let r349 = Sub [S (T T_EQUAL); r348] in
  let r350 = Sub [r58; r349] in
  let r351 = Sub [r350; R 372] in
  let r352 = Sub [S (N N_expr); R 379] in
  let r353 = Sub [S (T T_EQUAL); r352] in
  let r354 = Sub [S (N N_expr); R 201] in
  let r355 = Sub [S (T T_EQUAL); r354] in
  let r356 = Sub [r355; R 305] in
  let r357 = Sub [R 674; r356] in
  let r358 = Sub [r355; R 307] in
  let r359 = Sub [R 674; r358] in
  let r360 = Sub [r355; R 308] in
  let r361 = Sub [R 674; r360] in
  let r362 = Sub [S (T T_RPAREN); r361] in
  let r363 = Sub [r355; R 306] in
  let r364 = Sub [R 674; r363] in
  let r365 = Sub [S (T T_RPAREN); r364] in
  let r366 = Sub [S (T T_LIDENT); R 569] in
  let r367 = Sub [S (N N_expr); R 377] in
  let r368 = Sub [S (T T_EQUAL); r367] in
  let r369 = Sub [r19; r368] in
  let r370 = Sub [S (T T_DOT); r369] in
  let r371 = Sub [S (N N_expr); R 376] in
  let r372 = Sub [S (T T_EQUAL); r371] in
  let r373 = Sub [r19; r372] in
  let r374 = Sub [S (N N_expr); R 374] in
  let r375 = Sub [S (T T_TRUE); R 156] in
  let r376 = Sub [r375; R 302] in
  let r377 = Sub [S (T T_TRUE); S (T T_EQUAL); r376; R 194] in
  let r378 = Sub [S (T T_RPAREN); R 154] in
  let r379 = Sub [r8; R 785] in
  let r380 = Sub [r8; R 781] in
  let r381 = Sub [S (T T_SEMI); r380] in
  let r382 = Sub [r52; r381] in
  let r383 = Sub [R 692; r382] in
  let r384 = Sub [r52; R 538] in
  let r385 = Sub [S (T T_EQUAL); r384] in
  let r386 = Sub [r385; R 521] in
  let r387 = Sub [R 423; r386] in
  let r388 = Sub [r8; R 780] in
  let r389 = Sub [S (T T_SEMI); r388] in
  let r390 = Sub [S (T T_RPAREN); R 313] in
  let r391 = Sub [r46; R 542] in
  let r392 = Sub [S (T T_RPAREN); R 316] in
  let r393 = Sub [r279; R 650] in
  let r394 = Sub [S (T T_LIDENT); R 651] in
  let r395 = Sub [r8; R 782] in
  let r396 = Sub [S (T T_SEMI); r395] in
  let r397 = Sub [r52; r396] in
  let r398 = Sub [R 692; r397] in
  let r399 = Sub [S (T T_OPEN); r398] in
  let r400 = Sub [r8; R 789] in
  let r401 = Sub [S (T T_SEMI); r400] in
  let r402 = Sub [R 392; R 393] in
  let r403 = Sub [R 392; R 394] in
  let r404 = Sub [r350; r403] in
  let r405 = Sub [R 664; R 779] in
  let r406 = Sub [r350; R 373] in
  let r407 = Sub [R 729; r406] in
  let r408 = Sub [S (T T_RPAREN); R 518] in
  let r409 = Sub [r52; R 535] in
  let r410 = Sub [S (T T_EQUALGREATER); r409] in
  let r411 = Sub [R 682; r410] in
  let r412 = Sub [r8; R 784] in
  let r413 = Sub [S (T T_SEMI); r412] in
  let r414 = Sub [r385; R 522] in
  let r415 = Sub [r8; R 783] in
  let r416 = Sub [S (T T_SEMI); r415] in
  let r417 = Sub [r8; R 774] in
  let r418 = Sub [r8; R 770] in
  let r419 = Sub [S (T T_SEMI); r418] in
  let r420 = Sub [r52; r419] in
  let r421 = Sub [R 692; r420] in
  let r422 = Sub [r8; R 772] in
  let r423 = Sub [S (T T_SEMI); r422] in
  let r424 = Sub [r8; R 769] in
  let r425 = Sub [S (T T_SEMI); r424] in
  let r426 = Sub [r8; R 771] in
  let r427 = Sub [S (T T_SEMI); r426] in
  let r428 = Sub [r52; r427] in
  let r429 = Sub [R 692; r428] in
  let r430 = Sub [S (T T_OPEN); r429] in
  let r431 = Sub [r8; R 778] in
  let r432 = Sub [S (T T_SEMI); r431] in
  let r433 = Sub [r8; R 773] in
  let r434 = Sub [S (T T_SEMI); r433] in
  let r435 = Sub [R 652; R 284] in
  let r436 = Sub [S (T T_RPAREN); R 851] in
  let r437 = Sub [S (T T_RBRACKET); R 860] in
  let r438 = Sub [S (T T_LESSSLASHIDENTGREATER); R 345] in
  let r439 = Sub [S (T T_LESSSLASHIDENTGREATER); R 346] in
  let r440 = Sub [S (T T_RBRACKET); R 895] in
  let r441 = Sub [S (N N_expr); r440] in
  let r442 = Sub [S (T T_RBRACKET); R 896] in
  let r443 = Sub [S (N N_expr); r442] in
  let r444 = Sub [S (N N_expr); R 445] in
  let r445 = Sub [S (T T_RBRACE); R 897] in
  let r446 = Sub [R 652; r445] in
  let r447 = Sub [r127; R 447; r435] in
  let r448 = Sub [S (T T_BARRBRACKET); R 859] in
  let r449 = Sub [S (T T_LIDENT); R 304; R 449] in
  let r450 = Sub [S (T T_GREATERRBRACE); R 865] in
  let r451 = Sub [R 652; r450] in
  let r452 = Sub [R 652; R 748] in
  let r453 = Sub [S (N N_expr); r452] in
  let r454 = Sub [S (T T_COLON); r453] in
  let r455 = Sub [R 652; R 733] in
  let r456 = Sub [R 417; r455] in
  let r457 = Sub [r263; r456] in
  let r458 = Sub [R 656; r457] in
  let r459 = Sub [S (T T_COMMA); r458] in
  let r460 = Sub [r263; R 464] in
  let r461 = Sub [R 652; R 734] in
  let r462 = Sub [R 676; R 1039] in
  let r463 = Sub [R 652; R 732] in
  let r464 = Sub [R 417; r463] in
  let r465 = Sub [R 652; R 1042] in
  let r466 = Sub [R 652; R 737] in
  let r467 = Sub [S (N N_expr); r466] in
  let r468 = Sub [R 652; R 742] in
  let r469 = Sub [R 417; r468] in
  let r470 = Sub [r263; r469] in
  let r471 = Sub [R 652; R 741] in
  let r472 = Sub [R 417; r471] in
  let r473 = Sub [R 652; R 740] in
  let r474 = Sub [R 417; r473] in
  let r475 = Sub [R 652; R 739] in
  let r476 = Sub [R 417; r475] in
  let r477 = Sub [S (T T_RBRACKET); R 855] in
  let r478 = Sub [S (N N_expr); r477] in
  let r479 = Sub [S (T T_LBRACKET); r478] in
  let r480 = Sub [S (T T_RBRACE); R 856] in
  let r481 = Sub [R 652; r480] in
  let r482 = Sub [r444; r481] in
  let r483 = Sub [S (N N_expr); R 237] in
  let r484 = Sub [S (T T_EQUALGREATER); r483] in
  let r485 = Sub [r311; R 311] in
  let r486 = Sub [R 678; r485] in
  let r487 = Sub [r311; R 312] in
  let r488 = Sub [R 678; r487] in
  let r489 = Sub [S (T T_RPAREN); r488] in
  let r490 = Sub [r311; R 310] in
  let r491 = Sub [R 678; r490] in
  let r492 = Sub [S (T T_RPAREN); r491] in
  let r493 = Sub [S (N N_expr); R 491] in
  let r494 = Sub [S (T T_EQUALGREATER); r493] in
  let r495 = Sub [S (N N_expr); R 492] in
  let r496 = Sub [S (T T_EQUALGREATER); r495] in
  let r497 = Sub [r52; R 613] in
  let r498 = Sub [R 670; r497] in
  let r499 = Sub [r40; R 1064] in
  let r500 = Sub [R 662; r499] in
  let r501 = Sub [S (T T_RPAREN); R 1168] in
  let r502 = Sub [S (N N_expr); r501] in
  let r503 = Sub [S (T T_COMMA); r502] in
  let r504 = Sub [S (N N_expr); r503] in
  let r505 = Sub [S (T T_LPAREN); r504] in
  let r506 = Sub [S (T T_RPAREN); r505] in
  let r507 = Sub [S (N N_expr); R 1201] in
  let r508 = Sub [S (T T_MODULE); R 646] in
  let r509 = Sub [S (N N_simple_expr_call); R 1164] in
  let r510 = Sub [r2; r509] in
  let r511 = Sub [r315; R 1158] in
  let r512 = Sub [S (N N_simple_expr_call); R 1167] in
  let r513 = Sub [S (T T_RPAREN); r512] in
  let r514 = Sub [S (N N_expr); r513] in
  let r515 = Sub [r318; r514] in
  let r516 = Sub [S (N N_expr); r515] in
  let r517 = Sub [S (T T_IN); r516] in
  let r518 = Sub [r58; r517] in
  let r519 = Sub [S (T T_LPAREN); r518] in
  let r520 = Sub [S (T T_SEMI); R 1055] in
  let r521 = Sub [r19; r520] in
  let r522 = Sub [S (T T_COLON); r521] in
  let r523 = Sub [r154; r522] in
  let r524 = Sub [S (T T_STRING); R 567; R 726] in
  let r525 = Sub [S (N N_expr); R 1159] in
  let r526 = Sub [S (T T_EQUALGREATER); r525] in
  let r527 = Sub [S (N N_expr); R 1160] in
  let r528 = Sub [S (T T_EQUALGREATER); r527] in
  let r529 = Sub [S (T T_SEMI); R 807] in
  let r530 = Sub [r19; r529] in
  let r531 = Sub [S (T T_COLON); r530] in
  let r532 = Sub [r154; r531] in
  let r533 = Sub [R 664; R 121] in
  let r534 = Sub [r533; R 118; R 119] in
  let r535 = Sub [S (T T_RBRACE); R 141] in
  let r536 = Sub [r534; r535] in
  let r537 = Sub [S (T T_LBRACE); r536; R 200; R 143] in
  let r538 = Sub [R 421; r537] in
  let r539 = Sub [S (T T_LIDENT); r538] in
  let r540 = Sub [R 1218; r539] in
  let r541 = Sub [R 390; R 144] in
  let r542 = Sub [r540; r541] in
  let r543 = Sub [r40; R 1147] in
  let r544 = Sub [S (T T_QUOTE); r543; R 1115] in
  let r545 = Sub [S (T T_RPAREN); R 422] in
  let r546 = Sub [R 652; r545] in
  let r547 = Sub [r19; R 1217] in
  let r548 = Sub [S (T T_COLON); r547] in
  let r549 = Sub [S (T T_LIDENT); r548] in
  let r550 = Sub [R 557; r549] in
  let r551 = Sub [r171; R 129] in
  let r552 = Sub [S (T T_COLON); r551] in
  let r553 = Sub [S (T T_LIDENT); r552] in
  let r554 = Sub [r171; R 127] in
  let r555 = Sub [S (T T_COLON); r554] in
  let r556 = Sub [S (T T_LIDENT); r555] in
  let r557 = Sub [R 429; R 108] in
  let r558 = Sub [S (T T_LIDENT); R 146; r557] in
  let r559 = Sub [S (T T_LIDENT); R 147] in
  let r560 = Sub [R 652; R 140] in
  let r561 = Sub [S (T T_RPAREN); R 430] in
  let r562 = Sub [S (T T_RBRACE); R 142] in
  let r563 = Sub [r19; R 158] in
  let r564 = Sub [S (T T_EQUAL); r563] in
  let r565 = Sub [r19; r564] in
  let r566 = Sub [r534; R 120] in
  let r567 = Sub [S (T T_SEMI); r566] in
  let r568 = Sub [r254; r567] in
  let r569 = Sub [R 692; r568] in
  let r570 = Sub [r171; R 130] in
  let r571 = Sub [S (T T_COLON); r570] in
  let r572 = Sub [S (T T_LIDENT); r571] in
  let r573 = Sub [r171; R 128] in
  let r574 = Sub [S (T T_COLON); r573] in
  let r575 = Sub [S (T T_LIDENT); r574] in
  let r576 = Sub [r540; R 16] in
  let r577 = Sub [r558; R 66] in
  let r578 = Sub [r577; R 79] in
  let r579 = Sub [S (T T_COLON); r578] in
  let r580 = Sub [R 421; r579] in
  let r581 = Sub [S (T T_LIDENT); r580] in
  let r582 = Sub [r577; R 67] in
  let r583 = Sub [R 388; R 80] in
  let r584 = Sub [R 1218; r581] in
  let r585 = Sub [r584; R 14] in
  let r586 = Sub [r254; R 815] in
  let r587 = Sub [r44; R 549] in
  let r588 = Sub [R 397; R 819] in
  let r589 = Sub [r587; R 19] in
  let r590 = Sub [r587; R 20] in
  let r591 = Sub [r279; r590] in
  let r592 = Sub [r23; R 817] in
  let r593 = Sub [r90; R 1096] in
  let r594 = Sub [R 595; r593] in
  let r595 = Sub [r161; R 794] in
  let r596 = Sub [r161; R 795] in
  let r597 = Sub [R 226; r596] in
  let r598 = Sub [S (T T_PLUSEQ); r597] in
  let r599 = Sub [r85; r598] in
  let r600 = Sub [S (T T_LIDENT); r599] in
  let r601 = Sub [r90; R 1098] in
  let r602 = Sub [R 595; r601] in
  let r603 = Sub [r161; R 798] in
  let r604 = Sub [r161; R 799] in
  let r605 = Sub [R 226; r604] in
  let r606 = Sub [S (T T_PLUSEQ); r605] in
  let r607 = Sub [r85; r606] in
  let r608 = Sub [S (T T_LIDENT); r607] in
  let r609 = Sub [r254; R 616] in
  let r610 = Sub [R 670; r609] in
  let r611 = Sub [r40; R 822] in
  let r612 = Sub [r171; R 804] in
  let r613 = Sub [S (T T_COLON); r612] in
  let r614 = Sub [S (T T_SEMI); R 808] in
  let r615 = Sub [r19; r614] in
  let r616 = Sub [S (T T_COLON); r615] in
  let r617 = Sub [r154; r616] in
  let r618 = Sub [R 390; R 145] in
  let r619 = Sub [r540; r618] in
  let r620 = Sub [R 388; R 81] in
  let r621 = Sub [r254; R 816] in
  let r622 = Sub [R 397; R 820] in
  let r623 = Sub [r23; R 818] in
  let r624 = Sub [R 664; R 600] in
  let r625 = Sub [r624; R 599; R 93] in
  let r626 = Sub [S (T T_RBRACE); R 198] in
  let r627 = Sub [r625; r626] in
  let r628 = Sub [S (T T_LBRACE); r627; R 68] in
  let r629 = Sub [R 672; r628] in
  let r630 = Sub [r629; R 69] in
  let r631 = Sub [S (T T_LIDENT); r630] in
  let r632 = Sub [R 1218; r631] in
  let r633 = Sub [R 386; R 1069] in
  let r634 = Sub [r629; R 70] in
  let r635 = Sub [r35; R 136; R 82] in
  let r636 = Sub [S (T T_RPAREN); R 139] in
  let r637 = Sub [S (T T_RBRACE); R 137] in
  let r638 = Sub [R 666; R 95] in
  let r639 = Sub [r635; r638] in
  let r640 = Sub [R 439; R 89] in
  let r641 = Sub [r635; R 83] in
  let r642 = Sub [S (T T_EQUALGREATER); r641] in
  let r643 = Sub [S (T T_RPAREN); r642] in
  let r644 = Sub [r635; R 85] in
  let r645 = Sub [S (T T_EQUALGREATER); r644] in
  let r646 = Sub [r635; R 86] in
  let r647 = Sub [S (T T_EQUALGREATER); r646] in
  let r648 = Sub [S (T T_RPAREN); r647] in
  let r649 = Sub [r635; R 84] in
  let r650 = Sub [S (T T_EQUALGREATER); r649] in
  let r651 = Sub [S (T T_RPAREN); r650] in
  let r652 = Sub [r625; R 94] in
  let r653 = Sub [S (T T_SEMI); r652] in
  let r654 = Sub [r254; r653] in
  let r655 = Sub [R 692; r654] in
  let r656 = Sub [r19; R 1211] in
  let r657 = Sub [S (T T_COLON); r656] in
  let r658 = Sub [S (N N_expr); R 1212] in
  let r659 = Sub [S (N N_expr); R 1216] in
  let r660 = Sub [R 670; r407] in
  let r661 = Sub [R 666; R 96] in
  let r662 = Sub [r635; r661] in
  let r663 = Sub [r355; R 499] in
  let r664 = Sub [R 680; r663] in
  let r665 = Sub [S (T T_LIDENT); r664] in
  let r666 = Sub [R 692; r665] in
  let r667 = Sub [r171; R 497] in
  let r668 = Sub [S (T T_COLON); r667] in
  let r669 = Sub [r355; R 500] in
  let r670 = Sub [r19; r669] in
  let r671 = Sub [S (T T_DOT); r670] in
  let r672 = Sub [r58; R 114] in
  let r673 = Sub [r625; R 92] in
  let r674 = Sub [S (T T_RPAREN); R 138] in
  let r675 = Sub [r629; R 72] in
  let r676 = Sub [r629; R 73] in
  let r677 = Sub [S (T T_RPAREN); r676] in
  let r678 = Sub [r629; R 74] in
  let r679 = Sub [S (T T_RPAREN); r678] in
  let r680 = Sub [r629; R 75] in
  let r681 = Sub [r629; R 77] in
  let r682 = Sub [r629; R 78] in
  let r683 = Sub [S (T T_RPAREN); r682] in
  let r684 = Sub [r629; R 76] in
  let r685 = Sub [S (T T_RPAREN); r684] in
  let r686 = Sub [r629; R 71] in
  let r687 = Sub [S (T T_RPAREN); r686] in
  let r688 = Sub [r632; R 12] in
  let r689 = Sub [S (N N_expr); R 1204] in
  let r690 = Sub [S (T T_COLON); r689] in
  let r691 = Sub [S (N N_expr); R 1198] in
  let r692 = Sub [S (N N_expr); R 1199] in
  let r693 = Sub [S (N N_expr); R 1200] in
  let r694 = Sub [S (N N_expr); R 1197] in
  let r695 = Sub [R 395; R 1062] in
  let r696 = Sub [r387; R 17] in
  let r697 = Sub [r387; R 18] in
  let r698 = Sub [r279; r697] in
  let r699 = Sub [R 399; R 38] in
  let r700 = Sub [r377; r699] in
  let r701 = Sub [r700; R 1033] in
  let r702 = Sub [r377; R 577] in
  let r703 = Sub [R 399; R 400] in
  let r704 = Sub [R 399; R 401] in
  let r705 = Sub [R 399; R 402] in
  let r706 = Sub [r377; r705] in
  let r707 = Sub [R 399; R 403] in
  let r708 = Sub [r700; R 1034] in
  let r709 = Sub [R 226; r708] in
  let r710 = Sub [S (T T_PLUSEQ); r709] in
  let r711 = Sub [r85; r710] in
  let r712 = Sub [S (T T_LIDENT); r711] in
  let r713 = Sub [r700; R 1037] in
  let r714 = Sub [r700; R 1038] in
  let r715 = Sub [R 226; r714] in
  let r716 = Sub [S (T T_PLUSEQ); r715] in
  let r717 = Sub [r85; r716] in
  let r718 = Sub [S (T T_LIDENT); r717] in
  let r719 = Sub [r52; R 614] in
  let r720 = Sub [R 670; r719] in
  let r721 = Sub [r40; R 1065] in
  let r722 = Sub [R 662; r721] in
  let r723 = Sub [S (T T_SEMI); R 1056] in
  let r724 = Sub [r19; r723] in
  let r725 = Sub [S (T T_COLON); r724] in
  let r726 = Sub [r154; r725] in
  let r727 = Sub [R 386; R 1070] in
  let r728 = Sub [R 395; R 1063] in
  let r729 = Sub [S (N N_simple_expr_call); R 1157; R 1049] in
  let r730 = Sub [S (N N_expr); R 723] in
  let r731 = Sub [r154; R 1210] in
  let r732 = Sub [S (T T_UNDERSCORE); R 357] in
  let r733 = Sub [S (T T_RPAREN); R 351] in
  let r734 = Sub [S (T T_LESSSLASHIDENTGREATER); R 330] in
  let r735 = Sub [S (T T_RBRACKET); R 901] in
  let r736 = Sub [S (T T_BARRBRACKET); R 900] in
  let r737 = Sub [S (T T_GREATERRBRACE); R 906] in
  let r738 = Sub [R 652; r737] in
  let r739 = Sub [S (T T_RBRACKET); R 926] in
  let r740 = Sub [r8; R 495] in
  let r741 = Sub [S (T T_EQUALGREATER); r740] in
  let r742 = Sub [S (T T_RBRACKET); R 927] in
  let r743 = Sub [S (N N_expr); r742] in
  let r744 = Sub [S (T T_RBRACE); R 928] in
  let r745 = Sub [R 652; r744] in
  let r746 = Sub [S (T T_RBRACE); R 925] in
  let r747 = Sub [S (T T_LBRACE); r746] in
  let r748 = Sub [S (T T_RPAREN); R 923] in
  let r749 = Sub [S (T T_RBRACKET); R 932] in
  let r750 = Sub [S (T T_BARRBRACKET); R 931] in
  let r751 = Sub [S (T T_GREATERRBRACE); R 937] in
  let r752 = Sub [R 652; r751] in
  let r753 = Sub [S (T T_RPAREN); R 881] in
  let r754 = Sub [S (T T_RPAREN); R 565] in
  let r755 = Sub [S (T T_GREATERRBRACE); R 878] in
  let r756 = Sub [S (T T_BARRBRACKET); R 887] in
  let r757 = Sub [r40; R 591] in
  let r758 = Sub [S (T T_GREATER); R 1120] in
  let r759 = Sub [S (T T_GREATER); R 1119] in
  let r760 = Sub [S (T T_GREATER); R 1121] in
  let r761 = Sub [R 21; R 176] in
  let r762 = Sub [R 21; R 179] in
  let r763 = Sub [r700; R 1031] in
  let r764 = Sub [r700; R 1032] in
  let r765 = Sub [R 226; r764] in
  let r766 = Sub [S (T T_PLUSEQ); r765] in
  let r767 = Sub [r85; r766] in
  let r768 = Sub [S (T T_LIDENT); r767] in
  let r769 = Sub [r700; R 1035] in
  let r770 = Sub [r700; R 1036] in
  let r771 = Sub [R 226; r770] in
  let r772 = Sub [S (T T_PLUSEQ); r771] in
  let r773 = Sub [r85; r772] in
  let r774 = Sub [S (T T_LIDENT); r773] in
  let r775 = Sub [S (T T_RPAREN); R 245] in
  let r776 = Sub [S (N N_expr); r775] in
  let r777 = Sub [S (T T_COMMA); r776] in
  let r778 = Sub [S (N N_expr); r777] in
  let r779 = Sub [S (T T_LPAREN); r778] in
  let r780 = Sub [r47; R 528] in
  let r781 = Sub [r47; R 526] in
  let r782 = Sub [r47; R 527] in
  let r783 = Sub [S (N N_expr); R 1214] in
  let r784 = Sub [S (T T_RBRACE); R 61] in
  let r785 = Sub [R 652; r784] in
  let r786 = Sub [S (T T_DOT); r335] in
  let r787 = Sub [R 219; R 1082] in
  let r788 = Sub [S (T T_EOF); R 208; R 1206] in
  let r789 = Sub [S (T T_COLONEQUAL); r592] in
  let r790 = Sub [S (T T_EQUAL); r691] in
  let r791 = Sub [S (T T_RBRACKET); r790] in
  let r792 = Sub [S (T T_EQUAL); r692] in
  let r793 = Sub [S (T T_RBRACKET); r792] in
  let r794 = Sub [S (N N_expr); r793] in
  let r795 = Sub [S (T T_EQUAL); r693] in
  let r796 = Sub [S (T T_RBRACE); r795] in
  let r797 = Sub [R 652; r796] in
  function
  | 0 | 2603 | 2607 | 2611 | 2615 | 2619 | 2636 -> Nothing
  | 1 -> One [R 690; r4]
  | 2 -> One [r5; R 326]
  | 3 -> One [R 1028]
  | 4 -> One [R 1027]
  | 5 -> One [R 1026]
  | 6 -> One [R 1025]
  | 7 -> One [R 1024]
  | 8 -> One [R 980]
  | 9 -> One [R 1023]
  | 10 -> One [R 1022]
  | 11 -> One [R 1021]
  | 12 -> One [R 1020]
  | 13 -> One [R 1019]
  | 14 -> One [R 1006]
  | 15 -> One [R 1018]
  | 16 -> One [R 1017]
  | 17 -> One [R 1016]
  | 18 -> One [R 1015]
  | 19 -> One [R 1014]
  | 20 -> One [R 1013]
  | 21 -> One [R 1012]
  | 22 -> One [R 1011]
  | 23 -> One [R 1010]
  | 24 -> One [R 1009]
  | 25 -> One [R 1008]
  | 26 -> One [R 1007]
  | 27 -> One [R 979]
  | 28 -> One [R 1005]
  | 29 -> One [R 1004]
  | 30 -> One [R 1003]
  | 31 -> One [R 1002]
  | 32 -> One [R 1001]
  | 33 -> One [R 1000]
  | 34 -> One [R 999]
  | 35 -> One [R 998]
  | 36 -> One [R 997]
  | 37 -> One [R 996]
  | 38 -> One [R 995]
  | 39 -> One [R 994]
  | 40 -> One [R 993]
  | 41 -> One [R 992]
  | 42 -> One [R 991]
  | 43 -> One [R 990]
  | 44 -> One [R 989]
  | 45 -> One [R 988]
  | 46 -> One [R 987]
  | 47 -> One [R 986]
  | 48 -> One [R 985]
  | 49 -> One [R 984]
  | 50 -> One [R 983]
  | 51 -> One [R 982]
  | 52 -> One [R 981]
  | 53 -> One [R 34]
  | 54 -> One [r5; R 35]
  | 55 -> One [R 35]
  | 56 -> One [R 326]
  | 57 -> One [r4]
  | 58 -> One [r1]
  | 59 -> One [R 690; r7]
  | 60 -> One [r7]
  | 61 -> One [r8; r9]
  | 62 -> One [r14; R 97]
  | 63 -> One [R 555; r22]
  | 64 -> One [R 556]
  | 65 -> One [r22]
  | 66 -> One [r21]
  | 67 -> One [r19; R 1085]
  | 68 -> One [R 50]
  | 69 -> One [R 510]
  | 70 -> One [r26]
  | 71 -> One [R 453]
  | 72 -> One [r27]
  | 73 -> One [R 511]
  | 74 -> One [r24; r28]
  | 75 -> One [R 512]
  | 76 -> One [r24; r29]
  | 77 -> One [r29]
  | 78 -> One [R 503]
  | 79 -> One [r23; R 454]
  | 80 -> One [R 454]
  | 81 -> One [r28]
  | 82 -> One [R 502]
  | 83 -> One [r25]
  | 84 -> One [R 501]
  | 85 -> One [S (T T_LIDENT); r34]
  | 86 -> One [r34]
  | 87 -> One [r33]
  | 88 -> One [r35; R 49]
  | 89 -> One [R 515]
  | 90 -> One [R 112]
  | 91 -> One [S (T T_DOT); r36]
  | 92 -> One [r36]
  | 93 -> One [R 516]
  | 94 -> One [R 113]
  | 95 -> One [R 49]
  | 96 -> One [r37; r39]
  | 97 -> One [R 290]
  | 98 -> One [r41]
  | 99 -> One [R 320]
  | 100 -> One [R 321]
  | 101 -> One [R 48]
  | 102 -> One [r47; R 727]
  | 103 -> One [R 510]
  | 104 -> One [r50]
  | 105 -> One [R 514]
  | 106 -> One [R 513]
  | 107 -> One [R 313]
  | 108 -> One [S (T T_TYPE); r55]
  | 109 -> One [r55]
  | 110 -> One [r54]
  | 111 -> One [r51]
  | 112 -> One [S (N N_expr); R 525]
  | 113 -> One [R 690; r67]
  | 114 -> One [r67]
  | 115 -> One [R 156]
  | 116 -> One [R 151]
  | 117 -> One [S (N N_simple_expr_no_constructor); R 935]
  | 118 -> One [r35; R 936]
  | 119 -> One [R 936]
  | 120 -> One [r69]
  | 121 -> One [R 690; r74]
  | 122 -> One [r74]
  | 123 -> One [R 1207]
  | 124 -> One [R 507]
  | 125 -> One [r24; r75]
  | 126 -> One [r75]
  | 127 -> One [R 504]
  | 128 -> One [R 331; R 337]
  | 129 -> One [S (T T_LIDENT); r76]
  | 130 -> One [r76]
  | 131 -> One [R 331; R 335]
  | 132 -> One [R 336]
  | 133 -> One [S (N N_simple_expr_call); r77]
  | 134 -> One [S (N N_simple_expr_call); r78]
  | 135 -> One [S (N N_simple_expr_call); R 863]
  | 136 -> One [r35; R 864]
  | 137 -> One [R 864]
  | 138 -> One [r69]
  | 139 -> One [R 631]
  | 140 -> One [R 625]
  | 141 -> One [R 154]
  | 142 -> One [R 617]
  | 143 -> One [R 411; r79]
  | 144 -> One [S (N N_simple_expr_no_call); R 904]
  | 145 -> One [r35; R 905]
  | 146 -> One [R 905]
  | 147 -> One [r69]
  | 148 -> One [R 618]
  | 149 -> One [R 638]
  | 150 -> One [R 628]
  | 151 -> One [S (N N_expr); R 272]
  | 152 -> One [S (N N_expr); R 271]
  | 153 -> One [S (N N_expr); R 270]
  | 154 -> One [S (N N_expr); R 269]
  | 156 -> One [R 627]
  | 158 -> One [r80]
  | 159 -> One [S (T T_LIDENT); r81]
  | 160 -> One [r81]
  | 161 -> One [R 338]
  | 162 -> One [R 331; R 339]
  | 163 -> One [R 339]
  | 164 -> One [r5; r84]
  | 165 -> One [r84]
  | 166 -> One [r92]
  | 167 -> One [R 596]
  | 168 -> One [r91]
  | 169 -> One [r94]
  | 170 -> One [r98]
  | 171 -> One [R 214]
  | 172 -> One [r40; R 213]
  | 173 -> One [R 213]
  | 174 -> One [S (T T_UNDERSCORE); R 216]
  | 175 -> One [R 216]
  | 176 -> One [r40; R 215]
  | 177 -> One [R 215]
  | 178 -> One [S (T T_UNDERSCORE); R 218]
  | 179 -> One [R 218]
  | 180 -> One [r40; R 217]
  | 181 -> One [R 217]
  | 182 -> One [r97]
  | 183 -> One [R 432]
  | 184 -> One [R 481]
  | 185 -> One [r95]
  | 186 -> One [R 653]
  | 187 -> One [R 482]
  | 188 -> One [R 1148]
  | 189 -> One [R 1151]
  | 190 -> One [r96; r99]
  | 191 -> One [r99]
  | 192 -> One [R 1150]
  | 193 -> One [r93]
  | 194 -> One [S (T T_DOTDOT); R 1108]
  | 195 -> One [r102]
  | 197 -> One [R 1099]
  | 198 -> One [r104]
  | 199 -> One [r37; r106]
  | 200 -> One [r110; r112]
  | 201 -> One [R 435; r113]
  | 202 -> One [r110; r114]
  | 203 -> One [r5; r116]
  | 204 -> One [r116]
  | 205 -> One [R 690; r121]
  | 206 -> One [r121]
  | 207 -> One [r124; r125]
  | 208 -> One [R 331; R 342]
  | 209 -> One [R 342]
  | 210 -> One [r123]
  | 211 -> One [R 652; r126]
  | 212 -> One [R 657]
  | 213 -> One [R 653]
  | 214 -> One [r128]
  | 215 -> One [R 652; r129]
  | 216 -> One [r129]
  | 217 -> One [R 845]
  | 218 -> One [R 652; r130]
  | 219 -> One [R 653]
  | 220 -> One [r127; R 462]
  | 222 -> One [R 153]
  | 223 -> One [r131]
  | 224 -> One [R 283]
  | 225 -> One [r132]
  | 226 -> One [R 872]
  | 227 -> One [S (T T_GREATERRBRACE); R 879]
  | 228 -> One [R 304]
  | 229 -> One [S (N N_expr); R 303]
  | 230 -> One [S (N N_simple_expr_call); R 280]
  | 231 -> One [R 148]
  | 232 -> One [R 150]
  | 233 -> One [R 155]
  | 234 -> One [R 149]
  | 235 -> One [r40; R 848]
  | 236 -> One [R 848]
  | 237 -> One [S (T T_RPAREN); R 566]
  | 238 -> One [R 566]
  | 239 -> One [r52; r133]
  | 240 -> One [R 1046; r134]
  | 241 -> One [R 690; r139]
  | 242 -> One [r139]
  | 243 -> One [R 652; r140]
  | 244 -> One [r140]
  | 245 -> One [R 917]
  | 246 -> One [R 652; r141]
  | 247 -> One [r141]
  | 248 -> One [R 918]
  | 249 -> One [r142]
  | 250 -> One [r40; R 920]
  | 251 -> One [R 920]
  | 252 -> One [R 913]
  | 253 -> One [R 1209]
  | 254 -> One [r138]
  | 255 -> One [S (N N_simple_expr_no_call); R 939]
  | 256 -> One [r40; R 889]
  | 257 -> One [R 889]
  | 258 -> One [R 946]
  | 259 -> One [R 945]
  | 260 -> One [R 874]
  | 261 -> One [R 882]
  | 262 -> One [R 912]
  | 263 -> One [R 939]
  | 264 -> One [R 885]
  | 265 -> One [S (T T_DOT); r144]
  | 266 -> One [r144]
  | 267 -> One [r145; r146]
  | 268 -> One [R 639]
  | 269 -> One [R 633]
  | 270 -> One [R 645]
  | 271 -> One [R 630]
  | 272 -> One [R 690; r148]
  | 273 -> One [r148]
  | 274 -> One [r147]
  | 275 -> One [R 841]
  | 276 -> One [R 873]
  | 277 -> One [R 844]
  | 278 -> One [R 241]
  | 279 -> One [S (N N_simple_expr_no_call); R 867]
  | 280 -> One [R 867]
  | 281 -> One [R 331; R 340]
  | 282 -> One [S (T T_UIDENT); R 508]
  | 283 -> One [R 508]
  | 284 -> One [r24; r149]
  | 285 -> One [r149]
  | 286 -> One [R 505]
  | 287 -> One [R 340]
  | 288 -> One [R 509]
  | 289 -> One [r24; r150]
  | 290 -> One [r150]
  | 291 -> One [R 506]
  | 292 -> One [S (T T_SLASHGREATER); R 328]
  | 293 -> One [R 328]
  | 294 -> One [R 318]
  | 295 -> One [R 411; r151]
  | 296 -> One [R 319]
  | 297 -> One [R 411; R 412]
  | 298 -> One [S (N N_simple_expr_no_call); R 908]
  | 299 -> One [R 908]
  | 300 -> One [R 884]
  | 301 -> One [R 911]
  | 302 -> One [R 888]
  | 303 -> One [R 944]
  | 304 -> One [R 943]
  | 305 -> One [R 883]
  | 306 -> One [S (N N_simple_expr_call); R 909]
  | 307 -> One [R 909]
  | 308 -> One [R 850]
  | 309 -> One [S (N N_simple_expr_no_call); R 869]
  | 310 -> One [R 869]
  | 311 -> One [R 652; r152]
  | 312 -> One [S (T T_RPAREN); R 352]
  | 313 -> One [R 352]
  | 314 -> One [r153; R 485]
  | 315 -> One [R 358]
  | 316 -> One [r154; R 1209; r155]
  | 317 -> One [r69]
  | 318 -> One [R 617]
  | 319 -> One [R 628]
  | 320 -> One [R 627]
  | 321 -> One [R 639]
  | 322 -> One [R 630]
  | 323 -> One [R 629]
  | 324 -> One [r69]
  | 325 -> One [R 643]
  | 326 -> One [R 641]
  | 327 -> One [R 632]
  | 328 -> One [R 626]
  | 329 -> One [R 624]
  | 330 -> One [R 623]
  | 331 -> One [R 622]
  | 332 -> One [R 621]
  | 333 -> One [R 640]
  | 334 -> One [R 620]
  | 335 -> One [R 642]
  | 336 -> One [R 637]
  | 337 -> One [R 634]
  | 338 -> One [R 619]
  | 339 -> One [R 644]
  | 340 -> One [R 635]
  | 341 -> One [R 636]
  | 342 -> One [r68]
  | 343 -> One [R 1208]
  | 344 -> One [R 686; R 420]
  | 345 -> One [r157]
  | 346 -> One [r47; R 1086]
  | 347 -> One [r43]
  | 348 -> One [r92]
  | 349 -> One [r91]
  | 350 -> One [r89]
  | 351 -> One [r98]
  | 352 -> One [r88]
  | 353 -> One [R 226; r162]
  | 354 -> One [R 227]
  | 355 -> One [r162]
  | 356 -> One [r163]
  | 357 -> One [r167]
  | 358 -> One [r110; r168]
  | 359 -> One [r169]
  | 360 -> One [R 608]
  | 361 -> One [R 427; r170]
  | 362 -> One [S (T T_COLON); r172]
  | 363 -> One [r172]
  | 366 -> One [r173]
  | 367 -> One [R 573]
  | 368 -> One [R 574]
  | 369 -> One [S (T T_LPAREN); r178; r180]
  | 370 -> One [r178]
  | 371 -> One [R 655]
  | 372 -> One [r175]
  | 373 -> One [S (T T_LIDENT); r182]
  | 374 -> One [r182]
  | 375 -> One [r181]
  | 376 -> One [R 37]
  | 377 -> One [R 183]
  | 378 -> One [R 564]
  | 379 -> One [R 51]
  | 380 -> One [R 46]
  | 381 -> One [R 28]
  | 382 -> One [r31]
  | 383 -> One [R 689]
  | 384 -> One [R 368]
  | 385 -> One [R 52]
  | 386 -> One [r183]
  | 387 -> One [R 184]
  | 388 -> One [R 562]
  | 389 -> One [R 1155]
  | 390 -> One [S (T T_DOT); r184]
  | 392 -> One [R 1100]
  | 393 -> One [S (T T_EQUALGREATER); r185]
  | 394 -> One [r185]
  | 395 -> One [R 57]
  | 396 -> One [R 32]
  | 397 -> One [R 563]
  | 398 -> One [r18; R 33]
  | 399 -> One [R 33]
  | 400 -> One [R 571]
  | 401 -> One [R 572]
  | 402 -> One [R 1156]
  | 403 -> One [R 181]
  | 404 -> One [S (T T_QUOTE); r186]
  | 405 -> One [r186]
  | 406 -> One [R 182]
  | 407 -> One [R 728]
  | 408 -> One [R 27]
  | 409 -> One [R 29]
  | 410 -> One [R 483]
  | 411 -> One [r177]
  | 412 -> One [R 653]
  | 413 -> One [r174; R 484]
  | 414 -> One [R 484]
  | 415 -> One [r176]
  | 416 -> One [R 30]
  | 417 -> One [r180]
  | 418 -> One [r179]
  | 419 -> One [R 31]
  | 420 -> One [R 1043]
  | 421 -> One [S (T T_DOT); r187]
  | 422 -> One [r187]
  | 423 -> One [R 725]
  | 424 -> One [R 724]
  | 425 -> One [R 602]
  | 426 -> One [r171; R 604]
  | 427 -> One [R 604]
  | 428 -> One [r15; R 606]
  | 429 -> One [R 606]
  | 430 -> One [S (T T_RBRACE); R 610]
  | 431 -> One [R 610]
  | 432 -> One [R 477]
  | 433 -> One [R 428]
  | 434 -> One [R 459]
  | 435 -> One [r188]
  | 436 -> One [r190]
  | 437 -> One [r189]
  | 438 -> One [R 1044]
  | 439 -> One [R 603]
  | 440 -> One [r171; R 605]
  | 441 -> One [R 605]
  | 442 -> One [R 652; R 1045]
  | 443 -> One [R 653]
  | 444 -> One [R 478]
  | 445 -> One [S (T T_STRING); r190]
  | 446 -> One [R 1045]
  | 447 -> One [R 652; R 607]
  | 448 -> One [R 653]
  | 449 -> One [R 460]
  | 450 -> One [r188]
  | 451 -> One [R 607]
  | 452 -> One [r170]
  | 453 -> One [R 612]
  | 454 -> One [R 427; r191]
  | 455 -> One [S (T T_RBRACE); R 609]
  | 456 -> One [R 609]
  | 457 -> One [r191]
  | 458 -> One [R 611]
  | 459 -> One [r108; R 44]
  | 460 -> One [r40; R 1080]
  | 461 -> One [R 1080]
  | 462 -> One [R 59]
  | 463 -> One [r192; R 1078]
  | 464 -> One [R 1078]
  | 465 -> One [R 758]
  | 466 -> One [r192; R 759]
  | 467 -> One [R 759]
  | 468 -> One [R 754]
  | 469 -> One [R 44]
  | 470 -> One [r194]
  | 471 -> One [r193]
  | 472 -> One [R 1081]
  | 473 -> One [r192; R 1079]
  | 474 -> One [R 1079]
  | 475 -> One [R 560]
  | 476 -> One [R 755]
  | 477 -> One [R 563]
  | 478 -> One [R 571]
  | 479 -> One [R 561]
  | 480 -> One [r168]
  | 481 -> One [R 54]
  | 482 -> One [r109]
  | 483 -> One [S (T T_BAR); r195]
  | 484 -> One [r195]
  | 485 -> One [R 45]
  | 486 -> One [R 756]
  | 487 -> One [R 409; R 410]
  | 488 -> One [R 410]
  | 489 -> One [r194]
  | 490 -> One [R 409; R 757]
  | 491 -> One [R 757]
  | 493 -> One [R 473]
  | 494 -> One [R 555; r196]
  | 495 -> One [r196]
  | 496 -> One [R 751]
  | 497 -> One [r171; R 753]
  | 498 -> One [R 753]
  | 499 -> One [r197]
  | 500 -> One [R 750]
  | 501 -> One [r171; R 752]
  | 502 -> One [R 752]
  | 503 -> One [r199]
  | 504 -> One [R 653]
  | 505 -> One [R 474]
  | 506 -> One [r198]
  | 507 -> One [R 731]
  | 508 -> One [S (T T_RPAREN); R 161]
  | 509 -> One [R 161]
  | 510 -> One [r165]
  | 511 -> One [R 653]
  | 512 -> One [R 444]
  | 513 -> One [R 163]
  | 514 -> One [R 443]
  | 515 -> One [r166]
  | 516 -> One [R 162]
  | 517 -> One [R 160]
  | 518 -> One [r100]
  | 519 -> One [r19; R 675]
  | 520 -> One [R 675]
  | 521 -> One [R 317]
  | 522 -> One [R 159]
  | 523 -> One [R 291]
  | 524 -> One [R 669]
  | 525 -> One [r158]
  | 526 -> One [R 296]
  | 527 -> One [r201]
  | 528 -> One [r200]
  | 529 -> One [R 293]
  | 530 -> One [r203]
  | 531 -> One [r202]
  | 532 -> One [R 292]
  | 533 -> One [r204]
  | 534 -> One [R 295]
  | 535 -> One [r205]
  | 536 -> One [R 294]
  | 537 -> One [r159; R 583]
  | 538 -> One [r159; R 584]
  | 539 -> One [R 584]
  | 540 -> One [R 588]
  | 541 -> One [S (T T_BAR); r206]
  | 542 -> One [r206]
  | 543 -> One [r159; R 586]
  | 544 -> One [R 586]
  | 545 -> One [R 590]
  | 546 -> One [R 585]
  | 547 -> One [R 589]
  | 548 -> One [R 583]
  | 549 -> One [R 587]
  | 550 -> One [R 41]
  | 551 -> One [r160]
  | 552 -> One [r159; r207]
  | 553 -> One [r159; r208]
  | 554 -> One [r208]
  | 555 -> One [S (T T_BAR); r210]
  | 556 -> One [r210]
  | 557 -> One [r159; r211]
  | 558 -> One [r211]
  | 559 -> One [R 408]
  | 560 -> One [r209]
  | 561 -> One [R 407]
  | 562 -> One [R 406]
  | 563 -> One [r207]
  | 564 -> One [R 405]
  | 565 -> One [R 40]
  | 566 -> One [R 792]
  | 567 -> One [r212]
  | 568 -> One [r213]
  | 569 -> One [R 169]
  | 570 -> One [S (T T_DOTDOT); R 1141]
  | 571 -> One [r215]
  | 572 -> One [r214]
  | 573 -> One [R 166]
  | 574 -> One [R 471]
  | 575 -> One [r39]
  | 576 -> One [R 653]
  | 577 -> One [R 472]
  | 578 -> One [r38]
  | 579 -> One [R 1116]
  | 580 -> One [r217]
  | 581 -> One [r216]
  | 582 -> One [R 165]
  | 583 -> One [r101; R 168]
  | 584 -> One [R 168]
  | 585 -> One [R 1141]
  | 586 -> One [r101; R 167]
  | 587 -> One [R 167]
  | 588 -> One [r218; R 42]
  | 589 -> One [r102]
  | 590 -> One [R 164]
  | 591 -> One [r215]
  | 592 -> One [r217]
  | 593 -> One [r220]
  | 594 -> One [r221]
  | 595 -> One [R 170]
  | 596 -> One [r101; R 175]
  | 597 -> One [R 175]
  | 598 -> One [r223]
  | 599 -> One [r222]
  | 600 -> One [R 172]
  | 601 -> One [r225]
  | 602 -> One [r224]
  | 603 -> One [R 171]
  | 604 -> One [r101; R 174]
  | 605 -> One [R 174]
  | 606 -> One [r219]
  | 607 -> One [R 173]
  | 608 -> One [R 42]
  | 609 -> One [R 1129]
  | 610 -> One [R 1138]
  | 611 -> One [r183]
  | 612 -> One [r221]
  | 613 -> One [r223]
  | 614 -> One [r225]
  | 615 -> One [r226]
  | 616 -> One [R 43]
  | 617 -> One [R 1139]
  | 618 -> One [r228]
  | 619 -> One [r19; r230; R 593]
  | 620 -> One [r230]
  | 621 -> One [r229]
  | 622 -> One [R 157]
  | 623 -> One [R 593]
  | 624 -> One [R 594]
  | 625 -> One [S (T T_LIDENT); r234]
  | 626 -> One [r234]
  | 627 -> One [r233]
  | 628 -> One [r231]
  | 629 -> One [R 24; R 1133]
  | 630 -> One [S (T T_AND); r237]
  | 631 -> One [r237]
  | 632 -> One [r236]
  | 633 -> One [r235]
  | 634 -> One [R 26]
  | 635 -> One [R 1149]
  | 636 -> One [R 1133]
  | 637 -> One [R 1132]
  | 638 -> One [R 25]
  | 639 -> One [R 1122]
  | 640 -> One [R 24; R 1125]
  | 641 -> One [R 1125]
  | 642 -> One [r238]
  | 643 -> One [r227; R 1123]
  | 644 -> One [R 1123]
  | 645 -> One [R 1124]
  | 646 -> One [R 1135]
  | 647 -> One [R 191]
  | 648 -> One [R 192]
  | 649 -> One [R 1140]
  | 650 -> One [R 1128]
  | 651 -> One [R 1136]
  | 652 -> One [r183]
  | 653 -> One [R 1137]
  | 654 -> One [R 1134]
  | 655 -> One [S (T T_DOTDOT); R 1142]
  | 656 -> One [r218; R 191; r228; R 1131]
  | 657 -> One [r239]
  | 658 -> One [R 1131]
  | 659 -> One [R 1145]
  | 660 -> One [r220]
  | 661 -> One [R 1146]
  | 662 -> One [R 1142]
  | 663 -> One [R 1130]
  | 664 -> One [R 1143]
  | 665 -> One [r220]
  | 666 -> One [R 1144]
  | 667 -> One [R 1126]
  | 668 -> One [r86]
  | 669 -> One [r90; R 22]
  | 670 -> One [r94]
  | 671 -> One [r89]
  | 672 -> One [r88]
  | 673 -> One [R 1088]
  | 674 -> One [R 22]
  | 675 -> One [R 21; R 1094]
  | 676 -> One [S (T T_AND); r240]
  | 677 -> One [r240]
  | 678 -> One [R 23]
  | 679 -> One [R 1094]
  | 680 -> One [R 1093]
  | 681 -> One [R 1095]
  | 682 -> One [S (T T_DOT); r245]
  | 683 -> One [r245]
  | 684 -> One [r244]
  | 685 -> One [r243]
  | 686 -> One [r242]
  | 687 -> One [r241]
  | 688 -> One [R 793]
  | 689 -> One [r247]
  | 690 -> One [r246]
  | 691 -> One [r89]
  | 692 -> One [r88]
  | 693 -> One [R 226; r248]
  | 694 -> One [r248]
  | 695 -> One [R 796]
  | 696 -> One [R 1097]
  | 697 -> One [S (T T_DOT); r253]
  | 698 -> One [r253]
  | 699 -> One [r252]
  | 700 -> One [r251]
  | 701 -> One [r250]
  | 702 -> One [r249]
  | 703 -> One [R 797]
  | 704 -> One [R 325]
  | 705 -> One [R 692; r256]
  | 706 -> One [R 693]
  | 707 -> One [r256]
  | 708 -> One [r255]
  | 709 -> One [R 615]
  | 710 -> One [r257]
  | 711 -> One [R 671]
  | 713 -> One [r258]
  | 714 -> One [R 821]
  | 715 -> One [r46; R 550]
  | 716 -> One [R 545]
  | 717 -> One [R 949]
  | 718 -> One [R 948]
  | 719 -> One [R 550]
  | 720 -> One [r262; R 441; R 544]
  | 721 -> One [r263; r266]
  | 722 -> One [R 347]
  | 723 -> One [S (T T_DOT); r267]
  | 724 -> One [r267]
  | 725 -> One [R 348]
  | 726 -> One [r266]
  | 727 -> One [r265]
  | 728 -> One [R 226; r268]
  | 729 -> One [r268]
  | 730 -> One [R 1220]
  | 731 -> One [R 1221]
  | 732 -> One [r264]
  | 733 -> One [R 1222]
  | 734 -> One [r261]
  | 735 -> One [r260]
  | 736 -> One [r259]
  | 737 -> One [R 1224]
  | 738 -> One [r40; R 553; r270]
  | 739 -> One [r270]
  | 740 -> One [r269]
  | 741 -> One [R 1225]
  | 742 -> One [S (T T_DOT); r271]
  | 743 -> One [r271]
  | 744 -> One [R 320]
  | 745 -> One [R 554]
  | 746 -> One [R 553]
  | 747 -> One [S (T T_EQUALGREATER); r272]
  | 748 -> One [r272]
  | 749 -> One [R 547]
  | 750 -> One [R 950]
  | 751 -> One [r46; R 546]
  | 752 -> One [R 546]
  | 753 -> One [r46; R 1226]
  | 754 -> One [R 1226]
  | 755 -> One [S (T T_EQUAL); r273]
  | 756 -> One [r273]
  | 757 -> One [R 1223]
  | 758 -> One [R 441]
  | 759 -> One [R 544]
  | 760 -> One [r262; R 442]
  | 761 -> One [R 442]
  | 762 -> One [r46; R 825]
  | 763 -> One [R 825]
  | 764 -> One [R 551]
  | 765 -> One [R 823]
  | 767 -> One [R 646]
  | 768 -> One [r276]
  | 769 -> One [r275]
  | 770 -> One [r274]
  | 771 -> One [R 803]
  | 772 -> One [r5; r278]
  | 773 -> One [r278]
  | 774 -> One [r58; R 721]
  | 775 -> One [R 959]
  | 776 -> One [S (T T_LIDENT); R 1099; R 965]
  | 777 -> One [R 965]
  | 778 -> One [S (T T_INT); R 839]
  | 779 -> One [R 839]
  | 780 -> One [R 840]
  | 781 -> One [S (T T_INT); R 837]
  | 782 -> One [R 837]
  | 783 -> One [R 838]
  | 785 -> One [R 627]
  | 786 -> One [r279; r280]
  | 787 -> One [R 513]
  | 788 -> One [r280]
  | 789 -> One [R 967]
  | 790 -> One [r282]
  | 791 -> One [R 661]
  | 792 -> One [r281]
  | 793 -> One [R 708]
  | 794 -> One [R 694]
  | 795 -> One [R 629]
  | 796 -> One [R 437; r283]
  | 797 -> One [r284]
  | 799 -> One [r285]
  | 800 -> One [R 971]
  | 801 -> One [r286]
  | 802 -> One [R 653]
  | 803 -> One [r58; R 468]
  | 804 -> One [r288; r289]
  | 805 -> One [r287]
  | 806 -> One [R 7]
  | 807 -> One [R 8]
  | 808 -> One [R 652; R 9]
  | 809 -> One [R 9]
  | 810 -> One [R 10]
  | 811 -> One [R 370]
  | 812 -> One [r58; R 369]
  | 813 -> One [r56; R 716]
  | 814 -> One [r69]
  | 815 -> One [r57; R 715]
  | 816 -> One [r290]
  | 817 -> One [R 964]
  | 818 -> One [r290]
  | 819 -> One [R 964]
  | 820 -> One [R 958]
  | 821 -> One [R 968]
  | 822 -> One [R 953]
  | 823 -> One [R 952]
  | 824 -> One [R 712]
  | 825 -> One [R 960]
  | 826 -> One [r291; R 961]
  | 827 -> One [R 961]
  | 828 -> One [R 836]
  | 829 -> One [r291; R 962]
  | 830 -> One [R 962]
  | 832 -> One [r293]
  | 833 -> One [S (T T_RPAREN); R 978]
  | 834 -> One [R 978]
  | 835 -> One [R 709]
  | 836 -> One [R 701]
  | 837 -> One [r57; R 713]
  | 838 -> One [R 713]
  | 839 -> One [R 969]
  | 840 -> One [R 963]
  | 841 -> One [r294; R 469; r296]
  | 842 -> One [r279; r297]
  | 843 -> One [r297]
  | 844 -> One [R 469]
  | 845 -> One [R 706]
  | 846 -> One [r19; R 707]
  | 847 -> One [R 707]
  | 848 -> One [r58; R 702]
  | 849 -> One [R 702]
  | 850 -> One [r57; R 717]
  | 851 -> One [R 717]
  | 852 -> One [r296]
  | 853 -> One [R 653]
  | 854 -> One [R 470]
  | 855 -> One [r295]
  | 856 -> One [R 705]
  | 857 -> One [R 437; r298]
  | 858 -> One [R 652; R 438]
  | 859 -> One [R 438]
  | 860 -> One [r298]
  | 861 -> One [R 957]
  | 862 -> One [r299; r300]
  | 863 -> One [r300]
  | 864 -> One [R 956]
  | 865 -> One [r288; r301]
  | 866 -> One [r301]
  | 867 -> One [R 955]
  | 868 -> One [R 704]
  | 869 -> One [R 711]
  | 870 -> One [R 152]
  | 871 -> One [R 954]
  | 872 -> One [r154; R 710]
  | 873 -> One [R 710]
  | 874 -> One [S (T T_RPAREN); R 976]
  | 875 -> One [R 976]
  | 876 -> One [R 437; r302]
  | 877 -> One [r302]
  | 878 -> One [R 975]
  | 879 -> One [r292]
  | 880 -> One [R 977]
  | 881 -> One [S (T T_RBRACKET); R 974]
  | 882 -> One [R 974]
  | 883 -> One [r288; r303]
  | 884 -> One [r303]
  | 885 -> One [R 973]
  | 886 -> One [R 963]
  | 887 -> One [R 715]
  | 888 -> One [R 652; r304]
  | 889 -> One [r304]
  | 890 -> One [R 966]
  | 891 -> One [R 716]
  | 892 -> One [R 369]
  | 893 -> One [r154; R 371]
  | 894 -> One [R 371]
  | 895 -> One [r289]
  | 896 -> One [R 970]
  | 897 -> One [R 468]
  | 898 -> One [R 703]
  | 899 -> One [R 467]
  | 900 -> One [r283]
  | 901 -> One [R 972]
  | 902 -> One [S (T T_RPAREN); r309]
  | 903 -> One [r309]
  | 904 -> One [r308]
  | 905 -> One [r307]
  | 906 -> One [r306]
  | 907 -> One [r305]
  | 908 -> One [R 714]
  | 909 -> One [R 721]
  | 910 -> One [S (N N_expr); R 722]
  | 911 -> One [R 690; r316]
  | 912 -> One [r316]
  | 913 -> One [r314]
  | 914 -> One [S (T T_LIDENT); R 365]
  | 915 -> One [R 365]
  | 916 -> One [S (T T_LIDENT); r317]
  | 917 -> One [r317]
  | 918 -> One [r294; R 366]
  | 919 -> One [R 366]
  | 920 -> One [R 367]
  | 921 -> One [R 361]
  | 922 -> One [S (N N_expr); R 362]
  | 923 -> One [R 363]
  | 924 -> One [R 690; r326]
  | 925 -> One [r326]
  | 926 -> One [r325]
  | 927 -> One [r324]
  | 928 -> One [r323]
  | 929 -> One [r327; r329]
  | 930 -> One [R 232]
  | 931 -> One [S (T T_RPAREN); R 228]
  | 932 -> One [R 228]
  | 933 -> One [S (T T_RPAREN); R 230]
  | 934 -> One [R 230]
  | 935 -> One [R 364]
  | 936 -> One [R 652; r330]
  | 937 -> One [R 653]
  | 938 -> One [R 452]
  | 939 -> One [r330]
  | 940 -> One [R 231]
  | 941 -> One [R 451]
  | 942 -> One [R 652; r331]
  | 943 -> One [r331]
  | 944 -> One [R 229]
  | 945 -> One [R 233]
  | 946 -> One [r329]
  | 947 -> One [r328]
  | 948 -> One [S (N N_expr); R 273]
  | 949 -> One [S (N N_simple_expr_call); R 279]
  | 950 -> One [R 279]
  | 951 -> One [S (N N_simple_expr_call); R 868]
  | 952 -> One [R 868]
  | 953 -> One [r333]
  | 954 -> One [R 234]
  | 955 -> One [S (T T_LIDENT); R 866]
  | 956 -> One [R 866]
  | 957 -> One [r333]
  | 959 -> One [r335]
  | 961 -> One [R 629]
  | 962 -> One [R 843]
  | 963 -> One [R 870]
  | 964 -> One [R 269]
  | 965 -> One [R 847]
  | 966 -> One [R 842]
  | 967 -> One [r336]
  | 968 -> One [R 282]
  | 969 -> One [R 643]
  | 970 -> One [r337]
  | 971 -> One [R 381]
  | 972 -> One [S (N N_expr); R 257]
  | 973 -> One [R 257]
  | 974 -> One [S (N N_expr); R 252]
  | 975 -> One [R 252]
  | 976 -> One [S (N N_expr); R 251]
  | 977 -> One [R 251]
  | 978 -> One [S (N N_expr); r339]
  | 979 -> One [r339]
  | 980 -> One [S (N N_expr); R 264]
  | 981 -> One [R 264]
  | 982 -> One [S (N N_expr); R 265]
  | 983 -> One [R 265]
  | 984 -> One [S (N N_expr); R 250]
  | 985 -> One [R 250]
  | 986 -> One [S (N N_expr); R 254]
  | 987 -> One [R 254]
  | 988 -> One [S (N N_expr); R 253]
  | 989 -> One [R 253]
  | 990 -> One [S (N N_expr); R 259]
  | 991 -> One [R 259]
  | 992 -> One [S (N N_expr); R 256]
  | 993 -> One [R 256]
  | 994 -> One [S (N N_expr); R 255]
  | 995 -> One [R 255]
  | 996 -> One [S (N N_expr); R 267]
  | 997 -> One [R 267]
  | 998 -> One [S (N N_expr); R 249]
  | 999 -> One [R 249]
  | 1000 -> One [S (N N_expr); R 248]
  | 1001 -> One [R 248]
  | 1002 -> One [S (N N_expr); R 258]
  | 1003 -> One [R 258]
  | 1004 -> One [S (N N_expr); R 247]
  | 1005 -> One [R 247]
  | 1006 -> One [S (N N_expr); R 266]
  | 1007 -> One [R 266]
  | 1008 -> One [S (N N_expr); R 246]
  | 1009 -> One [S (N N_expr); R 268]
  | 1010 -> One [R 268]
  | 1011 -> One [R 246]
  | 1012 -> One [S (N N_expr); R 260]
  | 1013 -> One [R 260]
  | 1014 -> One [S (N N_expr); R 261]
  | 1015 -> One [R 261]
  | 1016 -> One [S (N N_expr); R 262]
  | 1017 -> One [R 262]
  | 1018 -> One [S (N N_expr); R 263]
  | 1019 -> One [R 263]
  | 1020 -> One [r338]
  | 1021 -> One [R 281]
  | 1022 -> One [R 709]
  | 1023 -> One [r19; r341]
  | 1024 -> One [r341]
  | 1025 -> One [r340]
  | 1026 -> One [R 382]
  | 1027 -> One [S (T T_EQUAL); r342]
  | 1028 -> One [r342]
  | 1029 -> One [R 383]
  | 1030 -> One [S (T T_SEMI); r343]
  | 1031 -> One [r343]
  | 1032 -> One [r345; r347]
  | 1033 -> One [r347]
  | 1034 -> One [r346]
  | 1035 -> One [R 659]
  | 1036 -> One [R 729; r351]
  | 1037 -> One [R 730]
  | 1038 -> One [r351]
  | 1039 -> One [R 953]
  | 1040 -> One [r19; r353]
  | 1041 -> One [r353]
  | 1042 -> One [r352]
  | 1043 -> One [R 379]
  | 1044 -> One [R 952]
  | 1045 -> One [S (T T_RPAREN); r357]
  | 1046 -> One [r357]
  | 1047 -> One [r356]
  | 1048 -> One [r354]
  | 1049 -> One [R 201]
  | 1050 -> One [R 305]
  | 1051 -> One [R 202]
  | 1052 -> One [S (T T_RPAREN); r359]
  | 1053 -> One [r359]
  | 1054 -> One [r358]
  | 1055 -> One [R 307]
  | 1056 -> One [R 652; r362]
  | 1057 -> One [r362]
  | 1058 -> One [r361]
  | 1059 -> One [r360]
  | 1060 -> One [R 308]
  | 1061 -> One [R 652; r365]
  | 1062 -> One [r365]
  | 1063 -> One [r364]
  | 1064 -> One [r363]
  | 1065 -> One [R 306]
  | 1066 -> One [r157]
  | 1067 -> One [r366; r370]
  | 1068 -> One [R 569]
  | 1069 -> One [R 570]
  | 1070 -> One [r370]
  | 1071 -> One [r369]
  | 1072 -> One [r368]
  | 1073 -> One [r367]
  | 1074 -> One [R 377]
  | 1075 -> One [S (T T_DOT); r373]
  | 1076 -> One [r373]
  | 1077 -> One [r372]
  | 1078 -> One [r371]
  | 1079 -> One [R 376]
  | 1080 -> One [r156]
  | 1081 -> One [r19; R 685]
  | 1082 -> One [R 685]
  | 1083 -> One [R 1084]
  | 1084 -> One [S (T T_EQUAL); r374]
  | 1085 -> One [r374]
  | 1086 -> One [R 374]
  | 1087 -> One [R 375]
  | 1088 -> One [r349]
  | 1089 -> One [r348]
  | 1090 -> One [R 378]
  | 1091 -> One [R 372]
  | 1092 -> One [r377; R 1029]
  | 1093 -> One [r163]
  | 1094 -> One [r375; R 297]
  | 1095 -> One [r378]
  | 1096 -> One [R 297]
  | 1097 -> One [r158]
  | 1098 -> One [r376]
  | 1099 -> One [R 302]
  | 1100 -> One [r201]
  | 1101 -> One [r200]
  | 1102 -> One [r375; R 299]
  | 1103 -> One [R 299]
  | 1104 -> One [r203]
  | 1105 -> One [r202]
  | 1106 -> One [r375; R 298]
  | 1107 -> One [R 298]
  | 1108 -> One [r204]
  | 1109 -> One [r375; R 301]
  | 1110 -> One [R 301]
  | 1111 -> One [r205]
  | 1112 -> One [r375; R 300]
  | 1113 -> One [R 300]
  | 1114 -> One [R 194]
  | 1115 -> One [R 193]
  | 1116 -> One [R 1029]
  | 1117 -> One [S (T T_SEMI); r379]
  | 1118 -> One [r379]
  | 1119 -> One [R 764]
  | 1120 -> One [R 785]
  | 1121 -> One [S (T T_OPEN); r383]
  | 1122 -> One [r383]
  | 1123 -> One [r382]
  | 1124 -> One [R 188]
  | 1125 -> One [R 187]
  | 1126 -> One [R 531]
  | 1127 -> One [r381]
  | 1128 -> One [r380]
  | 1129 -> One [R 781]
  | 1130 -> One [r387; r389]
  | 1131 -> One [r390]
  | 1132 -> One [r48]
  | 1133 -> One [R 541]
  | 1134 -> One [R 543]
  | 1135 -> One [r49]
  | 1136 -> One [R 947]
  | 1137 -> One [S (T T_RPAREN); R 315]
  | 1138 -> One [R 315]
  | 1139 -> One [R 457]
  | 1140 -> One [S (T T_COLON); r391]
  | 1141 -> One [r391]
  | 1142 -> One [R 542]
  | 1143 -> One [R 652; r392]
  | 1144 -> One [R 653]
  | 1145 -> One [R 458]
  | 1146 -> One [r392]
  | 1147 -> One [R 316]
  | 1148 -> One [S (T T_RPAREN); R 314]
  | 1149 -> One [R 314]
  | 1150 -> One [r389]
  | 1151 -> One [r388]
  | 1152 -> One [R 780]
  | 1153 -> One [r393]
  | 1154 -> One [r394]
  | 1155 -> One [R 651]
  | 1156 -> One [R 650]
  | 1157 -> One [r279; R 649]
  | 1158 -> One [R 649]
  | 1159 -> One [R 658; r399]
  | 1160 -> One [r345; r401]
  | 1161 -> One [r401]
  | 1162 -> One [r400]
  | 1163 -> One [R 789]
  | 1164 -> One [R 664; R 787]
  | 1165 -> One [R 665]
  | 1166 -> One [R 786]
  | 1167 -> One [R 392; R 380]
  | 1168 -> One [r350; r402]
  | 1169 -> One [r402]
  | 1170 -> One [S (T T_AND); r404]
  | 1171 -> One [r404]
  | 1172 -> One [r403]
  | 1173 -> One [R 394]
  | 1174 -> One [R 393]
  | 1175 -> One [R 380]
  | 1176 -> One [S (N N_seq_expr_no_seq_option_SEMI__); R 765]
  | 1177 -> One [R 765]
  | 1178 -> One [r405]
  | 1179 -> One [R 665]
  | 1180 -> One [R 767]
  | 1181 -> One [r405]
  | 1182 -> One [R 665]
  | 1183 -> One [R 766]
  | 1185 -> One [R 779]
  | 1186 -> One [R 787]
  | 1187 -> One [r344; R 385]
  | 1188 -> One [R 385]
  | 1189 -> One [R 384]
  | 1190 -> One [R 659]
  | 1191 -> One [r407]
  | 1192 -> One [r406]
  | 1193 -> One [R 373]
  | 1194 -> One [r377; R 1030]
  | 1195 -> One [R 1030]
  | 1196 -> One [r399]
  | 1197 -> One [r398]
  | 1198 -> One [r397]
  | 1199 -> One [r396]
  | 1200 -> One [r395]
  | 1201 -> One [R 782]
  | 1202 -> One [R 652; R 519; r408]
  | 1203 -> One [R 519]
  | 1204 -> One [R 523]
  | 1205 -> One [r46; R 524]
  | 1206 -> One [R 524]
  | 1207 -> One [R 517]
  | 1208 -> One [R 536]
  | 1209 -> One [R 455]
  | 1210 -> One [r408]
  | 1211 -> One [R 518]
  | 1212 -> One [R 530]
  | 1213 -> One [R 652; R 520]
  | 1214 -> One [R 653]
  | 1215 -> One [R 456]
  | 1216 -> One [R 534]
  | 1217 -> One [S (T T_LPAREN); r390; r411]
  | 1218 -> One [r411]
  | 1219 -> One [r45; R 683]
  | 1220 -> One [r50]
  | 1221 -> One [r49]
  | 1222 -> One [R 947]
  | 1223 -> One [R 683]
  | 1224 -> One [r410]
  | 1225 -> One [r409]
  | 1226 -> One [R 535]
  | 1227 -> One [r52; R 537]
  | 1228 -> One [R 537]
  | 1229 -> One [R 520]
  | 1230 -> One [r52; r413]
  | 1231 -> One [r413]
  | 1232 -> One [r412]
  | 1233 -> One [R 784]
  | 1234 -> One [r386]
  | 1235 -> One [r384]
  | 1236 -> One [R 538]
  | 1237 -> One [r46; r414]
  | 1238 -> One [r414]
  | 1239 -> One [R 539]
  | 1240 -> One [R 522]
  | 1241 -> One [R 521]
  | 1242 -> One [R 424]
  | 1243 -> One [r52; r416]
  | 1244 -> One [r416]
  | 1245 -> One [r415]
  | 1246 -> One [R 783]
  | 1247 -> One [R 788]
  | 1248 -> One [R 777]
  | 1249 -> One [R 632]
  | 1250 -> One [R 619]
  | 1251 -> One [R 273]
  | 1252 -> One [S (T T_SEMI); r417]
  | 1253 -> One [r417]
  | 1254 -> One [R 774]
  | 1255 -> One [R 760]
  | 1256 -> One [R 286]
  | 1257 -> One [S (T T_OPEN); r421]
  | 1258 -> One [r421]
  | 1259 -> One [r420]
  | 1260 -> One [r419]
  | 1261 -> One [r418]
  | 1262 -> One [R 770]
  | 1263 -> One [r52; r423]
  | 1264 -> One [r423]
  | 1265 -> One [r422]
  | 1266 -> One [R 772]
  | 1267 -> One [r387; r425]
  | 1268 -> One [r425]
  | 1269 -> One [r424]
  | 1270 -> One [R 769]
  | 1271 -> One [R 658; r430]
  | 1272 -> One [r345; r432]
  | 1273 -> One [r432]
  | 1274 -> One [r431]
  | 1275 -> One [R 778]
  | 1276 -> One [r430]
  | 1277 -> One [r429]
  | 1278 -> One [r428]
  | 1279 -> One [r427]
  | 1280 -> One [r426]
  | 1281 -> One [R 771]
  | 1282 -> One [r52; r434]
  | 1283 -> One [r434]
  | 1284 -> One [r433]
  | 1285 -> One [R 773]
  | 1286 -> One [r435]
  | 1287 -> One [R 653]
  | 1288 -> One [R 448]
  | 1289 -> One [R 287]
  | 1290 -> One [R 288]
  | 1291 -> One [R 284]
  | 1292 -> One [S (T T_SEMI); R 776]
  | 1293 -> One [R 776]
  | 1294 -> One [R 775]
  | 1295 -> One [S (N N_seq_expr_no_seq_option_SEMI__); R 761]
  | 1296 -> One [R 761]
  | 1297 -> One [r405]
  | 1298 -> One [R 665]
  | 1299 -> One [R 763]
  | 1300 -> One [R 447]
  | 1301 -> One [r436]
  | 1302 -> One [R 851]
  | 1303 -> One [R 285]
  | 1304 -> One [S (T T_SEMI); R 768]
  | 1305 -> One [R 768]
  | 1306 -> One [R 762]
  | 1307 -> One [r124; r437]
  | 1308 -> One [R 331; R 341]
  | 1309 -> One [R 341]
  | 1310 -> One [r437]
  | 1311 -> One [R 860]
  | 1312 -> One [S (T T_SLASHGREATER); R 344]
  | 1313 -> One [R 344]
  | 1314 -> One [R 411; r438]
  | 1315 -> One [r438]
  | 1316 -> One [R 345]
  | 1317 -> One [S (N N_simple_expr_no_call); r439]
  | 1318 -> One [r439]
  | 1319 -> One [S (T T_LIDENT); R 907]
  | 1320 -> One [R 907]
  | 1321 -> One [R 891]
  | 1322 -> One [S (N N_simple_expr_no_call); R 910]
  | 1323 -> One [R 910]
  | 1324 -> One [R 346]
  | 1325 -> One [r441]
  | 1326 -> One [r440]
  | 1327 -> One [R 895]
  | 1328 -> One [S (T T_LBRACKET); r443]
  | 1329 -> One [r443]
  | 1330 -> One [r442]
  | 1331 -> One [R 896]
  | 1332 -> One [r444; r446]
  | 1333 -> One [r446]
  | 1334 -> One [R 653]
  | 1335 -> One [R 446]
  | 1336 -> One [r445]
  | 1337 -> One [R 897]
  | 1338 -> One [R 445]
  | 1339 -> One [R 893]
  | 1340 -> One [r447; r448]
  | 1341 -> One [r448]
  | 1342 -> One [R 859]
  | 1343 -> One [S (T T_RBRACKET); R 861]
  | 1344 -> One [R 861]
  | 1345 -> One [S (T T_RBRACKET); R 862]
  | 1346 -> One [R 862]
  | 1347 -> One [r449; r451]
  | 1348 -> One [r451]
  | 1349 -> One [R 653]
  | 1350 -> One [R 450]
  | 1351 -> One [r450]
  | 1352 -> One [R 865]
  | 1353 -> One [R 449]
  | 1354 -> One [r334]
  | 1355 -> One [r454]
  | 1356 -> One [R 1040]
  | 1357 -> One [r453]
  | 1358 -> One [r452]
  | 1359 -> One [R 653]
  | 1360 -> One [R 748]
  | 1361 -> One [R 853]
  | 1362 -> One [r127; r459]
  | 1363 -> One [r459]
  | 1364 -> One [R 656; r460; r461]
  | 1365 -> One [r460]
  | 1366 -> One [R 464]
  | 1367 -> One [S (N N_expr); R 463]
  | 1368 -> One [R 463]
  | 1369 -> One [r461]
  | 1370 -> One [R 653]
  | 1371 -> One [r263; R 466]
  | 1372 -> One [R 466]
  | 1373 -> One [S (N N_expr); R 465]
  | 1374 -> One [R 465]
  | 1375 -> One [R 734]
  | 1376 -> One [r458]
  | 1377 -> One [r462]
  | 1378 -> One [S (N N_expr); R 677]
  | 1379 -> One [R 677]
  | 1380 -> One [R 1039]
  | 1381 -> One [R 747]
  | 1382 -> One [R 475]
  | 1383 -> One [r457]
  | 1384 -> One [r456]
  | 1385 -> One [S (N N_expr); r464]
  | 1386 -> One [r464]
  | 1387 -> One [r463]
  | 1388 -> One [R 735]
  | 1389 -> One [R 653]
  | 1390 -> One [r263; R 419]
  | 1391 -> One [R 419]
  | 1392 -> One [S (N N_expr); R 418]
  | 1393 -> One [R 418]
  | 1394 -> One [R 732]
  | 1395 -> One [r455]
  | 1396 -> One [R 736]
  | 1397 -> One [R 733]
  | 1398 -> One [r465]
  | 1399 -> One [R 653]
  | 1400 -> One [R 476]
  | 1401 -> One [R 1042]
  | 1402 -> One [S (T T_STRING); r462; R 475; r465; R 749]
  | 1403 -> One [R 749]
  | 1404 -> One [S (T T_RBRACE); R 858]
  | 1405 -> One [R 858]
  | 1406 -> One [S (T T_RBRACE); R 857]
  | 1407 -> One [R 857]
  | 1408 -> One [S (T T_COLON); r467]
  | 1409 -> One [R 656; r470]
  | 1410 -> One [r470]
  | 1411 -> One [r469]
  | 1412 -> One [S (N N_expr); r472]
  | 1413 -> One [r472]
  | 1414 -> One [r471]
  | 1415 -> One [R 745]
  | 1416 -> One [R 741]
  | 1417 -> One [r468]
  | 1418 -> One [R 746]
  | 1419 -> One [R 742]
  | 1420 -> One [r467]
  | 1421 -> One [r466]
  | 1422 -> One [R 738]
  | 1423 -> One [R 653]
  | 1424 -> One [r263; r474]
  | 1425 -> One [r474]
  | 1426 -> One [S (N N_expr); r476]
  | 1427 -> One [r476]
  | 1428 -> One [r475]
  | 1429 -> One [R 743]
  | 1430 -> One [R 739]
  | 1431 -> One [r473]
  | 1432 -> One [R 744]
  | 1433 -> One [R 740]
  | 1434 -> One [R 737]
  | 1435 -> One [R 1210]
  | 1436 -> One [r332]
  | 1437 -> One [R 854]
  | 1438 -> One [S (N N_expr); R 275]
  | 1439 -> One [R 275]
  | 1440 -> One [r479]
  | 1441 -> One [r478]
  | 1442 -> One [r477]
  | 1443 -> One [R 855]
  | 1444 -> One [S (N N_expr); R 276]
  | 1445 -> One [R 276]
  | 1446 -> One [r482]
  | 1447 -> One [r481]
  | 1448 -> One [r480]
  | 1449 -> One [R 856]
  | 1450 -> One [S (N N_expr); R 277]
  | 1451 -> One [R 277]
  | 1452 -> One [R 852]
  | 1453 -> One [S (N N_expr); R 274]
  | 1454 -> One [R 274]
  | 1455 -> One [R 349]
  | 1456 -> One [R 871]
  | 1457 -> One [r332]
  | 1458 -> One [R 854]
  | 1459 -> One [r479]
  | 1460 -> One [r478]
  | 1461 -> One [r477]
  | 1462 -> One [R 855]
  | 1463 -> One [r482]
  | 1464 -> One [r481]
  | 1465 -> One [r480]
  | 1466 -> One [R 856]
  | 1467 -> One [R 852]
  | 1468 -> One [R 236]
  | 1469 -> One [r107; r484]
  | 1470 -> One [r484]
  | 1471 -> One [r483]
  | 1472 -> One [R 237]
  | 1473 -> One [r107; R 561]
  | 1474 -> One [r322]
  | 1475 -> One [R 185]
  | 1476 -> One [R 186]
  | 1477 -> One [r321]
  | 1478 -> One [r320]
  | 1479 -> One [r319]
  | 1480 -> One [R 244]
  | 1481 -> One [R 691]
  | 1482 -> One [R 362]
  | 1483 -> One [r313]
  | 1484 -> One [r107; R 679]
  | 1485 -> One [R 679]
  | 1486 -> One [r312]
  | 1487 -> One [r310]
  | 1488 -> One [R 203]
  | 1489 -> One [R 309]
  | 1490 -> One [R 204]
  | 1491 -> One [S (T T_RPAREN); r486]
  | 1492 -> One [r486]
  | 1493 -> One [r485]
  | 1494 -> One [R 311]
  | 1495 -> One [R 652; r489]
  | 1496 -> One [r489]
  | 1497 -> One [r488]
  | 1498 -> One [r487]
  | 1499 -> One [R 312]
  | 1500 -> One [R 652; r492]
  | 1501 -> One [r492]
  | 1502 -> One [r491]
  | 1503 -> One [r490]
  | 1504 -> One [R 310]
  | 1505 -> One [r58; r494]
  | 1506 -> One [r494]
  | 1507 -> One [S (N N_expr); r496]
  | 1508 -> One [r496]
  | 1509 -> One [r495]
  | 1510 -> One [R 492]
  | 1511 -> One [r493]
  | 1512 -> One [R 493]
  | 1513 -> One [R 491]
  | 1514 -> One [R 413; R 238]
  | 1515 -> One [R 238]
  | 1516 -> One [R 414]
  | 1517 -> One [R 235]
  | 1518 -> One [R 722]
  | 1519 -> One [S (N N_expr); R 1195]
  | 1520 -> One [R 1195]
  | 1521 -> One [S (N N_expr); R 1194]
  | 1522 -> One [R 1194]
  | 1523 -> One [R 692; r498]
  | 1524 -> One [r498]
  | 1525 -> One [r497]
  | 1526 -> One [R 613]
  | 1528 -> One [r500]
  | 1529 -> One [R 663]
  | 1530 -> One [r499]
  | 1531 -> One [R 1064]
  | 1532 -> One [R 1066]
  | 1533 -> One [S (N N_expr); R 1193]
  | 1534 -> One [R 1193]
  | 1535 -> One [S (N N_expr); R 1192]
  | 1536 -> One [R 1192]
  | 1538 -> One [r506]
  | 1539 -> One [r505]
  | 1540 -> One [r504]
  | 1541 -> One [r503]
  | 1542 -> One [r502]
  | 1543 -> One [r501]
  | 1544 -> One [R 1168]
  | 1545 -> One [S (T T_RPAREN); R 849]
  | 1546 -> One [R 849]
  | 1548 -> One [r507]
  | 1549 -> One [R 1201]
  | 1550 -> One [r508]
  | 1551 -> One [S (N N_simple_expr_call); R 1203]
  | 1552 -> One [R 1203]
  | 1553 -> One [r52; R 1072]
  | 1554 -> One [R 1072]
  | 1555 -> One [R 690; r510]
  | 1556 -> One [r510]
  | 1557 -> One [r509]
  | 1558 -> One [R 1164]
  | 1559 -> One [S (N N_expr); R 1165]
  | 1560 -> One [R 1165]
  | 1561 -> One [R 695]
  | 1562 -> One [R 690; r511]
  | 1563 -> One [r511]
  | 1564 -> One [R 413; R 1161]
  | 1565 -> One [R 1161]
  | 1566 -> One [R 1158]
  | 1567 -> One [R 690; r519]
  | 1568 -> One [r519]
  | 1569 -> One [r518]
  | 1570 -> One [r517]
  | 1571 -> One [r516]
  | 1572 -> One [r515]
  | 1573 -> One [r514]
  | 1574 -> One [r513]
  | 1575 -> One [r512]
  | 1576 -> One [R 1167]
  | 1577 -> One [R 670; r523]
  | 1578 -> One [r523]
  | 1579 -> One [r522]
  | 1580 -> One [r521]
  | 1581 -> One [r520]
  | 1582 -> One [R 1055]
  | 1583 -> One [r524; R 1053]
  | 1584 -> One [R 567]
  | 1585 -> One [R 568]
  | 1586 -> One [R 1053]
  | 1587 -> One [R 726]
  | 1588 -> One [r327; r526]
  | 1589 -> One [r526]
  | 1590 -> One [r525]
  | 1591 -> One [R 1159]
  | 1592 -> One [r107; r528]
  | 1593 -> One [r528]
  | 1594 -> One [r527]
  | 1595 -> One [R 1160]
  | 1596 -> One [R 800; R 719]
  | 1597 -> One [r46; R 828]
  | 1598 -> One [R 828]
  | 1599 -> One [R 670; r532]
  | 1600 -> One [r532]
  | 1601 -> One [r531]
  | 1602 -> One [r530]
  | 1603 -> One [r529]
  | 1604 -> One [R 807]
  | 1605 -> One [r524; R 805]
  | 1606 -> One [R 805]
  | 1607 -> One [r159; R 790]
  | 1608 -> One [R 790]
  | 1610 -> One [R 1219]
  | 1611 -> One [r542]
  | 1612 -> One [r539]
  | 1613 -> One [r538]
  | 1614 -> One [R 1152; r544; R 479; r546]
  | 1615 -> One [R 1153]
  | 1616 -> One [R 1154]
  | 1617 -> One [r544]
  | 1618 -> One [r543]
  | 1619 -> One [R 1147]
  | 1620 -> One [R 1115]
  | 1621 -> One [R 479]
  | 1622 -> One [r546]
  | 1623 -> One [R 653]
  | 1624 -> One [R 480]
  | 1625 -> One [r545]
  | 1626 -> One [R 422]
  | 1627 -> One [r537]
  | 1628 -> One [r536]
  | 1629 -> One [r550; R 125]
  | 1630 -> One [R 555; R 558]
  | 1631 -> One [R 558]
  | 1632 -> One [R 1218; R 559]
  | 1633 -> One [R 559]
  | 1634 -> One [R 125]
  | 1635 -> One [r549]
  | 1636 -> One [r548]
  | 1637 -> One [r547]
  | 1638 -> One [R 1217]
  | 1639 -> One [R 665]
  | 1640 -> One [R 1218; r553]
  | 1641 -> One [r553]
  | 1642 -> One [r552]
  | 1643 -> One [r551]
  | 1644 -> One [R 129]
  | 1645 -> One [R 1218; r556]
  | 1646 -> One [r556]
  | 1647 -> One [r555]
  | 1648 -> One [r554]
  | 1649 -> One [R 127]
  | 1650 -> One [R 659]
  | 1651 -> One [r558; R 123]
  | 1652 -> One [R 146]
  | 1653 -> One [S (T T_DOT); r559]
  | 1654 -> One [r559]
  | 1655 -> One [R 147]
  | 1656 -> One [R 111]
  | 1657 -> One [r557]
  | 1658 -> One [r164; r560; r561]
  | 1659 -> One [r560]
  | 1660 -> One [R 140]
  | 1661 -> One [r561]
  | 1662 -> One [R 430]
  | 1663 -> One [R 108]
  | 1664 -> One [R 110]
  | 1665 -> One [R 123]
  | 1666 -> One [r558; R 109]
  | 1667 -> One [R 109]
  | 1668 -> One [r534; r562]
  | 1669 -> One [r565; R 131]
  | 1670 -> One [r564]
  | 1671 -> One [r563]
  | 1672 -> One [R 158]
  | 1673 -> One [R 131]
  | 1674 -> One [r19; R 115]
  | 1675 -> One [R 115]
  | 1676 -> One [R 121]
  | 1677 -> One [S (T T_OPEN); r569]
  | 1678 -> One [r569]
  | 1679 -> One [r568]
  | 1680 -> One [r567]
  | 1681 -> One [r566]
  | 1682 -> One [R 135]
  | 1683 -> One [r550; R 126]
  | 1684 -> One [R 126]
  | 1685 -> One [R 1218; r572]
  | 1686 -> One [r572]
  | 1687 -> One [r571]
  | 1688 -> One [r570]
  | 1689 -> One [R 130]
  | 1690 -> One [R 1218; r575]
  | 1691 -> One [r575]
  | 1692 -> One [r574]
  | 1693 -> One [r573]
  | 1694 -> One [R 128]
  | 1695 -> One [r558; R 124]
  | 1696 -> One [R 124]
  | 1697 -> One [r565; R 132]
  | 1698 -> One [R 132]
  | 1699 -> One [R 134]
  | 1700 -> One [R 664; R 122]
  | 1701 -> One [R 665]
  | 1702 -> One [R 133]
  | 1703 -> One [R 490]
  | 1704 -> One [R 122]
  | 1705 -> One [R 489]
  | 1706 -> One [R 118]
  | 1707 -> One [R 120]
  | 1708 -> One [R 119]
  | 1709 -> One [R 116]
  | 1710 -> One [r533; R 117]
  | 1711 -> One [R 117]
  | 1712 -> One [r562]
  | 1713 -> One [R 142]
  | 1714 -> One [r535]
  | 1715 -> One [R 141]
  | 1716 -> One [r558; R 199]
  | 1717 -> One [R 199]
  | 1718 -> One [R 143]
  | 1719 -> One [R 200]
  | 1720 -> One [r541]
  | 1721 -> One [r540; R 15]
  | 1722 -> One [R 15]
  | 1723 -> One [S (T T_AND); r576]
  | 1724 -> One [r576]
  | 1725 -> One [R 16]
  | 1726 -> One [R 144]
  | 1727 -> One [R 390; R 391]
  | 1728 -> One [R 391]
  | 1729 -> One [r581]
  | 1730 -> One [r580]
  | 1731 -> One [r579]
  | 1732 -> One [r578]
  | 1733 -> One [R 66]
  | 1734 -> One [R 79]
  | 1735 -> One [S (T T_EQUALGREATER); r582]
  | 1736 -> One [r582]
  | 1737 -> One [R 67]
  | 1738 -> One [r583]
  | 1739 -> One [r584; R 13]
  | 1740 -> One [R 13]
  | 1741 -> One [S (T T_AND); r585]
  | 1742 -> One [r585]
  | 1743 -> One [R 14]
  | 1744 -> One [R 80]
  | 1745 -> One [R 388; R 389]
  | 1746 -> One [R 389]
  | 1747 -> One [R 810]
  | 1748 -> One [R 809]
  | 1749 -> One [R 801]
  | 1750 -> One [R 800; R 802]
  | 1751 -> One [R 834]
  | 1752 -> One [R 802]
  | 1753 -> One [R 811]
  | 1754 -> One [R 812]
  | 1755 -> One [S (T T_EQUAL); r586]
  | 1756 -> One [r586]
  | 1757 -> One [R 815]
  | 1758 -> One [R 813]
  | 1759 -> One [r587; R 529]
  | 1760 -> One [r46; R 548]
  | 1761 -> One [R 548]
  | 1762 -> One [R 549]
  | 1763 -> One [R 529]
  | 1764 -> One [r587; r588]
  | 1765 -> One [r588]
  | 1766 -> One [r279; r589]
  | 1767 -> One [r589]
  | 1768 -> One [R 19]
  | 1769 -> One [S (T T_AND); r591]
  | 1770 -> One [r591]
  | 1771 -> One [r590]
  | 1772 -> One [R 20]
  | 1773 -> One [R 819]
  | 1774 -> One [R 397; R 398]
  | 1775 -> One [R 398]
  | 1778 -> One [r592]
  | 1779 -> One [R 817]
  | 1780 -> One [r394]
  | 1781 -> One [r279; R 647]
  | 1782 -> One [R 648]
  | 1783 -> One [R 647]
  | 1784 -> One [R 827]
  | 1785 -> One [R 835]
  | 1786 -> One [r594]
  | 1787 -> One [r593]
  | 1788 -> One [r89]
  | 1789 -> One [r88]
  | 1790 -> One [R 226; r595]
  | 1791 -> One [r595]
  | 1792 -> One [R 794]
  | 1793 -> One [R 1127]
  | 1794 -> One [R 1096]
  | 1795 -> One [S (T T_DOT); r600]
  | 1796 -> One [r600]
  | 1797 -> One [r599]
  | 1798 -> One [r598]
  | 1799 -> One [r597]
  | 1800 -> One [r596]
  | 1801 -> One [R 795]
  | 1802 -> One [r602]
  | 1803 -> One [r601]
  | 1804 -> One [r89]
  | 1805 -> One [r88]
  | 1806 -> One [R 226; r603]
  | 1807 -> One [r603]
  | 1808 -> One [R 798]
  | 1809 -> One [R 1098]
  | 1810 -> One [S (T T_DOT); r608]
  | 1811 -> One [r608]
  | 1812 -> One [r607]
  | 1813 -> One [r606]
  | 1814 -> One [r605]
  | 1815 -> One [r604]
  | 1816 -> One [R 799]
  | 1817 -> One [R 692; r610]
  | 1818 -> One [r610]
  | 1819 -> One [r609]
  | 1820 -> One [R 616]
  | 1821 -> One [S (T T_TYPE); r611]
  | 1822 -> One [r611]
  | 1823 -> One [R 822]
  | 1824 -> One [r46; R 826]
  | 1825 -> One [R 826]
  | 1826 -> One [R 824]
  | 1827 -> One [r508]
  | 1828 -> One [r154; r613]
  | 1829 -> One [r613]
  | 1830 -> One [r612]
  | 1831 -> One [R 804]
  | 1832 -> One [r46; R 829]
  | 1833 -> One [R 829]
  | 1834 -> One [R 670; r617]
  | 1835 -> One [r617]
  | 1836 -> One [r616]
  | 1837 -> One [r615]
  | 1838 -> One [r614]
  | 1839 -> One [R 808]
  | 1840 -> One [r524; R 806]
  | 1841 -> One [R 806]
  | 1842 -> One [r159; R 791]
  | 1843 -> One [R 791]
  | 1845 -> One [r619]
  | 1846 -> One [r618]
  | 1847 -> One [R 145]
  | 1848 -> One [r620]
  | 1849 -> One [R 81]
  | 1850 -> One [S (T T_EQUAL); r621]
  | 1851 -> One [r621]
  | 1852 -> One [R 816]
  | 1853 -> One [R 814]
  | 1854 -> One [r587; r622]
  | 1855 -> One [r622]
  | 1856 -> One [R 820]
  | 1857 -> One [r393]
  | 1858 -> One [S (T T_COLONEQUAL); r623]
  | 1859 -> One [r623]
  | 1860 -> One [R 818]
  | 1861 -> One [R 833]
  | 1862 -> One [R 832]
  | 1863 -> One [R 831]
  | 1864 -> One [R 830]
  | 1865 -> One [R 719]
  | 1866 -> One [R 835]
  | 1867 -> One [R 720]
  | 1868 -> One [r632; r633]
  | 1869 -> One [r631]
  | 1870 -> One [r630]
  | 1871 -> One [S (T T_RPAREN); r634]
  | 1872 -> One [r634]
  | 1873 -> One [r577; R 673]
  | 1874 -> One [R 673]
  | 1875 -> One [r628]
  | 1876 -> One [r627]
  | 1877 -> One [R 189]
  | 1878 -> One [R 190]
  | 1879 -> One [r635; r636]
  | 1880 -> One [r625; r637]
  | 1881 -> One [R 659]
  | 1882 -> One [S (N N_simple_expr_call); R 103]
  | 1883 -> One [R 103]
  | 1884 -> One [R 692; r639]
  | 1885 -> One [r639]
  | 1886 -> One [r35; r640]
  | 1887 -> One [r640]
  | 1888 -> One [R 440]
  | 1889 -> One [R 89]
  | 1890 -> One [R 90]
  | 1891 -> One [S (T T_LPAREN); r643]
  | 1892 -> One [r643]
  | 1893 -> One [r642]
  | 1894 -> One [r641]
  | 1895 -> One [R 82]
  | 1896 -> One [R 87]
  | 1897 -> One [R 136]
  | 1898 -> One [R 83]
  | 1899 -> One [r635; R 88]
  | 1900 -> One [R 88]
  | 1901 -> One [S (T T_RPAREN); r645]
  | 1902 -> One [r645]
  | 1903 -> One [r644]
  | 1904 -> One [R 85]
  | 1905 -> One [R 652; r648]
  | 1906 -> One [r648]
  | 1907 -> One [r647]
  | 1908 -> One [r646]
  | 1909 -> One [R 86]
  | 1910 -> One [R 652; r651]
  | 1911 -> One [r651]
  | 1912 -> One [r650]
  | 1913 -> One [r649]
  | 1914 -> One [R 84]
  | 1915 -> One [r638]
  | 1916 -> One [S (T T_LIDENT); R 667]
  | 1917 -> One [R 667]
  | 1918 -> One [R 95]
  | 1919 -> One [r565; R 101]
  | 1920 -> One [R 101]
  | 1921 -> One [R 600]
  | 1922 -> One [S (T T_OPEN); r655]
  | 1923 -> One [r655]
  | 1924 -> One [r654]
  | 1925 -> One [r653]
  | 1926 -> One [r652]
  | 1927 -> One [R 599]
  | 1928 -> One [R 93]
  | 1929 -> One [R 426]
  | 1930 -> One [r14; R 98]
  | 1931 -> One [R 98]
  | 1932 -> One [r13]
  | 1933 -> One [R 556]
  | 1934 -> One [S (T T_LIDENT); r657]
  | 1935 -> One [r657]
  | 1936 -> One [r656]
  | 1937 -> One [R 1211]
  | 1938 -> One [S (T T_EQUAL); r658]
  | 1939 -> One [r658]
  | 1940 -> One [R 1212]
  | 1941 -> One [r12]
  | 1942 -> One [r11]
  | 1943 -> One [r10]
  | 1944 -> One [R 1215]
  | 1945 -> One [S (T T_EQUAL); r659]
  | 1946 -> One [r659]
  | 1947 -> One [R 1216]
  | 1948 -> One [r660]
  | 1949 -> One [S (N N_simple_expr_call); R 104]
  | 1950 -> One [R 104]
  | 1951 -> One [R 692; r662]
  | 1952 -> One [r662]
  | 1953 -> One [r661]
  | 1954 -> One [R 96]
  | 1955 -> One [r565; R 102]
  | 1956 -> One [R 102]
  | 1957 -> One [R 106]
  | 1958 -> One [r666; R 100]
  | 1959 -> One [r665]
  | 1960 -> One [S (T T_LIDENT); r668]
  | 1961 -> One [r668]
  | 1962 -> One [r667]
  | 1963 -> One [R 497]
  | 1964 -> One [r664]
  | 1965 -> One [r171; R 681]
  | 1966 -> One [r366; r671]
  | 1967 -> One [r671]
  | 1968 -> One [r670]
  | 1969 -> One [r669]
  | 1970 -> One [R 500]
  | 1971 -> One [R 681]
  | 1972 -> One [r663]
  | 1973 -> One [R 499]
  | 1974 -> One [R 498]
  | 1975 -> One [R 100]
  | 1976 -> One [R 664; R 601]
  | 1977 -> One [R 665]
  | 1978 -> One [R 107]
  | 1979 -> One [R 105]
  | 1980 -> One [r666; R 99]
  | 1981 -> One [R 99]
  | 1982 -> One [R 488]
  | 1983 -> One [R 601]
  | 1984 -> One [S (T T_AS); r672; R 597]
  | 1985 -> One [r672]
  | 1986 -> One [R 114]
  | 1987 -> One [R 597]
  | 1988 -> One [r624; R 598]
  | 1989 -> One [R 598]
  | 1990 -> One [R 487]
  | 1991 -> One [S (T T_SEMI); r673]
  | 1992 -> One [r673]
  | 1993 -> One [R 92]
  | 1994 -> One [R 91]
  | 1995 -> One [R 571]
  | 1996 -> One [R 94]
  | 1997 -> One [r637]
  | 1998 -> One [R 137]
  | 1999 -> One [r636]
  | 2000 -> One [R 139]
  | 2001 -> One [r577; r674]
  | 2002 -> One [r674]
  | 2003 -> One [R 138]
  | 2004 -> One [r626]
  | 2005 -> One [R 198]
  | 2006 -> One [r635; R 197]
  | 2007 -> One [R 197]
  | 2008 -> One [R 68]
  | 2009 -> One [R 70]
  | 2010 -> One [R 1153]
  | 2011 -> One [R 1154]
  | 2012 -> One [S (T T_RPAREN); r675]
  | 2013 -> One [r675]
  | 2014 -> One [R 72]
  | 2015 -> One [R 652; r677]
  | 2016 -> One [r677]
  | 2017 -> One [r676]
  | 2018 -> One [R 73]
  | 2019 -> One [R 652; r679]
  | 2020 -> One [r679]
  | 2021 -> One [r678]
  | 2022 -> One [S (T T_RPAREN); r680]
  | 2023 -> One [r680]
  | 2024 -> One [R 75]
  | 2025 -> One [S (T T_RPAREN); r681]
  | 2026 -> One [r681]
  | 2027 -> One [R 77]
  | 2028 -> One [R 652; r683]
  | 2029 -> One [r683]
  | 2030 -> One [r682]
  | 2031 -> One [R 78]
  | 2032 -> One [R 652; r685]
  | 2033 -> One [r685]
  | 2034 -> One [r684]
  | 2035 -> One [R 76]
  | 2036 -> One [R 74]
  | 2037 -> One [R 652; r687]
  | 2038 -> One [r687]
  | 2039 -> One [r686]
  | 2040 -> One [R 71]
  | 2041 -> One [R 69]
  | 2042 -> One [r633]
  | 2043 -> One [r632; R 11]
  | 2044 -> One [R 11]
  | 2045 -> One [S (T T_AND); r688]
  | 2046 -> One [r688]
  | 2047 -> One [R 12]
  | 2048 -> One [R 1069]
  | 2049 -> One [R 386; R 387]
  | 2050 -> One [R 387]
  | 2051 -> One [S (N N_expr); R 1196]
  | 2052 -> One [R 1196]
  | 2053 -> One [S (N N_simple_expr_call); R 1202]
  | 2054 -> One [R 1202]
  | 2055 -> One [R 958]
  | 2056 -> One [R 1049]
  | 2057 -> One [S (N N_expr); R 1180]
  | 2058 -> One [R 1180]
  | 2059 -> One [S (N N_expr); R 1174]
  | 2060 -> One [R 1174]
  | 2061 -> One [S (N N_expr); r690]
  | 2062 -> One [r690]
  | 2063 -> One [r689]
  | 2064 -> One [R 1204]
  | 2065 -> One [S (N N_expr); R 1187]
  | 2066 -> One [R 1187]
  | 2067 -> One [S (N N_expr); R 1177]
  | 2068 -> One [R 1177]
  | 2069 -> One [S (N N_expr); R 1176]
  | 2070 -> One [R 1176]
  | 2071 -> One [S (N N_expr); R 1188]
  | 2072 -> One [R 1188]
  | 2073 -> One [S (N N_expr); R 1182]
  | 2074 -> One [R 1182]
  | 2075 -> One [S (N N_expr); R 1179]
  | 2076 -> One [R 1179]
  | 2077 -> One [S (N N_expr); R 1178]
  | 2078 -> One [R 1178]
  | 2079 -> One [S (N N_expr); R 1190]
  | 2080 -> One [R 1190]
  | 2081 -> One [S (N N_expr); R 1181]
  | 2082 -> One [R 1181]
  | 2083 -> One [S (N N_expr); R 1175]
  | 2084 -> One [R 1175]
  | 2085 -> One [S (N N_expr); R 1173]
  | 2086 -> One [R 1173]
  | 2087 -> One [S (N N_expr); R 1172]
  | 2088 -> One [R 1172]
  | 2089 -> One [S (N N_expr); R 1171]
  | 2090 -> One [R 1171]
  | 2091 -> One [S (N N_expr); R 1170]
  | 2092 -> One [R 1170]
  | 2093 -> One [S (N N_expr); R 1189]
  | 2094 -> One [R 1189]
  | 2095 -> One [S (N N_expr); R 1169]
  | 2096 -> One [S (N N_expr); R 1191]
  | 2097 -> One [R 1191]
  | 2098 -> One [R 1169]
  | 2099 -> One [S (N N_expr); R 1186]
  | 2100 -> One [R 1186]
  | 2101 -> One [S (N N_expr); R 1183]
  | 2102 -> One [R 1183]
  | 2103 -> One [S (N N_expr); R 1184]
  | 2104 -> One [R 1184]
  | 2105 -> One [S (N N_expr); R 1185]
  | 2106 -> One [R 1185]
  | 2107 -> One [R 1057]
  | 2108 -> One [R 1047]
  | 2109 -> One [R 1046; R 1048]
  | 2110 -> One [R 1048]
  | 2111 -> One [R 1058]
  | 2112 -> One [R 1059]
  | 2113 -> One [R 1157]
  | 2117 -> One [r691]
  | 2118 -> One [R 1198]
  | 2123 -> One [r692]
  | 2124 -> One [R 1199]
  | 2129 -> One [r693]
  | 2130 -> One [R 1200]
  | 2132 -> One [r694]
  | 2133 -> One [R 1197]
  | 2134 -> One [r387; R 1060]
  | 2135 -> One [R 1060]
  | 2136 -> One [r387; r695]
  | 2137 -> One [r695]
  | 2138 -> One [r279; r696]
  | 2139 -> One [r696]
  | 2140 -> One [R 17]
  | 2141 -> One [S (T T_AND); r698]
  | 2142 -> One [r698]
  | 2143 -> One [r697]
  | 2144 -> One [R 18]
  | 2145 -> One [R 1062]
  | 2146 -> One [R 395; R 396]
  | 2147 -> One [R 396]
  | 2148 -> One [r393]
  | 2149 -> One [R 1068]
  | 2150 -> One [R 1077]
  | 2151 -> One [r594]
  | 2152 -> One [r593]
  | 2153 -> One [r89]
  | 2154 -> One [r88]
  | 2155 -> One [R 226; r701]
  | 2156 -> One [r701]
  | 2157 -> One [r377; R 575]
  | 2158 -> One [r377; R 576]
  | 2159 -> One [R 576]
  | 2160 -> One [R 580]
  | 2161 -> One [S (T T_BAR); r702]
  | 2162 -> One [r702]
  | 2163 -> One [r377; R 578]
  | 2164 -> One [R 578]
  | 2165 -> One [R 582]
  | 2166 -> One [R 577]
  | 2167 -> One [R 581]
  | 2168 -> One [R 575]
  | 2169 -> One [R 579]
  | 2170 -> One [R 39]
  | 2171 -> One [r699]
  | 2172 -> One [r377; r703]
  | 2173 -> One [r377; r704]
  | 2174 -> One [r704]
  | 2175 -> One [S (T T_BAR); r706]
  | 2176 -> One [r706]
  | 2177 -> One [r377; r707]
  | 2178 -> One [r707]
  | 2179 -> One [R 403]
  | 2180 -> One [r705]
  | 2181 -> One [R 402]
  | 2182 -> One [R 401]
  | 2183 -> One [r703]
  | 2184 -> One [R 400]
  | 2185 -> One [R 38]
  | 2186 -> One [R 1033]
  | 2187 -> One [S (T T_DOT); r712]
  | 2188 -> One [r712]
  | 2189 -> One [r711]
  | 2190 -> One [r710]
  | 2191 -> One [r709]
  | 2192 -> One [r708]
  | 2193 -> One [R 1034]
  | 2194 -> One [r602]
  | 2195 -> One [r601]
  | 2196 -> One [r89]
  | 2197 -> One [r88]
  | 2198 -> One [R 226; r713]
  | 2199 -> One [r713]
  | 2200 -> One [R 1037]
  | 2201 -> One [S (T T_DOT); r718]
  | 2202 -> One [r718]
  | 2203 -> One [r717]
  | 2204 -> One [r716]
  | 2205 -> One [r715]
  | 2206 -> One [r714]
  | 2207 -> One [R 1038]
  | 2208 -> One [R 692; r720]
  | 2209 -> One [r720]
  | 2210 -> One [r719]
  | 2211 -> One [R 614]
  | 2212 -> One [S (T T_TYPE); r722]
  | 2213 -> One [r722]
  | 2214 -> One [r721]
  | 2215 -> One [R 1065]
  | 2216 -> One [R 1067]
  | 2218 -> One [r52; R 1073]
  | 2219 -> One [R 1073]
  | 2220 -> One [R 670; r726]
  | 2221 -> One [r726]
  | 2222 -> One [r725]
  | 2223 -> One [r724]
  | 2224 -> One [r723]
  | 2225 -> One [R 1056]
  | 2226 -> One [r524; R 1054]
  | 2227 -> One [R 1054]
  | 2228 -> One [r632; r727]
  | 2229 -> One [r727]
  | 2230 -> One [R 1070]
  | 2231 -> One [R 1050]
  | 2232 -> One [r387; R 1061]
  | 2233 -> One [R 1061]
  | 2234 -> One [r387; r728]
  | 2235 -> One [r728]
  | 2236 -> One [R 1063]
  | 2237 -> One [r729; R 1052]
  | 2238 -> One [R 1052]
  | 2239 -> One [R 1076]
  | 2240 -> One [r729; R 1051]
  | 2241 -> One [R 1051]
  | 2242 -> One [R 1074]
  | 2243 -> One [R 1071]
  | 2244 -> One [R 1075]
  | 2245 -> One [R 718]
  | 2246 -> One [S (T T_EQUALGREATER); r730]
  | 2247 -> One [r730]
  | 2248 -> One [R 723]
  | 2249 -> One [r277]
  | 2250 -> One [R 324]
  | 2251 -> One [r42]
  | 2252 -> One [R 552]
  | 2253 -> One [R 1086]
  | 2254 -> One [R 687]
  | 2255 -> One [R 420]
  | 2256 -> One [S (T T_DOT); r731]
  | 2258 -> One [S (T T_RPAREN); R 195]
  | 2259 -> One [R 195]
  | 2260 -> One [R 1207]
  | 2261 -> One [R 688; r732]
  | 2262 -> One [r732]
  | 2263 -> One [R 357]
  | 2264 -> One [R 360]
  | 2265 -> One [R 356]
  | 2266 -> One [R 359]
  | 2267 -> One [r155]
  | 2268 -> One [R 355]
  | 2269 -> One [R 196]
  | 2270 -> One [R 354]
  | 2271 -> One [R 485]
  | 2272 -> One [R 353]
  | 2273 -> One [r152]
  | 2274 -> One [R 350]
  | 2275 -> One [R 652; r733]
  | 2276 -> One [R 653]
  | 2277 -> One [r153; R 486]
  | 2278 -> One [R 486]
  | 2279 -> One [r733]
  | 2280 -> One [R 351]
  | 2281 -> One [r441]
  | 2282 -> One [R 412]
  | 2283 -> One [r151]
  | 2284 -> One [R 329]
  | 2285 -> One [S (N N_simple_expr_no_call); r734]
  | 2286 -> One [r734]
  | 2287 -> One [R 330]
  | 2288 -> One [S (N N_expr); R 242]
  | 2289 -> One [R 242]
  | 2290 -> One [R 270]
  | 2291 -> One [r146]
  | 2292 -> One [R 892]
  | 2293 -> One [r124; r735]
  | 2294 -> One [r735]
  | 2295 -> One [R 901]
  | 2296 -> One [r447; r736]
  | 2297 -> One [r736]
  | 2298 -> One [R 900]
  | 2299 -> One [S (T T_RBRACKET); R 902]
  | 2300 -> One [R 902]
  | 2301 -> One [S (T T_RBRACKET); R 903]
  | 2302 -> One [R 903]
  | 2303 -> One [r449; r738]
  | 2304 -> One [r738]
  | 2305 -> One [r737]
  | 2306 -> One [R 906]
  | 2307 -> One [r143]
  | 2308 -> One [R 894]
  | 2309 -> One [S (T T_RBRACE); R 899]
  | 2310 -> One [R 899]
  | 2311 -> One [S (T T_RBRACE); R 898]
  | 2312 -> One [R 898]
  | 2313 -> One [S (N N_simple_expr_call); R 940]
  | 2314 -> One [R 940]
  | 2315 -> One [S (T T_LIDENT); R 938]
  | 2316 -> One [R 938]
  | 2317 -> One [R 922]
  | 2318 -> One [S (N N_simple_expr_no_call); R 941]
  | 2319 -> One [R 941]
  | 2320 -> One [S (N N_expr); r739]
  | 2321 -> One [r739]
  | 2322 -> One [R 926]
  | 2323 -> One [r137]
  | 2324 -> One [r61]
  | 2325 -> One [r60]
  | 2326 -> One [S (N N_expr); r741]
  | 2327 -> One [r741]
  | 2328 -> One [r740]
  | 2329 -> One [R 495]
  | 2330 -> One [r59]
  | 2331 -> One [R 496]
  | 2332 -> One [R 494]
  | 2333 -> One [r136]
  | 2334 -> One [r135]
  | 2335 -> One [R 1162]
  | 2336 -> One [R 416]
  | 2337 -> One [S (T T_LBRACKET); r743]
  | 2338 -> One [r743]
  | 2339 -> One [r742]
  | 2340 -> One [R 927]
  | 2341 -> One [r444; r745]
  | 2342 -> One [r745]
  | 2343 -> One [r744]
  | 2344 -> One [R 928]
  | 2345 -> One [R 924]
  | 2346 -> One [R 916]
  | 2347 -> One [S (T T_DOT); r747]
  | 2348 -> One [r747]
  | 2349 -> One [r145; r748]
  | 2350 -> One [r748]
  | 2351 -> One [R 923]
  | 2352 -> One [r124; r749]
  | 2353 -> One [r749]
  | 2354 -> One [R 932]
  | 2355 -> One [r447; r750]
  | 2356 -> One [r750]
  | 2357 -> One [R 931]
  | 2358 -> One [S (T T_RBRACKET); R 933]
  | 2359 -> One [R 933]
  | 2360 -> One [S (T T_RBRACKET); R 934]
  | 2361 -> One [R 934]
  | 2362 -> One [r449; r752]
  | 2363 -> One [r752]
  | 2364 -> One [r751]
  | 2365 -> One [R 937]
  | 2366 -> One [r746]
  | 2367 -> One [R 925]
  | 2368 -> One [S (T T_RBRACE); R 930]
  | 2369 -> One [R 930]
  | 2370 -> One [S (T T_RBRACE); R 929]
  | 2371 -> One [R 929]
  | 2372 -> One [R 915]
  | 2373 -> One [R 942]
  | 2374 -> One [R 919]
  | 2375 -> One [R 914]
  | 2376 -> One [r134]
  | 2377 -> One [R 540]
  | 2378 -> One [r133]
  | 2379 -> One [R 880]
  | 2380 -> One [r47; r753]
  | 2381 -> One [r753]
  | 2382 -> One [R 881]
  | 2383 -> One [R 652; r754]
  | 2384 -> One [r754]
  | 2385 -> One [R 565]
  | 2386 -> One [R 280]
  | 2387 -> One [R 303]
  | 2388 -> One [R 879]
  | 2389 -> One [R 652; r755]
  | 2390 -> One [r755]
  | 2391 -> One [R 878]
  | 2392 -> One [R 462]
  | 2393 -> One [r130]
  | 2394 -> One [R 846]
  | 2395 -> One [R 461]
  | 2396 -> One [r126]
  | 2397 -> One [R 886]
  | 2398 -> One [R 652; r756]
  | 2399 -> One [r756]
  | 2400 -> One [R 887]
  | 2401 -> One [r122]
  | 2402 -> One [R 343]
  | 2403 -> One [r125]
  | 2404 -> One [R 876]
  | 2405 -> One [S (T T_RBRACKET); R 877]
  | 2406 -> One [R 877]
  | 2407 -> One [S (T T_RBRACKET); R 875]
  | 2408 -> One [R 875]
  | 2409 -> One [r120]
  | 2410 -> One [r119]
  | 2411 -> One [r118]
  | 2412 -> One [r117]
  | 2413 -> One [R 1163]
  | 2414 -> One [r115]
  | 2415 -> One [R 36]
  | 2416 -> One [r114]
  | 2417 -> One [R 53]
  | 2418 -> One [R 436]
  | 2419 -> One [r113]
  | 2420 -> One [R 55]
  | 2421 -> One [r112]
  | 2422 -> One [S (T T_BACKQUOTE); r757; R 434]
  | 2423 -> One [r757]
  | 2424 -> One [R 591]
  | 2425 -> One [R 592]
  | 2426 -> One [R 434]
  | 2427 -> One [r111]
  | 2428 -> One [R 56]
  | 2429 -> One [r106]
  | 2430 -> One [r105]
  | 2431 -> One [R 1117]
  | 2432 -> One [R 653]
  | 2433 -> One [R 652; r758]
  | 2434 -> One [r758]
  | 2435 -> One [R 1120]
  | 2436 -> One [R 652; r759]
  | 2437 -> One [R 653]
  | 2438 -> One [R 652; r760]
  | 2439 -> One [r760]
  | 2440 -> One [R 1121]
  | 2441 -> One [r759]
  | 2442 -> One [R 1119]
  | 2443 -> One [r103]
  | 2444 -> One [R 1118]
  | 2445 -> One [R 453]
  | 2446 -> One [S (T T_DOTDOT); R 1109]
  | 2447 -> One [R 1109]
  | 2448 -> One [r761]
  | 2449 -> One [r220]
  | 2450 -> One [R 176]
  | 2451 -> One [R 1106]
  | 2452 -> One [r183]
  | 2453 -> One [R 1107]
  | 2454 -> One [r762; R 177]
  | 2455 -> One [R 21; R 180]
  | 2456 -> One [R 180]
  | 2457 -> One [r238]
  | 2458 -> One [R 177]
  | 2459 -> One [r762; R 178]
  | 2460 -> One [R 178]
  | 2461 -> One [R 179]
  | 2462 -> One [R 1103]
  | 2463 -> One [R 1090]
  | 2464 -> One [R 1108]
  | 2465 -> One [R 1104]
  | 2466 -> One [r183]
  | 2467 -> One [R 1105]
  | 2468 -> One [R 1102]
  | 2469 -> One [S (T T_DOTDOT); R 1110]
  | 2470 -> One [S (T T_BAR); r761; R 1092]
  | 2471 -> One [R 1113]
  | 2472 -> One [r220]
  | 2473 -> One [R 1114]
  | 2474 -> One [R 1092]
  | 2475 -> One [R 1110]
  | 2476 -> One [R 1111]
  | 2477 -> One [r220]
  | 2478 -> One [R 1112]
  | 2479 -> One [R 1091]
  | 2480 -> One [R 1089]
  | 2481 -> One [R 1087]
  | 2482 -> One [r89]
  | 2483 -> One [r88]
  | 2484 -> One [R 226; r763]
  | 2485 -> One [r763]
  | 2486 -> One [R 1031]
  | 2487 -> One [S (T T_DOT); r768]
  | 2488 -> One [r768]
  | 2489 -> One [r767]
  | 2490 -> One [r766]
  | 2491 -> One [r765]
  | 2492 -> One [r764]
  | 2493 -> One [R 1032]
  | 2494 -> One [r247]
  | 2495 -> One [r246]
  | 2496 -> One [r89]
  | 2497 -> One [r88]
  | 2498 -> One [R 226; r769]
  | 2499 -> One [r769]
  | 2500 -> One [R 1035]
  | 2501 -> One [S (T T_DOT); r774]
  | 2502 -> One [r774]
  | 2503 -> One [r773]
  | 2504 -> One [r772]
  | 2505 -> One [r771]
  | 2506 -> One [r770]
  | 2507 -> One [R 1036]
  | 2508 -> One [r83]
  | 2509 -> One [R 289]
  | 2510 -> One [R 278]
  | 2511 -> One [R 271]
  | 2512 -> One [S (T T_RPAREN); r779]
  | 2513 -> One [r779]
  | 2514 -> One [r778]
  | 2515 -> One [r777]
  | 2516 -> One [r776]
  | 2517 -> One [r775]
  | 2518 -> One [R 245]
  | 2519 -> One [R 272]
  | 2520 -> One [S (T T_RPAREN); R 890]
  | 2521 -> One [R 890]
  | 2522 -> One [R 904]
  | 2523 -> One [r79]
  | 2524 -> One [R 327]
  | 2525 -> One [R 863]
  | 2526 -> One [r78]
  | 2527 -> One [R 332]
  | 2528 -> One [r77]
  | 2529 -> One [R 334]
  | 2530 -> One [R 335]
  | 2531 -> One [R 333]
  | 2532 -> One [R 337]
  | 2533 -> One [r73]
  | 2534 -> One [r72]
  | 2535 -> One [r71]
  | 2536 -> One [r70]
  | 2537 -> One [R 239]
  | 2538 -> One [S (T T_RPAREN); R 921]
  | 2539 -> One [R 921]
  | 2540 -> One [R 935]
  | 2541 -> One [r66]
  | 2542 -> One [r65]
  | 2543 -> One [r64]
  | 2544 -> One [r63]
  | 2545 -> One [R 240]
  | 2546 -> One [R 525]
  | 2547 -> One [R 660; r780]
  | 2548 -> One [r780]
  | 2549 -> One [R 528]
  | 2550 -> One [R 660; r781]
  | 2551 -> One [r781]
  | 2552 -> One [R 526]
  | 2553 -> One [R 660; r782]
  | 2554 -> One [r782]
  | 2555 -> One [R 527]
  | 2556 -> One [R 533]
  | 2557 -> One [S (T T_RPAREN); R 532]
  | 2558 -> One [R 532]
  | 2559 -> One [r53]
  | 2560 -> One [R 951]
  | 2561 -> One [R 727]
  | 2562 -> One [R 47]
  | 2563 -> One [r32]
  | 2564 -> One [R 1085]
  | 2565 -> One [r20]
  | 2566 -> One [R 1213]
  | 2567 -> One [S (T T_EQUAL); r783]
  | 2568 -> One [r783]
  | 2569 -> One [R 1214]
  | 2570 -> One [R 97]
  | 2571 -> One [r454]
  | 2572 -> One [R 347]
  | 2573 -> One [r127; r785]
  | 2574 -> One [r785]
  | 2575 -> One [S (T T_RBRACE); R 62]
  | 2576 -> One [R 62]
  | 2577 -> One [R 653]
  | 2578 -> One [r784]
  | 2579 -> One [R 61]
  | 2580 -> One [r9]
  | 2581 -> One [R 60]
  | 2582 -> One [S (T T_RBRACE); R 64]
  | 2583 -> One [R 64]
  | 2584 -> One [S (T T_RBRACE); R 63]
  | 2585 -> One [R 63]
  | 2586 -> One [S (T T_RBRACE); R 65]
  | 2587 -> One [R 65]
  | 2588 -> One [R 426]
  | 2589 -> One [r786]
  | 2590 -> One [r335]
  | 2591 -> One [R 348]
  | 2592 -> One [r6]
  | 2593 -> One [R 243]
  | 2594 -> One [r0]
  | 2595 -> One [R 696]
  | 2596 -> One [S (T T_RPAREN); R 697]
  | 2597 -> One [R 697]
  | 2598 -> One [r3]
  | 2599 -> One [R 1166]
  | 2600 -> One [S (T T_EOF); R 322]
  | 2601 -> One [R 322]
  | 2602 -> One [R 0]
  | 2604 -> One [S (T T_EOF); R 323]
  | 2605 -> One [R 323]
  | 2606 -> One [R 1]
  | 2608 -> One [R 2]
  | 2609 -> One [S (T T_EOF); R 698]
  | 2610 -> One [R 698]
  | 2612 -> One [R 3]
  | 2613 -> One [S (T T_EOF); R 699]
  | 2614 -> One [R 699]
  | 2616 -> One [S (T T_EOF); R 700]
  | 2617 -> One [R 700]
  | 2618 -> One [R 4]
  | 2620 -> One [r40; r787]
  | 2621 -> One [r787]
  | 2622 -> One [R 225]
  | 2623 -> One [R 220]
  | 2624 -> One [R 221]
  | 2625 -> One [R 224]
  | 2626 -> One [R 222]
  | 2627 -> One [R 223]
  | 2628 -> One [R 1082]
  | 2629 -> One [R 205]
  | 2630 -> One [R 5]
  | 2631 -> One [S (T T_SEMI); R 207]
  | 2632 -> One [R 207]
  | 2633 -> One [S (T T_SEMI); R 206]
  | 2634 -> One [R 206]
  | 2635 -> One [R 1083]
  | 2637 -> One [R 208]
  | 2638 -> One [R 1205]
  | 2639 -> One [R 6]
  | 2640 -> One [S (T T_EOF); R 212]
  | 2641 -> One [r788; R 210]
  | 2642 -> One [R 210]
  | 2643 -> One [S (T T_EOF); R 211]
  | 2644 -> One [r788; R 209]
  | 2645 -> One [R 209]
  | 2646 -> One [R 1206]
  | 2647 -> One [R 211]
  | 2648 -> One [R 212]
  | 155 -> Select (function
    | -1 -> [r378]
    | _ -> [r69])
  | 157 -> Select (function
    | -1 -> [R 1207]
    | _ -> [S (T T_EQUAL); r80])
  | 196 -> Select (function
    | 194 | 567 | 570 | 2446 -> [r26]
    | _ -> [r167])
  | 221 -> Select (function
    | -1 -> [r142]
    | _ -> [R 656; r128; r131; r132])
  | 364 -> Select (function
    | 1066 -> [r41]
    | _ -> [r173])
  | 365 -> Select (function
    | 1066 -> [R 48]
    | _ -> [R 573])
  | 391 -> Select (function
    | 196 -> [r27]
    | _ -> [r184])
  | 492 -> Select (function
    | 196 | 357 -> [r239]
    | _ -> [r169])
  | 712 -> Select (function
    | -1 -> [R 645]
    | _ -> [S (T T_TYPE); r258])
  | 766 -> Select (function
    | -1 -> [r508]
    | _ -> [R 670; r276])
  | 784 -> Select (function
    | -1 -> [r378]
    | _ -> [r69])
  | 798 -> Select (function
    | -1 -> [r142]
    | _ -> [r299; r285])
  | 831 -> Select (function
    | -1 -> [R 152]
    | _ -> [S (T T_DOT); r293])
  | 958 -> Select (function
    | -1 -> [R 152]
    | _ -> [r786])
  | 960 -> Select (function
    | -1 -> [r69]
    | _ -> [r145; r436])
  | 1184 -> Select (function
    | 1176 | 1295 -> [r336]
    | _ -> [R 571])
  | 1527 -> Select (function
    | -1 -> [R 645]
    | _ -> [S (T T_TYPE); r500])
  | 1537 -> Select (function
    | 165 | 204 | 773 -> [r69]
    | -1 -> [r378]
    | _ -> [S (T T_COLONCOLON); r506])
  | 1547 -> Select (function
    | -1 | 165 | 204 | 773 -> [R 1207]
    | _ -> [S (T T_EQUAL); r507])
  | 1609 -> Select (function
    | -1 -> [r584; r583]
    | _ -> [S (T T_TYPE); r542])
  | 1776 -> Select (function
    | -1 -> [r393]
    | _ -> [S (T T_UIDENT); r789])
  | 1777 -> Select (function
    | -1 -> [R 513]
    | _ -> [r789])
  | 1844 -> Select (function
    | -1 -> [r584; r620]
    | _ -> [S (T T_TYPE); r619])
  | 2114 -> Select (function
    | -1 -> [r333]
    | _ -> [S (N N_expr); r791])
  | 2115 -> Select (function
    | -1 -> [r332]
    | _ -> [r791])
  | 2116 -> Select (function
    | -1 -> [R 854]
    | _ -> [r790])
  | 2119 -> Select (function
    | -1 -> [r479]
    | _ -> [S (T T_LBRACKET); r794])
  | 2120 -> Select (function
    | -1 -> [r478]
    | _ -> [r794])
  | 2121 -> Select (function
    | -1 -> [r477]
    | _ -> [r793])
  | 2122 -> Select (function
    | -1 -> [R 855]
    | _ -> [r792])
  | 2125 -> Select (function
    | -1 -> [r482]
    | _ -> [r444; r797])
  | 2126 -> Select (function
    | -1 -> [r481]
    | _ -> [r797])
  | 2127 -> Select (function
    | -1 -> [r480]
    | _ -> [r796])
  | 2128 -> Select (function
    | -1 -> [R 856]
    | _ -> [r795])
  | 2131 -> Select (function
    | -1 -> [R 852]
    | _ -> [S (T T_EQUAL); r694])
  | 2217 -> Select (function
    | -1 -> [r660]
    | _ -> [r508])
  | 2257 -> Select (function
    | 2621 -> [r257]
    | _ -> [r731])
  | _ -> raise Not_found
let token_of_terminal (type a) (t : a MenhirInterpreter.terminal) (v : a) : token =
  match t with
  | MenhirInterpreter.T_error -> assert false
  | MenhirInterpreter.T_WITH -> WITH
  | MenhirInterpreter.T_WHILE -> WHILE
  | MenhirInterpreter.T_WHEN -> WHEN
  | MenhirInterpreter.T_VIRTUAL -> VIRTUAL
  | MenhirInterpreter.T_VAL -> VAL
  | MenhirInterpreter.T_UNDERSCORE -> UNDERSCORE
  | MenhirInterpreter.T_UIDENT -> UIDENT v
  | MenhirInterpreter.T_TYPE -> TYPE
  | MenhirInterpreter.T_TRY -> TRY
  | MenhirInterpreter.T_TRUE -> TRUE
  | MenhirInterpreter.T_TO -> TO
  | MenhirInterpreter.T_TILDE -> TILDE
  | MenhirInterpreter.T_THEN -> THEN
  | MenhirInterpreter.T_SWITCH -> SWITCH
  | MenhirInterpreter.T_STRUCT -> STRUCT
  | MenhirInterpreter.T_STRING -> STRING v
  | MenhirInterpreter.T_STAR -> STAR
  | MenhirInterpreter.T_SLASHGREATER -> SLASHGREATER
  | MenhirInterpreter.T_SIG -> SIG
  | MenhirInterpreter.T_SHARPOP -> SHARPOP v
  | MenhirInterpreter.T_SHARPEQUAL -> SHARPEQUAL
  | MenhirInterpreter.T_SHARP -> SHARP
  | MenhirInterpreter.T_SEMISEMI -> SEMISEMI
  | MenhirInterpreter.T_SEMI -> SEMI
  | MenhirInterpreter.T_RPAREN -> RPAREN
  | MenhirInterpreter.T_REC -> REC
  | MenhirInterpreter.T_RBRACKET -> RBRACKET
  | MenhirInterpreter.T_RBRACE -> RBRACE
  | MenhirInterpreter.T_QUOTED_STRING_ITEM -> QUOTED_STRING_ITEM v
  | MenhirInterpreter.T_QUOTED_STRING_EXPR -> QUOTED_STRING_EXPR v
  | MenhirInterpreter.T_QUOTE -> QUOTE
  | MenhirInterpreter.T_QUESTION -> QUESTION
  | MenhirInterpreter.T_PUB -> PUB
  | MenhirInterpreter.T_PRI -> PRI
  | MenhirInterpreter.T_PREFIXOP -> PREFIXOP v
  | MenhirInterpreter.T_POSTFIXOP -> POSTFIXOP v
  | MenhirInterpreter.T_PLUSEQ -> PLUSEQ
  | MenhirInterpreter.T_PLUSDOT -> PLUSDOT
  | MenhirInterpreter.T_PLUS -> PLUS
  | MenhirInterpreter.T_PERCENT -> PERCENT
  | MenhirInterpreter.T_OR -> OR
  | MenhirInterpreter.T_OPEN -> OPEN
  | MenhirInterpreter.T_OF -> OF
  | MenhirInterpreter.T_OBJECT -> OBJECT
  | MenhirInterpreter.T_NONREC -> NONREC
  | MenhirInterpreter.T_NEW -> NEW
  | MenhirInterpreter.T_NATIVEINT -> NATIVEINT v
  | MenhirInterpreter.T_MUTABLE -> MUTABLE
  | MenhirInterpreter.T_MODULE -> MODULE
  | MenhirInterpreter.T_MINUSGREATER -> MINUSGREATER
  | MenhirInterpreter.T_MINUSDOT -> MINUSDOT
  | MenhirInterpreter.T_MINUS -> MINUS
  | MenhirInterpreter.T_LPAREN -> LPAREN
  | MenhirInterpreter.T_LIDENT -> LIDENT v
  | MenhirInterpreter.T_LETOP -> LETOP v
  | MenhirInterpreter.T_LET -> LET
  | MenhirInterpreter.T_LESSUIDENT -> LESSUIDENT v
  | MenhirInterpreter.T_LESSSLASHIDENTGREATER -> LESSSLASHIDENTGREATER v
  | MenhirInterpreter.T_LESSSLASHGREATER -> LESSSLASHGREATER
  | MenhirInterpreter.T_LESSIDENT -> LESSIDENT v
  | MenhirInterpreter.T_LESSGREATER -> LESSGREATER
  | MenhirInterpreter.T_LESSDOTDOTGREATER -> LESSDOTDOTGREATER
  | MenhirInterpreter.T_LESS -> LESS
  | MenhirInterpreter.T_LBRACKETPERCENTPERCENT -> LBRACKETPERCENTPERCENT
  | MenhirInterpreter.T_LBRACKETPERCENT -> LBRACKETPERCENT
  | MenhirInterpreter.T_LBRACKETLESS -> LBRACKETLESS
  | MenhirInterpreter.T_LBRACKETGREATER -> LBRACKETGREATER
  | MenhirInterpreter.T_LBRACKETBAR -> LBRACKETBAR
  | MenhirInterpreter.T_LBRACKETAT -> LBRACKETAT
  | MenhirInterpreter.T_LBRACKET -> LBRACKET
  | MenhirInterpreter.T_LBRACELESS -> LBRACELESS
  | MenhirInterpreter.T_LBRACE -> LBRACE
  | MenhirInterpreter.T_LAZY -> LAZY
  | MenhirInterpreter.T_INT -> INT v
  | MenhirInterpreter.T_INITIALIZER -> INITIALIZER
  | MenhirInterpreter.T_INHERIT -> INHERIT
  | MenhirInterpreter.T_INFIXOP4 -> INFIXOP4 v
  | MenhirInterpreter.T_INFIXOP3 -> INFIXOP3 v
  | MenhirInterpreter.T_INFIXOP2 -> INFIXOP2 v
  | MenhirInterpreter.T_INFIXOP1 -> INFIXOP1 v
  | MenhirInterpreter.T_INFIXOP0 -> INFIXOP0 v
  | MenhirInterpreter.T_INCLUDE -> INCLUDE
  | MenhirInterpreter.T_IN -> IN
  | MenhirInterpreter.T_IF -> IF
  | MenhirInterpreter.T_GREATERRBRACE -> GREATERRBRACE
  | MenhirInterpreter.T_GREATERDOTDOTDOT -> GREATERDOTDOTDOT
  | MenhirInterpreter.T_GREATER -> GREATER
  | MenhirInterpreter.T_FUNCTOR -> FUNCTOR
  | MenhirInterpreter.T_FUNCTION -> FUNCTION
  | MenhirInterpreter.T_FUN -> FUN
  | MenhirInterpreter.T_FOR -> FOR
  | MenhirInterpreter.T_FLOAT -> FLOAT v
  | MenhirInterpreter.T_FALSE -> FALSE
  | MenhirInterpreter.T_EXTERNAL -> EXTERNAL
  | MenhirInterpreter.T_EXCEPTION -> EXCEPTION
  | MenhirInterpreter.T_ES6_FUN -> ES6_FUN
  | MenhirInterpreter.T_EQUALGREATER -> EQUALGREATER
  | MenhirInterpreter.T_EQUAL -> EQUAL
  | MenhirInterpreter.T_EOL -> EOL
  | MenhirInterpreter.T_EOF -> EOF
  | MenhirInterpreter.T_END -> END
  | MenhirInterpreter.T_ELSE -> ELSE
  | MenhirInterpreter.T_DOWNTO -> DOWNTO
  | MenhirInterpreter.T_DOTDOTDOT -> DOTDOTDOT
  | MenhirInterpreter.T_DOTDOT -> DOTDOT
  | MenhirInterpreter.T_DOT -> DOT
  | MenhirInterpreter.T_DONE -> DONE
  | MenhirInterpreter.T_DOCSTRING -> DOCSTRING v
  | MenhirInterpreter.T_DO -> DO
  | MenhirInterpreter.T_CONSTRAINT -> CONSTRAINT
  | MenhirInterpreter.T_COMMENT -> COMMENT v
  | MenhirInterpreter.T_COMMA -> COMMA
  | MenhirInterpreter.T_COLONGREATER -> COLONGREATER
  | MenhirInterpreter.T_COLONEQUAL -> COLONEQUAL
  | MenhirInterpreter.T_COLONCOLON -> COLONCOLON
  | MenhirInterpreter.T_COLON -> COLON
  | MenhirInterpreter.T_CLASS -> CLASS
  | MenhirInterpreter.T_CHAR -> CHAR v
  | MenhirInterpreter.T_BEGIN -> BEGIN
  | MenhirInterpreter.T_BARRBRACKET -> BARRBRACKET
  | MenhirInterpreter.T_BARBAR -> BARBAR
  | MenhirInterpreter.T_BAR -> BAR
  | MenhirInterpreter.T_BANG -> BANG
  | MenhirInterpreter.T_BACKQUOTE -> BACKQUOTE
  | MenhirInterpreter.T_ASSERT -> ASSERT
  | MenhirInterpreter.T_AS -> AS
  | MenhirInterpreter.T_ANDOP -> ANDOP v
  | MenhirInterpreter.T_AND -> AND
  | MenhirInterpreter.T_AMPERSAND -> AMPERSAND
  | MenhirInterpreter.T_AMPERAMPER -> AMPERAMPER
let nullable (type a) : a MenhirInterpreter.nonterminal -> bool =
  let open MenhirInterpreter in function
  | N_virtual_flag -> true
  | N_type_variance -> true
  | N_type_variables_with_variance -> true
  | N_type_subst_constructor_declarations_aux -> true
  | N_type_other_kind -> true
  | N_type_declaration_kind -> true
  | N_structure -> true
  | N_signature -> true
  | N_rec_flag -> true
  | N_payload -> true
  | N_override_flag -> true
  | N_optional_expr_extension -> true
  | N_optional -> true
  | N_option_type_constraint_ -> true
  | N_option_preceded_COLONGREATER_core_type__ -> true
  | N_option_preceded_COLON_simple_module_type__ -> true
  | N_option_preceded_COLON_poly_type__ -> true
  | N_option_preceded_COLON_non_arrowed_core_type__ -> true
  | N_option_preceded_COLON_expr__ -> true
  | N_option_preceded_COLON_core_type__ -> true
  | N_option_preceded_COLON_class_constructor_type__ -> true
  | N_option_item_extension_sugar_ -> true
  | N_option_constructor_arguments_ -> true
  | N_option_as_loc_preceded_AS_LIDENT___ -> true
  | N_option_SEMI_ -> true
  | N_option_OF_ -> true
  | N_option_MODULE_ -> true
  | N_option_LET_ -> true
  | N_option_DOTDOTDOT_ -> true
  | N_option_DOT_ -> true
  | N_option_COMMA_ -> true
  | N_object_body_class_fields -> true
  | N_object_body -> true
  | N_nonrec_flag -> true
  | N_mutable_or_virtual_flags -> true
  | N_mutable_flag -> true
  | N_module_arguments_comma_list -> true
  | N_loption_type_parameters_ -> true
  | N_loption_terminated_pattern_comma_list_option_COMMA___ -> true
  | N_loption_row_field_list_ -> true
  | N_loption_preceded_GREATER_nonempty_list_name_tag___ -> true
  | N_loption_parenthesized_type_variables_with_variance_comma_list__ -> true
  | N_loption_parenthesized_class_type_arguments_comma_list__ -> true
  | N_loption_object_label_declarations_ -> true
  | N_loption_located_attributes_ -> true
  | N_loption_functor_parameters_ -> true
  | N_loption_class_type_parameters_ -> true
  | N_llist_aux_preceded_COMMA_opt_spread_lbl_expr___ -> true
  | N_llist_aux_match_case_seq_expr_option_SEMI____ -> true
  | N_llist_aux_match_case_expr__ -> true
  | N_list_simple_expr_no_call_ -> true
  | N_list_bar_row_field_ -> true
  | N_list_attributed_ext_constructor_extension_constructor_declaration__ -> true
  | N_list_attributed_ext_constructor_either_extension_constructor_declaration_extension_constructor_rebind___ -> true
  | N_list_and_module_rec_declaration_ -> true
  | N_list_and_module_bindings_ -> true
  | N_list_and_let_binding_ -> true
  | N_list_and_class_type_declaration_ -> true
  | N_list_and_class_description_ -> true
  | N_list_and_class_declaration_ -> true
  | N_labeled_pattern_constraint -> true
  | N_jsx_arguments -> true
  | N_generalized_constructor_arguments -> true
  | N_embedded_private_flag_ -> true
  | N_embedded___anonymous_39_ -> true
  | N_constructor_declarations_aux -> true
  | N_class_sig_body_fields -> true
  | N_class_sig_body_cty -> true
  | N_class_sig_body -> true
  | N_class_expr_lets_and_rest -> true
  | N_boption_AMPERSAND_ -> true
  | N_and_type_subst_declaration -> true
  | N_and_type_declaration -> true
  | _ -> false
